[1] SGML のマーク宣言は、普通
mdo
(<!
) +
宣言名で始まり、 mdc
(>
) で終わります。
宣言名 | SGML | AFDRMeta | XML | HTML | ||||
---|---|---|---|---|---|---|---|---|
参照具象構文 | DTD | LPD | 文書実現値 | DTD | DTD | 文書実現値 | ||
(
com (-- )) | 注釈宣言 | ○ | ○ | ○ | ○ | ○ | ○ | ○ |
(
dso ([ )) | マーク区間宣言 | ○ | ○ | ○ | ○ | △ | △ | △ |
AFDR | AFDR | ○ | ||||||
ATTLIST | 属性定義並び宣言 | ○ | ○ | ○ | ○ | |||
DOCTYPE | 文書型宣言 | ○ | ○ | ○ | ||||
ELEMENT | 要素型宣言 | ○ | ○ | ○ | ||||
ENTITY | 実体宣言 | ○ | ○ | ○ | ○ | |||
LEXTYPE | 字句型宣言 | ○ | ||||||
LEXORD | 辞書的順序宣言 | ○ | ||||||
LEXCON | 字句制約宣言 | ○ | ||||||
LINK | 連結型宣言 | ○ | ||||||
NOTATION | 記法宣言 | ○ | ○ | ○ | ○ | |||
SGML | SGML宣言 | ○ | ||||||
SHORTREF | 短縮参照写像宣言 | ○ | ○ | |||||
USELINK | 連結集合使用宣言 | ○ | ○ | ○ | ||||
USEMAP | 短縮参照使用宣言 | ○ | ○ | ○ |
[6] XML で使用可能であっても、 SGML の場合よりその構文は非常に制限されます。 (例えば注釈の挿入が出来ません。)
[2] XML では <?xml?>
のことを「XML宣言」
などと呼びますし、その standalone
擬似属性を
standalone 宣言と呼んだりもしますが、
SGML 的にはこれらはマーク宣言ではなく、処理指令
(の中のシステム・データの一部分) です。
また、 ISO/IEC 10744 も体系基底宣言などいくつかの宣言を持っていますが、 これも処理指令です。 (字句型宣言などは構文的にマーク宣言ですが、 SGML DTD では使えません。)
[3] ISO/IEC 10744:1997 は、文書体系を定義するための SGML による表記法にマーク宣言を流用しています。 その体系DTD はほとんど普通の DTD (応用DTD) と同じなのですが、 ISO/IEC 10744 では、 説明のため、マーク宣言内の鍵語の類について、 体系DTD ではすべて小文字、応用DTD ではすべて大文字、 (そのままでは使えない) 雛形の DTD宣言では大文字・小文字混じりで表現しています。
[4] DTD 内で使用するマーク宣言のことを「DTD宣言」と呼ぶこともあります。
[5] マーク宣言
よりマーク付け宣言
の方が逐語訳なんで、一般論からすれば望ましいんですが、どうもいまいち語呂が悪い。なれのせいか本当に語呂が悪いのかはちょっとわかりませんが。