- 语法结构主要要求:
(1)有且仅有一个根元素。 根元素也称文档元素,整个 XML 文档的其他元素都包含在根元素中,并通过嵌套形成树 型结构。除了根元素外,其他元素都是子元素。
(2)每个元素必须有开始标记和结束标记,除非用特定的空元素标记“<元素/>”; 开始标记的格式是:<标记名称> 结束标记的格式是:</标记名称> 开始标记和结束标记将 XML 文档中的数据进行结构化组织,确定元素内容、范围和相互 关系。
(3)元素必须正确嵌套。元素嵌套时不允许交叉,最先出现开始标记的元素,其结束标记最后出现。
(4)所有的属性值必须放在双引号或单引号中。
(5)如果文档没有 DTD,在缺省情况下,所有属性值的类型必须是“CDATA”。
- 一个标准的 XML 文档由两大部分组成:文档头部(序言)和文档主体(文档元素)。
XML 声明是文档头部的第一条语句,也是整个文档的第一条语句。XML 声明语句的格式 如下:
<?xml version=" version–number" encoding=" encoding –declaration" standalone=" standalone-status" ?>
XML 声明语句,以:“<?xml”开始、以“?>”为结束,表示这是一个 XML 文档。在这条 声明语句中可以包含三个属性(三条信息):
(1)XML 版本 Version:它表明使用的 XML 规范的版本号,以便解析器进行正确的解析。 注意:xml 和 version 必须小写
(2)使用的字符集 在声明语句中,用 encoding 指定本 XML 文档使用的字符集。XML 文档中的字符遵守 Unicode 标准。为了能容纳所有国家、民族的字符,Unicode 采用 16 位编码。编码是 Unicode 字符的字节序列表示。XML 解析器至少能够识别 UTF-8 和 UTF-16 两种编码。英文用 UTF-8 编码。 如果使用简体汉字,必须给 encoding 属性赋值为“GB2312”。若指定繁体汉字赋值为 “BIG5”。
(3)standalone 属性 standalone 属性指定本 XML 文档是否需要外部的 DTD 文档作为本文档的校验依据。也 即本 XML 文档是否是一个独立文档。默认值是“yes”,表示是独立文档不需要外部 DTD 关联,否则应该赋值为“no”。
这三个属性中,Version 属性是必须的,并且必须放在“<?xml”符号之后,其他两个是 可选项,按需要加入,其出现顺序没有限制。
- XML注释与HTML一样,均为<!---->
- XML标记命名规则
(1)标记必须以字母或下划线开头,后跟字母、数字、下划线、横线和圆点等,XML 名 称中不能包含空格,不能以字符串“xml”作为开头;
(2)xmL 是大小写敏感;
(3)标记不可重复定义。
- 文档结构
在 XML 文档中只有、也必须有一个根元素,它类似 HTML 中的<BODY>和</BODY>表示文档主体的开始和结束。除了根元素以外,其他所有元素都是子元素。
- 标记属性
(1)标记中可以使用多个属性,但属性名称不得重复;
(2)属性名是大小写敏感的;
(3)属性只能出现在起始标记或空标记中;
(4)属性值必须用(英文)引号引上;
(5)少用属性,尽可能用子元素。因为属性有几个缺陷: 属性值不能包含多重数值,但是元素可以; 属性值很难扩展; 属性不能描述结构内容,但是元素可以; 属性值很难通过 DTD 进行测试。