RELAX この正誤票に示された内容は, Web版の標準情報(TR)に既に反映されている。 ************************** 正誤票0 ********************************* 2001-08-06 (1) 全体 grammarをframeworkに, 文法をフレームワークにすべて訂正する。これに従っ てタグ名grammarはframeworkに変わり, 属性名grammarVersion及び grammarLocationは,それぞれframeworkVersion及びframeworkLocationに変わる。 備考: この変更は,RELAX NG(OASIS)との整合のためである。 ************************** 正誤票1 ********************************* 2001-09-26 1. 附属書A <!DOCTYPE module SYSTEM を <!DOCTYPE framework SYSTEM に訂正。 SYSTEM "http://www.xml.gr.jp/relax/namespace1/relaxNamespace.dtd" [ を SYSTEM "http://www.xml.gr.jp/relax/namespace1/relaxNamespace.dtd"> に訂正。 2. 附属書B uriReferenceをanyURIに訂正。 3. 附属書Eを追加 RELAX Namespaceと連動するためには,RELAX Coreへの変更が必要である。し かし,RELAX Coreに対する修正がISO/IEC TRとして成立する際に,大きな変更 は行えなかった。そこで,それらの変更を附属書Eにまとめた。 次に,附属書をそのまま引用する。 附属書E. RELAX Namespaceと併用するためのRELAX Coreへの変更 RELAX Namespaceと併用するためには,RELAX Coreに次に示す変更が必要になる。 a) interface要素にhedgeExport要素を追加 hedgeExportは,label属性をもつ。 label NMTOKEN #REQUIRED label属性の値は,hedgeRuleで記述されたラベルとする。このhedgeRuleが記述 する要素生け垣モデルに,複数の要素を含む列がマッチしてはならない。 備考 分割検証を容易にするためにこの制限を導入する。 b) export要素にrole属性を追加 exportのlabel属性及びrole属性のどちらか一方は必須とする。両方を指定し てはならない。 label NMTOKEN #IMPLIED role NMTOKEN #IMPLIED label属性の場合は,elementRuleで記述されたラベルを参照する。role属性の 場合は,attPoolで記述された役割を参照する。tagで記述された役割を指定してはならな い。 c) hedgeRef, ref要素にnamespace属性を追加 次のnamespace属性をhedgeRef, ref要素に追加する。 namespace CDATA #IMPLIED namespace属性によって名前空間を指定したときは,その名前空間を記述するモ ジュールがexportするhedgeRule, elementRuleを参照する。 d) moduleのtargetNamespace属性 moduleのtargetNamespace属性が省略されているときの解釈を変更する。他の moduleのinclude要素から参照されてはいないが,あるframeworkの namespace 要素か ら参照されているとき,このnamespace要素のname属性の値をtargetNamespace属性の値 として用いる。frameworkからも参照されていないときは,""を用いる。 e) RELAX Coreを記述するDTD(TR X 0029の附属書A)への変更 *** ../../TR_Core/iso/relaxCore.dtd Tue Sep 11 01:04:15 2001 --- relaxCore.dtd Tue Sep 11 01:02:08 2001 *************** *** 11,16 **** --- 11,17 ---- <!ENTITY % corePrefix ""> <!ENTITY % interface "%corePrefix;interface"> <!ENTITY % export "%corePrefix;export"> + <!ENTITY % hedgeExport "%corePrefix;hedgeExport"> <!ENTITY % div "%corePrefix;div"> <!ENTITY % tag "%corePrefix;tag"> <!ENTITY % elementRule "%corePrefix;elementRule"> *************** *** 53,59 **** <!-- --> <!--*******************************************************--> ! <!ELEMENT %interface; ((%annotation;)?, (%export; | %div;)*)> <!ENTITY % clause "%tag;|%attPool;"> --- 54,60 ---- <!-- --> <!--*******************************************************--> ! <!ELEMENT %interface; ((%annotation;)?, (%export; | %hedgeExport; | %div;)*)> <!ENTITY % clause "%tag;|%attPool;"> *************** *** 81,93 **** (((%rule; |%clause; | %include; ), (%rule; |%clause; | %include; | %div;)*) | ! (%export;, (%export; | %div;)*))?)> <!-- (%rule; |%clause; | %include; | %div;)* is used when a div appears in ! a module body, while (%export; | %div;)* is used when it appears in an ! interface element. --> --- 82,95 ---- (((%rule; |%clause; | %include; ), (%rule; |%clause; | %include; | %div;)*) | ! ((%export; | %hedgeExport;), ! (%export; | %hedgeExport; | %div;)*))?)> <!-- (%rule; |%clause; | %include; | %div;)* is used when a div appears in ! a module body, while (%export; | %hedgeExport; | %div;)* is used when ! it appears in an interface element. --> *************** *** 98,104 **** <!--*******************************************************--> <!ELEMENT %export; ((%annotationCore;)?)> ! <!ATTLIST %export; label NMTOKEN #REQUIRED> <!--*******************************************************--> <!-- --> --- 100,114 ---- <!--*******************************************************--> <!ELEMENT %export; ((%annotationCore;)?)> ! <!ATTLIST %export; ! label NMTOKEN #IMPLIED ! role NMTOKEN #IMPLIED ! > ! ! <!ELEMENT %hedgeExport; ((%annotationCore;)?)> ! <!ATTLIST %hedgeExport; ! label NMTOKEN #IMPLIED ! > <!--*******************************************************--> <!-- --> *************** *** 137,142 **** --- 147,153 ---- <!ELEMENT %hedgeRef; EMPTY > <!ATTLIST %hedgeRef; label NMTOKEN #REQUIRED + namespace CDATA #IMPLIED %repeatable; > *************** *** 144,149 **** --- 155,161 ---- <!ATTLIST %ref; label NMTOKEN #IMPLIED role NMTOKEN #IMPLIED + namespace CDATA #IMPLIED %repeatable; > f) RELAX Coreを記述するモジュール(TR X 0029の附属書B)への変更 *** ../../TR_Core/iso/relaxCore.rxm Sun Sep 9 19:35:39 2001 --- relaxCore.rxm Sun Sep 9 19:31:51 2001 *************** *** 13,18 **** --- 13,20 ---- <interface> <export label="module"/> + <export label="refWithLabel"/> + <export label="hedgeRef"/> </interface> <include moduleLocation="datatypes.rxm"/> *************** *** 49,54 **** --- 51,57 ---- <ref label="annotation" occurs="?"/> <choice occurs="*"> <ref label="export"/> + <ref label="hedgeExport"/> <ref label="divInInterface"/> </choice> </sequence> *************** *** 93,105 **** <documentation>Interface</documentation> </annotation> ! <elementRule role="export"> <ref label="annotation" occurs="?"/> </elementRule> - - <tag name="export"> - <attribute name="label" required="true" type="NCName"/> - </tag> <elementRule label="divInInterface"> <annotation> --- 96,121 ---- <documentation>Interface</documentation> </annotation> ! <elementRule label="export"> ! <tag name="export"> ! <attribute name="label" required="true" type="NCName"/> ! </tag> ! <ref label="annotation" occurs="?"/> ! </elementRule> ! ! <elementRule label="export"> ! <tag name="export"> ! <attribute name="role" required="true" type="NCName"/> ! </tag> ! <ref label="annotation" occurs="?"/> ! </elementRule> ! ! <elementRule label="hedgeExport"> ! <tag name="hedgeExport"> ! <attribute name="label" required="true" type="NCName"/> ! </tag> <ref label="annotation" occurs="?"/> </elementRule> <elementRule label="divInInterface"> <annotation> *************** *** 110,115 **** --- 126,132 ---- <ref label="annotation" occurs="?"/> <choice occurs="*"> <ref label="export"/> + <ref label="hedgeExport"/> <ref label="divInInterface"/> </choice> </sequence> *************** *** 178,183 **** --- 195,201 ---- <tag name="hedgeRef"> <ref role="repeatable"/> <attribute name="label" required="true" type="NCName"/> + <attribute name="namespace" type="anyURI"/> </tag> <elementRule label="refWithLabel" type="emptyString"> *************** *** 187,192 **** --- 205,211 ---- <tag name="ref"> <ref role="repeatable"/> <attribute name="label" required="true" type="NCName"/> + <attribute name="namespace" type="anyURI"/> <attribute name="role" type="none"/> </tag> </elementRule> *************** *** 372,377 **** --- 391,397 ---- </annotation> <tag name="ref"> <attribute name="role" required="true" type="NCName"/> + <attribute name="namespace" type="anyURI"/> <attribute name="label" type="none"/> </tag> </elementRule> g) DTDのためのPUBLIC ID及びURL RELAX Core及びRELAX Namespaceを記述するDTDに関するPUBLIC ID及び URL を次のとおり定める - RELAX Coreを記述するDTD -//RELAX//DTD RELAX Core 1.0//JA http://www.xml.gr.jp/relax/core1/relaxCore.dtd - RELAX Namespaceを記述するDTD -//RELAX//DTD RELAX Namespace 1.0//JA http://www.xml.gr.jp/relax/namespace1/relaxNamespace.dtd