在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
Schema约束及XML Schema特点介绍,XML Schema是什么?XML Schema基于XML的DTD替代者,XML Schema 的作用是定义XML文档的合法构建模块类似DTD,可描述 XML 文档的结构,XML Schema语言也可作为XSD(XML Schema Definition)来引用。

XML是一种通用的数据交换格式可以使数据再各种应用程序之间轻松地实现数据交换。而XMLSchema是一种定义和描述XML文档结构与内容的模式语言。DTD是XML的一种XML约束但没有Schema好。
一个XML文档可以引入多个约束文档,如不同约束文档中定义了同名元素或属性,则会导致名称冲突,于是Schema引入了名称空间。同名的元素或属性可以通过名称空间区分。
同DTD一样XML Schema是一种用于定义和描述XML文档结构与内容的模式语言,它克服了DTD的局限性,通过XML Schema与DTD的比较将XML Schema具有显著的优点:
1、DTD采用非XML语法格式,缺乏对文档结构、元素、数据类型等全面的描述。而XML Schema采用XML语法格式,它本身是一种XML文档,因此XML Schema语法格式比DTD更好理解。
2、XML有非常高的合法性要求,虽然DTD和XML Schema都用于对XML文档进行描述都被用作验证XML合法性的基础。但DTD本身合法性的验证必须采用另外一套机制,而XML Schema则采用与XML文档相同的合法性验证机制。
3、XML Schema对名称空间支持得非常好而DTD几乎不支持名称空间。
4、DTD支持数据类型非常有限。如DTD可以指定元素中必须包含字符文本(PCDATA),但无法指定元素中必须包含非负整数,而XML Schema比XML DTD支持更多的数据类型,包括用户自定义的数据类型。
5、DTD定义约束的能力非常有限,无法对XML实例文档作出更细致的语义限制,例如,无法很好地指定一个元素中的某个子元素必须出现7到12次;而XML Schema定义约束的能力非常强大,可以对XML实例文档作出细致的语义限制。
XML Schema定义可出现在文档中的元素、属性、哪个元素是子元素、子元素的次序、子元素的数目、元素是否为空,或者是否可包含文本、元素和属性的数据类型、元素和属性的默认值以及固定值。XML Schema的功能比DTD强大很多,而语法也比DTD复杂很多,XML Schema 是DTD的继任者, XML Schema会在大部分网络应用程序中取代DTD。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
IT编程语言深度学习库汇总
IT编程语言深度学习库汇总,主要介绍编程语言Python(Theano、Keras、Pylearn2、Lasagne、Blocks、Caffe)、Matlab、CPP、Java(ND4J、Deeplearning4j、ncog)等相关的深度学习框架,深入了解开发框架对于一个程序员尤为重要。
5393
2020-03-05 17:30:33
什么是服务器?三分钟带你了解服务器
服务器想必大家都不陌生,这个词汇在这个互联网高速发展的时代大家都多多少少听说过,但是你对服务器了解多少呢?本文将为大家详细讲解服务器的概念、特点和工作原理,下面我们一起来了解一下究竟什么是服务器吧。
5434
2020-03-06 19:44:26
HTTP面试题汇总附答案
HTTP相信大家都不陌生了,作为一种应用最为广泛的网络传输协议,它也常常出现在面试考题之中。本文汇总了目前比较常考的HTTP面试题,并整理好了所有HTTP面试题的答案,希望可以帮助到正在复习HTTP相关知识点的小伙伴~
6672
2020-05-07 17:29:13
27岁转行学IT有前途吗?
27岁转行学IT有前途吗?常常可以在网上看到这些转业者的困惑。其实,到了27岁还想转业,无外乎就是之前的工作确实没有什么发展前途。而IT行业作为朝阳产业,发展前景好,一年以上的工作经验可以轻松找到上万薪资的岗位。最重要的是IT行业不看学历、性别和年纪,只要你的实力够硬,就不愁找不到工作。当然如果是35岁以后才开始学IT,那就要慎重了,毕竟精力和学习能力都比上二十多岁的年轻人了。
6781
2020-07-06 10:34:59
Shell是什么?快速理解Shell的概念
Shell是什么?可能对于一些完全没有计算机基础的朋友来讲,想要理解Shell的概念可能会有一些困难。本文将从Shell的出现、定义以及分类来带大家快速理解Shell的概念。
7486
2020-07-29 14:41:17
