DTD的概念及编写

简介: DTD的概念及编写

1.什么是DTD?


文档类型定义(约束)


2.什么是XML?


HTML:超文本标记语言   a/b/c/z

XML:可扩展标记语言  


3.XML的两种文档约束:


DTD:Schema


4.XML格式要求(合法XML)


1)有且只有一个根节点;

2)由开始标签和结束标签组成;

3)XML标签区分大小写;

4)正确嵌套标签;


5.使用DTD


5.1 在XML中加入DTD申明

1)内部申明:

2)外部申明:

5.2 元素定义语法(DTD对元素的限制)

基本语法:

元素分类:EMPTY     空元素

                (#PCDATA)  文本元素

                (e1,e2)    混合元素


元素限制:,(顺序)、|(或,多选一)、?(0或1次),*(1*0=0,0次或多次), +(1+0=1,1次或多次)

5.3 属性定义语法(DTD对属性的限制)

基本语法:

 

属性类型:ID/CDATA/ENUM (男|女)


设置说明:#REQUIRED(必须)/#IMPLIED(可选)


5.4 特殊符号转义

&(逻辑与)      -->  &

>(大于)     -->  >

<(小于)     -->  <

‘(单引号)     -->  '

“(双引号)     -->  "


person.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!-- 
1.DTD申明
1)内部申明:<!DOCTYPE 根节点[]>
2)外部申明:<!DOCTYPE 根节点 SYSTEM "DTD外部文件路径">
2.元素定义
1)语法:(!ELEMENT 元素名称 元素类型)
2)类型:
2.1)空元素:EMPTY
2.2)文本元素:(#PCDATA)
2.3)混合元素:(e1,e2,e3,...)
3)限制:
3.1),代表:元素出现的顺序
3.2)|代表:多选一
3.3)?代表:元素出现0次或1次(可有可无)
3.4)*代表:元素出现0次或n次
3.5)+代表:元素必须出现1次或n次
3.属性定义 attribute list
1)语法:<!ATTLIST 元素名称 属性名称 设置说明>
2)类型:
2.1)ID:唯一,不能以/或者数字开头
2.2)CATA:文本
2.3)枚举:多选一,例如:(男或女)
3)设置说明:
3.1)必须: #REQUIRED
3.2)可选:#IMPLIED
4.特殊字符转义
 -->
<!-- <!DOCTYPE persons[
  <!ELEMENT persons (person*)>
  <!ELEMENT person (name,age,contact,br?)>
  <!ELEMENT name (#PCDATA)>
  <!ELEMENT age (#PCDATA)>
  <!ELEMENT contact (phone|mail)>
  <!ELEMENT phone (#PCDATA)>
  <!ELEMENT mail (#PCDATA)>
  <!ELEMENT br EMPTY>
  <!ATTLIST person
  pid ID #REQUIRED
  paddr CDATA #IMPLIED
  psex(男|女|妖)
  >
]> -->
<!DOCTYPE config SYSTEM "person.dtd">
<persons>
  <person pid="p01" paddr="123" psex="男">
  <name>张三</name>
  <age>22</age>
  <contact>
    <phone>15882821111</phone>
  </contact>
  <br/>
  </person>
  <person pid="p02">
  <name>李四</name>
  <age>23</age>
  <contact>
    <mail>123@qq.com</mail>
  </contact>
  </person>
</persons>

person.dtd

<?xml version="1.0" encoding="UTF-8"?>
<!ELEMENT persons (person*)>
  <!ELEMENT person (name,age,contact,br?)>
  <!ELEMENT name (#PCDATA)>
  <!ELEMENT age (#PCDATA)>
  <!ELEMENT contact (phone|mail)>
  <!ELEMENT phone (#PCDATA)>
  <!ELEMENT mail (#PCDATA)>
  <!ELEMENT br EMPTY>
  <!ATTLIST person
  pid ID #REQUIRED
  paddr CDATA #IMPLIED
  psex(男|女|妖)
  >
相关文章
|
17天前
|
XML 存储 数据格式
探索 DTD 在 XML 中的作用及解析:深入理解文档类型定义
DTD(文档类型定义)用于定义XML文档的结构和合法元素、属性。它允许不同团体就数据交换标准达成一致,并用于验证XML数据的有效性。DTD可通过内部声明(在XML文档内)或外部声明(在单独文件中)来定义。内部声明示例显示了如何定义`note`元素及其子元素的结构,而外部声明则引用外部DTD文件。元素、属性、实体和PCDATA/CDATA是XML构建模块。DTD中,元素通过ELEMENT声明定义,属性通过ATTLIST声明定义,实体声明提供特殊字符或外部资源的快捷方式。
15 0
|
8月前
|
XML 存储 设计模式
XML(可扩展编辑语言) —— DTD
XML(可扩展编辑语言) —— DTD
41 2
|
11月前
|
XML 运维 前端开发
【XML学习 二】DTD原理及使用
【XML学习 二】DTD原理及使用
58 0
html 重要概念之基础组成和语法规则
当今许多网站和应用程序都是通过 HTML 构建的。HTML 是一种标记语言,可用于创建网页结构和内容。在本文中,我们将介绍 HTML 的基础组成和语法规则。
66 0
|
XML JavaScript 前端开发
具备spring环境的测试头注解;xml 规则;JavaScript:改变 HTML 内容案例
具备spring环境的测试头注解 具备spring环境的测试头注解 test
120 1
具备spring环境的测试头注解;xml 规则;JavaScript:改变 HTML 内容案例
|
XML 程序员 数据格式
【XML】学习笔记第二章-dtd
【XML】学习笔记第二章-dtd
194 0
【XML】学习笔记第二章-dtd
|
XML 数据格式
DTD的编写
DTD的编写
91 0
|
XML Java Apache
DTD 的引入方式|学习笔记
快速学习 DTD 的引入方式
181 0
|
XML JavaScript 程序员
(0基础)学习XML的第五课延伸:DTD 验证
  DTD 验证DTD 实体DTD 实例   Internet Explorer 5.0 可根据某个 DTD 来验证您的 XML。   通过 XML 解析器进行验证   当您试图打开某个 XML 文档时,XML 解析器有可能会产生错误。通过访问 parseError 对象,就可以取回引起错误的确切代码、文本甚至所在的行。   注释:load( ) 方法用于文件,而 loadXML( ) 方法用于字符串。
108 0
|
Java 数据格式 XML
框架加入DTD文件
使用框架中经常会遇到在编写配置文件中没有自动提示的问题,在这里只需要加入对应的dtd文件就不用理会类似问题了。 首先到配置文件中找到引用dtd的地址,这里以struts为例 然后在windows--preferences中找到XML Catalog选项 点击add后 2.
826 0