XML是可扩展标记语言(Extensible Markup Language),设计用来传输数据而不是像HTML那样显示数据
XML标记都是自定义的
它是W3C组织推荐的标准
XML不是HTML的替代
XML和HTML的设计使用场景并不一致,XML被设计用来传输和存储数据,其焦点是数据的内容
HTML是设计来显示数据的,其焦点是数据的外观。
1.作为系统的配置文件
例如:spring中的applicationContext.xml
Web应用中的Web.xml
2.在Ajax中传输数据
3.在Web Service中传输数据
4.异构平台之间的数据交换与整合
XML文件一般以XML声明开始,它提供了文档的基本信息
<?xml version="1.0" encoding="utf-8"?>
其中,version表示XML的版本,Encoding表示XML文件使用的字符编码方法。
2.标签标签是左括号(<)和右括号(>)之间的文本
开始标签(例如:<name>)
结束标签(例如:</name>)
3.根元素
XML文件是一种树状结构,它从根部开始,然后扩展到枝叶
XML的内容必须包含在一个单一元素中,这个单一元素称为根元素,它包含文档中所有文本和所有其他元素
XML必须有根元素
元素是开始标签、结束标签以及位于两者之间的所有内容
元素是区分大小写的,并且要正确嵌套,XML元素都必须正确关闭。
<book>
<author>
<name>Name</name>
<email>xxxxxxxxxxx@163.com</email>
</author>
</book>
5.注释
在XML中,注释是用 <!-- “和”-->引起来的
6.属性
属性必须有值;
那些值必须用引号括起
可以使用单引号,也可以使用双引号,但要始终保持一致
在特殊的标签CDATA下,所有的标签、实体引用都被忽略,而被XML处理程序一视同仁地当作字符数据看待
<! [CDATA[文本内容]]>
5.格式良好的XML
拥有正确语法的XML被称为“形式良好”的XML
通过DTD验证的XML是“合法”的XML
格式良好的XML会遵守以下XML语法规则:
XML文件必须有根元素;
XML文件必须有关闭标签;
XML标记对大小写敏感;
XML元素必须被正确的嵌套;
XML属性必须加引号。
DTD是用来定义XML文件的结构,为XML文件提供语法与规则,内容既可以定义在文件之内也可以定义在文件之外。对于XML来说DTD是可选的内容。
1.命名空间命名空间是W3C的XML小组为了解决当一个XML文件中存在多个DTD描述的元素时,出现名称冲突问题而制定的标准
2.!ENTITY(实体)实体是用于定义引用普通文本或特殊字符的快捷方式的变量,实体引用是对尸体的引用,可以在内部或者外部对实体进行声明
<!ENTITIY 实体名称“实体的值”>
3.!ATTLIST(属性)
在DTD中,属性通过ATTLIST来进行声明
<!ATTLIST 元素名称 属性名称 类型属性 默认值>
4.! ELEMENT(元素)
DTD中元素声明使用下面的语法
<!ELEMENT 元素名称 类别>或<!ELEMENT 元素名称(元素内容)>
Schema
Schema是用来描述XML文档的结构,Schema是DTD的替代者,它比DTD更加强大。
Schema的优势Schema可针对未来的需求进行扩展,
Schema更加完善,功能更强大
Schema基于XML编写而成的
Schema支持数据类型,DTD没有