版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2021/7/241谷度科技-XML大纲 XML介绍 XML使用 XML文档定义类型 XML解析 2021/7/242模块1:XML介绍2021/7/243什么是XML? XML是ExtensibleMarkupLanguage的简写,一种扩展性标识语言。这是标准的定义。那么什么是标志语言,为什么叫扩展性?2021/7/244理解XML 我想我们这样来理解会好一些: 对HTML你已经非常熟悉了吧,它就是一种标记语言,记得它的全称吗:HypertextMarkupLanguage超文本标记语言。明白了?同时,HTML里面有很多标签,类似,等,都是在HTML4.0里规范和定义,而XML里允许你自己
2、创建这样的标签,所以叫做可扩展性。2021/7/245概念区分 这里有几个容易混淆的概念要提醒大家: 1.XML并不是标记语言。它只是用来创造标记语言(比如HTML)的元语言。天,又糊涂了!不要紧,你只要知道这一点:XML和HTML是不一样的,它的用处途比HTML广泛得多,我们将在后面仔细介绍。 2.XML并不是HTML的替代产品。XML不是HTML的升级,它只是HTML的补充,为HTML扩展更多功能。我们仍将在较长的一段时间里继续使用HTML。(但值得注意的是HTML的升级版本XHTML的确正在向适应XML靠拢。) 3.不能用XML来直接写网页。即便是包含了XML数据,依然要转换成HTML格
3、式才能在浏览器上显示。2021/7/246认识xml 下面就是一段XML示例文档,用来表示本文的信息: XMLQuickStart Adam 20070902 2021/7/247XML起源 XML是新概念吗? 不是。XML来源于SGML,一种比HTML更早的标志语言标准。 关于SGML,我们来简单了解一下,你只需要有个大致概念就可以。 SGML全称是StandardGeneralizedMarkupLanguage(通用标识语言标准)。看名称就知道:它是标志语言的标准,也就是说所有标志语言都是依照SGML制定的,当然包括HTML。SGML的覆盖面很广,凡是有一定格式的文件都属于SGML,比如
4、报告,乐谱等等,HTML是SGML在网络上最常见的文件格式。因此,人们戏称SGML是HTML的妈妈。2021/7/248XML领域 而XML就是SGML的简化版,只不过省略了其中复杂和不常用的部分。(哦,明白了!是HTML第二个“mother”,难怪比HTML功能强大呢。),和SGML一样,XML也可以应用在金融,科研等各个领域,我们这里讲的,只是XML在web方面的运用而已。 到这里,你应该有点明白了:XML是用来创建定义类似HTML的标记语言,然后再用这个标记语言来显示信息。2021/7/249为什么需要XML 有了HTML,为什么还需要用XML? 因为现在网络应用越来越广泛,仅仅靠HTM
5、L单一文件类型来处理千变万化的文档和数据已经力不丛心,而且HTML本身语法十分不严密,严重影响网络信息传送和共享。(想想浏览器兼容的问题伤透多少设计师的脑细胞啊。)人们早已经开始探讨用什么方法来满足网络上各种应用的需要。使用SGML是可以的,但SGML太庞大,编程复杂,于是最终选择了减肥的SGML-XML作为下一代web运用的数据传输和交互的工具。2021/7/2410w3c组织(XML标准制定者)的说明 XML使得在网络上使用SGML语言更加简单和直接:简化了定义文件类型的过程,简化了编程和处理SGML文件的过程,简化了在Web上的传送和共享。1.XML可以广泛的运用于web的任何地方; 2
6、.XML可以满足网络应用的需求; 3.使用XML将使编程更加简单; 4.XML便于学习和创建; 5.XML代码将清晰和便于阅读理解;2021/7/2411模块2:XML使用2021/7/2412XML文档中有关的术语1.Element(元素)元素在HTML我们已经有所了解,它是组成HTML文档的最小单位,在XML中也一样。一个元素由一个标识来定义,包括开始和结束标识以及其中的内容,就象这样:ajie唯一不同的就是:在HTML中,标识是固定的,而在XML中,标识需要你自己创建。2.Tag(标识)标识是用来定义元素的。在XML中,标识必须成对出现,将数据包围在中间。标识的名称和元素的名称是一样的。
7、例如这样一个元素:ajie其中就是标识。2021/7/2413XML文档中有关的术语3.Attribute(属性):什么是属性?看这段HTML代码:word。其中color就是font的属性之一。属性是对标识进一步的描述和说明,一个标识可以有多个属性,例如font的属性还有size。XML中的属性与HTML中的属性是一样的,每个属性都有它自己的名字和数值,属性是标识的一部分。举例:AdamXML中属性也是自己定义的,我们建议你尽量不使用属性,而将属性改成子元素,例如上面的代码可以改成这样:ajiefemale原因是属性不易扩充和被程序操作。2021/7/2414XML文档中有关的术语 4.De
8、claration(声明)在所有XML文档的第一行都有一个XML声明。这个声明表示这个文档是一个XML文档,它遵循的是哪个XML版本的规范。一个XML的声明语句就象这样: 5.DTD(文件类型定义)DTD是用来定义XML文档中元素,属性以及元素之间关系的。通过DTD文件可以检测XML文档的结构是否正确。但建立XML文档并不一定需要DTD文件。关于DTD文件的详细说明我们将在下面单独列项。2021/7/2415XML文档中有关的术语 6.处理指示处理指示是用来给处理XML文件的应用程序提供信息的。也就是说,XML分析器可能对它并不感兴趣,而把这些信息原封不动地传给XML应用程序。然后,这个应用程
9、序来解释这个指示,遵照它所提供的信息进行处理,或者再把它原封不动地传给下一个应用程序。正如我们前面看到的,XML声明就是一个处理指示。所有的处理指示应该遵循下面的格式:2021/7/2416XML文档中有关的术语 7.Well-formedXML(良好格式的XML)一个遵守XML语法规则,并遵守XML规范的文档称之为良好格式。如果你所有的标识都严格遵守XML规范,那么你的XML文档就不一定需要DTD文件来定义它。良好格式的文档必须以一个XML声明开始,例如:其中你必须说明文档遵守的XML版本,目前是1.0;其次说明文档是独立的,它不需要DTD文件来验证其中的标识是否有效;第三,要说明文档所使用
10、的语言编码。默认的是UTF-8,如果使用中文,你需要设置为GB2312。2021/7/2417XML文档中有关的术语 8.ValidXML(有效的XML)一个遵守XML语法规则,并遵守相应DTD文件规范的XML文档称为有效的XML文档。注意我们比较Well-formedXML和ValidXML,它们最大的差别在于一个完全遵守XML规范,一个则有自己的文件类型定义(DTD)。将XML文档和它的DTD文件进行比较分析,看是否符合DTD规则的过程叫validation(确认)。这样的过程通常我们是通过一个名为parser的软件来处理的。2021/7/2418有效的XML(validate)有效的XM
11、L文档也必须以一个XML声明开始,例如:和上面例子不同的,在standalone(独立)属性中,这里设置的是no,因为它必须和相应的DTD一起使用,DTD文件的定义方法如下:其中:!DOCTYPE是指你要定义一个DOCTYPE;type-of-doc是文档类型的名称,由你自己定义,通常于DTD文件名相同;SYSTEM/PUBLIC这两个参数只用其一。SYSTEM是指文档使用的私有DTD文件的网址,而PUBLIC则指文档调用一个公用的DTD文件的网址。“dtd-name”就是DTD文件的网址和名称。所有DTD文件的后缀名为“.dtd”。例如下面是一个使用dtd的例子:2021/7/2419良构的
12、XML1)标签必须成对。 2)一份文档必须包含一个根元素。 3)所有的开始标签和结束标签必须匹配。 4)空标签必须以“/”结束。 5)标签必须嵌套正确。 6)元素名称大小写敏感。 7)所有的属性值必须位于单引号或双引号中。 8)在同一个开始标签或空标签澡属性不允许出现超过一次。 HTML中也存在类似的规则,但HTML浏览器可接受结构不好的HTML文档。2021/7/2420XML标记 1)XML文档是基于文本的,由标记和内容组成:.标记让XML的处理器知道如何去处理内容,以及它们是如何组织的;.内容是字符数据,你可以在打印或显示的页面看见它们。2)XML文档中有六种标记:a.Elements:
13、最常见的标记形式,它确定它们所包围的内容。以Starttag开始,以endtag结束。非空元素包含了子元素或字符数据。空元素没有内容,能写成以下二种形式:or2021/7/2421XML标记b.Attributes:是出现在元素的firsttag中位于元素名称后的名称-值对。所有的属性值必须用单引号或双引号括起来。属性指定了元素的特征。c.Entityreferences:实体引用可用于插入保留字符或任意的unicode,也用于重复或变化的文本,或包含外部文件的内容。实体引用以与号(&)开始,以分号(;)结束。XML规范预定义了五种保留的实体引用:<代表"代表'代表2
14、021/7/2422XML标记d.Comments:不是XML文档原文内容的一部分,它以“”结束。XML处理器不需要将注释传给应用程序。e.Processinginstructions(PIs):PIs不是XML文档的原文内容,但XML的处理器需将它传递给应用程序。f.CDATA:指示解析器忽略大多数标记字符,该部分封装了一些源代码。2021/7/2423Xml文件-ProcessingInstruction-RootElement-ChildelementWelcometotheworldofEnterInfo!-EntityreferenceWebservices"IBMWSAD
15、-Characterdata-Attribute-Begintag23-Endtag-Emptytag2021/7/2424模块3:XML文档定义类型2021/7/2425什么是DTD 什么是DTD,DTD是一种保证XML文档格式正确的有效方法,可以比较XML文档和DTD文件来看文档是否符合规范,元素和标签使用是否正确。一个DTD文档包含:元素的定义规则,元素间关系的定义规则,元素可使用的属性,可使用的实体或符号规则。 DTD文件也是一个ASCII的文本文件,后缀名为.dtd。例如:myfile.dtd。2021/7/2426为什么要用DTD 定义个一个xml文件的描述规则,这样就方便我们对x
16、ml的读写操作,类似我们的EFS要定制协议. 比如,两个相同行业不同地区的人使用同一个DTD文件来作为文档创建规范,那么他们的数据就很容易交换和共享。网上有其他人想补充数据,也只需要根据公用的DTD规范来建立文档,就立刻可以加入。 目前,已经有数量众多的写好的DTD文件可以利用。针对不同的行业和应用,这些DTD文件已经建立了通用的元素和标签规则。你不需要自己重新创建,只要在他们的基础上加入你需要的新标识。2021/7/2427调用DTD文件的方法1.直接包含在XML文档内的DTD你只要在DOCTYPE声明中插入一些特别的说明就可以了,象这样:我们有一个XML文档:XML学习Adam我们在第一行
17、后面插入下面代码就可以:!DOCTYPEmyfile2021/7/2428调用DTD文件的方法 2.调用独立的DTD文件将DTD文档存为.dtd的文件,然后在DOCTYPE声明行中调用,例如,将下面的代码存为myfile.dtd然后在XML文档中调用,在第一行后插入:2021/7/2429DTD语法规则 DTD是“有效XML文档”的必须文件,我们通过DTD文件来定义文档中元素和标识的规则及相互关系。如何建立一个DTD文件呢?让我们一起来学习: 1.设置元素 元素是XML文档的基本组成部分。你要在DTD中定义一个元素,然后在XML文档中使用。元素的定义语法为: 说明: 则是该元素的使用规则。规则
18、定义了元素可以包含的内容以及相互的关系。2021/7/2430DTD语法规则2021/7/2431DTD语法规则2021/7/2432使用DTD例子 1.定义dtd文件(myfile.dtd) 2021/7/2433使用DTD例子 2.建立XML文档myfile.xml XML学习Adam2021/7/2434使用DTD例子 varxmlDoc=newActiveXObject(Microsoft.XMLDOM);xmlDoc.load(myfile.xml);nodes=xmlDoc.documentElement.childNodes;title.innerText=nodes.item(0).text;author.innerText=nodes.item(1).text;在HTML中调用XML数据标题:作者
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025农场转让合同
- 2025办公室租赁合同的标准模板
- 2025建筑行业劳动合同
- 2025年短视频合作合同协议(独家授权)
- 2025体育赛事场地租赁合同范本
- 2025二手房屋买卖合同模板
- 《煤矿安全规程》应知应会试题(含答案)-第1套
- 2025音响灯光设备租赁合同
- 农村猪圈拆除协议书
- 雅思地理作文真题及答案
- 危险化学品仓库管理
- 绿盟科技网络入侵防御系统安全解决方案模板
- 住宅老旧电梯更新改造实施方案
- 2024年09月2024国家开发银行校园招聘笔试历年参考题库附带答案详解
- 2024-2025学年山东省青岛市高二上学期期中考试数学检测试卷(附解析)
- 2024年03月建信消费金融有限责任公司(中国建设银行)2024年度春季校园招考15名工作人员笔试历年参考题库附带答案详解
- 《ADHD诊断治疗》课件
- 铁路职业生涯规划书
- 溶血性链球菌
- 雪茄知识及侍茄培训
- 电商平台退换货处理流程手册
评论
0/150
提交评论