1 XML概述
1.1 XML简介
【定义】
XML 指可扩展标记语言(eXtensibleMarkupLanguage)。可扩展标记语言(英语:Extensible Markup Language,简称:XML)是一种标记语言,是从标准通用标记语言(SGML)中简化修改出来的。它主要用到的有可扩展标记语言、可扩展样式语言(XSL)、XBRL和XPath等。
【用途】
传输和存储数据。
- 数据传输:例如QQ聊天,微信聊天,获取天气数据。
- 显示数据之间的关系:行政区划之间的层级关系
- 配置文件:数据库连接经常会被配置在XML文件中
【特点】
与开发语言的操作系统无关,可跨平台实现操作系统间的通信。
- 可标记。同Html一样,都有自己的标签
- 可扩展。比Html多出来可以自行定义的标签
【具象描述】
可扩展标记语言;很像HTML的标记语言;设计宗旨是传输数据,而不是显示数据;XML 标签没有被预定义;可以自定义标签对;被设计为具有自我描述性;W3C 的推荐标准。
1.2 语法标记
「后缀名」
XML文件的后缀名是.xml。
「文档声明」必须在文件的第一行标记
「属性」
- version:xml的版本 1.0(使用)1.1
- encoding:xml编码 gbk utf-8 iso8859-1(不包含中文)
- standalone:是否需要依赖其他文件yes/no
1.3 标签
「标签定义」
在XML中,标签可以自行定义名称,标签都是成对出现,有开始就要有结束。
例如:章三,就是一个标签对。在Html中的标签对也符合这种规范,例如
。有些没有成对出现的,例如
这是一种简写。从这里可看出来有三种类型:
- 成对标签不包含标签体:
- 成对标签包含标签体:章三Student>
- 不成对标签不包含标签体:/>
「标签嵌套」
标签可以嵌套,必须要合理嵌套。
「标签语言格式」
可以是任意可解析的语言,例如英文,中文等。
「英文」
<Student>章三</Student>
「中文」
<城市>广州市</城市>
1.4 属性
<personclass="1"sex="男"><name>张三</name></person>
(1)一个标签上可以有多个属性
(2)属性名称不能相同
(3) 属性名称和属性值之间使用=,属性值使用引号括起来(可以单引号也可以双引号)(4)xml属性的名称规范和元素的名称规范一致
1.5 注释
编写注释的时候需要注意以下几点:
1、写法:
2、不能嵌套编写,例如 -->
3、不能在第一行编写,可以参考 1.2
1.6 特殊字符
「特殊转义符」
转义后 |
转义前 |
解释描述 |
< |
< |
less than |
> |
> |
greater than |
& |
& |
ampersand |
' |
' |
apostrophe |
" |
" |
quotation mark |
1.7 XML的CDATA区域
CDATA区段中的文本会被解析器忽略,其他的都会被XML解析器解析。
「作用」
1、解决多个字符都需要转义的操作
2、CDATA区里面,不需要转义
「格式」
<![CDATA[" 编写的内容 "]]>
1.8 PI指令和约束
「PI指令」
主要用于样式。
1.9 DTD约束
「DTD约束」
1、编写DTD文件
创建一个.dtd文件
2、编写约束
编写约束使用的标签是
3、引入约束文件
<!DOCTYPE根元素名称SYSTEM" dtd 文件的路径">
dtd引入方式:内部引入、外部引入、网络引入。上述实验就是外部引入的一个实例。
- 外部引入
- 内部引入
<!DOCTYPE根元素名称[<!ELEYENT person (name , age )><!ELEMENT name (#PCDATA) <!ELEMENT age (#PCDATA )> ]>
- 网络引入