一、简述
1:xml是用来传输和存储数据的,焦点是数据的内容
2、HTML用来显示数据,焦点是数据的外观
3、xml变迁没有被预定义,需要自行定义标签
4、例子:
<note>
<to>Tove</to>给谁
<from>Jani</from>来自谁<heading>Reminder</heading>标题
<body>Don't forget me this weekend!</body>消息主体
</note>
二、用途
1、把数据从html分离
2、简化数据共享
3、简化数据传输
4、简化平台变更
5、使数据更有用
6、用于创建新的互联网语言
三、xml的树结构
1、<?xml version="1.0" encoding="UTF-8"?>----------xml声明,定义xml版本和使用的编码
<note>----文档的根元素,下边的都是子元素
<to>Tove</to>
<from>Jani</from><heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>---根元素结尾
xml必须包含根元素。
四、xml语法
1、必须含有根元素
2、、xml声明可选,若存在,则放在文档第一行
3、xml中,必须都必须存在关闭标签,不可省略和简写
4、xml标签大小写敏感
5、嵌套情况需要注意,必须正确嵌套
6、属性值必须加引号
例:<note date="12/11/2007">
7、实体引用,及字符问题,在xml中只有<和&是非法的
xml中5个预定义实体引用
< <;> >& &' '" "
8、注释:<!-- -->
9、xml中,空格会被保留,长空格会被合并成为一个
10、以LF存储换行
在 Windows 应用程序中,换行通常以一对字符来存储:回车符(CR)和换行符(LF)。
在 Unix 和 Mac OSX 中,使用 LF 来存储新行。
在旧的 Mac 系统中,使用 CR 来存储新行。
XML 以 LF 存储换行。
五、xml元素
1、xml元素是从(且包括)开始标签直到(且包括)结束标签的部分。一个元素可以包括其他元素,文本,属性,或混合以上所有。
2、xml命名规则:
名称可以包含字母,数字以及其他字符
不能以数字和标点符号开始
不能以字符xml(无论大小写)开始
不能包含空格
3、最佳命名习惯
具有描述性
简短,简单
避免“-”字符
避免“.”字符
éòá 等非英语字母是完全合法的,不过需要留意,您的软件供应商不支持这些字符时可能出现的问题。
4、xml元素是可扩展的:可以在不中断应用程序的情况下进行扩展
六、xml属性(提供有关元素的额外信息)
1、属性通常提供不属于数据组成部分的信息。
2、xml属性值必须被引号包围(单引号双引号都可以)(若属性值本身包含双引号,则可以使用单引号)
例:<gangster name='George "Shotgun" Ziegler'>
3、xml中尽量避免使用属性,若信息看上去像数据,就是用元素吧,仅仅使用属性提供与数据无关的信息
4、因属性而引起的问题
属性不能包含多个值(元素可以)
属性不能包含树结构(元素可以)
属性不容易扩展
5、 针对元数据的xml属性:例:id
元数据(有关数据的数据)应当存储为属性,而数据本身应当存储为元素。
七、xml验证(xml DTD)
1、形式良好的xml文件
(前面写了,现在再写一遍)
XML 文档必须有一个根元素
XML元素都必须有一个关闭标签
XML 标签对大小写敏感
XML 元素必须被正确的嵌套
XML 属性值必须加引号
2、验证xml文档:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE note SYSTEM "Note.dtd">-------DOCTYPE 声明是对外部 DTD 文件的引用
<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
3、XML DTD:
DTD的目的是定义xml文档的结构
4、XML Schema
W3C 支持一种基于 XML 的 DTD 代替者,它名为 XML Schema:
八、XML验证器
1、xml错误会终止程序
2、对xml进行语法检查
3、根据DTD来验证xml
<?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文件
1、XML 文档将显示为代码颜色化的根以及子元素。通过点击元素左侧的加号(+)或减号( - ),可以展开或收起元素的结构。要查看原始的 XML 源(不包括 + 和 - 符号),选择"查看页面源代码"或从浏览器菜单"查看源文件"。
2、查看无效的xml文件
如果一个错误的XML文件被打开,浏览器会报告错误。
3、大多数浏览器仅仅把xml文档显示为源代码
十、xml css
1、使用css显示xml
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/css" href="cd_catalog.css"?>--------把xml文件链接到css文件中
<CATALOG>
<CD>
<TITLE>Empire Burlesque</TITLE>
<ARTIST>Bob Dylan</ARTIST>
<COUNTRY>USA</COUNTRY>
<COMPANY>Columbia</COMPANY>
<PRICE>10.90</PRICE>
<YEAR>1985</YEAR>
</CD>
<CD>
<TITLE>Hide your heart</TITLE>
<ARTIST>Bonnie Tyler</ARTIST>
<COUNTRY>UK</COUNTRY>
<COMPANY>CBS Records</COMPANY>
<PRICE>9.90</PRICE>
<YEAR>1988</YEAR>
</CD>
.
.
.
</CATALOG>
不是常用方法,推荐使用XSLT
十一、XML XSLT
1、使用XSLT显示XML:XSLT在浏览器西安市XML文件之前,现把它转化为HTML
2、在服务器上通过XSLT转换