コメントの書き方


SGML だと、

<!-- と --> に挟まれた文はコメント

ですよね。だから本文で

<!-- コメントじゃないぞ! -->

とかいっても「コメントじゃないぞ!」はコメントとして処理される(ない? わかりますよね)

で、DTDの中でもこれに似た書き方で

<!ELEMENT ABC - O (DEF|#PCDATA) -- コメントじゃないぞ! -->

とすると、やはり「コメントじゃないぞ!」はコメントとして処理される。SGML宣言の 中でも同様。

ところが、XMLだと前者はともかく、後者がどうもいけないらしい。
書き方自体は、

コメント は '<!--' ((Char - '-') | ('-' (Char - '-')))* '-->'

で、かつ、

だから文書内ではマークアップの外に、DTDでは文法の許す場所にあっていいということ かと。
で、<!--で始まってないといけないから、 SGML のときのように要素型宣言の際には、>で一旦宣言を 閉じてからでないとコメントいれられない。こんな感じかね、、

<!ELEMENT ABC (#PCDATA|DEF)>
<!-- コメントじゃないぞ! -->

面倒だねぇ、、、

そうそう、コメントに--は含めてはいけないそうで。 まぁ、んなことしないだろうけど。


miuraj@isc.meiji.ac.jp