23XML DTD
1 #PCDATA (Parsed Character Data),可解析的字符数据。
DTD文档与XML文档是类与对象的关系 DTD是抽象的定义 XML是具体的内容
第一种 内部DTD文档
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE student[ <!ELEMENT student (id,name,score)> <!ELEMENT id (#PCDATA)> <!ELEMENT name (#PCDATA)> <!ELEMENT score (#PCDATA)> ]> <student> <id>1</id> <name>sx</name> <score>100</score> </student>第二种 外部DTD文档 便于DTD文档复用 <?xml version="1.0" encoding="UTF-8"?> <!ELEMENT student (id,score)> <!ELEMENT id (#PCDATA)> <!ELEMENT name (#PCDATA)> <!ELEMENT score (#PCDATA)> <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE student SYSTEM "myfirst.dtd"> <student> <id>1</id> <name>sx</name> <score>100</score> </student> 2 DTD中元素的类型 dtd中ELEMENT元素的类型有 EMPTY、ANY、#PCDATA等 (1)EMPTY类型规定了元素不能有值但可以有属性,不能包括文本。 (3)#PCDATA则规定元素下面不能包括子元素,且元素的值是字符串。
4 属性的定义
属性类型 (1)CDATA 字符创 (2)NMTOKEN CDATA的一个子集 ,表示属性值必须是英文字母,数字,句号,破折号,下划线或冒号,属性值不能有空格 (3)ID 表示属性值是唯一的 (4)IDREF 指向文档中其他地方声明的ID类型的值 属性特点 (1)#REQUIRED 必须有的属性值 (2)#IMPLIED可选的,可有可无 (3)#FIXED value 属性值必须为指定的固定值,value (4)#Default value 为属性提供一个默认值 2关于普通实体与参数实体
2) 参数实体是在dtd中定义,dtd中使用,定义的时候使用%,使用的时候也需要使用%,%address; 3) 外部普通实体的定义方式是: <!ENTITY address SYSTEM “http://www.shengsiyuan.com/xml.xml”> 表示使用http://www.shengsiyuan.com/xml.xml网址的内容来替换掉address,而不是使用http://www.shengsiyuan.com/xml.xml字符串本身来替换掉address 4)外部参数实体: <!ENTITY % address SYSTEM “http://www.shengsiyuan.com/xml.xml”>,使用的时候:%address;
命名空间 避免重名
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE 学生名册 SYSTEM "dtd1.dtd"> <S:学生名册 xmlns:S="http://www.dldd.com"> <学生 学号="t1"> <姓名>张三</姓名> <性别>男</性别> <年龄>20</年龄> </学生> <学生 学号="t2"> <姓名>李四</姓名> <性别>女</性别> <年龄>19</年龄> </学生> <学生 学号="t3"> <姓名>王二</姓名> <性别>男</性别> <年龄>21</年龄> </学生> </S:学生名册> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |