XML学习
Posted glodears
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了XML学习相关的知识,希望对你有一定的参考价值。
一个XML文件分为如下几部分内容:
- 文档声明
- 元素
- 属性
- 注释
- CDATA区 、特殊字符
- 处理指令(processing instruction)
语法:
一、文档声明
在编写XML文档时,需要先使用文档声明,声明XML文档的类型。
最简单的声明语法: <?xml version="1.0" ?>
encoding属性说明文档的字符编码:<?xml version="1.0" encoding="GB2312" ?>
二、元素
XML元素指XML文件中出现的标签,一个标签分为开始标签和结束标签,一个标签有如下几种书写形式,例如:
- 包含标签体:<a>www.cnblogs.com/</a>
- 不含标签体的:<a></a>, 简写为:<a/>
一个元素可以包含:
- 其他元素
- 文本
- 属性
XML 元素必须遵循以下命名规则:
- 名称可以包含字母、数字以及其他的字符
- 名称不能以数字或者标点符号开始
- 名称不能以字母 xml(或者 XML、Xml 等等)开始
- 名称不能包含空格
三、属性
属性(Attribute)提供有关元素的额外信息。属性值必须被引号包围,不过单引号和双引号均可使用。
在 XML 中,您应该尽量避免使用属性。如果信息感觉起来很像数据,那么请使用元素吧。
第一个实例中使用了 date 属性: <note date="10/01/2008"> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don‘t forget me this weekend!</body> </note> 第二个实例中使用了 date 元素: <note> <date>10/01/2008</date> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don‘t forget me this weekend!</body> </note> 第三个实例中使用了扩展的 date 元素(这是我的最爱): <note> <date> <day>10</day> <month>01</month> <year>2008</year> </date> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don‘t forget me this weekend!</body> </note>
四、注释
Xml文件中的注释采用: <!--注释--> 格式。
五、CDATA区
在编写XML文件时,有些内容可能不想让解析引擎解析执行,而是当作原始内容处理,遇到此种情况,可以把这些内容放在CDATA区里,对于CDATA区域内的内容,XML解析程序不会处理,而是直接原封不动的输出。
语法:<![CDATA[ 内容 ]]>
<?xml version="1.0" encoding="utf-8"?> <soft> <![CDATA[ <a className="gacl.xdp"> <a1>gacl</a1> <a2>xdp</a2> </a> ]]> <b> <b1>孤傲苍狼</b1> <b2>徐达沛</b2> </b> </soft>
六、处理指令
处理指令,简称PI (processing instruction)。处理指令用来指挥解析引擎如何解析XML文档内容。
例如,在XML文档中可以使用xml-stylesheet指令,通知XML解析引擎,应用css文件显示xml文档内容,标签名为中文时,css不起作用。
<?xml-stylesheet type="text/css" href="css文件名.css"?>
<?xml version="1.0" encoding="utf-8"?> <!--在XML文档中可以使用xml-stylesheet指令,通知XML解析引擎,应用country.css文件显示xml文档内容--> <?xml-stylesheet type="text/css" href="country.css"?> <Country> <c1>中国</c1> <c2>美国</c2> <c3>日本</c3> <c4>韩国</c4> </Country>
XML解析器
所有现代浏览器都有内建的 XML 解析器。
XML 解析器把 XML 文档转换为 XML DOM 对象 - 可通过 javascript 操作的对象。
以上是关于XML学习的主要内容,如果未能解决你的问题,请参考以下文章
从 XML 声明片段获取 XML 编码:部分内容解析不支持 XmlDeclaration