第2章 XML语法概要1.ppt
文本预览下载声明
XML 规范 W3C 制定了 XML 规范,并为其制定了一系列的支撑性技术规范,正是有了这些相关技术的辅助,才使得基于 XML 的数据表示、数据交换、数据存储成为可能。 要学习和掌握 XML 及其相关技术,第一步是学习 W3C 的 XML 规范。 XML 1.0 规范非常简单,说明了 XML 文档的组成要素、以及如何编写一个正确的 XML 文档。 XML 文档 XML 文档实际上是一个文本文件,但并不是任何文本文件都是正确的 XML 文档。 在开始编写 XML 文档之前,首先学习一下 XML 的基本语法规则。 XML 声明 (XML Declaration) XML 文档的第一行内容,通常是 XML 的声明部分,比如: XML 声明部分本身是可选的,但是如果包含声明部分,必须是整个 XML 文档的第一行内容。 完整的 XML 声明包括三个部分:版本声明(version)、编码声明(encoding)和文档独立性声明(standalone)。 版本声明 version 属性的取值用于描述当前 XML 的版本编号,通常情况下为 1.0,这是为了将来的新版本能够保持向后的兼容性而设计的,一般都应该包含版本编号的声明; 在 XML 的声明中,这个属性是必须的,并且必须作为第一个属性出现。 编码声明 encoding 属性的取值用于指明当前 XML 文档中所使用的符号的编码方式,请注意:这个编码方式与 XML 文档在文件系统中保存时使用的编码方式没有直接的关系。 GB2312、UTF-8、UTF-16、ISO-10646-UCS-2、ISO-10646-UCS-4、ISO-8859-1 等等都是合法的 encoding 属性的取值。通常情况下,建议使用 UTF-8 编码方式,因为这样既可以表示西文字符、又可以表示非西文的字符(包括中文)。 有关 Unicode 和 UTF-8 的内容,稍后将进行详细地介绍。 文档独立性声明 standalone 属性的取值表明当前 XML 文件是独立使用、还是与其他的标记文件配套使用。 如果该属性为“yes”,表示在解析当前 XML 文档时,无需其他的外部标记声明文件。 相反,如果这个属性为“no”,则表示在解析当前文件时可能需要使用外部的标记声明文件。 示例(下一页)。 处理指令(Processing Instruction) XML 文档可以包含一些特定的处理指令,以便将 XML 文档用于特殊的应用程序时,表示需要执行的特定操作。通常,XML 解析器并不理解这些处理指令的含义,也不会执行任何特定的操作。 处理指令的语法格式如下: ?target-name data? 比如: ?xml-stylesheet href=“style.xsl” type=“text/xsl”?。 当 XSL 的执行引擎碰到这个处理指令时,将会根据 href 的取值获得指定的 xsl 文件,并对输入的 XML 文档进行相应的转换。 注释 (Comment) 作为标记语言的一种,XML 使用了 HTML 相同的注释语法,即:!-- ........ --。 请注意,在注释的内容中,不应该出现两个连续的横线 (-),因为这是标记注释的特殊符号。 通常,注释不应该出现在元素的标记中,注释之中不应该嵌套注释。 2.2 XML文档元素(Element) 在层次结构的 XML 文档中,元素是最基本的组成单元(Building Block)。 元素的语法格式如下所示: 元素中可以包含文本、子元素、或者两者的组合。 元素名的命名规则 在定义元素时,其命名必须遵循下面的规则: 元素的名称必须以字母、或者下划线(_)、或者冒号(:)开头; 元素名称中除首个符号之外的部分可以是字母、数字、横线(-)、下划线(_)、点号(.)、冒号(:)的任意组合; 元素名称是大小写敏感的,因此开始标记和结束标记中元素名称的大小写形式必须完全相同; 元素名称长度没有限制。 可以使用非英文的元素名。 有关元素命名的示例 下列 XML 标记名称哪些是正确的: 空元素 (Empty Element) 在 XML 文档中,元素的内容可以为空,比如:details/details,这表示该元素中不包含任何内容。 空元素还有另外一种书写形式,即 details/,这个标记既是开始标记又是结束标记。上面两种写法是完全等价的。 空元素是指不包含任何内容的元素,但是在其开始标记中可以包含属性,比如: details about=Location/details 属性 (Attribute) 属性不能独立于元素而存在,通常以名-值对的形式出现,属性的取值必须加上引号(单引号或者双引
显示全部