XML学习(不完全)

1、XML基础

  • eXtensible Markup Language 可扩展标记型语言
  • XML是一种通用的数据交换格式,可以使数据在各种应用程序之间轻松实现数据的交换。
  • 它是一种类似于HTML的标记语言,但二者有很多区别。

HTML与XML区别:

  1. XML中的标记可以根据需要自行定义,并且可扩展,而HTML中的标记都是预定义好的。
  2. XML主要用于传输和存储数据(可以认为XML是一个小型的数据库),而HTML主要用于显示数据。
  3. 格式良好的XML有且只有一个根元素,而HTML可以有多个根元素。
  4. XML严格区分大小写,而HTML不区分大小写。
  5. XML中的空格不会自动删除,HTML中的空格是自动过滤的。

总之,XML既不是HTML的升级,也不是HTML的替代产品,虽然两者有相似之处,但它们的应用领域完全不相同。

  • 在XML文档中,通过元素的嵌套关系可以很准确的描述具有树状层次结构的复杂信息,因此,越来越多的应用程序都采用XML格式存放相关的配置信息,以便于读取和修改。
  • XML是W3C组织发布的一项技术。
  • XML有1.0和1.1版本,但主要使用前者,因为1.1版本不能向前兼容。

2、XML应用

  • 系统之间传输数据时的格式
    在这里插入图片描述
  • 表示生活中有关系的数据
  • 经常用在配置文件里

3、XML语法

3.1 文档声明

文档声明语句如下(必须写在第一行第一列——声明前面不能有空行,也不能写注释;声明本行最前面不能有空格或其他字符):

<?xml version="1.0" encoding="gbk"?>
  • 版本属性version:1.0(使用)版本、1.1版本
  • 编码属性encoding(可省略):gbk utf-8 GB2312 iso8859-1(不包含中文) 【保存在磁盘上的文件编码要与声明的编码一致】
  • standalone(可省略):用来说明文档是否独立,即是否依赖其他文档,属性值为“yes”或“no”

XML文档中文乱码问题的解决:

  1. 原因:保存在磁盘上的文件编码要与声明的编码不一致
    在这里插入图片描述
  2. 解决:使保存在磁盘上的文件编码要与声明的编码一致——在保存文件时记得手动选择一致的编码

3.2 元素/标签

  • 一个XML文档必须有且仅有一个根标签,其他的标签都是这个标签的子标签或孙标签。
  • 如果一个标签没有内容,那么可以直接写成< tag/ >,可以不必写成< tag >< /tag >
  • 对于XML标签中出现的所有换行和空格,XML解析程序都会当做标签内容进行处理。例如,下面两段内容的意义是不一样的:【由于在XML文档中,空格和换行都将作为原始内容被处理,所以,在编写XML文件时,使用换行和缩进等方式使文本可读性更强的书写习惯要“被迫改变”】
    在这里插入图片描述
  • XML中标签的命名规则:
    • 标签的命名区分大小写(HTML中不区分)
    • 不能以数字或下划线开头
    • 不能以XML或xml或Xml等字符开头
    • 不能使用空格和冒号
    • 可以是中文

3.3 属性

XML是标记型文档,可以有属性。属性定义的一些说明:

  • 一个标签上可以有多个属性,但这些属性不能重名
  • 属性的命名规范与元素的命名规范相同
  • 属性名和属性值之间使用“=”连接,属性值应使用单引号或双引号括起来

3.4 注释

<!-- 注释内容 -->

3.5 特殊字符

在这里插入图片描述

3.6 CDATA区

解决需要频换转换的问题。如,对于下面的代码:<test>if(a < b && b < c) </test>,其中的<&都需进行转义,但如果这样做就太过麻烦,于是出现了CDATA区——出现在CDATA区中的字符都不需转义,因为都看作是文本内容,而不是标签。使用语法如下:
<![CDATA[ 内容 ]]>

  • 实例:
    <![CDATA[<test>if(a < b && b < c) </test>]]>

3.7 PI指令

PI(Processing Instruction)指令是处理指令,使用它可以在XML文件中设置样式。用来指挥软件如何解析XML文档。

  • 语法:<?内容?>
  • 常用处理指令:
  1. XML声明:<?xml version="1.0" encoding="GB2312"?>
  2. xml-stylesheet指令(指示XML文档所使用的的CSS样式XSL):<?xml-stylesheet type="text/css" href="文件名.css"?>(注:对中文命名的标签元素不起作用)

XML文档:
在这里插入图片描述
CSS文档:
在这里插入图片描述
结果:
在这里插入图片描述

3.8 XML的约束

用来限制文档中出现的标签元素。XML的约束技术有dtd约束schema约束

发布了53 篇原创文章 · 获赞 33 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/jy_z11121/article/details/100057819