最近看了看XML视频,下面对其内容进行小结!
一、首先讲讲HTML和XML的区别:
1、HTML(HyperText Markup Language)是互联网应用的最基础技术,关注的是数据的显示,核心作用是信息的布局和显示
2、XML(eXtensible Markup Language)是一种标记语言,类似HTML,可扩展标记语言,标记都是自定义的,设计宗旨是包含和传输数据,是W3C的推荐标准
二、对XML的基础知识进行简单介绍:
1、XML的主要应用:
做为系统的配置文件
Ajax中传输数据
Web Services中传输数据
异构平台的数据交换与整合
2、XML元素:
是开始标签、结束标签以及位于二者之间的所有内容,元素区分大小写,要正确嵌套,都必须正确关闭
3、属性:
必须有值、值必须用引号括起来(可以是单引号,也可以是双引号,但要始终保持一致)
4、语法规则:
XML文件必须有根元素
XML标记对大小写敏感
元素必须被正确嵌套
属性必须加引号
三、DTD(Document Type Definition)
1、DTD简介:
定义XML文件的结构,为XML文件提供语法与规则,内容既可以定义在XML文件中,也可以定义在XML文件之外,使用XML进行数据交换的行业或组织可定义自己的DTD,DTD对于XML是可选的内容
2、DTD元素
(1)、元素声明语法:
第一种方法:
<!ELEMENT 元素名称 类别>第二种方法:
<!ELEMENT 元素名称(元素内容)>例子:
<!ELEMENT 书名 (#PCDATA)> <!ELEMENT 计算机书籍(书名,价格,简要介绍)>
(2)、空元素声明:
语法:
<!ELEMENT 元素名称 EMPTY>例子:
<!--DTD中:--> <!ELEMENT br EMPTY> <!--XML中:--> <br/>
(3)、表示带有任何内容的元素:
语法:
<!ELEMENT 元素名称 ANY>例子:
<!ELEMENT student ANY>
(4)、声明只出现一次的元素
<!ELEMENT 元素名称(子元素名称)>
(5)、声明最少出现一次的元素
<!ELEMENT 元素名称(子元素名称+)>
(6)、声明出现零次或多次的元素
<!ELEMENT 元素名称(子元素名称*)>
(7)、声明出现零次或一次的元素
<!ELEMENT 元素名称(子元素名称?)>
(8)、声明“或”
<!ELEMENT 元素名称(子元素名称|子元素名称2)>
(9)、声明混合型的内容:
<!ELEMENT 元素名称(#PCDATA|子元素名称)*>
(10)、子元素要求顺序
DTD中:
<!ELEMENT 计算机书籍(书名,价格)> <!ELEMENT 书名(#PCDATA)> <!ELEMENT 价格(#PCDATA)>XML中:
<书籍列表> <计算机书籍> <书名>J2EE教程</书名> <价格>100</价格> </计算机书籍> </书籍列表>
(11)、子元素不要求顺序
DTD中:
<!ELEMENT 计算机书籍(书名|价格)*> <!ELEMENT 书名(#PCDATA)> <!ELEMENT 价格(#PCDATA)>XML中:
<书籍列表> <计算机书籍> <书名>J2EE教程</书名> <价格>100</价格> </计算机书籍> </书籍列表>
(12)、重复元素的例子
DTD中:
<!ELEMENT 计算机书籍(书名,作者+)> <!ELEMENT 书名(#PCDATA)> <!ELEMENT 作者(#PCDATA)>XML中:
<书籍列表> <计算机书籍> <书名>J2EE教程</书名> <作者>张三</作者> <作者>张四</作者> </计算机书籍> </书籍列表>
(13)、成组元素:
DTD中:
<!ELEMENT 计算机书籍(书名,价格)+> <!ELEMENT 书名(#PCDATA)> <!ELEMENT 价格(#PCDATA)>XML中:
<书籍列表> <计算机书籍> <书名>J2EE教程</书名> <价格>100</价格> <书名>XML教程</书名> <价格>50</价格> </计算机书籍> </书籍列表>
属性声明语法:
<!ATTLIST 元素名称 属性名称 属性类型 默认值>例子:
DTD文件中:
<!ATTLIST payment type CDATA "cash">
XML文件中:
<payment type="cash">