最小表記 = (lit, 最小データ, lit) | (lita, 最小データ, lita) —(76)
最小データ = 最小データ文字* —(77)
最小データ文字 = RS | RE | SPACE | LCLetter | UCLetter | Digit | Special —(78)
最小表記は、その最小データの中の
RS
を無視し、2個以上連続するRE
及びSPACE
(先頭及び末尾に位置する場合を除く。) を1個のSPACE
に置換した上で解釈する。 (以上 JISX4151‐1992 9.1.7)量的制限 解釈を終えた最小表記の長さは、 その区切り子を除いて、 (具象構文の定義にかかわらず) 規格参照量集合の中の量
LITLEN
の値以下でなければならない。 (同 9.1.7.1)
[2] 最小表記は、例えば公開識別子を指定するのに使います。
[3]
規格参照量集合の LITLEN
の値は 240
です。従って、 RE
及び SP
の正規化の結果の文字列 (区切子 lit
又は lita
を除く。) の長さが 240
以下でなければなりません。
" RE
RS
foo RS
bar RS
RS
FOOTAB
RS
RE
TAB
RS
RS
.RS
RE
RE
"
を解釈すると、その値は
" RE
foo bar FOOTAB
TAB
.RE
RE
"
となります。たぶん。
[4] WebSGML では Special が拡張されています。 従って、最小データで使用することが出来る文字は、
RS
}\{RE
}\{SPACE
}A-Za-z0-9'()+,-./:=?]RS
}\{RE
}\{SPACE
}A-Za-z0-9!#$%'()*+,-./:;=?@_]RE
はそのままなんだ。2個以上連続する (RE
及び SPACE
) なのか 2個以上連続する RE
及び2個以上連続する SPACE
なのかも実はよく分からん・・・。lita
('
) を使っていると、公開識別子に '
が使われている場合困ってしまいます。 '
は公開識別子に使うべきではないでしょう。