[13] 
[DFN[[RUBYB[要素名]@en[element name]]]]は、
[[要素]]の種別を表す名称です。




* 歴史

** 共通識別子

[12] 
[DFN[[RUBYB[共通識別子]@en[generic identifier]]]]
([DFN[GI]])
は、
[[SGML]] において[[要素型]]を識別する[[識別子]]でした。

[14] 
[[共通識別子]]は[[要素型宣言]]で[[宣言]]され、
[[タグ]]で[[要素型]]を表すために利用されました。

[15] [[付番]]を用いる場合は、
[[付番核]]に[[付番]]を加えたものを[[共通識別子]]と呼んでいました。

[1] 
>
:共通識別子 (generic identifier):
[[要素型]]を識別する名前。
([[JIS X 4051]]‐1992 3. (55))

- [2] [CODE(ABNF)[[DFN[[[共通識別子指定]]]] := 共通識別子 / [[付番核]] ;; (29)]]
- [9] [CODE(ABNF)[[DFN[共通識別子]] := [[名前]] ;; (30)]]

[6] 共通識別子は、
その文書に[RUBY[見出][みいだ]]した重要な要素を特徴付けるにふさわしいと思う、
覚えやすい名前にするべきです。 (参考2 2. 参照。)

[7] 共通識別子は概念的には要素の特別な属性という位置づけみたいです。 
(参考2 2. 参照。)

[8] >>7 ちなみに[[内容]]も属性。ある意味一貫したモデル。

- [3] [[XML]] では、[[要素型名]]と言う。
- [4] 思うに、[CODE[[[一般識別子]]]]と訳したほうが良かったんじゃないかな? SGML の [CODE[G]] が Generalized で、これが[CODE[一般化]]と訳されているんだから。
- [5] >>4 でもって、[[固有マーク付け]]ではなく[[一般化マーク付け]]を全面的に採用したことこそが SGML の要なんだからね。

*** 認知制約 GI (SGML)

[10] 
[[認知制約]] [DFN[[CODE(SGML)[GI]]]] では、
[[区切子]]に割り当てられている[[文字列]]の直後に[[文脈列]]
[CODE(ABNF)[[[名前開始文字]] / <[CODE(SGML)[[[tagc]]]] if [CODE(SGML)[[[SHORTTAG]] YES]]> / <[CODE(SGML)[[[grpo]]]] if [CODE(SGML)[[[CONCUR]] YES]]>]]
が続く場合、これを[[文脈依存区切子]]として[[認知]]します。

仕様書: [[JIS X 4151]]‐1992 8.6.2 参照。

[11] 
この制約が課されるのは [CODE(SGML)[[[etago]]]]
と [CODE(SGML)[[[stago]]]] です。すなわち、
タグ開始の区切子が認知されるためには、その直後に[[一般識別子]]または[[群]]またはタグ閉じ区切子がないといけません。

(群は[[文書型]]を指定する[[名前群]]です。
タグ閉じ区切子が続くときは[[空タグ]]です。)

**

[16] 
[[SGML]] 
の仕様上の正式名称は[[共通識別子]]でしたが、
一般的には[[要素名]]と呼ばれていました。
[[要素]] ([[実現値]]) と[[要素型]] ([[クラス]])
との区別を重視する立場から、
[DFN[[RUBYB[要素型名]@en[element type name]]]]とも呼ばれました。

[17] 
俗に[[タグ名]]と呼ばれることもありました。
現在の [[Web]]
においては[[マーク付け言語]]における[[タグ]]に記述する[[タグ名]]と、
[[データモデル]] ([[DOM]]) における[[要素]]の名前たる[[要素名]]は別の意味となっています。

[18] = 共通識別子。
([[ISO‐HTML]] <http://purl.org/NET/ISO+IEC.15445/15445.html#ELEMENTTYPE> 参照。)



[19] [CITE[moonlight開発小話: cryptic hash in generic serialization - ものがたり]] ([TIME[2009-03-15 11:03:12 +09:00]] 版) <http://d.hatena.ne.jp/atsushieno/20090313/p1>

[20] [CITE@en[Mention that SVG and MathML won't get new hyphen-containing names either · w3c/webcomponents@b362fa0]]
([TIME[2016-03-12 12:51:19 +09:00]] 版)
<https://github.com/w3c/webcomponents/commit/b362fa08d202a37f6afa1f19281845db2e86a32f>

[21] [CITE@en[''''''[''''''Custom'''''']'''''': "are" custom element names ASCII characters, or MUST they be ASCII characters? · Issue #239 · w3c/webcomponents]]
([TIME[2016-04-16 12:56:02 +09:00]] 版)
<https://github.com/w3c/webcomponents/issues/239>

[22] [CITE@en[Add custom elements to HTML · whatwg/html@6e7eaa4]]
([TIME[2016-04-26 18:16:43 +09:00]] 版)
<https://github.com/whatwg/html/commit/6e7eaa4bd2912965fd83766f99f984f249531f3a>
