版权声明:本文为博主原创文章,未经博主允许不得转载。http://blog.youkuaiyun.com/u012571511/article/details/79640976
(二)语法
主要内容:文档声明、标签、属性、注释、转义字符、CDATA区、处理指令
1.文档声明
<?xml version="1.0" encoding="GB2312" standalone="yes" ?>
①00年的XML 1.0规范
②本文档的字符编码
③文档是否独立,若独立,则不能引用外部的DTD规范文件
2.标签
<student>学生小明</student>
<a/> <!--空标签的书写格式-->
①区分大小写 ②不能以数字或下划线开头 ③不能包含空格
④名称中间不能包含冒号(:) ⑤不允许交叉嵌套 ⑥有且仅有一个根标签
注:由于标签间的空格和换行都会作为原始内容被解析(parse),so在编写XML文件时,使用换行和缩进等方式来让原文件中的内容清晰可读的“良好”书写习惯可能会带来问题。
3.属性
<Student name="eric">student</Student> <!-- Student为标签名,name为属性名,eric为属性值 -->
①一个标签可有多个属性 ② 属性名的命名同标签名 ③属性值用双引号(")或单引号(')引
4.注释
<!--注释内容-->
①在声明之后且不能嵌套
5.转义字符
一些特殊字符,若想显示其原始样式 → 转义。 e.g.
图2.1 转义字符
6.CDATA区
<![CDATA[ 内容 ]]>
作用:CDATA区中的内容不会被解析引擎解析执行,将直接原封不动的输出。
7.处理指令(processing instruction)
作用:用来指挥解析引擎如何解析XML文档内容,PI以“<?”作为开头,以“?>”作为结尾,XML声明语句就是最常见的一种处理指令。
e.g. 在XML文档中可以使用xml-stylesheet指令,通知XML解析引擎,应用css文件显示xml文档内容。
<?xml-stylesheet type="text/css" href="1.css"?>
关于DTD约束和Schema约束,后续补充吧。