- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第四单元 xml schema使用.ppt
第四章:XML模式Schema 模式(Schema)所起的作用与DTD相同,也是由W3C开发的。与 DTD相比,XML模式具有如下的几个优点: 1、DTD是用一种与 XML不同的语法编写的,而XML模式使用的是一种类XML的语言。 2、DTD中的所有声明都是全局声明,而XML模式则既有全局声明也有局部声明,可以视情况而定。 3、DTD不能对一给定的元素或属性的数据类型进行定义,而XML模式具有一套完整的数据类型系统,它允许对数据类型如整型,时间型或字符串型等进行详细定义。 在DTD中,每个元素都被声明为全局的,所以每个元素必须有一个唯一的名字并且只能声明一次。元素可被多个其他元素所引用,但在这些情况下,它们的定义必须完全相同。 然而在XML模式中,上下文是非常重要的。在模式的顶层声明的元素被认为是全局声明。在定义一个复杂类型时,可以参考和使用这些全局定义的元素作为该类型的一个子部分,也可以同时定义一些新的局部元素,但作用域被限制在该复杂类型之内。 第一个schema例子 ?xml version=1.0? xs:schema xmlns:xs=/2001/XMLSchema xs:element name=root type=xs:string/ /xs:schema DTD和Schema对比 ?xml version=1.0? name firstnameMike/firstname lastnameKing/lastname /name 使用dtd定义 !ELEMENT name (firstname,lastname) !ELEMENT firstname (#PCDATA) !ELEMENT lastname (#PCDATA) 用Schema定义 ?xml version=1.0? xs:schema xmlns:xs=/2001/XMLSchema xs:element name=name xs:complexType xs:sequence xs:element name=firstname type=xs:string/ xs:element name=lastname type=xs:string/ /xs:sequence /xs:complexType /xs:element /xs:schema 结论 DTD文档的结构是平铺的,若定义复杂的XML文档,很难把握各元素之间的嵌套关系,而Schema结构性强,嵌套关系明显。 声明firstname时,DTD指定元素含有文本,对于文本的具体类型如字符、整数、日期等,DTD无能为力,而Schema可以。 Schema本身是xml文档,而DTD不是。 分析一个Schema例子 ?xml version=1.0? schema xmlns=/2001/XMLSchema element name=salary type=decimal/ /schema Schema内置的数据类型 XML Schema 内置了44中基本数据类型,用于定义XML中元素或属性的文本内容的数据类型。 xs:string 该数据类型用于定义XML中元素或属性的文本内容为一个字符串。 xs:element name=“name” type=“xs:string” nameadddd/name xs:decimal 该数据类型用于定义XML中元素或属性的文本内容为十进制小数。 xs:element name=“price” type=“xs:decimal” price12.50/price price+12.50/price price-12.50/price price12/price xs:integer 数据类型为整数。 xs:element name=“price” type=“xs:integer” price10/price price10.123/price 错误 xs:integer xs:positiveInteger xs:negativeInteger xs:nonPositiveInteger xs:nonNegativeInteger xs:boolean xs:element name=“closed” type=“xs:boolean” closed true/ closed closed 1/ closed xs:date 日期。格式:YYYY-MM-DD xs:element name=“birthday” type=“xs:date” birthday 1985-09-08/ birthday birthday 1985-09-08Z/ bi
您可能关注的文档
最近下载
- 2025新版《党政机关厉行节约反对浪费条例》解读学习课件.pptx VIP
- 高速公路绿化施工组织方案.docx VIP
- 第40届全国中学生物理竞赛复赛试题含答案.pdf VIP
- 【高中数学竞赛真题•强基计划真题考前适应性训练】 专题13 数学归纳法 真题专项训练(全国竞赛+强基计划专用)解析版.docx VIP
- 神经内科抽搐与惊厥.pptx VIP
- 小学生心理辅导(小学教育专业)PPT完整全套教学课件.pptx VIP
- 《马克思主义与社会科学方法论》.pptx VIP
- 第一章 气体PVT关系.ppt VIP
- 一种彻底解决湿法氧化DBC烧结大气泡的方法.pdf VIP
- 高中物理竞赛强基计划真题《光学》考前适应性训练含答案.pdf VIP
文档评论(0)