<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="12" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[12]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SGML</anchor> には、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SGML</anchor> に従って解釈できない任意の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">データ</anchor>を扱うための<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">データ実体</anchor>という構造が存在していました。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="13" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[13]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XML</anchor> には同様の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">非解析対象実体</anchor>が存在していました。
ただし <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SGML</anchor> に比べると極めて限定的でした。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="16" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[16]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文字データ実体</anchor>や<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">特定文字データ実体</anchor>は、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">バイト</anchor>と<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文字</anchor>の変換に当たる部分は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SGML</anchor>
の通常の方法により、その結果の解釈は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">応用</anchor>と<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">実装</anchor>に依存した方法により定めるものでした。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">特定文字データ実体</anchor>は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文字実体</anchor>の記述によく使われていました。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="14" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[14]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">非SGMLデータ実体</anchor>や<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">非解析対象実体</anchor>は、
例えば <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SGML文書</anchor>に <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">JPEG</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">画像</anchor>を埋め込むような場合に使う想定だったようです。
それ以外にも <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SGML</anchor> だけで記述しきれないものを扱うための<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">拡張点</anchor>として運用可能な仕組みでした。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="15" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[15]</anchor-end> ただその柔軟性ゆえに具体的な利用方法や処理方法の規定が一切存在せず<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">応用</anchor>や<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">実装</anchor>に委ねられており、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">相互運用性</anchor>に欠け使いづらいという面もありました。</p><section><h1>SGML データ実体</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="1" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[1]</anchor-end>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">データ</anchor>として<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">宣言</anchor>し、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">参照</anchor>のときに<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">構文解析</anchor>しない<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">実体</anchor>。 data entity。 備考 これには、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文字データ実体</anchor>, <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">特定文字データ実体</anchor>及び<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">非SGMLデータ実体</anchor>の3種類がある。 (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">JISX4151</anchor>‐1992 定義 (174))</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[2]</anchor-end> <samp class="SGML">&lt;!<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ENTITY</anchor> name <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CDATA</anchor> &quot;data&quot;&gt;</samp> のようにして宣言される実体のことですね。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[3]</anchor-end>
データ実体を宣言するときに使用する<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">鍵語</anchor> (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">規格参照具象構文</anchor>の場合):<dl><dt><code class="SGML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CDATA</anchor></code></dt><dd>文字データ実体</dd><dt><code class="SGML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SDATA</anchor></code></dt><dd>特定文字データ実体</dd><dt><code class="SGML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">NDATA</anchor></code></dt><dd>非 SGML データ実体</dd></dl></p><p>(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">名無しさん</anchor>)</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[4]</anchor-end><ul><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">外部データ実体</anchor>を<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">実体宣言</anchor>で宣言するときには、 <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;3</anchor-internal> の鍵語の後に<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">記法名</anchor>と、省略可能な<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">データ属性指定</anchor>が続きます。 (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">JIS X 4151</anchor>‐1992 9.5.5 参照)</li><li><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">内部データ実体</anchor>は、鍵語の後に<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">引数表記</anchor>を指定します。ただし、 <code class="SGML">NDATA</code> は使えません。
また、内部データ実体に<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">データ内容記法</anchor>を指定することはできません。</li></ul></p><p>(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">名無しさん</anchor>)</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="5" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[5]</anchor-end>
データ実体は、文字データ実体・特定文字データ実体は0文字以上の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SGML文字</anchor>の列、非 SGML データ実体は0文字以上の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文字</anchor>の列です。 (JIS X 4051‐1992 5.3 参照。)</p><p>内部データ実体は、実体宣言の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">実体値</anchor>です。 (JIS X 4051‐1992 9.5.3 参照。)</p></section><section><h1>XML 非解析対象実体</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="8" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[8]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XML</anchor> としての構文に合致しない<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">実体</anchor>を、
<dfn><rubyb xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">非解析対象実体<rt xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">non‐parsed entity</rt></rubyb></dfn>といいます。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="9" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[9]</anchor-end> 
ありがちな使用例としては、埋め込み画像とか、音とか、動画とか。 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">TeX</anchor> の数式とか。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[10]</anchor-end> 
もっとも、 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">TeX</anchor> みたいな text 系は SGML とも親和性が悪くないから、<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">内容モデル</anchor>が <code class="SGML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CDATA</anchor></code> な要素の内容にでもしておいて、 <code class="SGML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">NOTATION</anchor></code> 属性でその書式を明示しておくのが常套手段かも。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="11" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[11]</anchor-end> 
非解析対象実体は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">内部実体</anchor>にはできませんから、必ず別の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ファイル</anchor>なり<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">資源</anchor>なりが必要になってしまいます。だからやっぱり <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;10</anchor-internal> のような手が可能ならそうしたいかもしれません。特に短い内容ならね。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="6" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[6]</anchor-end> 
あ、念のため。 <anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="10" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;10</anchor-internal> は解析対象実体の一部を<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">応用</anchor>が SGML 以上の解釈をするだけであって、その部分に非解析対象実体が埋め込まれているとは言いません。</p><section><h1>分類</h1><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="17" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[17]</anchor-end> 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">非解析対象実体</anchor>は<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">実体</anchor>の一種です。<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">実体</anchor>には<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">非解析対象実体</anchor>の他に<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">解析対象実体</anchor>があります。</p><p><anchor-end xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="7" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[7]</anchor-end> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">非解析対象実体</anchor>は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SGML</anchor> でいう<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">データ実体</anchor>に相当します。</p></section></section><section><h1>メモ</h1></section></body></html>