- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
xml schema全接触
时间:2001/05/13 19:21
作者:onecenter 中国xml联盟
2001年5月2日,经过三年多的发展,xml 的schema终成正果。这样,xml、xml schema和namespace都成为了w3c的正式标准,这是一个值得庆贺的历史性时刻,意味着xml语法规范已经奠定了扎实的基础。中国xml联盟于第一时刻为你介绍最新的xml schema标准和其在msxml 4.0中的应用。
xml定义语言:dtd,xdr和xsd
xml schema的全貌
用xsd校验xml
xml schema和名域
xml定义语言:dtd,xdr和xsd
我们知道xml文档有格式良好和有效性两种约束。格式良好适合于所有的xml文档,即满足xml标准中对于格式的规定。而当xml文档满足一定的语义约束则称该xml文档为有效的xml文档。目前常用的xml定义语言有dtd,xdr和xsd。
文档类型定义(dtd)
文档类型定义用不同于xml的独立语法来规定了Xml文档中各种元素集合的内容模式。该语言直接沿袭了定义sgml语言的方法。
dtd使得xml文档保持一致
dtd可以共享
dtd提供了对xml语汇的形式化和完整的定义
每个xml文档有单个的dtd来限制
schema
类似dtd,schema可以规定一套特定文档的结构或模型。使用schema语言来描述文档结构有下面以下好处:
schema使用的是xml语法
schema可以用xml解析器来解析
schema允许全局性元素(在整个xml文档中元素用相同方式来使用)和局部性元素(元素在特定的上下文中有不同的含义)
schema提供丰富的数据类型(如整型、布尔型、日期类型等);而且一个元素中的数据类型可以进行规定,甚至可以根据需要自定义数据类型
xdr
xdr的全称是xml-data reduced language,是早先由xml-data草案派生出来的一个定义xml语言的分支。由于微软最先提出了xml-data,并且经过修订后在其软件中应用,所以xdr也被广泛使用。目前支持xdr schema的产品有:
microsoft biztalk server
microsoft sql server 2000
microsoft office 2000
microsoft ie5.0和后续版本
xdr也得到了extensibility的 xml authority编辑工具的支持。
xsd schema
最为正式的xml schema语言是由w3c指定的xml schema规范,简称为xsd(xml schema definition)。xsd也提供了数据类型的支持和结构定义的方法。
2001年5月2日,Xml schema 规范成为了w3c的正式推荐标准。这就意味着经过三年多的发展,xml 的schema标准终于修成了正果。这样,xml、xml schema和namespace都成为了w3c的正式,这是一个值得庆贺的历史性时刻,意味着xml语法的规范已经奠定了扎实的基础。xml的广泛发展和应用也即将成为现实。下面我们就将重点来介绍最新的xml schema标准。
xml schema的全貌
我们用实际的例子来介绍xml schema的用法。比如,有这样的xml实例文档:?xml version=1.0 encoding=gb2312?!doctype studentlst system student.dtdstudentlststudentname至尊宝/namegenda男/gendasid001/sidbirthday1576-3-2/birthday/studentstudentname白晶晶/namegenda女/gendasid002/sidbirthday1578-4-25/birthday/student/studentlst该文档用dtd定义如下:?xml version=1.0 encoding=utf-8?!element studentlst (student)*!element student (name, genda, sid, birthday)!element name (#pcdata)!element genda (#pcdata)!element sid (#pcdata)!element birthday (#pcdata)但是其中name和genda、sid等文本元素的数据类型都是统一的字符类型,而事实上我们一般要求对它们有更为严格的限制。比如,要求name仍然为字符类型,而genda为可选
文档评论(0)