简介
XML 指可扩展标记语言(eXtensible Markup Language)XML 被设计用来传输和存储数据,其焦点是数据的内容,旨在传输信息,而HTML 被设计用来显示数据,旨在显示数据。
声明
<?xml version="1.0" encoding="utf-8"?>
表明版本以及编码类型
结构
XML 文档形成了一种树结构,它从"根部"开始,然后扩展到"枝叶"。
<note>根元素
<to>Tove</to>子元素
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>根元素闭合
元素是指开始标签到结束标签里的部分,可以包含其他元素,文本,属性等,元素是可扩展的,避免使用属性,因为属性不能包含多个值(元素可以);属性不能包含树结构(元素可以);属性不容易扩展(为未来的变化),一般属性都是用来标记元素的,属于数据的数据,属性用双引号括起来表示<note date="12/11/2007">
元数据(有关数据的数据)应当存储为属性,而数据本身应当存储为元素。
这里所有<to><from><heading><body>都包含在<note>元素里,这些元素和html一样标签成对存在,与HTML很大的不同在于标签是自己定义的,自己定义文档结构
<?xml version="1.0" ?> 声明
<!DOCTYPE note [
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>
]>文档结构
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<message>Don't forget me this weekend!</message>
</note>XML正文
特殊字符
一些特殊字符需要用实体来代替
预定义实体引用
XMLHttpRequest 对象
用于在后台与服务器交换数据。可以在不重新加载页面的情况下更新网页,在页面已加载后从服务器请求数据,在页面已加载后从服务器接收数据,在后台向服务器发送数据。
DOM(Document Object Model 文档对象模型)定义了访问和操作文档的标准方法。因此很容易理解XML DOM(XML Document Object Model)是定义了访问和操作 XML 文档的标准方法。这个过程是先将XML文档解析到XML DOM对象中,然后通过Javascript提取信息。
XML 命名空间
在 XML 中,元素名称是由开发者定义的,当两个不同的文档使用相同的元素名时,就会发生冲突,因此我们需要命名空间来避免。
使用名称前缀,用于前缀的命名空间必须被定义,在元素的开始标签的 xmlns 属性中定义,语法为xmlns:前缀="URI"
例如:<h:table xmlns:h="http://www.w3.org/TR/html4/">
命名空间可以在根元素中声明
<root xmlns:h="http://www.w3.org/TR/html4/"
xmlns:f="http://www.w3cschool.cc/furniture">
<h:table>
<h:tr>
<h:td>Apples</h:td>
<h:td>Bananas</h:td>
</h:tr>
</h:table>
<f:table>
<f:name>African Coffee Table</f:name>
<f:width>80</f:width>
<f:length>120</f:length>
</f:table>
</root>
对比
可见XML和HTML类似,只是XML更为轻巧优雅,同样XML也有专门针对性的样式表语言XSL (可扩展样式表语言)
【包括三大部分:
XSLT(XSL 转换) - 把 XML 转换为其他格式,比如 HTML
XSL-FO(XSL 格式化对象)- 用于格式化 XML 文档的语言
XPath - 用于导航 XML 文档的语言
网友评论