XML 简单介绍
先附上一张XML 大概图:详解见博客内容。
一、定义 XML(EXtensible Markup Language) :可扩展标记语言。
设计的用途:用来描述,存储,传输数据信息。 二、特色 1、单纯的XML只具有描述性作用。 XML被设计用来结构化、存储以及传输信息,看这个例子: 下面是wyx 写给john 的email,存储为 XML: <email> <to>john</to> <from>wyx</from> <heading>greeting</heading> <body>hello,you are a good man!</body> </email> 上面的这条便签具有自我描述性。它拥有标题以及内容,同时包含了发送者和接受者的信息。 但是,这个XML 文档仍然没有做任何事情。它仅仅是包装在 XML 标签中的纯粹的信息。 需要编写软件或者程序,才能传送、接收和显示出这个文档。 2、与Html不同 同:都是标记语言 不同: 用途不同 htmL:关注数据的显示。 Xml :关注的是数据内容,用来传输,包含数据。 标签 HTML:预定义的标签 XML:自行定义标签。 上例中的标签没有在任何XML 标准中定义过的标签,比如 <to> 和 <from>。这些标签是由编写者自己发明的哦! 在HTML 中使用的标签(以及 HTML 的结构)是预定义的。HTML 文档只使用在 HTML 标准中定义过的标签(比如 <p>、<h1> 等等)。XML 允许创作者定义自己的标签和自己的文档结构。
3、与数据库不同 数据库:存储数据,且强大的分析数据能力 XML:只是存储数据 三、用途:(跨平台) 为什么会出现XML? 答:XML 把数据从 HTML 分离 如果你需要在HTML 文档中显示动态数据,那么每当数据改变时将花费大量的时间来编辑 HTML。 通过XML,数据能够存储在独立的 XML 文件中。这样你就可以专注于使用 HTML 进行布局和显示,并确保修改底层数据不再需要对 HTML 进行任何的改变。 通过使用几行JavaScript,你就可以读取一个外部 XML 文件,然后更新 HTML 中的数据内容。 围绕这个核心,XML运用到一下方面,而且在发展的过程中,完善和增加了更多功能。 作为系统的配置文件 传输数据Web Services,Ajax. 异构平台的数据交换与整合。
四、语法 1、大多数以 XML声明开始 例:<? Xml version="1.0" encoding="utf-8">
Encoding :字符编码方式。——跟保存形式有关 2、结构
格式良好的XML。 拥有正确语法的XML 通过DTD验证的XML是“合法”的XML 遵循: 必须要根元素,只有一个。必须有 必须有开始,关闭标签 标记对大小写敏感 必须被正确的嵌套 属性的值必须加引号 树状结构
上图表示下面的XML 中的一本书: <bookstore> <bookcategory="COOKING"> <title lang="en">EverydayItalian</title> <author>Giada DeLaurentiis</author> <year>2005</year> <price>30.00</price> </book> <bookcategory="CHILDREN"> <title lang="en">HarryPotter</title> <author>J K. Rowling</author> <year>2005</year> <price>29.99</price> </book> <bookcategory="WEB"> <title lang="en">LearningXML</title> <author>Erik T. Ray</author> <year>2003</year> <price>39.95</price> </book> </bookstore>
3、实体引用:——为了解决编写一些特殊字符的方法。
4、属性 必须有值。引号要一直(单,双) 5、CDATA与注释。 CDATA:<![CDATA[文本内容]]> 注释:<!--注释内容-->
五、处理指示(PI=processinginstruction) 指示当前的XML文件的内容,如何被显示或者处理。 语法:<?target arg*?> <?target value?>
一个Xml文档可以包含多个针对不同应用程序的处理指令。处理指令由两部分组成,target和value。target的角色类似于“名称”,紧随target之后的字符串就是value,value可以包含多个标记。 例子:使用XSLT处理当前的XML文件实例 <?xml-stylesheet type="text/xsl"href="book.xsl"?> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |