1、ICS 35.080 L 76 遇昌中华人民共和国国家标准化指导性技术文件GB/Z 26248. 1-20 1 O/ISO/IEC TR 22250-1 :2002 信息技术文档描述和处理语言用于XML的规则语言描述(RELAX)第1部分:RELAX核心Information technology-Document description and processing languages Regular language description for XML(RELAX)一Part 1 RELAX Core (ISO/IEC TR 22250-1: 2002 , IDT) 2011-01-1
2、4发布2011-05-01实施数码防伪中华人民共和国国家质量监督检验检疫总局中国国家标准化管理委员会发布中华人民共和国国家标准化指导性技术文件信息技术文档描述和处理语言用于XML的规则语言描述(RELAX)第1部分:RELAX核心GB/Z 26248. 1 2010/ISO/IEC TR 22250-1 :2002 峰中国标准出版社出版发行北京复兴门外三里河北街16号邮政编码:100045网址电话:6852394668517548 中国标准出版社秦皇岛印刷厂印刷各地新华书店经销导开本880X12301/16 印张2.5字数71千字2011年5月第一版2011年5月第一次印刷* 书号:15506
3、6. 1-42853定价36.00元如有印装差错由本社发行中心调换版权专有侵权必究举报电话:(010)68533533GB/Z 26248. 1-201 O/ISO/IEC TR 22250-1 : 2002 目次前言. . III 1 范围-2 规范性引用文件3 术语和定义24 记法.35 基本概念35. 1 设计原则35.2 实例、schema和元schema 3 5. 3 模块和框架J.45.4 岛和实例45.5 RELAX核心处理器的行为45. 6 数据类型55. 7 角色和条款55.8 产生规则,标签和树篱模型.55.9 名字的分类和出现66 模块构造66.1 module 6 6.
4、 2 interface 7 6. 3 export . 7 6.4 tag 7 6.5 attPool 8 6. 6 带role属性的ref86. 7 attribute . 8 6. 8 elementRule 9 6. 9 h巳dgeRule 9 6.四带标签属性的ref 10 6.11 hedgeRef 10 6. 12 sequence 10 6.13 choice 10 6.14 empty .11 6. 15 non巳116.16 mixed 11 6. 17 element 11 6. 18 include 11 6. 19 div 12 6. 20 annotation 12
5、 6.21 documentation 12 6. 22 appinfo . 12 I GB/Z 26248. 1-2010/ISO/IEC TR 22250-1 :2002 9白。,undqJAUZA吐A丛XA哇4&A吐A吐4AA哇RUFHUEUPbqtq,4A-i1IAT-A1IA1IA1A-1-A1A-1-A-1-A1IA1i1i1IAnLqa 块模X 型BMU类mm据hHHHUHHUUU别的的数HUUHuuu级、hu、u置u展川性核栋内扩别合KE的型uuuuguu级符分类UHhuuuu性的江工部据zr的合器阳阳2数型uuuk符理啤陡愤b明扯如和来附展展展创块吃附附素扩吁扩m模俨但性些S
6、MU些一兀bmIMdMM料料类要肌且M模要建们mjm人释性要且且喷喷札惯概XRPM考概创mdm嵌解合概RRAB划聋参主12341234567丰123录录考7111188.&8.aaaa9QU11附附参E GB/Z 26248. 1-20 1 O/ISO/IEC TR 22250-1 :2002 目。吕GB/Z 26248在总标题信息技术文档描述和处理语言用于XML的规则语言描述(RELAX) 下,由下列2个部分组成:第1部分:RELAX核心;一一第2部分:RELAX命名空间。本指导性技术文件为GB/Z26248的第1部分。本指导性技术文件等同采用ISO/IECTR 22250-1: 2002(
7、信息技术文档描述与处理语言用于XML的规则语言描述(RELAX)第1部分:RELAX核心扎根据GB/T1. 1-2000的要求,本指导性技术文件仅作如下编辑性修改:依据GB/T1.1修改了文本中项目编号:GB/T 14814-1993和GB/T18793-2002等同采用国际标准,本指导性技术文件对其引用不影响本指导性技术文件等同采用国际标准。本指导性技术文件的附录A、附录B是资料性附录。本指导性技术文件由全国信息技术标准化技术委员会提出并归口。本指导性技术文件起草单位:中国电子技术标准化研究所、北京信息科技大学。本指导性技术文件主要起草人:方春燕、马楠、李幸、宋慧驹、袁援、姜瑜涛、吴倩、刘鑫
8、、李文坤、田娟。皿GB/Z 26248. 1-20 1 O/ISO/IEC TR 22250-1 :2002 1 范围信息技术文档描述和处理语言用于XML的规则语言描述(RELAX)第1部分:RELAX核心本指导性技术文件给出了形式化说明基于XML语言的语法的机制。例如,可以在RELAX中规定XHTML1.0的语法。与DTD相比,RELAX具有如下优势:一-RELAX规范使用了XML实例(即,文档)语法;RELAX提供了丰富的数据类型,以及;一-RELAX是命名空间敏感的。RELAX规范由两部分组成,即RELAX核心和RELAX命名空间。本指导性技术文件给出了RELAX核心,它可用于描述有唯一
9、XML命名空间的置标语言。GB/Z26248的第2部分给出了RELAX命名空间,可用于描述包含多个XML命名空间的置标语言,由多个RELAX核心文档组成。称为RELAX核心处理器的软件模块给定一个元素序列,将其与RELAX核心规范进行比较并报告结果。RELAX核心处理器可以由用户直接触发,也可以由其他称为RELAX命名空间处理器的软件模块触发。RELAX可与DTD结合使用。特别是,RELAX可以约束由DTD声明的记法和实体。本指导性技术文件也给出了RELAX核心的子集,其被限定在DTD特性加数据类型范围内。该子集易于实现,除数据类型信息异常外,在子集与XMLDTD结果之间可进行无信息丢失的转换
10、。注1:由于XML是WebSGML(GB/T 14814-1993中的TC2)的一个子集,因此RELAX适用于SGML。注2:OASIS的RELAXNG TC正在开发RELAX核心的后续标准。2 规范性引用文件下列文件中的条款通过本指导性技术文件引用而成为本指导性技术文件的条款。凡是注日期的引用文件,其随后所有的修改单(不包括勘误的内容)或修订版均不适用于本指导性技术文件,然而,鼓励根据本指导性技术文件达成协议的各方研究是否可使用这些文件的最新版本。凡不注日期的引用文件,其最新版本适用于本指导性技术文件。GB/T 14814-1993信息处理文本和办公系统标准通用置标语言。GML)(eqv I
11、SO 8879: 1986) 误2GB/T 18793-2002信息技术可扩展置标语言(XML)1. 0(W3C RFC xml:1998 , NEQ) ISO 8879: 1986/Cor2: 1999信息处理文本和办公系统标准通用置标语言(SGML)技术勘W3C建议书W3CXML命名空间http:/www. w3. org/TR/REC-xml-names, 1999 W3C建议书W3CXML信息集http:/www. w3. org/TR/xml-infoset,2001 W3C建议书W3CXML Schema第2部分http:/www. w3. org/TR/xmlschema-2 ,
12、 2001 IETF RFC2396: 1998 统一资源标识符(URI):通用语法1 GB/Z 26248. 1-2010/ISO/IEC TR 22250-1 :2002 3 术语和定义3. 1 XML 1. 0 XMLl.O中界定的下列术语和定义适用于本指导性技术文件。a) 开始标记Cstart tag) b) 结束标记Cend tag) c) 空元素标记Cempty-e!ement tag) d) 属性Cattribute) e) 属性名称(attribute name) f) 内容(content) g) 内容模型(content modeD h) 属性列表声明(attribute-
13、list declaration) DTD (DTD) XML处理器(XML proccssor) k) 有效性(v且lidity) 有效性验证处理器(valida ting processor) m) 非有效性验证处理器(non-validatingproccssor) n) 空白(whitcspacc) 0) 孩子(child) p) 参数实体(paramctcr cntity) q) 匹配(match) 注3:以上含义在XML1.0中给出,匹配有另外的含义(见5.的。3.2 XML命名空间XML命名空间界定的下列术语和定义适用于本指导性技术文件。a) 命名空间b) 命名空间名称(namc
14、spacc) (namcspacc namc) 3. 3 XML Schema第2部分XML Schema第2部分界定的下列术语和定义适用于本指导性技术文件。a) 词法表述Clexical represcntation) b) 刻面c) 数据类型d) 内置数据类型(facet) (datatype) (built-in datatype) 3.4 XML信息集XML信息集界定的下列术语和定义适用于本指导性技术文件。a) 信息集(information set) b) 文档信息项(docunmet information item) c) 元素信息项(element information it
15、em) d) 特性(property) e) 核心特性(core property) f) 引用略过实体信息项(reference to skipped entity information item) g) 实体信息项(entity information item) h) 记法信息项Cnotation information item) 2 3.5 RELAX核心的特定定义3.5.1 标记名称tag name GB/Z 26248. 1-201 O/ISO/IEC TR 22250-1 : 2002 开始标记名称,结束标记名称,空元素标记名称(GB/T14814 1993中的通用标识符)。
16、注4:这个术语来源于DOM.3.5.2 树篱hedge 元素和字符数据的有序序列。4 记法为了说明RELAX模块的语法,本指导性技术文件使用了DTD。然而,因为DTD不支持XML命名空间,本部分只使用了可能在DTD中出现的一些构件。为了说明元素允许的内容,本指导性技术文件使用了一些内容模型,其匹配XMLl.O中的非终结符号contentspec。示例1:以下内容模型说明了一个元素被约束为以下序列,其始于frontmatter元素,随后有一个body元素,最后是可选的backmatter元素。(frontmatter , body, backmatter?) 为了详细说明元素允许的属性,本指导性
17、技术文件使用了属性列表声明的片段,其匹配XMLl.O中的非终结符号AttDef。示例2:以下属性列表片段说明了一个元素有可选的属性class,而且任何字符串都可以作为属性值。class CDATA # IMPLIED 表示RELAX模块的元素应属于命名空间.http:/www.xml.gr.jp/xmlns/rclaxCore.。不属于该命名空间的子元素不受约束,保留的属性也不受约束。5 基本概念5. 1 设计原则RELAX核心的设计原则是:a) RELAX核心应简单而强大;b) 设计应准备迅速;c) 设计应正式而简明;d) 应可使用己存在的XML文档APIC如,SAX和DOM)实现RELAX
18、核心;巳)RELAX核心应向上兼容DTD;f) RELAX核心应有这样的子集,与DTD之间的转换不丢失除数据类型之外的信息;g) RELAX核心数据类型兼容XMLSchema第2部分。注5:如何RELAX3是对RELAX核心的指南。5.2 实例、schema和元schema5.2.1 实例文档信息项被视为一个实例。当实例满足RELAXschema所表述的条件时,该实例被视为遵循或符合RELAXschcma的。如果不存在混淆,在元需提及RELAXschema前提下可认为该实例是符合的。注6:XMLl. 0定义的有效的文档(为了使其精确,文档信息项由该文档表示)不必符合RELAXschema;符合
19、RELAX schema的实例(为了使其精确,文档由该实例表示)不必是有效的。5.2.2 RELAX schema RELAX schcma描述了允许的元素、属性、以及它们的结构关系。5.2.3 RELAX元schemaRELAX元schema是说明RELAX语法的RELAXschema。任何RELAXschema都符合GB/Z 26248. 1-201 O/ISO/IEC TR 22250-1 : 2002 RELAX元schema。5.3 模块和框架符合RELAX核心的文档信息项被视为RELAX模块。RELAX模块在单一命名空间中提出了元素及其属性和内容。符合RELAX命名空间的文档信息项
20、被视为RELAX框架。通过说明每个命名空间的RELAX模块,RELAX框架提出了多命名空间。单命名空间RELAXschema由一个框架和一个单模块组成。因为框架不能引用其他模块,该模块提供了完整的schema定义。多命名空间RELAXschema由一个框架和从该框架中引用的模块组成。5.4 岛和实例一个多命名空间实例与包含多个模块的RELAXschema相对应。该实例首先分解为多个岛,每个岛是一个单命名空间树篱。每个岛对应一个单RELAX模块(见图1)。模块对应岛对应框架实例图1模块/框架和岛/实例之间的关系单命名空间实例也是一个岛,因此不需要另外分解。5.5 RELAX核心处理器的行为REL
21、AX核心处理器是一个软件模块,该模块给定一个岛和一个RELAX模块,将岛和RELAX模块进行比较从而决定该岛是否符合该RELAX模块(见图2)。模块岛XML处理器信息集使用顶级元素的元素树篱模型可选阻LAX核心处理器消息使用符合或不符合应用程序图2RELAX核心处理器、XML处理器和应用程序RELAX核心处理器应从XML处理器中获取接收岛和RELAX模块作为信息集合。RELAX核心处理器应使用信息集合中的信息项的核心特性,而不使用其他特性。注7:RELAX核心处理器获得信息集是通过APl(如,SAX或DOM)实现的。RELAX核心处理器也可能获得树篱模块,该树篱模块约束岛的顶层元素。4 GB/
22、Z 26248. 1-201 O/ISO/IEC TR 22250-1 : 2002 经过比较,RELAX核心处理器应输出有关岛符合或不符合的消息。RELAX核心处理器也可能输出其他消息。除了这些消息,RELAX核心处理器没有其他输出。应用程序从XML处理器中获取信息集,也可从RELAX核心处理器中获取消息。有效性验证处理器和非有效性验证处理器都可能被RELAX核心处理器所使用。当RELAX核心处理器获取到被略过实体信息项的引用时,应由用户选择输出一个消息,并且有可能停止正常的处理。5.6 数据类型RELAX核心使用XMLSchema第2部分的内置数据类型。数据类型可以用作属性条件或树篱模块。
23、RELAX核心中的数据类型表示字符串的集合。给定字符串和数据类型,可以决定字符串是否属于该数据类型表示的字符串集合。示例3:称为mteger的数据类型定义了表示整数的字符串集合。可以决定字符串是否表示一个整数。数据类型引用可能有称为刻面的附加条件。示例4:integer数据类型引用可能有这样的刻面,说明该值宜不小于10,且不大于20.RELAX核心处理器不会将宇符串转换到数据(如,字符串1转换为整数1)。这种转换交给应用用程序完成。注8.典型地,应用程序仅仅触发转换库。5. 7 角色和条款在RELAX核心中,标记名称和属性的条件是由角色和条款决定的。角色是一个名称,并且由条款描述。条款没有名称
24、。条款或者是tag或者是attPool,tag说明了允许的标记名称,而attPool没有。当tag或attPool说明了允许的属性时,该属性被视为由tag或attPool声明的。每个角色最多有一个条款。条款可通过角色引用其他条款。条款不可直接或间接引用自己。被引用的条款由attPool描述;而不是由tag描述。条款不可以多次直接或间接(通过其他条款)引用其他条款。条款不可以多次直接或间接(通过其他条款)声明一个属性。5.8 产生规则,标签和树篱模型5.8. 1 概述在RELAX核心中,元素结构的条件是由标签和产生规则决定的。一个标签就是一个名称,是由一个产生规则描述的。产生规则没有名称。产生规
25、则或者是elementRule,或者是hedgeRuleoel巳mentRule是一组标签,角色和树篱模型的三元组。hcdgeRule是由标签和树篱模型组成的对。由elementRule引用的角色是由tag条款描述的。elementRule不引用由attPool条款描述的角色。多个elementRule可共享一个标签,多个hedgeRule也可共享一个标签。然而,elementRule和hedgeRule不能共享一个标签。多个elementRule可共享一个角色。注9:正则语法包含产生规则和产生字符串的集合。产生规则的左侧是非终结符号;右侧或者是一个终结符号或者是非终结符号,其中终结符号跟随着
26、一个非终结符号。RELAX核心是这样一种正则语法的扩展,由它产生逻辑结构集合。标签对应左侧的非终结符号,角色对应终端符号。树篱模块扩展了右侧的非终结符号,以至于elementRule提出的是子树而非字符串。5 GB/Z 26248. 1-201 O/ISO/IEC TR 22250-1 : 2002 元素允许的内容由树篱模块描述。树篱模块或者是一个元素树篱模块(混合型树篱模块),或者是数据类型引用。当多个elementRule一起共享标签和角色时,需要满足以下条件之一:a) 它们都具有元素树篱模块;b) 它们都具有混合型树篱模块;或者c) 它们都引用同样的数据类型,可能有不同刻面。5.8.2
27、元素树篱模型元素树篱模型产生一个标签序列的规则集。该集合中的任何标签序列,包括可在序列前端、中间或后端添加空白符,都被视为匹配该元素的树篱模型。5.8.3 混合树篱模型混合树篱模型是带mixed封装的元素树篱模型。该集合中由封装元素树篱模型产生的任何标签序列,包括可在序列前端、中间或后端添加任意字符的,都被视为是匹配该混合树篱模型的。注意不仅允许空白字符,也允许非空白字符。5.8.4 数据类型引用数据类型引用说明了数据类型名称。另外,还可进一步说明称为刻面的附加条件。如果字符序列属于被引用的数据类型且满足伴随的刻面(如果有的话),则该字符序列与数据类型引用匹配。5.9 名字的分类和出现RELA
28、X核心使用5种类型的名称。它们是数据类型名称、标记名称、属性名称、角色和标签。不同类型的名称不会相互冲突。例如,尽管有数据类型称为integer,也可使用integer作为标记名称或标签。表1显示了实例中出现的名称类型以及它们在RELAX模块中出现的位置。表1名称类型及其在实例及RELAX模块中的出现名称类型实例中RELAX摸块中数据类型名称不出现作为属性或树篱模型的条件出现(数据类型引用)标记名称出现作为条款的一部分出现属性名称出现作为条款的一部分出现角色不出现在条款中出现(描述角色)在条款中出现(引用角色)标签不出现在产品规则中出现(描述标签)在产品规则中出现(引用标签)6 模块构造6.1
29、 module module表示整体模块,提供有关模块的管理信息。module有module V ersion属性,relaxCoreV ersion属性和targetNamespace属性。moduleVersion CDATA :j:j: IMPLIED relaxCoreVersion CDATA :j:j:阻QUIREDtargetNamespace CD且TA:j:j: IMPLIED 该模块的版本由moduleVersion属性指出。-一RELAX核心的版本由rclaxCoreV ersion属性指出。版本号1.0用于指出符合RELAX核心的1.0版本;如果不符合RELAX核心的1
30、.0版本,则文档使用值1.0是错误的。注10:编辑委员会的意图是给出该规范不同于1.0的最新版本号,但是并不意味着委员会将提交RELAX核心的6 GB/Z 26248. 1-2010/ISO/IEC TR 22250-1 :2002 任何未来版本,即使有也不一定会使用任何特殊编号模式。因为未来版本并不清楚,提供这种构造是为了在必要时能有一种方法允许自动识别版本。如果得到了标有不被支持版本的文挡,RELAX核心处理器可能发出错误。它可以继续或中断正常处理。targetNamespace属性说明了一个目标命名空间,本模块所描述的元素属于该命名空间。当说明该属性且其他模块包含该模块时,实际上该属性的
31、值由该模块的目标命名空间进行标识。当没有说明该属性且其他模块包含该模块时,该模块的目标命名空间实际上应被用作目标命名空间。当没有说明该属性但是RELAX框架或模块没有引用该模块时,46假定模块中的所有元素属于命名空|间可htt叩p:/www.xml.gr.jp/xmlns/relaxCore.,module元素应声明该命名空间。模块的每个元素都应属于命名空|曰.http:/www.xml.gr.jp/xmlns/relaxCore.。因此,该模块元素应当声明该命名空间。以下内容模型描述了module元素允许的内容:(annotation? ,interface?, (taglattPoolle
32、leme时RulelhedgeRuleldivlinclude)兴)示例5:下面给出了一个module元素的示例。为了清晰省略其子元素。(module) moduleverson = 1.2 RELAX CoreVerson = 1. 0 xmlns = .http:/www.xm1. gr.jp/xmlns/relaxCore. ) (/tag) 6.5 attPool attPool说明了元素扮演特定角色的条件,通过结合属性值和引用其他角色的条件来实现。attPool有rolc属性。role NMTO阻N# REQUI阻Drole属性说明了attPool描述了什么角色。以下内容模型描述了a
33、ttPool元素允许的内容。从属ref说明role属性。(annotation?,(reflattribute)兴)如果以下两个条件得以满足,元素c扮演了由role属性说明的角色。a) 属性的每个知件(由从属attribut巳元素表示)都由E的一些属性所满足。b) e扮演了由从Jit!,rcf元素所钊川的所有角色。示例8:以下显示了attPool的示例。barl角色由一个从阔的ref元素dl用。(attPool role =飞ar) (ref role二bar1/)(/attPool) 6.6 带role属性的ref带有role属性的ref引用了一个由attPool描述的角色。带有role属性
34、的ref没有其他属性。role NMTOKEN # REQUIRED 以下内容模型描述了有角色属性的ref元素允许的内容:EMPTY tag和attPool的示例中也包含了带有role属性的ref的示例。6. 7 attribute 8 attribute描述了属性名称和值的条件。它还另外指出了属性是否是可选的。attribute有name属性,requircd属性和typc属性。名称属性是强制的。name NMTOKEN # REQUIRED required (true) # IMPLIED type NMTO阻N# IMPLIED GB/Z 26248. 1-2010/ISO/IEC T
35、R 22250斗:2002name属性说明了属性名称。required属性显示了该属性是否是可选的。如果说明为true,该属性是强制的。tag元素或attPool元素中的多attribute元素直接或间接地被该tag引用,并没有说明相互匹配名称。type属性说明了数据类型名称。如果省略type属性,则假定为内置的数据类型string。以下内容模型描述了attribute元素允许的内容。假定所有元素类型表示的刻面由1连接,并且声明为刻面参数实体的值。Cannotation? (毛facet;)头)type属性说明了数据类型名称,子元素说明了刻面,数据类型名称和刻面共同构成了数据类型引用。name
36、属性说明的属性值被要求匹配该数据类型的引用。示例9:以下显示了attribute的示例。attribute元素用作tag的子元素。(tagname=a) (attribute n四e=飞reftype = 回到职工/)(jtag) 注11:在XMLl.0中,没有属性的元素类型不需要属性列表声明。然而,在RELAX核心中,出现在实例中的标记名称往往需要tag元素。6. 8 elementRllle el巳mcntRul巳表示了包括一组包括标签,角色和树篱模型的产生规则。elcmentRule有角色属性,label属性和type属性。当elementRule没有从属tag时,应说明role属性,而
37、label属性不需要说明。当忽略label属性时,则假定为与role属性有相同的值。当elementRule有从属tag时,应当说明label属性,而不要说明role属性。role NMTOKEN # IMPLIED label NMTOKEN # IMPLIED type NMTO阻N# IMPLIED role属性说明了一个角色。label属性说明了该elementRule描述了什么标签。type属性引用一个数据类型。当该elementRule有一个元素树篱模型或混合树篱模型时,不要说明type属性。以下内容模型描述了elementRule元素允许的内容。假定所有元素类型表示的刻面由1连接
38、,并且声明为刻面参数实体的值。从属ref说明了label属性。(annotation? ,tag? , (reflhedgeReflchoicelsequencelelementlnonelemptylmixed) I(笔facet;)善)在8.5中描述了从属tag元素的处理。如果elementRule含有以下任一子元素ref,hedgeRef, choice, sequenc巳,element, none或者empty,则elementRule有元素树篱模型。如果mixed被说明为子元素,elementRule被视为有混合树篱模型。如果elementRule没有元素树篱模型或混合树篱模型,t
39、ype属性会说明一个数据类型引用。当elementRule有数据类型引用时,刻面可被说明为elementRule的内容。数据类型和刻面在第7章中描述。6. 9 hedgeRllle hedgeRule表示包括一对标签和树篱模型的产生规则。hedgeRulelabel属性。label NMTO阻N# REQUI阻D9 GB/Z 26248. 1-201 O/ISO/IEC TR 22250-1 : 2002 label属性说明了hedgeRule描述了什么标签。以下内容模型描述了hedgeRule元素允许的内容。从属ref说明了标签属性:(annotation?, (reflhedgeReflc
40、hoicelsequenceleleme时Inonel四pty)6.10 带标签属性的ref带label属性的ref表示一个元素树篱模型,该模型引用未由hedgeRule描述的标签。带label属性的ref元素有occurs属性。label NMTO阻N#REQUIRED occurs CDATA # IMPLIED occurs属性的值或者是祷,十或者?。以下内容模型描述了带label属性的ref元素所允许的内容zEMPTY 让/作为ref的label属性引用的标签。当没有说明occurs属性时,该ref产生一个标签序列,该序列仅由/的一次出现来构成。当说明了occurs属性时,赞重复序列零
41、次或多次,十重复序列一次或多次,?重复序列零次或一次。6. 11 hedgeRef hedgeRef表示引用了由某些hedgeRulc元亲描述的标签的元素树篱模型。hedgeRef有occurs属性。label NMTOKEN拌阻QUIREDoccurs CDATA # IMPLIED occurs属性的值是讲,+或1。以下内容模型描述了hedgeRef元素允许的内容:EMPTY hedgeRef被hdgeRule元素的元素树篱模型代替,那些hcdg巳Rule描述了被该hedgeRef引用的标签(详见8.4)。6. 12 sequence sequenc巳表示使元素树篱模型相互联系的元京树篱模
42、型。sequence有occurs属性。occurs属性的允许值与语义和有labcl属性的ref一样。occurs CDATA # IMPLIED 以下内容模型描述了scquence元素的允许内容:(reflhedgeReflchoicelsequencejeler阳ltI none I empty)头/ 假设sequence的子元素是C1, C2 ,cm 。再假设Cl产生标签序列h;, 112 , l1i , C2产生标签序列121 , 122 ,12j山及以下子元素也产生类似序列,cm产生标签序列1m1,1m2 ,lmk。当没有说明occurs属性时,该sequence产生111,112
43、, l1j , b1 ,122 ,与.-.1时,1m2,lmk。当说明了occurs属性时,兴将重复序列零或多次,+将重复序列一次或多次,?将重复序列零次或一次。6. 13 choice choice表示元素树篱模型中选择的元素树篱模型。choice有occurs属性。occurs属性的允许值与语义和有label属性的ref一样。occurs CDATA # IMPLIED 以下内容模型描述了choice元素的允许内容:CreflhedgeReflchoicelsequencelelementlnonelempty)祷假设choice的子元素是C1, C2 ,cm 。再假设C1产生标签序列11
44、1, 112 ,11且,C2产生标签序列121, 122 ,12j山及以下子元素也产生类似序列,cm产生标签序列lm1, 1m2 ,lmk。当没有说明occurs属性GB/Z 26248. 1-201 O/ISO/IEC TR 22250-1 : 2002 时,该choice产生以下序列中的任意一种:标签序列111,112,11;,标签序列121, 122 , 12j ,或者标签序列1m1, 1m2 , 1mk 0当说明了occurs属性时,养将重复序列零或多次,+将重复序列一次或多次,?将重复序列军次或一次。6. 14 empty empty表示匹配空标签序列的元素树篱模型。empty没有属性。以下内容模型描述了empty元素的允许内容:EMPTY 6. 15 none none表示不匹配标签序列的元素树篱模型。none没有
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1