- From: CVS User jkosek <cvsmail@w3.org>
- Date: Thu, 16 May 2013 09:01:10 +0000
- To: public-multilingualweb-lt-commits@w3.org
Update of /w3ccvs/WWW/International/multilingualweb/lt/drafts/its20/schemas In directory gil:/tmp/cvs-serv11065/schemas Modified Files: its20-elements.rnc its20-elements.rng its20.rnc its20.rng Log Message: Extensibility is explicitly expressed in RELAX NG schema --- /w3ccvs/WWW/International/multilingualweb/lt/drafts/its20/schemas/its20-elements.rnc 2013/05/07 09:57:30 1.5 +++ /w3ccvs/WWW/International/multilingualweb/lt/drafts/its20/schemas/its20-elements.rnc 2013/05/16 09:01:09 1.6 @@ -1,7 +1,3 @@ include "its20.rnc" -## enable all xml:* attributes -its-local.attributes &= attribute xml:* { text }* -its-local.nons.attributes &= attribute xml:* { text }* - start = its-rules | its-span | its-standoff \ No newline at end of file --- /w3ccvs/WWW/International/multilingualweb/lt/drafts/its20/schemas/its20-elements.rng 2013/05/07 09:57:30 1.4 +++ /w3ccvs/WWW/International/multilingualweb/lt/drafts/its20/schemas/its20-elements.rng 2013/05/16 09:01:09 1.5 @@ -1,21 +1,6 @@ <?xml version="1.0" encoding="UTF-8"?> -<grammar xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns="http://relaxng.org/ns/structure/1.0"> +<grammar xmlns="http://relaxng.org/ns/structure/1.0"> <include href="its20.rng"/> - <define name="its-local.attributes" combine="interleave"> - <a:documentation>enable all xml:* attributes</a:documentation> - <zeroOrMore> - <attribute> - <nsName ns="http://www.w3.org/XML/1998/namespace"/> - </attribute> - </zeroOrMore> - </define> - <define name="its-local.nons.attributes" combine="interleave"> - <zeroOrMore> - <attribute> - <nsName ns="http://www.w3.org/XML/1998/namespace"/> - </attribute> - </zeroOrMore> - </define> <start> <choice> <ref name="its-rules"/> --- /w3ccvs/WWW/International/multilingualweb/lt/drafts/its20/schemas/its20.rnc 2013/05/07 13:23:07 1.24 +++ /w3ccvs/WWW/International/multilingualweb/lt/drafts/its20/schemas/its20.rnc 2013/05/16 09:01:09 1.25 @@ -166,6 +166,12 @@ its-foreign-attribute = attribute * - local:* { text } its-foreign-no-xml-id-attribute = attribute * - (local:* | xml:id) { text } +its-foreign-no-xlink-attribute = attribute * - (local:* | xlink:*) { text } + +its-any-attribute = attribute * { text } +its-any-element = element * { (its-any-attribute* | text | its-any-element)* } + +its-foreign-element = element * - its:* { (its-any-attribute* | text | its-foreign-element)* } its-rules = ## Container for global rules @@ -190,12 +196,14 @@ | its-idValueRule | its-preserveSpaceRule | its-allowedCharactersRule - | its-storageSizeRule)* + | its-storageSizeRule + | its-foreign-element)* its-rules.attributes = its-attribute.version.nons, (its-attribute.xlink.href, its-attribute.xlink.type?)?, - its-attribute.queryLanguage.nons? + its-attribute.queryLanguage.nons?, + its-foreign-no-xlink-attribute* its-param = ## Declaration of variable used in selectors @@ -204,7 +212,8 @@ its-param.content = text its-param.attributes = - attribute name { xsd:string } + attribute name { xsd:string }, + its-foreign-attribute* its-local.attributes = its-attribute.translate? & @@ -282,14 +291,16 @@ its-translateRule.content = empty its-translateRule.attributes = its-attribute.selector, - its-attribute.translate.nons + its-attribute.translate.nons, + its-foreign-attribute* its-locNoteRule = ## Rule about the Localization Note data category element locNoteRule { its-attribute.selector, its-attribute.locNoteType.nons, - (its-locNote | its-attribute.locNotePointer.nons | its-attribute.locNoteRef.nons | its-attribute.locNoteRefPointer.nons ) + (its-locNote | its-attribute.locNotePointer.nons | its-attribute.locNoteRef.nons | its-attribute.locNoteRefPointer.nons ), + its-foreign-attribute* } its-attribute.locNotePointer.nons = attribute locNotePointer { its-relative-selector.type } @@ -301,7 +312,7 @@ its-locNote.content = (text | its-span)* -its-locNote.attributes = its-local.attributes +its-locNote.attributes = its-local.nons.attributes, its-foreign-attribute* its-termRule = ## Rule about the Terminology data category @@ -311,7 +322,8 @@ its-termRule.attributes = its-attribute.selector, its-attribute.term.nons, - (its-attribute.termInfoPointer.nons | its-attribute.termInfoRef.nons | its-attribute.termInfoRefPointer.nons )? + (its-attribute.termInfoPointer.nons | its-attribute.termInfoRef.nons | its-attribute.termInfoRefPointer.nons )?, + its-foreign-attribute* its-attribute.termInfoPointer.nons = attribute termInfoPointer { its-relative-selector.type } @@ -324,7 +336,8 @@ its-dirRule.content = empty its-dirRule.attributes = its-attribute.selector, - its-attribute.dir.nons + its-attribute.dir.nons, + its-foreign-attribute* its-langRule = ## Rule about the Language Information data category @@ -333,7 +346,8 @@ its-langRule.content = empty its-langRule.attributes = its-attribute.selector, - its-attribute.langPointer.nons + its-attribute.langPointer.nons, + its-foreign-attribute* its-attribute.langPointer.nons = attribute langPointer { its-relative-selector.type } @@ -346,7 +360,8 @@ its-withinTextRule.content = empty its-withinTextRule.attributes = its-attribute.selector, - its-attribute.withinText.nons + its-attribute.withinText.nons, + its-foreign-attribute* its-domainRule = ## Rule about the Domain data category @@ -358,7 +373,8 @@ its-domainRule.attributes = its-attribute.selector, its-attribute.domainPointer.nons, - its-attribute.domainMapping.nons? + its-attribute.domainMapping.nons?, + its-foreign-attribute* its-attribute.domainPointer.nons = attribute domainPointer { its-relative-selector.type } @@ -372,7 +388,8 @@ its-textAnalysisRule.attributes = its-attribute.selector, its-attribute.taClassRefPointer.nons?, - ((its-attribute.taSourcePointer.nons, its-attribute.taIdentPointer.nons) | its-attribute.taIdentRefPointer.nons)? + ((its-attribute.taSourcePointer.nons, its-attribute.taIdentPointer.nons) | its-attribute.taIdentRefPointer.nons)?, + its-foreign-attribute* its-attribute.taClassRefPointer.nons = attribute taClassRefPointer { its-taClassRefPointer.type } its-attribute.taIdentPointer.nons = attribute taIdentPointer { its-taIdentPointer.type } @@ -389,7 +406,8 @@ its-localeFilterRule.attributes = its-attribute.selector, its-attribute.localeFilterList.nons, - its-attribute.localeFilterType.nons? + its-attribute.localeFilterType.nons?, + its-foreign-attribute* its-provRule = ## Rule about the Provenance data category @@ -400,7 +418,8 @@ its-provRule.content = empty its-provRule.attributes = its-attribute.selector, - its-attribute.provenanceRecordsRefPointer.nons + its-attribute.provenanceRecordsRefPointer.nons, + its-foreign-attribute* its-attribute.provenanceRecordsRefPointer.nons = attribute provenanceRecordsRefPointer { its-relative-selector.type } @@ -414,7 +433,8 @@ its-externalResourceRefRule.content = empty its-externalResourceRefRule.attributes = its-attribute.selector, - its-attribute.externalResourceRefPointer.nons + its-attribute.externalResourceRefPointer.nons, + its-foreign-attribute* its-attribute.externalResourceRefPointer.nons = attribute externalResourceRefPointer { its-relative-selector.type } @@ -427,7 +447,8 @@ its-targetPointerRule.content = empty its-targetPointerRule.attributes = its-attribute.selector, - its-attribute.targetPointer.nons + its-attribute.targetPointer.nons, + its-foreign-attribute* its-attribute.targetPointer.nons = attribute targetPointer { its-relative-selector.type } @@ -440,7 +461,8 @@ its-idValueRule.content = empty its-idValueRule.attributes = its-attribute.selector, - its-attribute.idValue.nons + its-attribute.idValue.nons, + its-foreign-attribute* its-attribute.idValue.nons = attribute idValue { its-xpath-expression.type } @@ -453,7 +475,8 @@ its-preserveSpaceRule.content = empty its-preserveSpaceRule.attributes = its-attribute.selector, - its-attribute.space.nons + its-attribute.space.nons, + its-foreign-attribute* its-attribute.space.nons = attribute space { "default" | "preserve" } @@ -472,7 +495,8 @@ , its-attribute.locQualityIssueSeverity.nons?, its-attribute.locQualityIssueProfileRef.nons?, - its-attribute.locQualityIssueEnabled.nons?)) + its-attribute.locQualityIssueEnabled.nons?)), + its-foreign-attribute* its-attribute.locQualityIssuesRefPointer.nons = attribute locQualityIssuesRefPointer { its-relative-selector.type } @@ -485,7 +509,8 @@ its-mtConfidenceRule.content = empty its-mtConfidenceRule.attributes = its-attribute.selector, - its-attribute.mtConfidence.nons + its-attribute.mtConfidence.nons, + its-foreign-attribute* its-allowedCharactersRule = ## Rule about the Allowed Characters data category @@ -496,7 +521,8 @@ its-allowedCharactersRule.content = empty its-allowedCharactersRule.attributes = its-attribute.selector, - (its-attribute.allowedCharacters.nons | its-attribute.allowedCharactersPointer.nons) + (its-attribute.allowedCharacters.nons | its-attribute.allowedCharactersPointer.nons), + its-foreign-attribute* its-attribute.allowedCharactersPointer.nons = attribute allowedCharactersPointer { its-relative-selector.type } @@ -511,7 +537,8 @@ its-attribute.selector, (its-attribute.storageSize.nons | its-attribute.storageSizePointer.nons), (its-attribute.storageEncoding.nons | its-attribute.storageEncodingPointer.nons)?, - its-attribute.lineBreakType.nons? + its-attribute.lineBreakType.nons?, + its-foreign-attribute* its-attribute.storageSizePointer.nons = attribute storageSizePointer { its-relative-selector.type } its-attribute.storageEncodingPointer.nons = attribute storageEncodingPointer { its-relative-selector.type } @@ -533,7 +560,8 @@ (its-attribute.revPerson.nons | its-attribute.revPersonRef.nons )? & (its-attribute.revOrg.nons | its-attribute.revOrgRef.nons )? & (its-attribute.revTool.nons | its-attribute.revToolRef.nons )? & - its-attribute.provRef.nons? + its-attribute.provRef.nons? & + its-foreign-attribute* its-locQualityIssues = ## Standoff markup for Localization Quality Issue data category @@ -548,4 +576,6 @@ its-attribute.locQualityIssueComment.nons? & its-attribute.locQualityIssueSeverity.nons? & its-attribute.locQualityIssueProfileRef.nons? & - its-attribute.locQualityIssueEnabled.nons? \ No newline at end of file + its-attribute.locQualityIssueEnabled.nons? & + its-foreign-attribute* + \ No newline at end of file --- /w3ccvs/WWW/International/multilingualweb/lt/drafts/its20/schemas/its20.rng 2013/05/07 13:23:07 1.21 +++ /w3ccvs/WWW/International/multilingualweb/lt/drafts/its20/schemas/its20.rng 2013/05/16 09:01:09 1.22 @@ -537,6 +537,53 @@ </anyName> </attribute> </define> + <define name="its-foreign-no-xlink-attribute"> + <attribute> + <anyName> + <except> + <nsName ns=""/> + <nsName ns="http://www.w3.org/1999/xlink"/> + </except> + </anyName> + </attribute> + </define> + <define name="its-any-attribute"> + <attribute> + <anyName/> + </attribute> + </define> + <define name="its-any-element"> + <element> + <anyName/> + <zeroOrMore> + <choice> + <zeroOrMore> + <ref name="its-any-attribute"/> + </zeroOrMore> + <text/> + <ref name="its-any-element"/> + </choice> + </zeroOrMore> + </element> + </define> + <define name="its-foreign-element"> + <element> + <anyName> + <except> + <nsName/> + </except> + </anyName> + <zeroOrMore> + <choice> + <zeroOrMore> + <ref name="its-any-attribute"/> + </zeroOrMore> + <text/> + <ref name="its-foreign-element"/> + </choice> + </zeroOrMore> + </element> + </define> <define name="its-rules"> <element name="rules"> <a:documentation>Container for global rules</a:documentation> @@ -568,6 +615,7 @@ <ref name="its-preserveSpaceRule"/> <ref name="its-allowedCharactersRule"/> <ref name="its-storageSizeRule"/> + <ref name="its-foreign-element"/> </choice> </zeroOrMore> </define> @@ -582,6 +630,9 @@ <optional> <ref name="its-attribute.queryLanguage.nons"/> </optional> + <zeroOrMore> + <ref name="its-foreign-no-xlink-attribute"/> + </zeroOrMore> </define> <define name="its-param"> <element name="param"> @@ -597,6 +648,9 @@ <attribute name="name"> <data type="string"/> </attribute> + <zeroOrMore> + <ref name="its-foreign-attribute"/> + </zeroOrMore> </define> <define name="its-local.attributes"> <interleave> @@ -964,6 +1018,9 @@ <define name="its-translateRule.attributes"> <ref name="its-attribute.selector"/> <ref name="its-attribute.translate.nons"/> + <zeroOrMore> + <ref name="its-foreign-attribute"/> + </zeroOrMore> </define> <define name="its-locNoteRule"> <element name="locNoteRule"> @@ -976,6 +1033,9 @@ <ref name="its-attribute.locNoteRef.nons"/> <ref name="its-attribute.locNoteRefPointer.nons"/> </choice> + <zeroOrMore> + <ref name="its-foreign-attribute"/> + </zeroOrMore> </element> </define> <define name="its-attribute.locNotePointer.nons"> @@ -1004,7 +1064,10 @@ </zeroOrMore> </define> <define name="its-locNote.attributes"> - <ref name="its-local.attributes"/> + <ref name="its-local.nons.attributes"/> + <zeroOrMore> + <ref name="its-foreign-attribute"/> + </zeroOrMore> </define> <define name="its-termRule"> <element name="termRule"> @@ -1026,6 +1089,9 @@ <ref name="its-attribute.termInfoRefPointer.nons"/> </choice> </optional> + <zeroOrMore> + <ref name="its-foreign-attribute"/> + </zeroOrMore> </define> <define name="its-attribute.termInfoPointer.nons"> <attribute name="termInfoPointer"> @@ -1050,6 +1116,9 @@ <define name="its-dirRule.attributes"> <ref name="its-attribute.selector"/> <ref name="its-attribute.dir.nons"/> + <zeroOrMore> + <ref name="its-foreign-attribute"/> + </zeroOrMore> </define> <define name="its-langRule"> <element name="langRule"> @@ -1064,6 +1133,9 @@ <define name="its-langRule.attributes"> <ref name="its-attribute.selector"/> <ref name="its-attribute.langPointer.nons"/> + <zeroOrMore> + <ref name="its-foreign-attribute"/> + </zeroOrMore> </define> <define name="its-attribute.langPointer.nons"> <attribute name="langPointer"> @@ -1083,6 +1155,9 @@ <define name="its-withinTextRule.attributes"> <ref name="its-attribute.selector"/> <ref name="its-attribute.withinText.nons"/> + <zeroOrMore> + <ref name="its-foreign-attribute"/> + </zeroOrMore> </define> <define name="its-domainRule"> <element name="domainRule"> @@ -1100,6 +1175,9 @@ <optional> <ref name="its-attribute.domainMapping.nons"/> </optional> + <zeroOrMore> + <ref name="its-foreign-attribute"/> + </zeroOrMore> </define> <define name="its-attribute.domainPointer.nons"> <attribute name="domainPointer"> @@ -1130,6 +1208,9 @@ <ref name="its-attribute.taIdentRefPointer.nons"/> </choice> </optional> + <zeroOrMore> + <ref name="its-foreign-attribute"/> + </zeroOrMore> </define> <define name="its-attribute.taClassRefPointer.nons"> <attribute name="taClassRefPointer"> @@ -1167,6 +1248,9 @@ <optional> <ref name="its-attribute.localeFilterType.nons"/> </optional> + <zeroOrMore> + <ref name="its-foreign-attribute"/> + </zeroOrMore> </define> <define name="its-provRule"> <element name="provRule"> @@ -1181,6 +1265,9 @@ <define name="its-provRule.attributes"> <ref name="its-attribute.selector"/> <ref name="its-attribute.provenanceRecordsRefPointer.nons"/> + <zeroOrMore> + <ref name="its-foreign-attribute"/> + </zeroOrMore> </define> <define name="its-attribute.provenanceRecordsRefPointer.nons"> <attribute name="provenanceRecordsRefPointer"> @@ -1200,6 +1287,9 @@ <define name="its-externalResourceRefRule.attributes"> <ref name="its-attribute.selector"/> <ref name="its-attribute.externalResourceRefPointer.nons"/> + <zeroOrMore> + <ref name="its-foreign-attribute"/> + </zeroOrMore> </define> <define name="its-attribute.externalResourceRefPointer.nons"> <attribute name="externalResourceRefPointer"> @@ -1219,6 +1309,9 @@ <define name="its-targetPointerRule.attributes"> <ref name="its-attribute.selector"/> <ref name="its-attribute.targetPointer.nons"/> + <zeroOrMore> + <ref name="its-foreign-attribute"/> + </zeroOrMore> </define> <define name="its-attribute.targetPointer.nons"> <attribute name="targetPointer"> @@ -1238,6 +1331,9 @@ <define name="its-idValueRule.attributes"> <ref name="its-attribute.selector"/> <ref name="its-attribute.idValue.nons"/> + <zeroOrMore> + <ref name="its-foreign-attribute"/> + </zeroOrMore> </define> <define name="its-attribute.idValue.nons"> <attribute name="idValue"> @@ -1257,6 +1353,9 @@ <define name="its-preserveSpaceRule.attributes"> <ref name="its-attribute.selector"/> <ref name="its-attribute.space.nons"/> + <zeroOrMore> + <ref name="its-foreign-attribute"/> + </zeroOrMore> </define> <define name="its-attribute.space.nons"> <attribute name="space"> @@ -1301,6 +1400,9 @@ </optional> </group> </choice> + <zeroOrMore> + <ref name="its-foreign-attribute"/> + </zeroOrMore> </define> <define name="its-attribute.locQualityIssuesRefPointer.nons"> <attribute name="locQualityIssuesRefPointer"> @@ -1320,6 +1422,9 @@ <define name="its-mtConfidenceRule.attributes"> <ref name="its-attribute.selector"/> <ref name="its-attribute.mtConfidence.nons"/> + <zeroOrMore> + <ref name="its-foreign-attribute"/> + </zeroOrMore> </define> <define name="its-allowedCharactersRule"> <element name="allowedCharactersRule"> @@ -1337,6 +1442,9 @@ <ref name="its-attribute.allowedCharacters.nons"/> <ref name="its-attribute.allowedCharactersPointer.nons"/> </choice> + <zeroOrMore> + <ref name="its-foreign-attribute"/> + </zeroOrMore> </define> <define name="its-attribute.allowedCharactersPointer.nons"> <attribute name="allowedCharactersPointer"> @@ -1368,6 +1476,9 @@ <optional> <ref name="its-attribute.lineBreakType.nons"/> </optional> + <zeroOrMore> + <ref name="its-foreign-attribute"/> + </zeroOrMore> </define> <define name="its-attribute.storageSizePointer.nons"> <attribute name="storageSizePointer"> @@ -1449,6 +1560,9 @@ <optional> <ref name="its-attribute.provRef.nons"/> </optional> + <zeroOrMore> + <ref name="its-foreign-attribute"/> + </zeroOrMore> </interleave> </define> <define name="its-locQualityIssues"> @@ -1491,6 +1605,9 @@ <optional> <ref name="its-attribute.locQualityIssueEnabled.nons"/> </optional> + <zeroOrMore> + <ref name="its-foreign-attribute"/> + </zeroOrMore> </interleave> </define> </grammar>
Received on Thursday, 16 May 2013 09:01:21 UTC