<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="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">[4]</anchor-end></p><blockquote><dl><dt>(291) 容量 (capacity)</dt><dd>
対象の一部又は全体に対し積算した<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書内容</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">量</anchor>又は複雑さに付けられた制限。
<src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">JIS X 4151</anchor>‐1992 3.</src><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 xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文書</anchor>及び <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SGMLシステム</anchor>によって割り当てられる。</li></ul></dd></dl></blockquote><p>仕様書:
JIS X 4151‐1992 8.8 </p><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>以下でなければならないとされています。 
<src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">JIS X 4151‐1992 8.8</src></p><p>※<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">点</anchor>は一単位。</p><p>最近の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">スクリプト言語</anchor>とかならともかく、
昔からの言語とかでは、可変長の文字列を扱うのができないか、または難しいのが普通で、予めバッファの大きさを指定しておかないといけなかったわけです。
(<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">C</anchor> なんかはそうですね。)
だからこういう制限があるのでしょう。</p><p><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">規格参照容量集合</anchor> 
<code class="SGML">ISO 8879-1986//<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">CAPACITY</anchor> Reference//EN</code> では、
すべての容量について値は <code class="SGML">35000</code> です。</p><p>ちなみに <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">XML</anchor> では容量無制限になっています。</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> <table><tbody><tr><td>容量の名前</td><td>容量点</td><td>計算対象</td></tr><tr><td><code class="SGML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ATTCAP</anchor></code></td><td><code class="SGML">NAMELEN</code></td><td>定義した<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">属性</anchor></td></tr><tr><td><code class="SGML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ATTCHCAP</anchor></code></td><td>1</td><td>属性の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">既定値</anchor>の文字 (<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">見出し語</anchor>を含まず。)</td></tr><tr><td><code class="SGML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">AVGRPCAP</anchor></code></td><td><code class="SGML">NAMELEN</code></td><td><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>の中の字句</td></tr><tr><td><code class="SGML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ELEMCAP</anchor></code></td><td><code class="SGML">NAMELEN</code></td><td>定義した<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素</anchor></td></tr><tr><td><code class="SGML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ENTCAP</anchor></code></td><td><code class="SGML">NAMELEN</code></td><td>定義した<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">実体</anchor></td></tr><tr><td><code class="SGML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">ENCHCAP</anchor></code></td><td>1</td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">実体文</anchor>の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">文字</anchor></td></tr><tr><td><code class="SGML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">EXGRPCAP</anchor></code></td><td><code class="SGML">NAMELEN</code></td><td><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></td></tr><tr><td><code class="SGML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">EXNMCAP</anchor></code></td><td><code class="SGML">NAMELEN</code></td><td>排除要素・添加要素のある群の中の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">名前</anchor></td></tr><tr><td><code class="SGML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">GRPCAP</anchor></code></td><td><code class="SGML">NAMELEN</code></td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">内容モデル</anchor>内の<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">内容字句</anchor></td></tr><tr><td><code class="SGML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IDCAP</anchor></code></td><td><code class="SGML">NAMELEN</code></td><td>定義した<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">識別子属性</anchor></td></tr><tr><td><code class="SGML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">IDREFCAP</anchor></code></td><td><code class="SGML">NAMELEN</code></td><td>定義した<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">識別子参照属性</anchor> (既定値も含む。)</td></tr><tr><td><code class="SGML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">LKNMCAP</anchor></code></td><td><code class="SGML">NAMELEN</code></td><td><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>・要素</td></tr><tr><td><code class="SGML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">LKSETCAP</anchor></code></td><td><code class="SGML">NAMELEN</code></td><td>定義した<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">連結型</anchor>・<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">連結集合</anchor></td></tr><tr><td><code class="SGML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">MAPCAP</anchor></code></td><td><code class="SGML">NAMELEN</code></td><td>宣言した<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">短縮参照対応表</anchor></td></tr><tr><td><code class="SGML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">NOTCAP</anchor></code></td><td><code class="SGML">NAMELEN</code></td><td>定義した<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">記法</anchor></td></tr><tr><td><code class="SGML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">NOTCHCAP</anchor></code></td><td>1</td><td><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">記法識別子</anchor>の文字</td></tr><tr><td><code class="SGML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">TOTALCAP</anchor></code></td><td>(総和)</td><td>容量点総和</td></tr></tbody></table></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> 例えば、 <code class="math"><code class="SGML"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">NAMELEN</anchor></code> := 8</code>
とします。</p><p>実体を定義するとして、その最大数は、
<code class="SGML">ENTCAP</code> の値に制限されます。
<weak xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">他の値にも制限される可能性がありますが、ここでは無視します。</weak>
規格参照容量集合の場合、容量値は 35000
ですから、実体の最大数は 35000 ÷ 8 = 4675 (個) です。</p></body></html>