网站大量收购闲置独家精品文档,联系QQ:2885784924

XMLDTD与Schema约束..doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
XMLDTD与Schema约束.

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?#IMPLIED?? ????联系信息?CDATA?#REQUIRED?? ????网站职务?CDATA?#FIXED?页面作者?? ????个人爱好?CDATA?上

文档评论(0)

bhzs + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档