在线客服
扫描二维码
下载博学谷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。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
常见排序算法深度盘点
排序算法是最基本的算法之一。一般来说,排序算法分成内部排序和外部排序。本文主要盘点了十种常见排序算法,它们可以按照时间复杂度划分,也可以按照稳定性划分,下面让小编来详细谈谈吧!
7284
2019-08-01 17:39:35
学习编程有什么用?有哪些好处?
在这个互联网飞速发展,似乎人人都开始学习编程的时代,许多人心中还是有这样的疑问:学习编程有什么用?有哪些好处?诚然,大多数人学习编程的目的,都是想通过学习编程找到一份IT工程师的高薪工作。但是除了出于对这个行业的职位选择,我们学习编程到底有什么用呢?下面我们就来看一看,那些许多人都忽略的学习编程的好处和作用。
12268
2020-04-22 10:28:14
怎样选择培训课堂才能事半功倍
许多人在选择培训机构之前,都会遇到许多迷茫的问题。线上培训和线下培训的区别;不同的培训风格是否会产生不同的影响,侧重点是否会存在误差;许多培训的起点也不同,这些问题带来的困扰不在少数,那么该如何做出选择呢?
3971
2020-05-19 09:41:56
什么是好的编程习惯?
程序员无论是在招聘中还是在领导叮嘱都会被要求要有好的编程习惯,“道理我都懂,可是怎么做呢?”以下可以对号入座看看自己的编程习惯是不是“优秀”的。写得好的代码不需要注释,但是实际上,即使是最好的代码也没有注释容易理解。
4925
2020-07-02 14:52:06
低代码则低风险吗?事实并非如此
低代码/无代码工具提供支持拖放的交互界面,使得即使非程序员也能够创建或修改应用程序,而向非技术人员推出低代码/无代码产品带来的安全风险可能比用户了解到的更为复杂。
2849
2022-06-17 11:56:24