欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    第2章 数据底层结构(精品).ppt

    • 资源ID:82872709       资源大小:516KB        全文页数:73页
    • 资源格式: PPT        下载积分:16金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要16金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第2章 数据底层结构(精品).ppt

    第二章 数据的底层结构DTD和XML Schema本章内容vXML文档类型定义文件DTDvXML文档模式定义文件SchemaXML文档类型定义文件DTDXML被作为一种元标记语言,是一种描述标记语言的语言。在本章中您将学到如何说明和描述所创建的新标记语言。这些新的标记语言(也叫标记集)要通过文档类型定义(DTD)来定义,这正是本章要讲述的内容。各个文档要与DTD相比较,这一过程称为合法性检验。如果文档符合DTD中的约束,这个文档就被认为是合法的,否则就是不合法的。DTD是一套关于标记符的语法规则,它定义了可用在文档中的元素、属性和实体,以及这些内容之间的相互关系。本节内容v初识DTDvDTD编写语法vXML文档和DTD的匹配初识DTD例如:需要用XML文档记录通讯录的信息,包括姓名、地址、街道、城市、州、邮编、电话、Email。第一步,根据分析可设计如下各元素名:Name,Address,Street,City,State,ZipCode,Phone,Email,还有Sex。第二步,确定XML文档的层次结构:Directory Person(属性Sex)Name Address Street City State ZipCode Phone Email初识DTD第三步,根据文档结构构造DTD:初识DTD最后,根据DTD编写相应的XML文档:Fred BloggsLondon22 Chancery LaneLondonSW17$QP44 1 800 345144fbloggshk.co.ukPerson元素可以根据需要定义多个,但必须都包含在根元素中。只有满足相应DTD的XML文档才是合法的,但这并不说明不是良构的XML文档。DTD的编写语法v一、元素定义元素声明v格式:name是一个标准的XML标记的名字;content由以下三种之一组成:v关键字EMPTY;v关键字ANY;v描述包含在本元素中的子元素的顺序和重复次数的内容模型。例2.2 只有在DTD中定义的元素才能出现在文档中。DTD的编写语法v元素声明注意事项:声明以关键字ELEMENT开头;数据类型不是DTD的一个特征,即元素不能被指定包含一个数字或日期,都是字符类型的;DTD中是区分大小写的,所有的关键字必须按照规定书写。DTD的编写语法v元素内容类型1、EMPTY类型用于定义空元素,此种元素只能有属性(也可以没有)不能有元素内容和子元素。声明语法:2、ANY类型此种元素可以包含其他任何元素或已编译的字符数据。声明语法:3、#PCDATA类型只包含已编译的字符数据的元素,不包含子元素。声明语法:注意此处有空格DTD的编写语法4、子元素类型元素可以包含一些列的子元素,子元素的内容模型有两种结构:序列和选择。v序列:所有的子元素必须出现且仅出现一次,而且要依次出现。声明语法:注意:序列中不能出现#PCDATA;子元素还可以包含子元素。v选择:将子元素用竖线”|”分隔,只能出现各子元素中的一个。声明语法:序列和选择可以结合使用,例如:DTD编写语法v5、混合类型既包含子元素有包含已编译的字符数据。声明语法:其实,任何包含#PCDATA的内容规范都称为混合类型。在混合类型中,结尾的星号是必须的,并且必须以#PCDATA开始。是非法的。DTD编写语法v6、元素出现次数指示符前面介绍的元素声明中,元素只能出现一次。可以用元素出现次数指示符来指定元素出现的次数。“?”字符:说明元素可以出现0次或1次;“*”字符:说明元素可以不出现,或出现1次或多次;“+”字符:说明元素必须出现至少一次,或者说可以出现1次或多次。例如:例2.4DTD编写语法v属性定义属性声明vElement_name是元素名;vAttribute_name是属性名;vType是属性的类型;vDefault_value是属性的默认值。例如:声明属性应注意:v属性名称遵守的规则与有效的元素名称相同;v在一个给定的元素中不能有两个属性同名;v若属性值中含有双引号,则该属性用单引号括起来;反之亦然。DTD编写语法v1、属性的类型CDATA属性类型属性值只能是文本串。例如:枚举属性类型属性值为指定文本串列表中的某一个文本串。例如:ID属性类型用于标识文档中的元素。ID属性值必须是一个合法的XML名称,并且该值在文档中必须是唯一的。每个元素最多只能有一个ID类型的属性。例如:DTD编写语法vIDREF/IDREFS类型IDREF类型的属性用来引用同一文档中的另一元素的ID属性,使一个元素和另一个元素发生联系。IDREFS是IDREF的复数形式,表明可以引用多个元素的ID属性,在XML文档中不同ID属性值用空格隔开。例题2.6vNMTOKEN/NMTOKENS属性类型NMTOKEN类型属性的属性值必须是一个有效的XML名称。NMTOKENS是NMTOKEN的复数形式,允许有多个有效XML名称作为属性值,之间用空格隔开。DTD编写语法v2、属性的默认值属性声明可以给属性指定一个默认值,使得当在XML文档中未明确地指定该属性的值时,XML处理器会将此默认值作为该属性的值。属性的默认值可以分别用下面三个关键字进行定义。#REQUEIRED:该元素必须具有该属性,否则文档是无效的;例如:如果语法分析器遇到一个标记,该标记没有包含这些属性中的一个或几个时,将返回一个错误。DTD编写语法#IMPLIED:该属性不是必须使用的;例如:如果XML处理器遇到没有EXTENSION属性的标记,就不向XML应用程序提供有用的属性值。DTD编写语法v#FIXED:可以不用明确指定该属性的值,处理器会自动给出其值;如果要明确指出属性值,必须是属性定义时给出的默认值。例如:文档作者不需要在它们各自的标记中真正地引用固定的属性。如果它们没有包括固定属性,则使用缺省值;如果包括了固定的属性,无论如何它们使用的属性值必须一致,否则语法分析器将返回一个错误信号。XML文档和DTD的匹配每个有效的XML文档必须指定它对于哪个DTD是有效的。这个DTD可以包含在相应的XML文档中,或者XML文档也可以通过一个外部URL链接到DTD,这样的外部DTD可以有不同的文档和Web站点共享。v内部DTD内部DTD的语法:其中document.type.name与XML文档的根元素名相同。例如:XML文档和DTD的匹配v外部个人DTD前面的合法的例子都在文档的序言部分包含了DTD。但是XML真正的功能来自于不同的人们编写的可为许多文档共享通用的DTD。当使用外部DTD时,文档类型声明要加以改变。DTD不再是包括在方括号中,而是在SYSTEM关键词后接一个能找到DTD的绝对或相对的URL。例如:这里root_element_name像以前一样是根元素的名称,SYSTEM是一个XML关键词,关键词SYSTEM是为单个作者或小组所用的私有的DTD使用的。DTD_URL是能找到DTD的绝对或相对的URL。例如:也可以通过web共享一个DTD:XML文档和DTD的匹配vDTD文档当单独定义DTD文档时,其内容不再包括。例如:保存为扩展名为dtd的文件即可。例2.12XML文档和DTD的匹配一个XML文档可以同时使用内部和外部DTD,语法如下:!DOCTYPE customer SYSTEM“”XML文档和DTD的匹配v外部公用DTD关键词SYSTEM是为单个作者或小组所用的私有的DTD使用的。但作为XML承诺的一部分,可令覆盖整个产业的广泛组织(如ISO或IEEE)能够将公共DTD加以标准化,以便用于各自的专门领域。这样的标准化可以让人们不用为同一项目重复作标记,并且使用户共享公用文档更容易。为创建组织之外的编写者设计的DTD使用PUBLIC关键词而不使用SYSTEM关键词。并且DTD有一个文件名。句法如下:root_element_name仍然是基本元素名称。PUBLIC是XML关键词,说明这一DTD是公共使用并具有名称。DTD_name是与此DTD联系的名称。有些XML处理程序会使用名称从中心库中检索DTD。最后,如果DTD不能根据名称从熟知的库中检索到,则DTD_URL是一个能找到该DTD的相对或绝对URL。XML文档和DTD的匹配如果一项DTD是ISO标准,它的名称要以字符串“ISO”开始。如果是非ISO标准组织批准的DTD,它的名称以加号(+)开始。如果不是标准组织批准的DTD,它的名称以连字符(-)开始。这些开始字符串后接双斜线(/)和DTD所有者的名字,其后接另一个双斜线和DTD描述的文档类型,然后又是一个双斜线后接ISO639语言标识符,如EN表示英语。在http:/www.ics.uci.edu/pub/ietf/http/related/iso639.txt处列有完整的ISO639标识符。例如:XML文档和DTD的匹配v实体定义实体是包含XML文档特殊部分的存储单元。它可以是文件、数据库记录或任何其他包含数据的项目。实体使用了一种代替机制:在XML文档中放入一个实体引用,当对文档进行解析时,实体引用被实体内容所取代。XML文档和DTD的匹配v内部一般实体DTD中实体定义语法:XML文档中引用实体语法:&entity_name;例如:例2.15 XML文档和DTD的匹配在实体中使用标记字符有一些限制v在实体中使用标记的第一个限制是:任何标记字符必须双重转义。如果希望最终元素内容是This is not a black&white choice.如果希望用”&name;”来代替”black&white”,即定义实体:如果将元素内容写为:This is not&name;choice.则在xml处理器解析后生成:This is not a black&white choice.xml处理器在试图解析“&”时将报告错误。正确的实体定义写法为:注意注意:如果使用&则不需要双重转义,其他标记字符有相同特点。例题XML文档和DTD的匹配v在实体中使用标记的第二个限制是:XML文档的逻辑结构与物理结构必须一致简单的说就是:如果实体定义中有元素的开始标签,就必须有其结束标签。例:定义实体:元素内容写为:The job was left to&safe;to finish.正确的写法:The job was left to&safeto finish.例题XML文档和DTD的匹配v外部一般实体外部一般实体除了实体的定义是在一个单独的文件中之外,与内部一般实体很相似。将实体定义写在一个独立文件中,定义扩展名为.ent。在DTD文件中用下列语句调用:例2.17XML文档和DTD的匹配v参数实体可用参数实体把较小的DTD组成大型的DTD。也就是说,一个外部DTD可以链接到另一外部DTD,第二个DTD引入第一个DTD中声明的元素和实体。同时,将DTD分解为小的、更便于管理的组块,使得对DTD的分析处理更加简便。可以将DTD文档的一部分放在一个独立的文件中,然后再其他DTD文档中用下列语法定义实体:注意:%两边的空格是必须的。然后再用下列语法引用:%entityname;XML模式定义XSDv章前导读主要介绍XML模式定义(XML Schema Definition,XSD)的语法知识,重点介绍Schema的文档结构,XML Schema中元素及属性的声明语法和使用XML模式的方式。v学习重点Schema的文档结构XSD的数据类型XML Schema中元素的声明语法XML Schema中属性的声明语法在XML模式中创建元素和属性组使用XML SchemaSchema简介 XML Schema是2001年5月正式发布的W3C推荐标准,经过数年的大规模讨论和开发终于成为全球公认的XML环境下首选的数据建模工具。和DTD一样,XML模式负责定义和描述XML文档的结构和内容。它可以定义XML文档中存在哪些元素和元素之间的关系,还可以定义元素和属性的数据类型。XML Schema本身是一个XML文档,它符合XML语法结构。例如,对于下列的XML文档 红楼梦 曹雪芹Schema简介 如果使用DTD的形式来定义该XML文档结构,代码如下:用Schema形式的定义代码:为什么要使用Schema 虽然DTD可以定义XML文档的结构和数据类型,但是DTD有不少缺陷。v首先,它使用自己的一套语法,与文档实例的语法截然不同。更重要的是,如果XML解析器能够使应用程序简便的访问他们所处理的DTD中的声明,就会使DTD成为一种非常有用的工具。但是,几乎没有解析器能够做到这一点。应用程序无法了解DTD中的声明及其结构,妨碍了人们利用DTD验证文档的有效性,以及将相应领域的信息传达给编程人员。v不能使用解析器动态创建DTD。如果想根据某些值改变词汇表规则,人们只能手工创建DTD。vDTD是一种封闭的结构。XML词汇表的规则完全包含在DTD中。如果不需要从其他DTD借用声明或结构,或许人们感受不到这方面的限制性。由于实体处在一个很低的层次,因此扩展DTD的工作往往徒劳无功。人们无法根据概念和对象的相关性将声明分为若干段。vDTD在数据类型信息方面也存在一定的缺陷。它所提供的唯一工具就是表示法。人们无法根据现有的类型定义自己的新类型。为什么要使用SchemavDTD的缺点归纳为以下几点:DTD是基于正则表达式的,表示能力有限;DTD没有数据类型的支持,在大多数应用环境下能力不足;DTD的约束定义能力不足,无法对XML实例文档作出更细致的语义限制;DTD的结构不够结构化,重用的代价相对较高;DTD并非使用XML作为描述手段,而且DTD的构建和访问并没有标准的编程接口,无法使用标准的编程方式进行DTD维护。为什么要使用SchemavXML Schema正式针对这些DTD的缺点而设计的。XML Schema的有点如下:XML Schema基于XML,没有专门的语法;XML Schema可以像其他XML文件一样解析和处理;XML Schema支持一些列的数据类型;XML Schema提供可扩充的数据模型;XML Schema支持综合命名空间;XML Schema支持属性组。Schema的文档结构vSchema的文档结构有以下几部分组成:1.定义命名空间。2.定义根元素的名字和类型。3.定义子元素的名字和类型,并说明和根元素的关系。vSchema文档语法结构示例:Schema的声明开始与schema元素。该元素使用xmlns属性来指定命名空间和该文档相关联,用于构造schema的元素和数据类型来自http:/www.w3.org/2001/XMLSchema命名空间。注意:所有Schema文档都适用schema作为其根元素。例4-1XSD的数据类型vXML Schema中的数据类型主要分为以下两类:简单数据类型复杂数据类型简单数据类型vXML Schema中定义了一些简单数据类型,其中内置数据类型包括Primitive(原始数据类型)和Derived(派生数据类型)。这些类型是在XML Schema中使用的每种数据类型的最基本的构成块,可以用来描述元素的内容和属性值,也可以根据这些类型构造自定义的类型。简单数据类型vPrimitive原始数据类型数据类型数据类型描述描述string表示字符串boolean表示布尔值,真或假decimal表示十进制数,用来准确定义一个值float表示单精度32位浮点数double表示双精度64位浮点数timeDuration表示持续时间dateTime代表特定的时间time代表特定的时间,而且是每天重复的date代表日期anyURI代表一个URI,用来定位文件recurringDuration表示在一个特定的间隔之后重现的持续时间简单数据类型vDerived派生数据类型数据类型数据类型描述描述integer用一个可选的符号+或-表示十进制数的一个序列(由decimal导出)long表示在-263和+263-1之间的一个值(由integer导出)nonNegativeInteger表示大于或等于0的整数(由integer导出)positiveInteger表示一个大于0的整数(nonNegativeInteger导出)int表示最小值为-231,最大值为+231-1的一个数(由long导出)time表示每天时间重现的一个实例(由recurringDuration导出)date表示从特定一天午夜开始,在下一天午夜结束的一个时间段(由timeDuration导出)简单数据类型vXSD中的简单数据类型除了上面介绍的两类之外,还有一类是用户自定义的简单数据类型。这种数据类型是编写模式文档的用户根据已经存在的简单数据类型定义的,定义时需要用到XSD中的一个很重要的关键字simpleType。在模式文件中此关键字是作为元素使用的。simpleType元素中还可以包含一些常用的属性:属性属性描述描述enumeration在指定的数据集中选择,限定用户的选值fractionDigits限定最大的小数位,用于控制精度length指定数据的长度maxExclusive制定数据的最大值(小于)maxInclusive制定数据的最大值(小于或等于)maxLength指定长度的最大值minExclusive制定最小值(大于)minInclusive制定最小值(大于或等于)minLength指定最小长度pattern指定数据的显示规范简单数据类型v用户自定义的简单数据类型的语法如下:内容模型定义例如:有一雇员电话标记的格式为:0532-789,此标记中内容要求只能容纳8个字符长的字符串,并且匹配模式dddd-ddd(d表示09之间的数字),那么就需要为empphone元素自定义一种数据类型。因为只能容纳字符串值只能容纳8个字符正则表达式匹配模式dddd-ddd简单数据类型vpattern元素的属性值必须是一个正则表达式,用它来定义一种匹配的模式。v正则表达式(regular expression)是有普通字符(例如字符az)以及特殊字符(称为元字符)组成的文字模式,它描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串做替换或着从某个串中取出符合某个条件的子串等。正则表达式可以作为一个模板,将某个字符模式与搜索的字符串进行匹配。例:正则表达式“/d3-A-Z2”的语义为三个数组后面跟着一个连字符,接着跟着两个大写的英文字母。v正则表达式常用符号及其意义上网查找简单数据类型v自定义枚举类型的数据类型语法:简单数据类型v例如:定义一个新类型sex,sex是从string类型导出的,同时它的值必须为male和female。简单数据类型v创建数值类型数据类型例如,是一个名为num的数据类型的值在10400之间。简单数据类型v复杂数据类型复合元素包含其他元素、属性和混合内容。为了声明复合元素,应当首先定义一个复杂数据类型。软后将该数据类型与元素相关来声明一个复合元素。复合数据类型的声明语法:内容模型定义(包括子元素和属性的声明)具体复杂数据类型的实例在下节介绍。Schema中的元素声明v简单元素声明如果一个元素中仅仅包含数字、字符串或其它数据,但不包含子元素和属性,这种元素被成为简单元素。例如:下面的quantity元素就是一个简单元素。some为了在XSD中声明一个简单元素,必须使该元素于简单数据类型相关联。简单数据类型可以是XSD中内置的数据类型,也可以是用户自定义数据类型。Schema中的元素声明v声明简单元素的语法:其中:Name:指定声明元素的名字Default:指定该元素的默认值,是可选的Type:指定声明元素的数据类型minOccurs:指定该元素出现的最小次数。如果指定为0,则该元素是可选的;如果大于0,则该元素是强制的,至少出现指定的次数。该属性是可选的,默认值是1。如果该属性单独出现,只能为0或1。maxOccurs:指定该元素出现的最大次数。如指定为unbounded,则意味着能出现任意次。该属性是可选的,默认值是1。如果该属性单独出现,只能为1或更多。Schema中的元素声明v例:gone with the windthe backdrop of this book is the American civil war25.0035要求procductname元素和descriptin元素的值必须是字符串;price元素的值必须是大于0的整数;quantity元素的值必须是大于或等于0的整数。Schema中的元素声明v对应的XSD声明:对应DTD文档:它们的区别显而易见。Schema中的元素声明v复杂元素的声明在XML Schema中,对于那些可以有自己的内容,以及可以携带自身属性和子元素的元素称之为复杂元素。声明语法:与简单元素不同的是type属性值必须是一个复杂数据类型。Schema中的元素声明例如,下面的USAddress被定义为一个复杂数据类型:Schema中的元素声明如果对于元素purchaseOrder,要使它作为一个复杂元素在XML文档中出现,并且此元素的数据类型为上面定义的USAddress,那么purchaseOrder元素定义如下:含义为:purchaseOrder必须含五个元素,其名必须为name、street、city、state、zip,类型必须与定义相同。Schema中的元素声明v元素的内容既包含文本又包含子元素在声明这种复杂元素时,必须在complexType元素上把mixed属性的值设为true例如:综合实例4-2对上述模式有效的XML文档My first name isechottSchema中的元素声明v匿名类型定义在声明元素时,使用“type=“类型名”构造应用类型。如果在模式文档中定义了许多之应用一次而且包含的约束非常少的数据类型,那么使用前面所介绍的方法书写XSD文档就会非常繁琐。实例4-3下一页有一个例子Schema中的元素声明匿名类型定义节省了名称和外部引用的开销。例如:Schema中的属性声明vattrbute元素用来声明XSD文档中的属性。语法:其中:vName:用来指定自定义属性的名称。vDefault:用来指定一个默认值。vFixed:用来为属性提供一个固定值。vRef:用来引用在同一个或其他XML文档中声明的自定义属性。vType:指定该属性的数据类型,但只能是简单数据类型。vUse:制定属性是强制还是可选。Use属性的值可以是optional(属性不是必须的,此为默认值)、prohibited或者required(属性是强制的)。Schema中的属性声明例:定义了一个名为age的属性,它的值必须是一个整数。要把属性添加到模式中时,它必须是schema元素、complexType元素或者attributeGroup元素的子元素。要把属性附加在元素上,属性应该在complexType定义中的末尾定义或引用。例4-4Schema中的属性声明v虽然属性和元素的默认值都是使用default属性来声明,但是在XML文档中使用时却有所不同。当一个属性使用默认值来声明的时候,如果属性在XML文档中出现了,那么属性的值就是属性在XML文档中出现的那个值;如果属性没有在XML文档中出现,模式处理器将认为这个属性的值等于声明中default属性的值。需要注意的是属性默认值只有在属性本身为“可选的”时候才有意义。当一个元素声明中有默认值定义的时候,如果XML文档中元素出现且带有自身内容,元素的值就是XML文档中元素的内容;如果元素没有内容,那么模式处理器就认为这个元素的值等于声明中default属性的值;如果元素在XML文档中并不出现,则模式处理器根本就不认为该元素出现。Schema中的属性声明vfixed和default的概念是互斥的属性和元素声明中,都使用了fixed属性来确保属性和元素被设置为特殊的值。需要注意的是,fixed值的概念和default值的概念是互斥的。如果同时声明了fixed和default属性,模式处理器会产生一个错误。全局元素和全局属性v全局元素和全局属性是在全局声明时建立的,全局声明都是作为元素的直接子元素出现的。一旦定义,全局元素或全局属性就可以像先前描述的那样,在一个或多个元素/属性声明中使用ref属性引用。引用全局元素或全局属性的语法如下:使用全局元素和全局属性的限制:(1)全局声明不能包含引用;(2)约束不能够发在全局声明中,即全局声明不能够包含minOccurs、maxOccurs 或者use属性。实例4-5在XML模式中创建元素和属性组vXSD使用户可以将相关的元素和属性结合为组,而创建成组的元素和属性的特征使用户能够完成下面的任务。(1)穿件元素的一个可重用组;(2)从一组中选择一个单一的数据;(3)指定元素的顺序:可创建一组元素,并指定该组中每个元素在XML文档中出现的顺序;(4)创建在父元素内按任意顺序使用的一组元素;(5)创建可以在不同元素中重用的一组属性。vXSD提供了用来组合用户定义元素和属性的元素:sequence:指定一定顺序;group:用通用名组合成组;choice:同一时间只能使用其中之一;all:在父元素内任意顺序使用;attributeGroup:在不同元素中重用一组属性。在XML模式中创建元素和属性组vsequence元素sequence元素定义了一列元素必须按照模式中制定的顺序显示(如果是可选的,也可以不显示)。语法:(要组合的元素的声明)实例4-6在XML模式中创建元素和属性组vchoice元素choice元素允许指定多组生命中的一个,用于互斥情况。语法:(要组合的元素的声明)实例4-7在XML模式中创建元素和属性组vgroup元素group元素使用通用名将一组元素组合到一起。语法:(要组合的元素的声明)其中:(1)maxOccurs:指定在XML文档中一组能发生的最大次数。(2)minOccrus:指定在XML文档中一组能发生的最小次数。如果为0,则该组是可选的。(3)name:用来为组元素分配一个名字不能包含冒号。(4)ref:用来在符合元素中引用一个组。实例4-8在XML模式中创建元素和属性组vall元素all元素常用于group元素和complexType元素中,它允许所定义的元素按照任意顺序显示,all元素的子元素在默认 情况下是必须的,而且每次最多出现一次。语法:(要组合的元素的声明)注意:all必须放在任何内容模型的最顶层。即all元素不能嵌套在sequence元素或choice元素中。实例4-9在XML模式中创建元素和属性组vattributeGroup元素attributeGroup元素可以把一组属性声明组合在一起,一边可以被复杂类型应用语法:属性1的声明属性2的声明属性n的声明实例4-10在一个XML模式中使用另一个模式v模式的一个关键特征是支持高度重用性。在一个模式中声明的组建能够被另一个模式重用,这可以通过include元素和import元素来实现。vinclude元素include元素用来包含或引用定位在一个明确地址的外部模式,语法:其中:(1)id:用来指定元素的ID。ID必须是唯一的,但id属性是可选的。(2)schemaLocation:指定模式文件的物理地址。include元素在一个XSD文档中可以多次出现。Schema元素是include元素的父元素。Include元素在使用上的唯一约束是要包含和已包含的模式文件必须属于同一个目标命名空间。include元素允许引用任何在同一目标命名空间的上下文中被定义的外部模式。用户可以使用schema元素的targetNamespace属性来声明目标命名空间。实例4-11在一个XML模式中使用另一个模式vimport元素import和include完成同样的功能,但import允许访问来自多个不同目标命名空间的模式的组建。语法:其中:(1)id:用来指定元素的ID。ID必须是唯一的,但id属性是可选的。(2)namespace:指定被引入模式所属命名空间的URI。它也指定前缀,该前缀用来是一个元素或属性和一个特定的命名空间相关联。(3)schemaLoacation:指定模式文件的物理地址。当将一个XML模式引入另一个XML模式时,必须现在需要引入模式文件的Schema文档中指明所引用的模式文件所在的命名空间,并在引入的同时声明该命名空间的前缀。实例4-12

    注意事项

    本文(第2章 数据底层结构(精品).ppt)为本站会员(hyn****60)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开