XML--语法

来源:互联网 发布:工程项目做账软件 编辑:程序博客网 时间:2024/06/06 18:42

1.文档声明:
XML文件的后缀为.xml
XML文件要求文件有一个头部声明:<?xml version="1.0" encoding="UTF-8"?>表示当前文件是xml文件,版本为1.0,编码方式为UTF-8

2.元素:
每个xml文件必须有且只有一个根元素,根元素是一个完全包括文件中所有其他元素的元素。
xml元素是指文件中出现的标签,一个标签分为开始标签和结束标签,有两种书写形式:
包含标签体:<a>标签体</a>
不包含标签体:<a></a>,可以简写为<a/>
一个标签中可以嵌套多个子标签,但不允许交叉嵌套,例如:<a>你好!<b>程序员</a></b>
注意:xml标签中出现的所有空格和换行,解析程序都会当做标签内容处理。xml元素区分大小写,不能以数字或下划线开头,不能包含空格。

3.属性

<student id="100">               <name>TOM</name></student>

一个元素可以有多个属性,基本格式如上,用空格分开即可,相同属性名称在同一个元素中值可以出现一次

4.实体
解析器默认实体:主要是一些具有特殊含义的字符,例如:大于号,小于号,单引号、双引号等等
&lt; <
&gt; >
&amp; &
&quot; "
&apos; '

自定义实体:
格式:

<!DOCTYPE courses[            <!ENTITY 实体名 实体内容>        ]>

例如:

<!DOCTYPE courses[            <!ENTITY 名字 "张三">]>

当使用”&名字”这个实体是,所代表的字符串就是“张三”

5.PCDATA,CDATA
PCDATA指会被xml文档解析器解析的内容,xml文档中的正常内容基本都是PCDATA.
CDATA指不会被xml文档解析器解析的内容,会直接按照字符串原样输出格式:<![CDATA[需要原样输出的字符串]]>

6.处理指令

处理指令必须以<? 作为开头,以 ?> 作为结尾,XML文件的头部声明语句就是最常见的一种处理指令。 

xml-stylesheet指令,通知xml解析引擎,使用css文件显示xml文档内容。

<?xml-stylesheet type="text/css" href="css文件路径"?>

css文件格式:

name{    font-size:30px;    font-weight:bold;    color:red;    }age{    font-size:30px;    font-weight:bold;    color:green;    }

7.命名空间,提供避免元素命名冲突的方法
第一种:使用前缀避免命名冲突,通过前缀创建两种不同类型的同名元素
<h:table>
<h:tr>
<h:td>Apples</h:td>
<h:td>Bananas</h:td>
</h:tr>
</h:table>
此 XML 文档携带着有关一件家具的信息:
<f:table>
<f:name>茶几</f:name>
<f:width>80</f:width>
<f:length>120</f:length>
</f:table>

第二种:
使用命名空间,即设置xmlns属性,命名空间属性被放置于元素的开始标签之中,并使用以下的语法:xmlns:namespace-prefix="namespaceURI"
当命名空间被定义在元素的开始标签中时,所有带有相同前缀的子元素都会与同一个命名空间相关联。
用于标示命名空间的地址不会被解析器用于查找信息。其惟一的作用是赋予命名空间一个惟一的名称

8.xml约束
使用DTD描述元素、属性和其他杂项在xml文档中的使用规则的说明,加入该DTA的xml文档必须按照DTD的规定书写。