目录
Xml的全称为Extensiable Markup Language,意思是可扩展的标记语言。XMl的语法上和HTML比较相似,但是html标签都是规定好了的,而XML是可以随意定义标签的。
可扩展标记语言极其简单易于掌握和使用
语法格式较严格,是常用的配置文件
XML里面的DTD(下面讲了)可以定义规范,作用相当于接口,即只有使用这个规范才可以实现XML的功能
DTD(文档类型定义)的作用是定义 XML 文档的合法构建模块
DTD 可被成行地声明于 XML 文档中,也可作为一个外部引用
<!DOCTYPE 根节点[ ]>
[]里写要定义的元素
空元素: <!ELEMENT element-name EMPTY>
文本元素: <!ELEMENT element-name (#PCDATA)>
混合元素: <!ELEMENT element-name (e1,e2)>
与:,
或者:|
次数
0或1:?
0~N:*
1~N:+
- <?xml version="1.0" encoding="UTF-8"?>
-
- <!DOCTYPE persons[
- <!ELEMENT persons (person+)>
- <!ELEMENT person (name,age,contact,br*)>
- <!ELEMENT name (#PCDATA)>
- <!ELEMENT age (#PCDATA)>
- <!ELEMENT contact (phone|email)>
- <!ELEMENT phone (#PCDATA)>
- <!ELEMENT email (#PCDATA)>
- <!ELEMENT br EMPTY>
- ]>
-
- <persons>
- <person>
- <name>张小明</name>
- <age>10</age>
- <contact>
- <phone>1234567</phone>
- </contact>
- <br/>
- </person>
- <person>
- <name>张大明</name>
- <age>35</age>
- <contact>
- <email>123@qq.com</email>
- </contact>
- </person>
- </persons>
<!ATTLIST element-name att_name type desc>
- element-name 元素名称
- att_name 属性名称
- type 属性类型
- desc 属性描述
ID (不可重复)
(男|女)
CDATA(文本)
IDREF(引用)
reference
#REQUIRED:必填
#IMPLIED:非必填
‘默认值’ 注意:只有type(男|女)类型时,desc才可以用默认值的方式
- <?xml version="1.0" encoding="UTF-8"?>
-
- <!DOCTYPE persons[
- <!ELEMENT persons (person+)>
- <!ELEMENT person (name,age,contact,br*)>
- <!ELEMENT name (#PCDATA)>
- <!ELEMENT age (#PCDATA)>
- <!ELEMENT contact (phone|email)>
- <!ELEMENT phone (#PCDATA)>
- <!ELEMENT email (#PCDATA)>
- <!ELEMENT br EMPTY>
- <!ATTLIST person
- pid ID #REQUIRED
- sex (男|女) '男'
- qq CDATA #IMPLIED
- parent IDREF #IMPLIED
- >
- ]>
-
- <persons>
- <person pid="p1" sex="男" qq="aaa" parent="p2">
- <name>张小明</name>
- <age>10</age>
- <contact>
- <phone>1234567</phone>
- </contact>
- <br/>
- </person>
- <person pid="p2">
- <name>张大明</name>
- <age>35</age>
- <contact>
- <email>123@qq.com</email>
- </contact>
- </person>
- </persons>