[1] > [定義: [DFN[[RUBY[記法][きほう]@en[notation]]]]は、 [[非解析対象実体]]の[[書式]]、 [[記法属性]]が付された[[要素]]の[[書式]]、 または[[処理指令]]の対象となる[[応用]]を[[名前]]によって[[識別]]します。] [SRC@en[XML1 4.7]] [5] 仕様書: - [[XML 1]] --[CSECTION@en[4.7 Notation Declarations]] [2] XML では、[[非解析実体]]の[[実体宣言]]についての [[XML//妥当性制約]]「記法が宣言されていること (Notation Declared)」 があります。 >The Name must match the declared name of a notation. [WEAK[([CODE(XML)[[[Name]]]] は宣言された記法の名前に一致しなければならない。)]] [3] この妥当性制約、その[[実体]]が[[参照]]されなかった場合や〃名前の実体の宣言が複数あって、 その宣言が無視される時にも適用されるのでしょうか? 特に明記はされていませんが、 妥当性制約の文章がそのような可能性を無視して生成規則 [CODE(XML)[Name]] の部分が[[一致]]しなければならないとだけ述べていますから、 そのような場合でも適用されると考えられます。 (See also [[実体宣言]>>6]) [4] で、 >>2 で宣言されていることって書いてありますけど、 その[[記法宣言]]は実体宣言の後ろでもいいんでしょうか? 前じゃないといけないんでしょうか? 「the declar''ed'' name」とありますけど、 これは[[過去形]]ではなく[[過去分詞]] ([[受身]]的意味) ですね。 というわけで [[JISX4151]]‐1992 9.5.5 を参照してみると、 「記法名は、この実体宣言と同一の[[文書型定義]]の中で宣言していなければならない。 その宣言は、この実体宣言に先立っていなくても差し支えないが、 その実体への参照よりも前になければならない。」 なるほど、宣言時に宣言の構文的妥当性を、 参照時に宣言の内容的妥当性を検査するという SGML 全体の設計によく整合しています。 XML では (見落としてなければ) 特に記述はありませんが、 同じと考えていいですかね?