目录
一、XML
xml:Extensible Markup Language,可扩标记语言。
在实际开发中,由于不同操作系统存储数据的格式不兼容,当这些系统在进行数据传输时,会变得很困难。为此,W3C组织推出了一种新的数据交换标准—XML,它是一种通用的数据交换格式,可以使数据在各种应用程序之间轻松地实现数据的交换。
W3C是World Wide Web Consortium(万维网联盟)的缩写,它是对网络标准定制的一个非赢利组织,如HTML、XHTML、CSS、XML的标准就是由W3C来定制
1、XML和HTML的比较
XML和HTML都是标记文本,它们在结构上大致相同,都是以标记的形式来描述信息,但实际上它们有着本质的区别,具体如下:
(1)HTML中的标记是用来显示数据的,而XML中的标记用来描述数据的性质和结构。
(2)HTML是不区分大小写的,而XML是严格区分大小写的。
(3)HTML可以有多个根元素,而格式良好的XML有且只能有一个根元素。
(4)HTML中,属性值的引号是可用可不用的,而XML中,属性值必须放在引号中。
(5)HTML中,空格是自动过滤的,而XML中,空格则不会自动删除。
(6)HTML中的标记是预定义的,而XML中的标记是可以随便定义的,并且可扩展。
XML 不是 HTML 的替代。
XML 和 HTML 为不同的目的而设计:
XML 被设计为传输和存储数据,其焦点是数据的内容。
HTML 被设计用来显示数据,其焦点是数据的外观。
HTML 旨在显示信息,而 XML 旨在传输信息。
需要注意的是,XML不是HTML的升级,也不是HTML的替代产品,虽然两者有些相似,但它们的应用领域和范围完全不同。
2、文档的声明
在一个完整的XML文档中,必须包含一个XML文档声明,这个声明表示该文档是一个XML文档,以及该文档遵循哪个XML版本的规范。XML文档声明的语法格式如下所示:
<?xml 版本信息[编码信息] [文档独立性信息]?>
从上面的语法格式中可以看出,文档声明以符号“<?”开头,以符号“?>”结束,中间可以声明版本信息,编码信息以及文档独立性信息。
文档编码声明:可以通过在XML文档声明中指定encoding属性,来说明XML文档所使用的编码方式。默认情况下,XML文档使用的是UTF-8编码方式。对于含有中文字符的XML文档,文档中的字符需要采用unicode或GB2312(简体中文字符编码)编码来表示。
设置standalone属性的值来声明这个文档是否为独立的文档。默认情况下standalone="no"
注意:XML声明必须位于文档的第一行,前面不能有任何字符。在XML声明时,如果同时设置了encoding和standalone属性,standalone属性要位于encoding属性之后。
3、什么是 XML 元素?
XML 元素指的是从(且包括)开始标签直到(且包括)结束标签的部分。
元素可包含其他元素、文本或者两者的混合物。元素也可以拥有属性。
在XML文档中,主体内容都是由元素(Element)组成的。元素一般是由开始标记,属性,元素内容和结束标记构成,具体示例如下:
<辣条>霸王丝</辣条>
需要注意的是:
- 如果一个元素没有嵌套在其它元素内,则这个元素称为根元素,根元素是XML文档定义的第一个元素。以上就是根元素。
- 一个元素中如果没有嵌套子元素,也没有包含文本内容,则这样的元素称为空元素,空元素可以不使用结束标记,例如:<img></img>可以简写成<img/>。
xml元素定义规则:
- 名称可以含字母、数字以及其他的字符,区分大小写,例如:<P>和<p>是两个不同的标记
- 名称不能以数字或者标点符号开始,包含空格、冒号、分号、逗号和尖括号等,元素不能以数字开头,否则XML文档会报错。
- 名称不能以字符 “xml”(或者 XML、Xml)开始
- 名称不能包含空格
- 建议不要使用“.”,因为在很多程序语言中,“.”用于引用对象的属性。
- 建议名称的大小写尽量采用同一标准,要么全部大写,要么全部小写
- 名称可以使用非英文字符,例如中文,但有些软件可能不支持非英文字符以外的字符,在使用时应考虑这种情况
可使用任何名称,没有保留的字词。
4、元素属性
在XML文档中,可以为元素定义一个或多个属性,属性是对元素的进一步描述和说明,每个属性都有自己的名称和取值,在XML文档中,属性的命名规范同元素相同,属性值必须要用双引号(“”)或者单引号(‘’)引起来,否则被视为错误。
<person name="zhangsan"> 或者: <person name='lisi'>
属性还可以通过子元素的形式来描述同样的信息,将属性定义的示例代码改写为以下代码,具体如下:
<person >
<firstname>zhang</firstname>
<lastname>san</lastname>
</person>
这样与<person name="zhangsan"> 输出结果也是一样的。
5、注释
XML注释和HTML注释写法基本一致,具体语法格式如下所示:
如:<!-- 注释信息-->
注意:
1、注释不能出现在XML声明之前,XML声明必须是文档的第一行
2、注释不能出现在标记中3、字符串“--”不能在注释中出现
4、在XML中,不允许注释以“--->”结尾
5、注释不能嵌套使用,因为第一个“<!--”会匹配在它后面第一次出现的“-->”作为一个完整的释符
6、特殊字符
代码如下:注意分号不可漏。
<?xml version="1.0" encoding="UTF-8"?>
<person>
<age>6<8 </age>
<price>6>4 </price>
<name>' zhangsan' </name>
<love>I & Y</love>
</person>