1.XML概念
XML是可扩展的标记语言(eXtensible Markup Language) 可以自定义标签 Properties是键值对的形式,不方便描述层次关系的数据
用途:用来存储数据,用作软件的配置文件,可以作为异步系统进行数据交互
2。XML的相关语法
A:文档声明 语法<?xml 属性="值"?> 文档声明必须位于xml文档的第一行第一列,而且前面不能有注释
属性 version="版本号" |
| Encoding="编码" |
| Standalone="xml文档是否依赖其他文档yes/no" |
B:元素(Element)标签 <开始标签></结束标签> 单独的标签<标签/>
一个xml文档必须有且仅有一个根标签
C:属性 例如<input=" " name="" value="" id="">
D:注释 <--注释--> 注释不能嵌套,声明之前不能写注释
E:特殊字符和CDATA区 转义字符
< | < |
|
| > |
| & | & |
| " | " |
| ' | &apos |
<![CDATA[内容]]>
F:PI处理指令(Processing instruction)用来指挥软件如何解析xml文档 语法以"<?"开头,以">"作为结尾
3.XML约束 DTD和Schema
A:DTD约束步骤
a.统计xml中,需要多少个标签 | b.对标签进行定义<!ELEMENT 标签名> | c.对标签进行分类:看其是否包含子节点(标签) |
没有子标签直接<!ELEMENT标签名 (#PCDATA),如果有子标签那么<!ELEMENT 标签名(子标签名)>
引用DTD 在xml中<!DOCTYE 根节点 SYSTEM "DTD文件路径">
B: 引入DTD文档的三种形式
a:内部DTD讲DTD写在xml文档内部
b:外部DTD(在本地)
c:外部DTD(在网络中) <!DOCTYE 根节点 PUBLIC "DTD的名称" "DTD的路径URL"
4.约束xml中的元素<!ELEMENT 元素名称元素的使用规则>
元素的规则 (#PCDATA) 可解析字符数据 EMPTY空元素 ANY任意元素
子节点的顺序:(关系),有顺序的 |或者关系
子节点的个数 +:子节点可以出现一次或多次
*:子节点可以出现零次或多次
?:子节点可以出现零次或一次
约束xml的属性<!ATTLIST 标签名 属性名属性类型属性的约束>
元素的类型 CDATA:字符数据
枚举(数据|数据|数据) 从这里面任取一项
属性的约束 #REQUIRED:属性是必须的
#IMPLIED:属性是可选的
#FIXED value:固定的
Default value:默认的
约束xml中实体 <!ENTITY 实体名称实体值> 引用实体 &实体名称
实体:实体就是在xml中需要经常使用的一段文字,那么就可以把它定义成一个实体