什么是xml?

可扩展标记语言

xml的作用?

1.传递数据

2.表示一些关系型数据

3.文件配置

xml的文档声明

<?xml version="1.0" encoding="gbk" standalone="yes"?>

属性:

version:版本,只有两个版本(1.0、1.1),一般我们使用的是1.0版本,因为1.1无法向下兼容。

encoding:编码,如GBK、UTF-8、GB2312等等。

standalone:是否依赖其它文件(yes/no)。

注意问题:

在保存xml文件的时候,系统默认的编码方式一定要于encoding对应。

xml的标签

命名规则:如<China></China>、<中国></中国>、< 美国/>(如标签内没有数据可采用这种方法)

注意:

1.命名标签时不能以数字和下划线开始

2.不能以xml、Xml、XMl、XML、xmlC等开头

<!-- 错误写法 -->
<5China></5China>
<_China></_China>
<xmlC></xmlC>
<XMl></XMl>

3.注意下面两个xml文件是不同的(xml文件认为回车以及空格都是文件内容的一部分)

<?xml version="1.0" encoding="gbk"?>
<China>
	我是中国人
</China>
<?xml version="1.0" encoding="gbk"?>
<China>我是中国人</China>

4.xml标签区分大小写

5.xml标签中不能含有空格和冒号

xml的属性

属性的命名规则同标签一样

使用方法和html大致相同

xml的注释

<!-- 注释内容 -->

注意:注释不能嵌套注释

xml中的特殊字符

特殊字符 替代符号
& &amp;
> &gt;
< &lt;
" &quot;
' &apos;

xml的CDATA区

写法:

<![CDATA[ 内容 ]]>

xml的PI指令

如同给html加样式,但是xml的主要作用是存储数据而不是显示数据,此处只作为了解内容

<?xml-stylesheet type="text/css" href="test.css"?>

@charset "utf-8";
/* CSS Document */
ShaanXi {
	background-color:red;
	}
ShanXi {
	background-color:blue;
	}
<?xml version="1.0" encoding="gbk"?>
<?xml-stylesheet type="text/css" href="test.css"?>
<China>
	<ShaanXi>陕西</ShaanXi>
	<ShanXi>山西</ShanXi>
</China>

xml的约束条件

如下面这个例子,我们这China这个标签下加入了NewYork这个城市,显然就不太符合数据的关系,虽然语法上不存在任何问题,这时我们就需要对数据进行约束了。

<?xml version="1.0" encoding="gbk"?>
<China>
	<ShaanXi>陕西</ShaanXi>
	<ShanXi>山西</ShanXi>
        <NewYork>纽约</NewYork>
</China>

xml约束的技术:dtd约束和schema约束(本篇不讲解)