[17] 仕様書:
実体文 := 引数表記 / データ文 / 括った文 / 外部実体指定 ;; (105)
データ文 := (CDATA / SDATA / PI) 1*ps 引数表記 ;; (106)
括った文 := (STARTTAG / ENDTAG / MS / MD) 1*ps 引数表記 ;; (107)
外部実体指定 := 外部識別子 [1*ps 実体型] ;; (108)
実体型 := SUBDOC / ((CDATA / NDATA / SDATA) 1*ps 記法名 [ データ属性指定 ]) ;; (109)
仕様書: JIS X 4151‐1992 9.5.2 実体文
[2] XML でいうEntityDef
(一般実体宣言)
やPEDef
(引数実体宣言) ですね。
[3] 規格参照具象構文で書くと、 <!ENTITY ent "replacement text to be"> とか <!ENTITY ent PUBLIC "+//IDN example.org::entities//ENTITIES foo//EN"> とか。
[9] >>4-8 を、意味ではなく構文に注意して書きなおすと、
実体文 := [鍵語1 1*ps] 引数表記 / 外部識別子 (SUBDOC / 鍵語2 1*ps 記法名 [データ属性指定]) ;; (105)
鍵語1 := CDATA / SDATA / PI / STARTTAG / ENDTAG / MS / MD
鍵語2 := CDATA / NDATA / SDATA
[15] 実体文の一種として、引数表記だけを1つ指定することができます。 その場合、その実体の置換文は、 この引数表記を解釈して得られる文になります。
仕様書: JIS X 4151‐1992 9.5.2 実体文
[16] 置換文の最後には、自動的に Ee
が補われます。
直接 Ee
を引数表記中に書いてはいけません
(し、普通は書けません)。
更に、 JIS には、
備考 文の中に引数表記を含む実体は、その表記の解釈のときに決定する実体参照を含んでいた場合でも一つの実体としてみなす。 その場合には、
Ee
は明示しない。
と書かれています。つまり、
<!ENTITY % foo "ABCDEFG"> <!ENTITY bar "あいうえお %foo; あいうえお">という場合でも、実体 bar は文字データと引数実体 foo を組み合わせたものではなく、 実体参照を展開した文字列 あいうえお ABCDEFG あいうえお として定義されます。
最後の その場合には、
というのは意味がよくわかりませんが、
引数実体 %foo の最後にあったはずの Ee
が bar の置換文では消滅していることを言いたいのではないでしょうか。Ee
は明示しない。
[21]
JIS X 4153:1998
訳語選定に際しては,SGMLを規定しているJIS X 4151,SGMLの拡張規格であるJIS X 4155, 及びSGML関連規格であるJIS X 4171との整合を第一に配慮した。しかし次の用語などについては,その後関連分野で普及した訳語表記に従っている。
原語 訳語
------------------------------------------------
entity text 実体テキスト