xml学习笔记
来源:互联网 发布:淘宝电子书怎么没了 编辑:程序博客网 时间:2024/05/02 04:18
1. xml简介
1.1. 什么是xml
Ø XML 指可扩展标记语言(EXtensible Markup Language)
Ø XML 是一种标记语言,很类似 HTML
Ø XML 的设计宗旨是传输数据,而非显示数据
Ø XML 标签没有被预定义。您需要自行定义标签。
Ø XML 被设计为具有自我描述性。
Ø XML 是 W3C 的推荐标准
1.2. xml与html的比较
XML 不是 HTML 的替代。
XML 和 HTML 为不同的目的而设计:
XML 被设计为传输和存储数据,其焦点是数据的内容。
HTML 被设计用来显示数据,其焦点是数据的外观。
HTML 旨在显示信息,而 XML 旨在传输信息。
XML 是对 HTML 的补充。
XML 不是对 HTML 的替代,理解这一点很重要。在大多数 web 应用程序中,XML 用于传输数据,而 HTML 用于格式化并显示数据。
对 XML 的最好的描述是:XML 是独立于软件和硬件的信息传输工具。
1.3. xml的用途
1) XML 把数据从 HTML 分离
2) XML 简化数据共享
3) XML 简化数据传输
4) xml可以作为配置文件
5) xml可以充当小型数据库
2. xml语法
2.1. xml树形结构
XML 文档形成了一种树结构,它从“根部”开始,然后扩展到“枝叶”。
<?xml version="1.0" encoding="UTF-8"?>
<bookstore>
<book category="COOKING">
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>
<book category="CHILDREN">
<title lang="en">Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
<book category="WEB">
<title lang="en">Learning XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
</book>
</bookstore>
2.2. 语法规则
Ø 所有 XML 元素都须有关闭标签
Ø XML 标签对大小写敏感
Ø XML 必须正确地嵌套
Ø XML 文档必须有且只有一个根元素
Ø XML 的属性值须加引号
Ø XML 中的注释:<!—注释内容 -->
Ø 在 XML 中,空格会被保留
Ø XML 以 LF 存储换行
2.2.1. xml中的实体引用
在 XML 中,一些字符拥有特殊的意义。
如果你把字符"<" 放在 XML 元素中,会发生错误,这是因为解析器会把它当作新元素的开始。
这样会产生 XML 错误:
<message>if salary < 1000then</message>为了避免这个错误,请用一个实体引用来代替 "<" 字符:
<message>if salary < 1000then</message> 在 XML 中,有 5 个预定义的实体引用:
Ø < < 小于
Ø > > 大于
Ø & & 和号
Ø ' ' 单引号
Ø " " 引号
注释:在 XML 中,只有字符"<" 和 "&" 确实是非法的。大于号是合法的,但是用实体引用来代替它是一个好习惯。
2.3. 文档声明
<?xml version="1.0" encoding="UTF-8" standalone=”yes”?>
xml文档声明放在XML文档的第一行。
XML文档声明由以下几个部分组成:
Ø version - -文档符合XML1.0规范
Ø encoding - -文档字符编码,比如”gb2312”
Ø standalone - -文档定义是否独立使用
standalone="yes“ dtd文件在本文件内部中
standalone=“no” 默认,dtd文件不在本文件中
2.4. 元素
2.4.1. 什么是xml元素?
XML 元素指的是从(且包括)开始标签直到(且包括)结束标签的部分。元素可包含其他元素、文本或者两者的混合物。元素也可以拥有属性。
XML元素指XML文件中出现的标签,一个标签分为开始标签和结束标签,一个标签有如下几种书写形式,例如:
包含标签体:<a>www.sohu.cn</a>
不含标签体的:<a></a>, 简写为:<a/>
一个标签中也可以嵌套若干子标签。但所有标签必须合理的嵌套,绝对不允许交叉嵌套,例如:<a>welcome to <b>www.sohu.org</a></b>
2.4.2. xml元素命名规范
Ø 名称可以含字母、数字以及其他的字符
Ø 名称不能以数字或者标点符号开始
Ø 名称不能以字符 “xml”(或者 XML、Xml)开始
Ø 名称不能包含空格
Ø 名称不能包含:号
Ø 名称区分大小写
2.5. 属性
<Student ID="100">
<Name>TOM</Name>
</Student>
Ø 属性值用双引号(")或单引号(')分隔(如果属性值中有',用"分隔;有",用'分隔)
Ø 一个元素可以有多个属性,它的基本格式为:<元素名属性名="属性值">
Ø 特定的属性名称在同一个元素标记中只能出现一次
Ø 属性值不能包括<,>, &
2.6. CDATA
有些内容可能不想让解析引擎解析执行,而是当作原始内容处理,用于把整段文本解释为纯字符数据而不是标记的情况。包含大量<、>、&或者"字符。CDATA节中的所有字符都会被当作元素字符数据的常量部分,而不是XML标记。
语法:
<![CDATA[
……..
]]>
Ø 可以输入任意字符(除]]>外)
Ø 不能嵌套
2.7. 处理指令
处理指令,简称PI (processinginstruction)。处理指令用来指挥解析引擎如何解析XML文档内容。
例如,在XML文档中可以使用xml-stylesheet指令,通知XML解析引擎,应用css文件显示xml文档内容。 <?xml-stylesheettype="text/css" href=“my.css"?>
处理指令必须以“<?”作为开头,以“?>”作为结尾,XML声明语句就是最常见的一种处理指令。
- xml学习笔记 1. XML
- XML Base学习笔记
- XML学习笔记
- XML学习笔记01
- xml学习笔记---1
- xml学习笔记---2
- XML学习笔记
- XML学习笔记(三)
- XML学习笔记
- xml学习笔记一
- XML学习笔记
- XML schema学习笔记
- XML学习笔记
- XML Schema学习笔记
- XML语法---学习笔记
- XML元素---学习笔记
- XML属性---学习笔记
- xml学习笔记
- 数据传输格式xml/json
- Spring Boot——2分钟构建spring web mvc REST风格HelloWorld
- Ubuntu 10.10 老版本源列表
- http soap关系
- Unity3d碎碎念
- xml学习笔记
- 【机器学习】k近邻算法(kNN)
- MDK编译错误:C4056E type of input file 'xxx' unknown
- 关于人工智能的一些概念和算法
- apache common-logging 和 log4j的相关说明
- 重新学JAVA day 01
- 分类之神经网络
- matlab flipud fliplr
- apache common常用库说明