xml初认识
1.xml简介 应用
xml:extensible Markup Language:可扩展标记型语言
可扩展:
-html里面的标签是固定的,每个标签都有特定的含义
-xml中标签可以自己定义,也可以携程中文的标签
例<person></person> <猫></猫>
xml用途:
** html是用于显示数据,xml也可以显示数据(不是主要功能)
**xml主要功能是传输数据
xml的应用:不同的系统之间传输数据
**qq之间数据的传输
用来表示生活中有关系的数据
经常用在配置文件
*比如用在连接数据库,如果修改数据库的信息,不需要修改源代码,只需要配置文件就可以了
此图用xml表示:
<?xml version="1.0" encoding="UTF-8"?>
<中国>
<北京>
<海淀><海淀/>
<丰台><丰台/>
<北京/>
<山东>
<济南><济南/>
<青岛><青岛/>
<山东/>
<湖北>
<武汉><武汉/>
<荆州><荆州/>
<湖北/>
<中国/>
2.xml文档语法规则
xml的语法
一.xml的文档声明
1.创建一个xml文件 后缀名为.xml
2.下列是文档声明,文档声明必须放在第一行,第一列否则会出现下列错误
<?xml version="1,0" encoding="UTF-8"?>
3.属性参数说明
version版本 1.0 1.1
gbk编码方式 utf-8 gbk iso8859-1(不包含中文)
standalone说明文档是否独立,即是都依赖其他文档 yes no
4.正确格式:
<?xml version="1.0" encoding="UTF-8"?> <person> <name>微雨燕双飞</name> <age>20</age> </person>
5.乱码解决
二.定义元素
1.若标签包含内容,标签是成对的 例:< person>微雨燕双飞</person>
2.若标签不包含内容,则结束 例: <person/>
3.标签嵌套合理: 例:<a><b><b/><a/> 错误<a><b><a/><b/>
4.只能有一个根标签,其它标签必须在此根标签之下
例:根标签为中国,其它标签必须在中国之内
<?xml version="1.0" encoding="UTF-8"?>
<中国>
<北京>
<海淀><海淀/>
<丰台><丰台/>
<北京/>
<山东>
<济南><济南/>
<青岛><青岛/>
<山东/>
<湖北>
<武汉><武汉/>
<荆州><荆州/>
<湖北/>
<中国/>
5.在xml中对空格和换行的解析都会当做标签内容来处理,例如下面两端内容的意义是不一样的
第一段: 第二段:
<网址>www.baidu.com<网址/> <网址>
www.baidu.com
<网址/>
6.xml区分大小写 例:<p><P/>是错误的
7.xml的标签不能以数字和下划线开头
8.xml的标签不能以xml XML Xml等开头
9.xml的标签不能包含空格和冒号
三.定义属性
1.一个标签可以有多个属性
例:<person id="top" id="buttom"><person/>
2.属性名称不能相同
3.属性名称和属性值之间用=,属性值用单引号或双引号
4.xml属性名称规范和元素的名称规范一致
四.注释
<!-- --> 注释也不能放第一行
五.特殊字符
<号对应着转义字符:<
>号对应着转义字符:>
"号对应着转义字符:"
'号对应着转义字符:&apos
&号对应着转义字符:&
六.CDATA区
CDATA区解决多个字符需要转义的操作if(a<b && c>d )
格式:
<![CDATA[内容]]>
<?xml version="1.0" encoding="UTF-8"?> <person> <name>微雨燕双飞</name> <age>20</age> CDATA区解决多个字符需要转义的操作 <![CDATA[<b>if(a<b && c<d ){}<b/>]]> </person>
把特殊字符当文本
七.PI指令(处理指令)
*可以在xml中设置样式
<?xml-stylesheet type="text/css" href="样式路径"?>
样式:xml语法格式.css
name{ background-color: gray; } age{ background-color: blue; }
<?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/css" href="xml语法格式.css"?> <person> <name>微雨燕双飞</name> <age>20</age> CDATA区解决多个字符需要转义的操作 <![CDATA[<b>if(a<b && c<d ){}<b/>]]> </person>
温馨小提示:设置样式的时候对中文标签不起作用