xml语法规范:
1、所有xml元素必须结束
<abc>我是xml</abc>,在xml 文件中如果标签中没有内容,可以自结束,如<abc></abc>可以写成 <abc />
2、标签不允许交叉嵌套
3、有且仅有一个根元素
4、xml文件中 空格和换行 会被解析器进行解析的,这点不同于html
5、严格区分大小写,元素和属性名称不能以数字开始
(不建议‘_’下划线,‘xml’开头,名称中间不能包含冒号----Schema约束冲突)
6、属性定义语法 <元素名称 属性名称="属性值" 属性名称="属性值" ....>
一个元素定义多个属性的,每个属性值必须使用单引号和双引号
如:<abc name = 'test'>
</abc>
在XML技术中,标签属性所代表的信息也可以被改成用子元素的形式来描述,如上面可以改为:
<abc>
<name>test</name>
</abc>
7、xml注释写在文档声明(<?xml version="1.0"?>)之后,与html注释相同 <!-- --> ,注释不能嵌套
CDATA块:
CDATA区域内 保留不被解析器解析的内容,通常存放特殊代码,这些代码造成xml格式混乱
对于CDATA中的内容,XML解析程序不会处理,而是原封不动的输出。
语法:
<![CDATA[内容]]>
例如:
<![CDATA[
<abc>test</abc>
]]>
那么CDATA块中的内容:<abc>test</abc>就会直接输出
当然特殊字符也可以通过转义进行输出:‘&’ 可用 ‘&’ ‘<’ 可用 ‘ <’ ‘>’ 可用 ‘ >’ ’ " ‘(双引号)可用 ‘"’ ‘ ' ’(单引号)可用‘ ' ’ 进行转义。
CDATA和转义字符在哪些情况使用?区别?
* 优先使用CDATA XML技术在存储数据,传输数据、解析数据
处理指令:
简称PI :处理指令用来指挥解析引擎如何解析XMl文档内容(指令之前不能有注释)
例如:xml通过pi指令引用css样式显示成html的形式 <?xml-stylesheet type = "text/css" href = "1.css"?>
XML 技术应用 两大类:
1、传输和存储数据 ----- 程序员为了简化开发,不对xml使用约束技术
* 不使用xml约束技术,xml 格式不一定正确
* 所有xml 数据内容生成,解析过程 都是通过程序来完成的
2、使用xml 作为配置文件
Android SSH ----- 程序员为了保证xml元素准确性,通常xml文档使用约束技术的
3、为什么xml使用约束? 使用约束xml文档 --- 元素内容格式更加规范 如果企业中xml没有使用约束 ------ 通过程序生成xml和解析xml时,不使用约束,代码更加简单