#?SuikaWiki/0.9
[1] [[具象構文]]によって[[短縮参照区切子機能]]に割り当てられる[[文字列]]。短縮参照列。 Short reference (string)。 ([[JISX4151]]‐1992 定義 (155))
[2] 短縮参照は、[[現対応表]]によって[[一般実体]]に対応付けてある場合には、その実体に置換します。対応付けていない場合には、[[区切子]]として認知できるなら、[[分離子]] [CODE(SGML)[[[s]]]] として扱い、そうでなければ[[データ]]として扱います。 (8.4.6 参照。)
[4] 短縮参照を使うと、一般の自然言語の記述で、あるいは計算機上での自然言語記述で慣習的に使われている記号によるマーク付けを
SGML 的に処理させることができます。たとえば、引用符 [CODE(char)["]]
を引用要素の[[タグ]] ([SAMP(SGML)[]] や [SAMP(SGML)[
]])
として解釈させることが出来ます。
[WEAK[参考: HTML の [CODE(HTMLe)[[[q]]]] 要素を使うと、未対応ブラウザで表示した時に引用符が補われないことがよく問題視されましたが、本来 (SGML 的慣習に従うなら)、 [CODE(HTMLe)[q]] 要素の開始タグ・終了タグは短縮参照を使うべきだったのです。そうすれば未対応ブラウザの問題はなかったはずです。 (が、 HTML でいままで使われていなかった短縮参照を使い出すことによる問題の方が大きかったでしょうね。)]]
[5]
短縮参照機能は、 [[SGML]] の任意選択の機能ではありません。
ですから、すべての適合 SGML 解析器は短縮参照を扱えるはずです。
似た機能として[[データタグ]]というものがあり、こちらは[[マーク]]である文字列を同時にデータとして扱うことが出来るようになりますが、
短縮参照ほど柔軟性がありませんし、なにより任意選択の機能なので、
実装されていない可能性があります。
* 具象構文との関係
[6] [[短縮参照]]を利用できるかどうかは [[SGML宣言]]で指定できます。
[7] [[参照具象構文]]では[[短縮参照]]を使えますが、[[中核具象構文]]では使えません。
[8] [[XML]] では使えません。
* HTML との関係
[9] [[SGML応用]]として定義されていた [[HTML]] 仕様の中には、[[短縮参照]]を用いていたものもありました。
[10] [[HTML 3.0]] 仕様案では、[[数式]]の表現に[[短縮参照]]を用いていました。
[11] [[ISO-HTML]] では、 [CODE(HTMLe)@en[[[pre]]]] [[要素]]中の[[タブ]]を[[短縮参照]]によって[[間隔]]文字に置き換えています。
* 参考文献
- [3] [[マークの付けかた]] - 短縮参照
[[#comment]]
* メモ