XHTML m12n 1.0

XHTML m12n 1.0

[1] Modularization of XHTML <http://www.w3.org/TR/2001/REC-xhtml-modularization-20010410/>

[2] Errata in REC-xhtml-modularization-20010410 <http://www.w3.org/2001/04/REC-xhtml-modularization-20010410-errata>

XHTML m12n 1.0 勧告のなんかおかしなところ

[3]

XHTML Modularization is a decomposition of XHTML 1.0, and by reference HTML 4, into a collection of abstract modules that provide specific types of functionality.

XHTML 1.0 を分解したと述べているが、 事実に反する (例: usemap)。

(名無しさん)

[4]

s/A abstract/An abstract/

(名無しさん)

[5]

s/an document type/a document type/

[6]

driver の定義に file という言葉が出てくるが、その定義がない。 ファイル・システムファイルのことでよいのか? それと Web とどういう関係があるのか?

[7]

実体の定義で、内部実体文書実体内で定義され、外部実体文書実体外で定義されると書いてあるが、事実に反する。 (少なくても XML 1.0 の定義とは異なる。)

[8] 混成文書の定義で、複数の XML名前空間を使った、とあるが、 xml:langxmlns を使っただけで混成文書としてよいのか?

[9] 親文書型は定義されているだけで使われていない。

(名無しさん)

[10] タグ引数実体などはわざわざ定義する必要があるのか? XML 1.0 を参照するだけでよいのでは。 (名無しさん)

[11] RFC 2119 助動詞を使うといっているが、1つも使われていない。 (小文字では使われているが、何の注記もない。)

[12] 認識できない属性値が現れたら既定値を使えというが、 既定値がなければどうすればよいのかが規定されていない。

[13] 定義済実体という未定義用語が登場する。

ちなみに、 XHTML 1.0 第2版では修正されている: <IW:XHTML10:"#uaconf">

(名無しさん)

[14] ブロック要素という未定義用語が登場する。

[15] XHTML 文書処理方法が規定されているようだが、 何を指しているのかよくわからない。 特に DOMCSS とどう関係するのかがよくわからない。

(名無しさん)

[16] なぜか未登録公式公開識別子以外使えない。

(名無しさん)

[17] なぜか属性型として PCDATAXML から引用されている。

[18] の十六進数の桁数に関する規定がない。

[19] 日時の書式に関する規定がない。

[20] 属性型 FrameTarget は 構文や HTML 4 の予約名に関する言及がない。

(名無しさん)

[21] 属性型 Shape の構文に関する言及がない。

(名無しさん)

[22] モジュールにおける属性型の指定と HTML 4 における属性型との関係がわからない。 普通に考えれば XHTML m12n の規定が上書きするのだろうが、 >>18-21 のように欠けている部分は HTML 4 の規定が (あれば) 有効なのか? (名無しさん)

[23] スキーモジュールで、 href 属性属性型resort 以外には示されていない。

それに CDATA というのはおかしい。 URI ではないのか??

(名無しさん)

[24] >>22

Except when overridden in this document, the semantics of these elements and attributes are defined in [HTML4].

というのが <IW:XHTML1m12n:"abstract_modules.html"> にある。が、意味はいいとして、 (属性値などの) 構文については何も述べていない。

(名無しさん)

[25] xml:lang 属性の意味の規定がない。 引用規格の1つである XML 1.0 に定義があるようだが、それと同じでいいのか??

[26] profile属性型HTML 4 では URIs のはずが URI になっている。

profile の項を参照。

(名無しさん)

[27] HTML 4XHTML 1.0 ではいくつかの要素型子孫要素型に関する制約があるが、 まったく規定されていない。

[28] paramアプレットモジュール物体モジュールで定義されているが、両モジュールの併用の可否に関する規定がない。

(名無しさん)

[29] applet属性集合 Coreリンクになっていない。

[30] I18n 属性集成dir 属性がなぜか必須になっている。

(名無しさん)

[31] pre最小内容モデル(PCDATA | Inline)* で、 HTML 4XHTML 1.0 よりかなり緩い。

[32] scopealign属性値候補がなぜか | ではなく , で区切られている。

[33] usemap属性型がなぜか URI ではなく IDREF になっている。

usemap の項を参照。

(名無しさん)

[34] 属性型 Shape は使われていない。

DTDデータ型実体 %Shape.datatype; は使われている。

(名無しさん)

[35] inputismap 属性基本フォームモジュールが選択されていても有効になるとされているが、 基本フォームモジュールimage 提出ボタン制御子はないので、 意味がない。

[36] objectCommon 属性集成がなぜかリンクになっていない。

[37] framesetrowscols がなぜか MultiLength になっている。

[38] HTML 4XHTML 1.0 における、 noframesbody 内での用法に相当するものが定義されていない。 (名無しさん)

[39] target属性型がなぜか FrameTarget ではなく CDATA になっている。

[40] base target が定義されるのがなぜか基底モジュールではなく遺物モジュールが選択されたときとされている。

[41] noscriptInline にも追加される。

[42] base href が必須なので、 target だけのために使うことはできない。

[43] 名前識別モジュールには frame id も含まれている。 このモジュールの規定によれば、 name を使う時には id も使わなければならず、同じ値でなければならない。

(名無しさん)

[44] 属性が定義されるためのモジュールの記述が抜けている。

[45] ファイル実体という未定義用語が出てくる。

[46] クラスという未定義用語が出てきる。

[47] >>45 <IW:XHTML1m12n:"dtd_module_rules.html#qnames"> が定義? あまりそうは感じられないが。。。 (名無しさん)

[48]

s/<ENTITY/<!ENTITY/

[49] 別に問題ではないが、実体宣言システム識別子だけで、公式公開識別子が (あるのに) なぜか使われていない。

[50] この章は参考です。参考bマークされている。

他の章では em

(名無しさん)

[51] <IW:XHTML1m12n:"dtd_module_rules.html#s_dtdrules_PEs"> にない .extra という接尾辞があるのはいくないと思います!

ちなみに XHTML DTD モジュール.extras なんて使ってなくて、 .extra になってます。

(名無しさん)

[52] なぜ要素型の定義方法の例で XHTML DTD モジュールに使っているのと同じ方法を示さないのか。 少なくても .content は使っている例を示すべき。

次の節で .content の活用例を載せているのだし。

[53] どうせ例示するなら適合 XHTMLホスト言語文書型にすればいいのに。

[54] amplt の定義がおかしい (XML 1.0 によれば誤り)。

[56] XHTML基底体系として使うためのモジュールが提供されているが、具体的にどう使えばいいのか説明がない。

体系使用宣言処理指令が使われているようだが、 構文が ISO/IEC 10744 案と異なる。

体系DTDとして XHTML 1.1DTD参照されているようだが、何の説明もない。 なぜ XHTML 1.1 ではなく XHTML m12n に含める必要があるのか?

名前空間整形式でない。

体系選択肢属性として HtModReqHtModOpt が定義されているが、 その意味の説明がない。ISO/IEC 10744 で定義されている意味だけだとすると、 (引数実体が定義されるだけなので) 実質的に意味をなさないことになる。

(名無しさん)

[57] (そもそも基底体系として使うためのモジュール基底体系である XHTML 側で提供されているのがおかしい。 体系基底宣言体系使用宣言派生体系DTDで使うものだろ?)

(名無しさん)

[58] 記法モジュールがあるが、いつどこでなににどう使うのか説明がない。

(名無しさん)

[59] 記法モジュール<IW:XHTML1m12n:"xhtml-modularization.html#s_common_attrtypes">属性型に対応するように見えるが、明記されていないし、 多少出入りがある。

w3c-xml記法モジュールでだけ定義されている。

CDATA除く XML属性型記法として定義されていないShapeCoordsMultiLengths記法として定義されていない

(名無しさん)

[60] データ型モジュール<IW:XHTML1m12n:"xhtml-modularization.html#s_common_attrtypes">属性型に対応するように見えるが、明記されていない。

それぞれのデータ型実体には属性型へのリンクがあるので、対応関係があるらしいことはわかる。

MultiLengths だけなぜか遺物 DTD モジュールで定義されているが、意図的なのかどうか?

遺物モジュールだけで参照されているから、 わざとそうしたのか?

(名無しさん)

[61] %Core.attrib;属性集成 Core に対応しているように見えるが、 なぜか %XHTML.xmlns.attrib; も含まれている。つまり、抽象モジュール定義では含まれていないはずの xmlns 属性が、 DTD ではほぼすべての要素型で定義されている。

(名無しさん)

[62] dir 属性DTD では必須になっていない (>>30)。

(名無しさん)

[65] 名前空間宣言属性に関する宣言がなにをどうするのが適切なのかよくわからない。

<IW:XHTML1m12n:"dtd_module_rules.html#qnames"> では定義する名前空間の宣言を %MODULE.xmlns.extra.attrib; に入れるようにといっているが、 おかしいのでは。

%XHTML.xmlns.extra.attrib; は空で、名前空間宣言%XHTML.xmlns.attrib; に含まれている。

<IW:XHTML1m12n:"dtd_module_defs.html#a_module_XHTML_Qualified_Names">XHTMLQName モジュールでは、 %NS.decl.attrib; という引数実体があって、

<!-- Declare a parameter entity %NS.decl.attrib; containing
     all XML Namespace declarations used in the DTD, plus the
     xmlns declaration for XHTML, its form dependent on whether
     prefixing is active.
-->

と説明があるが、その記述に反して、名前空間接頭辞を使わない時に XHTML名前空間宣言は含まれない。 %XLINK.xmlns.attrib; という引数実体があるが、そこで XLink名前空間を宣言しても %NS.decl.attrib; には含まれるようになっておらず、やはり説明と一致していない。

%XHTML.xmlns.attrib;実体宣言の上にも

<!-- Declare a parameter entity %NS.decl.attrib; containing all
     XML namespace declaration attributes used by XHTML, including
     a default xmlns attribute when prefixing is inactive.
-->

という説明がある。 %NS.decl.attrib;%XHTML.xmlns.attrib; なのだろうか? そうだとしても、 XHTML 名前空間名前空間接頭辞を使わない時に %XHTML.xmlns.attrib;%NS.decl.attrib; が含まれないので、説明と矛盾している。

>>63>>64 の両方の注釈の指示に従い XLink を使おうとすると、 %XHTML.xmlns.attrib; には2組の XLink名前空間宣言が含まれてしまうことがある。

無害だが無益。

(名無しさん)

[66] >>65 を書いてる途中で DTD がやりたいことがなんとなくわかった。

xmlns:xhtml%NS.decl.attrib;%XHTML.xmlns.attrib;%Common.attrib;

xmlns = xhtml ∈ %XHTML.xmlns.attrib;%Common.attrib;

xmlns:inventory%Inventory.xmlns.extra.attrib;%XHTML.xmlns.extra.attrib;%NS.decl.attrib;%XHTML.xmlns.attrib;%Common.attrib;

xmlns:xhtml%NS.decl.attrib;%Inventory.xmlns.attrib;%Inventory.Common.attrib;

xmlns = inventory ∈ %Inventory.xmlns.attrib;%InventoryCommon.attrib;

xmlns:inventory%Inventory.xmlns.extra.attrib;%XHTML.xmlns.extra.attrib;%NS.decl.attrib;%Inventory.xmlns.attrib;%Inventory.Common.attrib;

(名無しさん)

[67] >>66 ただし名前空間接頭辞を使わない時に %XHTML.xmlns.attrib;%Inventory.xmlns.attrib;%NS.decl.attrib; は含まれないので、 大域属性を使う要素型には別途属性定義並び宣言が必要 (<IW:XHTML1m12n:"dtd_developing.html#s_dev_attrs">)。

(名無しさん)

[70] html 要素version 属性が、抽象モジュールでは CDATA と定義されているところ、 DTD では %FPI.datatype; で、値が %XHTML.version;固定属性となっていて、矛盾して (説明なしに DTD の方が値域が狭くなって) います。

HTML 4 では CDATA でした。 また、非推奨でした。 XHTML m12n ではそうではないようです。

(名無しさん)

[71] appletDTD の説明中に param を他の内容より先に置くようにとの指示があり、抽象モジュールより制限が厳しくなっています。

[72] %InputType.class; は明らかに命名規則に反している。

[73] <IW:XHTML1m12n:"dtd_module_defs.html#dtdelement_input.qname_2"> (名無しさん)

[74] input size抽象モジュールでは Number なのに、DTD ではなぜか、基本フォームモジュールだけ、 CDATA になっています。

[75] 基本フォームモジュールimage が使えないのに、なぜか input src 属性が含まれています。

[76] accept-charsetCharsets、 つまり間隔区切りになっています。

HTML 4 DTD 注釈 (参考) と XHTML 1.0 DTD 注釈 (規定) によれば間隔区切り、 HTML 4 本文 (規定) によれば間隔及び/又は読点区切りです。 accept-charset の項を参照。

(名無しさん)

[77] DTD 注釈にちょこっと書いてありますが、 applet alt必須になっています。

>>3

(名無しさん)

[78] rowspancolspan の既定値は抽象モジュールでは定義されていないのに、 DTD では 1 になっている。

[79] >>78 span 属性も。 (名無しさん)

[80] >>60 ShapeCoords も。 (名無しさん)

[81] >>60 frameborder も。

[82] metahttp-equivnameNMTOKEN になっています。

HTML 4 では NAMEXHTML 1.0 では CDATA でした。

(名無しさん)

[83] xml:space がなぜか prestylescript だけで定義されており、しかも preserve に固定されていますが、何の説明もありません。 (名無しさん)

[84] HTML 4XHTML 1.0 にあった %StyleSheet; に相当する属性型がなく、 styleCDATA とされています。

[85] 遺物再宣言 DTD モジュール抽象モジュールにない lang 属性を定義しています。

[86] なぜか DOM水準1引用規格になっています。

[87] そもそも HTML 4XHTML 1.0 との互換性は設計目標に入っていないらしい。

当時の将来の拡張計画の垣間見

[55] <IW:XHTML1m12n:"dtd_module_defs.html#a_xhtml_framework">

<!-- placeholder for XLink support module -->
<!ENTITY % xhtml-xlink.mod "" >
%xhtml-xlink.mod;

(名無しさん)

[63] <IW:XHTML1m12n:"dtd_module_defs.html#a_module_XHTML_Qualified_Names">

<!-- 5. The parameter entity %XHTML.xmlns.extra.attrib; may be
        redeclared to contain any non-XHTML namespace declaration
        attributes for namespaces embedded in XHTML. The default
        is an empty string.  XLink should be included here if used
        in the DTD.
-->
<!ENTITY % XHTML.xmlns.extra.attrib "" >

(名無しさん)

[64] <IW:XHTML1m12n:"dtd_module_defs.html#a_module_XHTML_Qualified_Names">

<!-- This is a placeholder for future XLink support.
-->
<!ENTITY % XLINK.xmlns.attrib "" >
<!-- Declare a parameter entity %NS.decl.attrib; containing all
     XML namespace declaration attributes used by XHTML, including
     a default xmlns attribute when prefixing is inactive.
-->
<![%XHTML.prefixed;[
<!ENTITY % XHTML.xmlns.attrib
     "%NS.decl.attrib;
      %XLINK.xmlns.attrib;"
>
]]>
<!ENTITY % XHTML.xmlns.attrib
     "xmlns        %URI.datatype;           #FIXED '%XHTML.xmlns;'
      %XLINK.xmlns.attrib;"
>

(名無しさん)

[68] <IW:XHTML1m12n:"dtd_module_defs.html#a_module_XHTML_Qualified_Names">

<!-- Provisional XHTML 2.0 Qualified Names  ...................... -->
<!-- module:  xhtml-image-2.mod -->
<!ENTITY % alt.qname     "%XHTML.pfx;alt" >

(名無しさん)

[69] head 要素profile 属性は将来の文書プロファイルのために予約されています。

HTML 4 の同名の属性とは別のもののようです。 詳しくは profile の項を参照。

(名無しさん)

メモ