<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body><section><h1>IE DTD の <code>entity</code> 要素</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:">HTML</anchor> の <code class="HTMLe">entity</code> 要素型は、 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE 3.0</anchor>βの独自拡張と言われています。</p><p>その根拠とされるものは、おそらく M$ が公開した WinIE 3.0βの <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DTD</anchor>
(色々なところで手に入りますけど、たとえば
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://openlab.jp/k16/htmllint/notice.html#ie30b">http://openlab.jp/k16/htmllint/notice.html#ie30b</anchor-external> を参照。1996年11月。) でしょう。
この DTD には、<pre>&lt;![ %HTML.Deprecated [
        &lt;!ENTITY % phrase &quot;EM | STRONG | DFN | CODE | SAMP | KBD | VAR | CITE | ENTITY | SPAN&quot;&gt;
]]&gt;

&lt;!ENTITY % phrase &quot;EM | STRONG | DFN | CODE | SAMP | KBD | VAR | CITE | SPAN&quot;&gt;</pre>という部分があります。<del>要素型として <code class="HTMLe">ENTITY</code> が登場するのはこの部分だけです。</del></p><delete xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><p xmlns="http://www.w3.org/1999/xhtml">つまり、非推奨な<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="HTMLe">entity</code>
を参照しているのですが、その要素型は定義されていません。
<weak xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">(<anchor>SGML</anchor> 的には特に問題はありません。)</weak></p></delete><insert xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><p xmlns="http://www.w3.org/1999/xhtml">そして、 <code class="SGML">%phrase</code> の要素型群は、<pre class="SGML">&lt;!ELEMENT (%phrase) - - (%text)*&gt;
&lt;!ATTLIST (%phrase)
	%attrs;
	&gt;</pre>として宣言されています。</p></insert><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> では、なぜ IE3β DTD 
に<del>定義されていない</del><ins>この</ins>要素型が混入したのでしょうか。
この DTD の冒頭には <q>This markup is based as much as possible on the DTD for HTML 3.2 published by W3C (also known as the Wilbur DTD), dated 5/31/96.</q>
と書かれていますので、 Wilbur DTD を探してみましたのですが、
5月6日付と8月13日付はあるもののその間のものは見つかりませんでした。
で、そのいずれも、相当部分は<pre>&lt;!ENTITY % phrase &quot;EM | STRONG | DFN | CODE | SAMP | KBD | VAR | CITE&quot;&gt;</pre>となっています。もちろん他の部分でも <code class="HTMLe">entity</code> 
要素型は定義されていません。</p><p><strong>Re: Deprecating FONT and CENTER</strong> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://lists.w3.org/Archives/Public/www-html/1996May/0542.html">http://lists.w3.org/Archives/Public/www-html/1996May/0542.html</anchor-external>
に、5月31日版からの修正案がありますが、残念なことに肝心の部分がありません。</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> その後1996年5月31日版 HTML 3.2 DTD 案を発掘しましたが、
やはり <code class="HTMLe">entity</code> 要素型はありませんでした。
その部分は <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> の WinIE 2 用 DTD からそのまま由来している部分のようです。</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-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;2</anchor-internal> よりも前の 1996年3月に、同じ著者 (M$ の人) が <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">WinIE 2.0</anchor>
用の DTD を書いています。</p><p><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="2" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;2</anchor-internal> と同様の<pre>&lt;![ %HTML.Deprecated [
	&lt;!ENTITY % phrase &quot;EM | STRONG | CODE | SAMP | KBD | VAR | CITE
		| DFN | ENTITY&quot;&gt;
]]&gt;

&lt;!ENTITY % phrase &quot;EM | STRONG | CODE | SAMP | KBD | VAR | CITE&quot;&gt;</pre>がある他に、<pre>&lt;![ %HTML.Deprecated [
&lt;!ATTLIST (DFN | ENTITY)
	%attrs;
	&gt;
]]&gt;</pre>という<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">属性定義並び宣言</anchor>があります。<del>やはり<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素型宣言</anchor>はありません。</del></p><p>この属性定義並び宣言によれば、 <code class="HTMLa"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">id</anchor></code>,
<code class="HTMLa"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">class</anchor></code>, <code class="HTMLa"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">lang</anchor></code> 属性があることになります。
<weak xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">(この共通属性の定義は <anchor>HTML 3.0</anchor> からコピってきたと注記されています。)</weak></p><p>この DTD は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML 2.0</anchor> draft をもとにして作ったと書かれているのですが、
やはり元の HTML 2.0 draft DTD に該当箇所はありません。</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="3" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;3</anchor-internal> が参照している DTD の先頭はこういうの:</p><blockquote><pre>&lt;!--    DTD for Internet Explorer 2.0 HTML

        Beta version: 0.9       Date: 3/4/96

        Document Type Definition for the HyperText Markup Language
        for Internet Explorer, V 2.0.

        Author: Mark Buckley &lt;mbuckley@microsoft.com&gt;

        This markup is based as much as possible on the DTD for HTML 2.0
        published in the 12/95 IETF working draft. Table markup is based
        on the table DTD included in the HTML3 DTD, not the 12/95 tables
        draft.</pre></blockquote><blockquote><pre>        Changes since 2/26/96:

        3/4/96:
                Added BGSOUND to HEAD.</pre></blockquote><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> <code>entity</code> だけでなく <code>dfn</code> がこの形で入っている <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DTD</anchor>
も他にありません。 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Microsoft</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-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;4</anchor-internal> の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTMLPro</anchor> DTD でも <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Microsoft</anchor> か、となっていて詳しい情報はありません。</p><figure class="data"><figcaption><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:">HTML要素概説</anchor></figcaption><dl><dt><f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素名</f></dt><dd><code>entity</code></dd><dt>日付</dt><dd><time>1996-03-04</time></dd><dt>説明</dt><dd>
<time>1996-03-04</time>付の
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Mark Buckley</anchor>
による
<cite>DTD for Internet Explorer 2.0 HTML</cite>
に
<code>entity</code>
がある。
<time>1996-02-26</time>版からの変更点に記載がなく、
既に含まれていたと思われる。
<src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">IE2DTD</src>
<time>1995-12</time>時点の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML 2.0</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DTD</anchor>
に基づくと説明されているが、 
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML 2.0</anchor> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DTD</anchor> に
<code>entity</code>
はないので、
独自の追加分である。
同時期の他社の DTD にも見られない。</dd><dt>説明</dt><dd>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Web</anchor>
上にもほとんど情報がなく、
どのような機能があったのか、そもそも実装されていたのかもはっきりしない。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Internet Explorer 3.0</anchor>
の独自機能として紹介されることがあるが、
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Internet Explorer 3.0</anchor>
版 <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DTD</anchor> に該当部分が引き継がれたことによると思われる。</dd><dt>出典</dt><dd><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&lt;entity&gt;</anchor></dd><dt>出典</dt><dd><refs xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><ul xmlns="http://www.w3.org/1999/xhtml"><li><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> 
<dfn>IE2DTD</dfn>:
<cite xml:lang="en">DTD for Internet Explorer 2.0 HTML</cite>,
Beta version: 0.9,
Author: <data itemprop="author"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Mark Buckley</anchor></data>, 
Date: <time itemprop="published">3/4/96<attrvalue xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">1996-03-04</attrvalue></time>,</li></ul></refs></dd><dt>注釈</dt><dd><ul><li>
<dfn>Mark Buckley</dfn>
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Microsoft Corporation</anchor>
社員。
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Internet Explorer</anchor>
の開発に従事した。
<src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">IE2DTD</src></li></ul></dd></dl></figure></section><section><h1>HTMLPro の <code class="HTMLe" xml:lang="en">entity</code> 要素</h1><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> <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTMLPro</anchor> という処理系があって、色々な独自拡張を修正した DTD
を持っていますが、この DTD には <code class="HTMLe">entity</code> 要素型が定義されています。
注釈は <q>EXPERIMENTAL SGML entity</q> となっています。
同様に <code class="HTMLe"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">element</anchor></code> 要素型や <code class="HTMLe"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">attrib</anchor></code>
要素型も定義されています。 (SGML の要素型名や属性名や実体名をマーク付けするための要素型らしいです。)</p><p>説明文書によると、既存の <code class="HTMLe">entity</code> 要素型や
<code class="HTMLe"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">comment</anchor></code> 要素型に <code class="HTMLe">element</code> と
<code class="HTMLe">attrib</code> を加えて文書記述に実験的に導入してみたということです。</p><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-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="4" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;4</anchor-internal> のいう説明文書って配布ファイル 
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="ftp://ftp.ucc.ie/pub/html/htmlpro.zip">ftp://ftp.ucc.ie/pub/html/htmlpro.zip</anchor-external>
に入っていたものか
<anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="http://www.arbornet.org/~silmaril/dtds/html/htmlpro.html">http://www.arbornet.org/~silmaril/dtds/html/htmlpro.html</anchor-external>
あたりにあったものかと思われるのですが、
今は <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Internet Archive</anchor> にも所蔵されておらずどこにも見つけられません。
<time>2024-08-18T02:39:06.400Z</time></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-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="8" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;8</anchor-internal> 見つけました <src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:"><anchor-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="12" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;12</anchor-internal></src></p><ul><li><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> <cite>The HTML Professional DTD</cite>, <time>2024-08-18T03:10:46.000Z</time>, <time>1997-05-12T01:11:54.190Z</time> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://web.archive.org/web/19970512004934/http://www.ucc.ie/html/dtds/htmlpro.html">https://web.archive.org/web/19970512004934/http://www.ucc.ie/html/dtds/htmlpro.html</anchor-external></li></ul><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-internal xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:anchor="12" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:">&gt;&gt;12</anchor-internal> と同じ<time>1997-01-14</time>付けのファイルが <code>htmlpro.zip</code>
に入って配布されていました。</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> <code>entity</code> の説明が SGML or other entity name ってなってますけど、
その他って何でしょうね。</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> <code>+//Silmaril//DTD HTML Pro v0r10 19961116//EN</code></p><figure class="data"><figcaption><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:">HTML要素概説</anchor></figcaption><dl><dt><f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素名</f></dt><dd><code>entity</code></dd><dt><f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素名</f></dt><dd><code>comment</code></dd><dt><f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素名</f></dt><dd><code>attrib</code></dd><dt><f xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">要素名</f></dt><dd><code>element</code></dd><dt>日付</dt><dd><time>1996-11-16</time></dd><dt>説明</dt><dd>
<time>1996-11-16</time>付の
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML Pro</anchor> の
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DTD</anchor>
に、
<code>comment</code>,
<code>entity</code>,
<code>attrib</code>,
<code>element</code>
がある。
既存の 
<code>comment</code>,
<code>entity</code>
を流用し
<code>attrib</code>,
<code>element</code>
を追加して
<anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">SGML</anchor>
の要素名等の記述に用いることとしたものである。
<code>element</code>
はその説明文書自体の記述に使われている。
<code>attrib</code>,
<code>entity</code>
も同様に名前を記述すると推測されるが、
<code>comment</code>
の用法は定かではない。</dd><dt>出典</dt><dd><refs xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:"><ul xmlns="http://www.w3.org/1999/xhtml"><li>
<dfn>HTMLPro</dfn>:
<cite xml:lang="en">The HTML Professional DTD</cite>, 
<data itemprop="author"><anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">Peter Flynn</anchor></data>,
<time itemprop="published">1 January 1997<attrvalue xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">1997-01-01</attrvalue></time>,
<time>2024-08-18T03:11:56.000Z</time>, <time>1997-05-12T01:13:03.515Z</time> <anchor-external xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resScheme="URI" xmlns:a0="urn:x-suika-fam-cx:markup:suikawiki:0:9:" a0:resParameter="https://web.archive.org/web/19970512004934/http://www.ucc.ie/html/dtds/htmlpro.html">https://web.archive.org/web/19970512004934/http://www.ucc.ie/html/dtds/htmlpro.html</anchor-external></li></ul></refs></dd><dt>注釈</dt><dd><ul><li>
<dfn xml:lang="en">The HTML Professional DTD</dfn> <dfn xml:lang="en">HTML Pro</dfn>
当時流布していた各種の <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML DTD</anchor> を収集した <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">DTD</anchor> 集と、
それらを統合してすべての <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML</anchor> の拡張をカバーした <anchor xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:9:">HTML DTD</anchor>。
<src xmlns="urn:x-suika-fam-cx:markup:suikawiki:0:10:">HTMLPro</src></li></ul></dd></dl></figure></section><section><h1>メモ</h1></section></body></html>