23XML DTD

前端之家收集整理的这篇文章主要介绍了23XML DTD前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

1 #PCDATA (Parsed Character Data),可解析的字符数据。


DTD文档与XML文档是类与对象的关系

DTD是抽象的定义

XML是具体的内容


第一种 内部DTD文档

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE student[
  3.  
  4. <!ELEMENT student (id,name,score)>
  5. <!ELEMENT id (#PCDATA)>
  6. <!ELEMENT name (#PCDATA)>
  7. <!ELEMENT score (#PCDATA)>
  8. ]>
  9.  
  10.  
  11. <student>
  12. <id>1</id>
  13. <name>sx</name>
  14. <score>100</score>
  15. </student>
第二种 外部DTD文档 便于DTD文档复用
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!ELEMENT student (id,score)>
  3. <!ELEMENT id (#PCDATA)>
  4. <!ELEMENT name (#PCDATA)>
  5. <!ELEMENT score (#PCDATA)>

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE student SYSTEM "myfirst.dtd">
  3. <student>
  4. <id>1</id>
  5. <name>sx</name>
  6. <score>100</score>
  7. </student>

2 DTD中元素的类型

dtd中ELEMENT元素的类型有 EMPTY、ANY、#PCDATA等

(1)EMPTY类型规定了元素不能有值但可以有属性,不能包括文本。
(2)ANY类型则规定一个元素下面可以包括子元素,文本,属性
将根元素设置为ANY后 子元素出现的次数和顺序将不受限制。

(3)#PCDATA则规定元素下面不能包括子元素,且元素的值是字符串。


3DTD元素修饰符号



4 属性的定义


属性类型

(1)CDATA 字符创

(2)NMTOKEN CDATA的一个子集 ,表示属性值必须是英文字母,数字,句号,破折号,下划线或冒号,属性值不能有空格

(3)ID 表示属性值是唯一的

(4)IDREF 指向文档中其他地方声明的ID类型的值

属性特点

(1)#required 必须有的属性

(2)#IMPLIED可选的,可有可无

(3)#FIXED value 属性值必须为指定的固定值,value

(4)#Default value 为属性提供一个默认值

2关于普通实体与参数实体


1) 普通实体是在dtd中定义,xml中使用,使用的时候格式为:&address;
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;




命名空间

避免重名

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <!DOCTYPE 学生名册 SYSTEM "dtd1.dtd">
  3. <S:学生名册 xmlns:S="http://www.dldd.com">
  4. <学生 学号="t1">
  5. <姓名>张三</姓名>
  6. <性别>男</性别>
  7. <年龄>20</年龄>
  8. </学生>
  9. <学生 学号="t2">
  10. <姓名>李四</姓名>
  11. <性别>女</性别>
  12. <年龄>19</年龄>
  13. </学生>
  14. <学生 学号="t3">
  15. <姓名>王二</姓名>
  16. <性别>男</性别>
  17. <年龄>21</年龄>
  18. </学生>
  19. </S:学生名册>

猜你在找的XML相关文章