个人笔记整理的,详细请参看 http://www.w3school.com.cn/dtd/index.asp
1. 内部
<!DOCTYPE note [
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT to (#PCDATA)>
<!ELEMENT from (#PCDATA)>
<!ELEMENT heading (#PCDATA)>
<!ELEMENT body (#PCDATA)>
]>
2. 外部:
<!DOCTYPE note SYSTEM "note.dtd">
3. XML:
element
attribute
entity
PCDATA
CDATA
4. 声明一个元素:
<!ELEMENT 元素名称 (元素内容)>
<!ELEMENT 元素名称 类别>
<!ELEMENT 元素名称 EMPTY>
<!ELEMENT note ANY> // 带有任何内容的元素
5. 带有子元素(序列)的元素:
<!ELEMENT note (to,from,heading,body)>
<!ELEMENT note (message*)>
<!ELEMENT note (message)>
<!ELEMENT note (message+)>
<!ELEMENT note (to,from,header,(message|body))>
6. 声明属性:
<!ATTLIST 元素名称 属性名称 属性类型 默认值>
<!ATTLIST payment type CDATA "check">
<payment type="check" /> // xml 实例
// 属性类型:
CDATA: 值为字符数据
(en1|en2...) 枚举列表中的一个值
ID 值为唯一的 id
ENTITY: 值为一个实体
// 值
#REQUIRED
#IMPLIED 不是必须的
#FIXED value 固定的
<!ATTLIST contact fax CDATA #IMPLIED>
<contact fax="555-667788" /> // 合法
<contact /> // 合法
<!ATTLIST sender company CDATA #FIXED "Microsoft">
<sender company="Microsoft" /> // 合法
<sender company="W3School" /> // 非法
<!ATTLIST payment type (check|cash) "cash">
<payment type="check" />
<payment type="cash" />
7. 实体声明:
<!ENTITY 实体名称 "实体的值">
<!ENTITY writer "Bill Gates">
<!ENTITY copyright "Copyright W3School.com.cn">
<author>&writer;©right;</author> // xml
8. XML Schema:
定义可出现在文档中的元素
定义可出现在文档中的属性
定义哪个元素是子元素
定义子元素的次序
定义子元素的数目
定义元素是否为空,或者是否可包含文本
定义元素和属性的数据类型
定义元素和属性的默认值以及固定值
9. XML Schema 最重要的能力之一就是对数据类型的支持:
10. 最常用的类型是:
xs:string
xs:decimal
xs:integer
xs:boolean
xs:date
xs:time
11. 值:
<xs:element name="color" type="xs:string" default="red"/> // 默认值
<xs:element name="color" type="xs:string" fixed="red"/> // 固定值
12. 属性:
<xs:attribute name="xxx" type="yyy"/>
<lastname lang="EN">Smith</lastname> 对应 ---> <xs:attribute name="lang" type="xs:string"/>
<xs:attribute name="lang" type="xs:string" use="required"/> // 必须的属性
13. 对一组值的限定
<xs:element name="car">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="Audi"/>
<xs:enumeration value="Golf"/>
<xs:enumeration value="BMW"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
或者
<xs:element name="car" type="carType"/>
<xs:simpleType name="carType">
<xs:restriction base="xs:string">
<xs:enumeration value="Audi"/>
<xs:enumeration value="Golf"/>
<xs:enumeration value="BMW"/>
</xs:restriction>
</xs:simpleType>
14. 对一系列值的限定
<xs:element name="initials">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="[A-Z][A-Z][A-Z]"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
15. 对长度的限定:
<xs:element name="password">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:length value="8"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
16. <xs:all> 可以按任意顺序出
分享到:
相关推荐
1. 语法:DTD使用非XML语法,而Schema使用XML语法,使得Schema更容易理解和维护。 2. 数据类型:DTD仅支持基本的数据类型,如字符数据,而Schema支持更丰富的数据类型,如整数、浮点数、日期等。 3. 强制性:Schema...
dubbo约束 hibernate3.0约束,,aop,beans,cacha,context,jdbc,jee,jms,lang,mvc,oxm,task,tool,tx,util各个版本(2.0-4.2),mybatis3.0 struts2.0 以及
XML Schema 和 XML DTD 是两种用于定义XML文档结构和数据约束的语言。XML DTD(文档类型定义)是较早出现的规范,而XML Schema则在2001年成为W3C的正式推荐标准,旨在提供更强大和灵活的XML文档验证功能。 首先,...
为了确保XML文档的结构正确性与一致性,XML约束技术应运而生,主要有两种形式:DTD(Document Type Definition)和XML Schema。 **DTD(Document Type Definition)** DTD是XML的早期约束和验证机制,它定义了XML...
XML DTD(Document Type Definition)和XML Schema是两种主要的XML语义约束机制,用于定义XML文档的结构和数据类型。 XML DTD是最早的XML文档类型定义方式,它使用一套预定义的元素和属性来描述XML文档的结构。DTD...
[实验目的]: 1、掌握使用XMLSpy软件创建DTD和Schema文档 2、掌握在XML文档如何引入DTD和Schema,并验证有效 3、掌握DTD中声明元素、属性的方法 4、掌握Schema中声明元素,属性,类型的方法
**DTD(Document Type Definition)与XML Schema是XML文档结构定义的两种主要方法,它们用于确保XML文档遵循预定义的规则,从而保持数据的一致性和可读性。** **DTD(文档类型定义)**是XML规范早期引入的一种方式...
在处理XML文档时,为了确保数据的一致性和准确性,我们通常会使用DTD(Document Type Definition)或XML Schema来定义文档的结构。这两个工具都是XML的约束机制,用于规定XML文档的元素、属性以及它们之间的关系。 ...
[实验目的] 1、安装并学习如何使用XMLSPY集成开发环境完成XML相关的开发工作。 2、熟悉和掌握XML规范的基本内容,包括XML声明、...使用内部/外部DTD规则,对XML数据文档的有效性进行约束。 某软件学院XML课程实验答案
在本主题中,我们将深入探讨如何利用DTD(Document Type Definition)和XML Schema来设计一个表示图书信息的XML文档。这两种方法都是为了确保XML文档结构的合法性与一致性。 首先,DTD是XML的早期验证机制,它定义...
XML Schema是XML语言为基础的,它用于可替代DTD。它用于描述XML文档的结构。XML Schema语言也被称为XML Schema Definition(XSD)。XML Schema的作用是定义一份XML文档的合法组件群,就像DTD的作用一样。 XML ...
总结来说,XML基础教程包括对XML的基本概念、语法规则、树形结构的理解,以及使用DTD和Schema进行数据验证的方法。掌握这些知识对于任何涉及数据处理和交换的IT专业人员都是至关重要的。通过学习XML,开发者能够创建...
《XML》实验任务书 (1) XML Basics & DTD [实验目的] 1、安装并学习如何使用XMLSPY集成开发环境完成XML相关的开发工作。 2、熟悉和掌握XML规范的基本内容,包括XML声明、注释、处理指令、元素、属性、CDATA段、...
经典介绍DTD和Schema及区别。通过阅读此文档,读者可以对dtd和schema有一个更加清晰的认识。
详细的讲解了DTD和schema,学习DTD,schema 就它了
讲述DTD和schema,讲述DTD和schema两者的区别等等。
- **有效的XML (Valid XML)**:除了满足格式良好的条件之外,还必须符合DTD或XML Schema的约束。这意味着XML文档不仅需要格式正确,还需要满足预定义的数据结构和语义规则。 #### 四、DTD(Document Type ...
"DTD练习.rar"和"SCHEMA练习.rar"可能包含了一些实践性的练习题,帮助你深入理解如何使用DTD和XML Schema来定义和验证XML文档。 总的来说,这些文件涵盖了XML的基础知识,如XML结构、DTD的使用、XSLT转换以及DOM...
1、安装XMLSPY集成开发环境,新建XML、DTD文档,在各种不同的编辑视图中尝试采用不同的方式完成XML文档的编辑和查看;并使用XMLSPY提供的便利,建立XML、DTD两者之间的关联,进行XML文档的良构以及有效性验证。 2、...