`
sunqing0316
  • 浏览: 41979 次
  • 性别: Icon_minigender_2
文章分类
社区版块
存档分类
最新评论

XML中的Schema与DTD

 
阅读更多

DTD和Schema两者都是对XML文档做进一步的限制。

DTD的概念

DTD的作用是定义XML的合法构建模块,它使用一系列的合法元素来定义文档结构。

作用:

1、定义XML文档的结构

2、为XML文档提供语法与规则

3.、内容既可以定义在XML文档之内,也可以定义在XML文档之外

4、DTD对于XML是可选的内容

5、一个XML只能有一个相对应的DTD

Schema的概念

Schema是对XML文档结构的定义和描述,其主要的作用是用来约束XML文件,并验证XML文件有效性,也称为XSD。

作用:

1、描述XML文档的结构

2、是基于XML的DTD的替代者

3、保护数据通信

4、是可扩展的,因为它是由XML编写,并且在相同的文档中可以引用多重的Shema

二者比较

1、Schema本身也是XML文档,DTD定义跟XML没有什么关系,Schema在理解和实际应用有很多的好处。

2、DTD文档的结构是“平铺型”的,如果定义复杂的XML文档,很难把握各元素之间的嵌套关系;Schema文档结构性强,各元素之间的嵌套关系非常直观。

3、DTD只能指定元素含有文本,不能定义元素文本的具体类型,如字符型、整型、日期型、自定义类型等。Schema在这方面比DTD强大。

4、Schema支持元素节点顺序的描述,DTD没有提供无序情况的描述,要定义无序必需穷举排列的所有情况。Schema可以利用xs:all来表示无序的情况。

5、对命名空间的支持。DTD无法利用XML的命名空间,Schema很好满足命名空间。并且,Schema还提供了include和import两种引用命名空间的方法。

6、Schema是XML文档,而DTD有自己的特殊语法这样,只需要懂得XML的语法规则就可以编写Schema,无须学习其他的语法规则;XML文件与XMLSchema文件可以用相同的解析器进行解析,无须两套解析器;XML Schema有强大、易用的扩展性。

综述

XML Schema较DTD有更多优势,更强大,所以尽量把XML Schema作为首选为佳。

分享到:
评论

相关推荐

    XML Schema 与 XML DTD的技术比较与分析

    此外,XML Schema的合法性验证机制与XML相同,提供了内置的验证机制,而XML DTD在这方面较为欠缺。 其次,XML Schema的一个关键优势在于其强大的数据类型系统。XML DTD仅提供有限的内置数据类型,如CDATA、...

    XML、DTD、Schema

    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> </xs:schema> ``` 在这个例子中,`xs:string`是XML Schema内置的数据类型,`maxOccurs="unbounded"`表示`author`元素可以出现任意多次...

    DTD和Schema规范XML文档

    [实验目的]: 1、掌握使用XMLSpy软件创建DTD和Schema文档 2、掌握在XML文档如何引入DTD和Schema,并验证有效 3、掌握DTD中声明元素、属性的方法 4、掌握Schema中声明元素,属性,类型的方法

    XML.rar_dtd xml_xml dtd_xml schema_xml 设计

    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> </xs:schema> ``` 在这个XML Schema中,`year`元素被定义为全局日期时间类型`gYear`,确保输入的数据格式正确。 在实际应用中,`...

    XML Schema教程

    - **XML Schema 与 DTD 的区别**:XML Schema 被认为是 Document Type Definition (DTD) 的继承者。与 DTD 相比,XML Schema 提供了更多的灵活性和功能,包括但不限于: - 支持数据类型定义。 - 基于 XML 编写,更...

    XML Schema简明教程-W3C.rar

    在此教程中,你将学习如何在应用程序中读取和创建 XML Schema 语言,XML Schema 为何比 DTD 更加强大,以及如何在您的应用程序中使用 XML Schema。 什么是 XML Schema? XML Schema 的作用是定义 XML 文档的合法构建...

    XML文件XML Schema.docXML Schema.doc

    XML Schema是XML语言为基础的,它用于可替代DTD。它用于描述XML文档的结构。XML Schema语言也被称为XML Schema Definition(XSD)。XML Schema的作用是定义一份XML文档的合法组件群,就像DTD的作用一样。 XML ...

    XML Schema 的简介

    XML Schema 是 DTD 的继任者,我们认为 XML Schema 很快会在大部分网络应用程序中取代 DTD。理由如下: * XML Schema 可针对未来的发展 * XML Schema 比 DTD 更强大 XML Schema 的优点包括: * 支持数据类型 * ...

    xml约束[dtd,Schema].zip

    <bookstore xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="bookstore.xsd"> <!-- ... --> ``` 这里,`SYSTEM`关键字用于指定DTD文件的位置,`xsi:...

    XML DTD,XmlSchema标准参考手册

    XML(eXtensible Markup Language)是一...同时,XML DTD和XML Schema的文档参考手册,如提供的"DTD.chm"和"XmlSchema标准参考手册.chm",是学习和查阅这两种技术的重要资源,能够帮助开发者深入理解其特性和使用方法。

    Schema教程 xml

    与DTD相比,XML Schema具有以下优点: - 可扩展性:XML Schema支持未来需求的扩展。 - 强大的功能:XML Schema比DTD更完善,功能更强大。 - XML基础:XML Schema本身就是XML,这意味着可以使用XML工具进行处理。 - ...

    XML - 实验(2) -- Schema

    2、掌握XML Schema与DTD之间的区别,能够完成两者之间的转换;掌握在XML Schema中如何定义元素和属性,如何使用限制、列表和合并派生自己的简单数据类型,如何定义复杂数据类型,全局/局部元素和数据类型之间的区别...

    xml与DTD,xml与DTD

    ##### 内部DTD与外部DTD: - **内部DTD**:DTD的内容直接嵌入到XML文档中。适用于简单的文档或者测试文档。 - **外部DTD**:DTD作为单独的文件存在,并通过XML文档中的DOCTYPE声明来引用。适用于大型项目或多个文档...

    DTD_Schema.rar.rar_dtd_xml_xml schema

    在处理XML文档时,为了确保数据的一致性和准确性,我们通常会使用DTD(Document Type Definition)或XML Schema来定义文档的结构。这两个工具都是XML的约束机制,用于规定XML文档的元素、属性以及它们之间的关系。 ...

    武汉大学软工xml上机第二次作业Schema

    2、掌握XML Schema与DTD之间的区别,能够完成两者之间的转换;掌握在XML Schema中如何定义元素和属性,如何使用限制、列表和合并派生自己的简单数据类型,如何定义复杂数据类型,全局/局部元素和数据类型之间的区别...

    XML Schema初窥

    模式文档通常以`.xsd`为扩展名,根元素是`<xs:schema>`,并需要声明`http://www.w3.org/2001/XMLSchema`名称空间。名称空间的使用使得XML Schema可以识别和处理具有相同名称但来自不同源的元素。 **引用模式文档** ...

    XmlSchema-1.4.7.jar

    XmlSchema库则为Java开发者提供了处理这些XML Schema文档的API,使得在Java应用程序中解析、验证和生成符合XML Schema的XML文档变得容易。 在开发过程中,使用XmlSchema-1.4.7.jar可以帮助开发者实现以下功能: 1. ...

    Introduction to XML Schema

    XML Schema的主要功能是定义XML文档中合法的构建单元,其作用与DTD类似但更为强大。XML Schema具有以下特点: - 定义文档中可能出现的元素。 - 定义文档中可能出现的属性。 - 规定哪些元素是子元素。 - 指定子元素...

Global site tag (gtag.js) - Google Analytics