XML DTD和Schema约束.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
XML DTD和Schema约束

HYPERLINK /smcwwh/article/details/7180810 XML DTD与Schema约束 一、【引言】 ??? Xml即Extensible Markup Language可扩展标记语言。它是由SGML(Standard Gerneralized Markup language)发展而来的,允许开发者自定标签,可以将标签和内容有效的分离。在XML技术里,可以编写一个文档来约束XML文档的书写规范,称之为XML约束。 二、【DTD (Document Type Definition)】 DTD是一种比较早起的xml约束方式,在表达属性值和元素内容的类型约束上存在很多缺陷。 1、DTD的两种约束方式 DTD约束即可以作为一个单独的文件编写,也可以在XML文件内编写。 (1)、在xml文件内编写DTD ?xml?version=1.0?encoding=UTF-8?standalone=yes??? !DOCTYPE?书架?[???!ELEMENT?书架?(书+)?? ? !ELEMENT?书?(书名,作者,售价)?? ? !ELEMENT?书名?(#PCDATA)?? ? !ELEMENT?作者?(#PCDATA)?? ? !ELEMENT?售价?(#PCDATA)??]?? 书架?? ?书?? ??书名Java就业培训教程/书名?? ??作者张孝祥/作者?? ??售价39.00元/售价?? ?/书?? /书架?? (2)、引用DTD约束 XML文件使用 DOCTYPE 声明语句来指明它所遵循的DTD文件,DOCTYPE声明语句有两种形式: A、当引用的文件在本地时,采用如下方式: !DOCTYPE?文档根结点?SYSTEM?DTD文件的URL?? ??例如:?!DOCTYPE?书架?SYSTEM?“book.dtd”?? B、当引用的文件是一个公共的文件时,采用如下方式: !DOCTYPE?文档根结点?PUBLIC?DTD名称?DTD文件的URL??例如:?? !DOCTYPE?web-app?PUBLIC??-//Sun?Microsystems,?Inc.//DTD?Web?Application?2.3//EN? ?????/dtd/web-app_2_3.dtd?? ??2、DTD约束语法细节: (1)、 DTD的语法细节:元素定义1 在DTD文档中使用ELEMENT声明一个XML元素,语法格式如下所示: !ELEMENT?元素名称元素类型??元素类型可以是元素内容、或类型?? 如为元素内容:则需要使用()括起来,如?? !ELEMENT?书架?(书名,作者,售价)?? !ELEMENT?书名?(#PCDATA)?? 如为元素类型,则直接书写,DTD规范定义了如下几种类型: EMPTY:用于定义空元素,例如br/ hr/ ANY:表示元素内容为任意类型。 (2)、 DTD的语法细节:元素定义2 元素内容中可以使用如下方式,描述内容的组成关系 用逗号分隔,表示内容的出现顺序必须与声明时一致。!ELEMENT MYFILE (TITLE,AUTHOR,EMAIL) ?用|分隔,表示任选其一,即多个只能出现一个 !ELEMENT MYFILE (TITLE|AUTHOR|EMAIL) 在元素内容中也可以使用+、*、?等符号表示元素出现的次数: ?? ?+: 一次或多次 (书+) ?? ??: 0次或一次 (书?) ?? ?*: 0次或多次? (书*) 也可使用圆括号( )批量设置,例 ?!ELEMENT MYFILE ((TITLE*, AUTHOR?, EMAIL)* | COMMENT) (3)、属性定义 xml文档中的标签属性需通过ATTLIST为其设置属性 语法格式: !ATTLIST?元素名??属性名1?属性值类型?设置说明?? ???? 属性名2?属性值类型?设置说明?? ??? ……???? 属性声明举例:?? !ATTLIST?商品???类别?CDATA?#REQUIRED?? ???? 颜色?CDATA?#IMPLIED???? 对应XML文件: 商品?类别=服装?颜色=黄色…/商品?? ????商品类别=服装…/商品?? 设置说明: #REQUIRED:必须设置该属性 #IMPLIED:可以设置也可以不设置 #FIXED:说明该属性的取值固定为一个值,在 XML 文件中不能为该属性设置其它值。但需要为该属性提供这个值 直接使用默认值:在 XML 中可以设置该值也可以不设置该属性值。若没设置则使用默认值。? 举例: !ATTLIST?页面作者?? ????姓名?CDATA?#IMPLIED?? ????年龄?CDATA?

文档评论(0)

f8r9t5c + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8000054077000003

1亿VIP精品文档

相关文档