1. XML语法
1.1. XML用途
1.1.1. XML用途
XML 指可扩展标记语言(EXtensible Markup Language),是独立于软件和硬件的信息传输工具,应用于 web 开发的许多方面,常用于简化数据的存储和共享。
1.2. 基本语法
1.2.1. xml指令
处理指令,简称PI (processing instruction)。处理指令用来指挥解析引擎如何解析XML文档内容。
以下为例:
<?xml version=“1.0” encoding=“utf-8” ?>
在XML中,所有的处理指令都以<?开始,?>结束。<?后面紧跟的是处理指令的名称。例子中就是一个XML处理指令,XML处理指令要求指定一个version属性。并允许指定可选的standalone和encoding,其中standalone是指是否允许使用外部声明,可设置为yes或no。yes是指定不使用外部声明。no为使用。encoding是指作者使用的字符编码格式。有UTF-8,GBK,gb2312等等。
1.2.2. 元素和属性
XML 元素指的是从(且包括)开始标签直到(且包括)结束标签的部分。元素可包含其他元素、文本或者两者的混合物。元素也可以拥有属性。
例如:
- <datasource id="db_oracle">
- <property name="url">
- jdbc:thin@192.168.0.26:1521:tarena
- </property>
- <property name="dbUser">openlab</property>
- <property name="dbPwd">open123</property>
- </datasource>
其中datasource就是一个元素,它可以包含其他元素,例如property。同理property也是一个元素,元素除了包含元素还可以包含文本信息。元素也可以含有属性,比如property就具有name属性。
XML 元素可以在开始标签中包含属性,属性 (Attribute) 提供关于元素的额外(附加)信息。属性通常提供不属于数据组成部分的信息,但是对需要处理这个元素的应用程序来说却很重要。
XML 属性必须加引号,属性值必须被引号包围,不过单引号和双引号均可使用。
如果属性值本身包含双引号,那么有必要使用单引号包围它,或者可以使用实体引用。
- <datasource id="db_oracle">
- …
- </datasource>
1.2.3. 大小写敏感
XML对大小写是敏感的,这一点不象HTML。在XML中,标记< Letter> 和标记 < letter> 是不一样的。 因此,打开和结束标记的大小写应该写成相同的:
- <letter>…</letter>
- <Letter>…</Letter>
1.2.4. 元素必须有关闭标签
XML要求每个元素必须由起始标签和关闭标签组成。关闭标签与起始标签的名字相同,写法上多一个“/”
例如:
<Letter> 只有起始标记是不行的。
<Letter></Letter> 必须要有关闭标签
1.2.5. 必须有根元素
XML要求必须有根元素,所谓根元素就是不被其它元素包围(不含有父元素)。并且根元素只能有一个。
- <datasource id=“db_oracle”> 根元素
- <property name="url">
- jdbc:thin@192.168.0.26:1521:tarena
- </property>
- <property name="dbUser">openlab</property>
- <property name="dbPwd">open123</property>
- </datasource>
- 这里不能再定义与datasource平级的元素!
1.2.6. 元素必须正确嵌套
XML要求所有元素必须正确的嵌套。起始标记与结束标记不能在不同元素之间交叉定义。
- <datasource id=“db_oracle”>
- <property name="dbPwd"> open123
- </datasource> 这里嵌套关系出现了错误!
- </property>
1.2.7. 实体引用
实体可以是常用的短语,键盘字符,文件,数据库记录或任何包含数据的项。在XML中,有时实体内包含一些字符,如 & < >“ ‘ 等。这些均需要对其进行转义,否则会对XML解释器生成错误。
xml常用内置的实体引用如表-1所示: