[40] [[HTML]] には、他の言語のデータを直接埋め込むことができる[RUBYB[統合点]@en[integration point]]が何種類か存在します。
例えば、 [CODE(XMLe)@en[[[svg]]]] [[要素]]によって [[HTML]] 文書中に [[SVG]]
を埋め込むことができます。

[SEE[ 逆方向は [[HTMLの埋め込み]] ]]

* 仕様書

[REFS[
- [70] [CITE@en-US-x-hixie[HTML Standard]] ([TIME[2012-06-01 22:44:24 +09:00]] 版) <http://www.whatwg.org/specs/web-apps/current-work/#mathml>
- [71] [CITE@en-US-x-hixie[HTML Standard]] ([TIME[2012-06-01 22:44:24 +09:00]] 版) <http://www.whatwg.org/specs/web-apps/current-work/#svg>
- [52] [CITE@en-US-x-hixie[HTML Standard]] ([TIME[2012-06-01 22:44:24 +09:00]] 版) <http://www.whatwg.org/specs/web-apps/current-work/#tree-construction>
- [63] [CITE@en-US-x-hixie[HTML Standard]] ([TIME[2012-06-01 22:44:24 +09:00]] 版) <http://www.whatwg.org/specs/web-apps/current-work/#adjust-foreign-attributes>
- [69] [CITE@en-US-x-hixie[HTML Standard]] ([TIME[2012-06-01 22:44:24 +09:00]] 版) <http://www.whatwg.org/specs/web-apps/current-work/#parsing-main-inbody>
]REFS]

* SVG と MathML

[44] [[HTML文書]]には、[CODE(XMLe)@en[[[svg]]]] [[要素]]によって [[SVG]] を、
[CODE(XMLe)@en[[[math]]]] [[要素]]によって [[MathML]] を埋め込むことができます。

[45] [[HTML文書]]の[[要素]]の[[名前空間]]は通常は [[HTML名前空間]]ですが、
これらの[[要素]]の子孫はそれぞれ [[SVG]] と [[MathML]] の[[名前空間]]に属します。

** HTML への SVG と MathML の埋め込み

[72] [[SVG]] [CODE(XMLe)@en[[[svg]]]] [[要素]]と [[MathML]] [CODE(XMLe)@en[[[math]]]]
[[要素]]は[[埋め込まれ内容]]に分類されており [SRC[>>70, >>71]]、これが認められる[[要素]]で使うことができます。

** SVG への HTML の埋め込み

[73] [[SVG]] [CODE(XMLe)@en[[[foreignObject]]]] [[要素]]の中に [[HTML]] [[要素]]が含まれる場合、
[[フロー内容]]でなければ[['''なりません''']]。 [SRC[>>71]]

;; [74] [[HTML要素]]以外については規定しないという立場から [[HTML]] 仕様は言及していませんが、
[[HTML]]以外の[[フロー内容]]、例えば [[MathML]] [CODE(XMLe)@en[[[math]]]] [[要素]]も認められると考えるのが妥当と思われます。

[75] [[HTML文書]]における [[SVG]] [CODE(XMLe)@en[[[title]]]] [[要素]]の[[内容モデル]]は
[[phrasing content]] です。 [SRC[>>71]]

;; [76] なぜ >>73 と同様の規定の方法にせずに、 >>75 については[[HTML文書]]限定の規定になっているのかはよくわかりません。

;; [77] 構文解析器では [CODE(XMLe)@en[[[title]]]] [[要素]]と [CODE(XMLe)@en[[[desc]]]]
[[要素]]が同様に扱われていますが、 [CODE(XMLe)@en[[[desc]]]] [[要素]]の[[内容モデル]]については規定がありません。

** MathML における HTML 埋め込み

[115] 
[CITE[XML in HTML Meeting Report]], [TIME[2017-10-02T11:00:11.000Z]], [TIME[2024-08-17T05:13:03.178Z]] <https://www.w3.org/TR/NOTE-xh#MathML>

** 構文解析器の動作

[53] [[HTML構文解析器]]は、 [[MathML]] や [[SVG]] の中の次の位置で、内容を [[HTML]]
として構文解析します [SRC[>>52]]。 
[FIG(list)[
- [54] [DFN[[RUBYB[[[MathMLテキスト統合点]]]@en[MathML text integration point]]]] (ただし[[開始タグ]] [CODE(XMLe)@en[[[mglyph]]]], [CODE(XMLe)@en[[[malignmark]]]] を除く)
-- [58] [[MathML]] の次の[[要素]]: [CODE(XMLe)@en[[[mi]]]], [CODE(XMLe)@en[[[mo]]]],
[CODE(XMLe)@en[[[mn]]]], [CODE(XMLe)@en[[[ms]]]], [CODE(XMLe)@en[[[mtext]]]]
- [56] [DFN[[RUBYB[[[HTML統合点]]]@en[HTML integration point]]]]
-- [59] [[MathML]] [CODE(XMLe)@en[[[annotation-xml]]]] [[要素]] ([CODE(XMLa)@en[[[encoding]]]]
[[属性値]]が [[ASCII大文字・小文字不区別]]で [CODE(MIME)@en[[[text/html]]]] か
[CODE(MIME)@en[[[application/xhtml+xml]]]] の時のみ)
-- [60] [[SVG]] [CODE(XMLe)@en[[[foreignObject]]]] [[要素]]
-- [61] [[SVG]] [CODE(XMLe)@en[[[desc]]]] [[要素]]
-- [62] [[SVG]] [CODE(XMLe)@en[[[title]]]] [[要素]]
]FIG]

;; [80] [[属性]]は、[[要素]]の最新の状態ではなく、
[[構文解析器]]が[[要素]]を作る元となった[[字句]]の状態が用いられます。
従って、[[構文解析]]の途中で [CODE(HTMLe)@en[[[script]]]] によって
[CODE(HTMLa)@en[[[encoding]]]] [[属性]]が削除されたり、変更されたりしても、
[[構文解析器]]の動作には影響しません。例:
[REFS[
- <http://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cmath%3E%0A%3Cannotation-xml%20encoding%3D%22text%2Fhtml%22%3E%0A%20%20%3Cscript%3E%0A%20%20%20%20document.currentScript.parentNode.removeAttribute%20(%27encoding%27)%3B%0A%20%20%3C%2Fscript%3E%0A%20%20%3Cp%3Ey%3C%2Fp%3E%0A%3C%2Fannotation-xml%3E%0A%3C%2Fmath%3Ex>
]REFS]

[57] また、 [[HTML構文解析器]]は、 [[MathML]] の中の次の位置で、内容を [[SVG]]
として構文解析します [SRC[>>52]]。
[FIG(list)[
- [55] [[MathML]] [CODE(XMLe)@en[[[annotation-xml]]]] [[要素]] (ただし [CODE(XMLe)@en[[[svg]]]] [[開始タグ]]のみ)
]FIG]

[64] [[SVG]] や [[MathML]] の[[要素]]では、[DFN[[RUBYB[[[外来属性を調整]]]@en[adjust foreign attributes]]]]することにより、
[[XML名前空間]]や[[XMLNS名前空間]]や[[XLink]] の[[属性]]が特別に認識されます [SRC[>>63]]。
[FIG(list)[
- [65] [CODE(XMLa)@en[[[xlink:actuate]]]], [CODE(XMLa)@en[[[xlink:arcrole]]]],
[CODE(XMLa)@en[[[xlink:href]]]], [CODE(XMLa)@en[[[xlink:role]]]],
[CODE(XMLa)@en[[[xlink:show]]]], [CODE(XMLa)@en[[[xlink:title]]]],
[CODE(XMLa)@en[[[xlink:type]]]] → [[XLink]]
- [66] [DEL[[CODE(XMLa)@en[[[xml:base]]]] → [[XML]]]]
- [98] [CODE(XMLa)@en[[[xml:lang]]]], [CODE(XMLa)@en[[[xml:space]]]]
→ [[XML]]
- [67] [CODE(XMLa)@en[[[xmlns]]]], [CODE(XMLa)@en[[[xmlns:xlink]]]] → [[XMLNS]]
]FIG]

;; [68] [[大域属性]]として解釈されるのはこれらの[[属性]]だけで、同じ[[名前空間接頭辞]]であってもこれら以外はそう解釈されません。
また、これは [[SVG]] と [[MathML]] の[[要素]]のみの解釈で、 [[HTML]] の[[要素]]ではそう解釈されません。
更に、 [[XMLNS名前空間]]の[[属性]]も、 [[XMLNS名前空間]]に[[属性]]が置かれるだけであって、
[[XML名前空間]]仕様によって解釈されたり、機能したりするわけではありません。

* レンダリングとスクリプト、データの統合

** スクリプト

[50] [CODE(HTMLe)@en[[[script]]]] [[要素]]や [CODE(HTMLa)@en[[[on*]]]] [[属性]]には[[スクリプト]]を記述できます。

** スタイルシート

[51] [CODE(HTMLe)@en[[[style]]]] [[要素]]や [CODE(HTMLa)@en[[[style]]]] [[属性]]には[[スタイルシート]]を記述できます。

** 要素のクラス

[86] [[HTML要素]]には [CODE(HTMLa)@en[[[class]]]] [[属性]]があります。
この[[属性]]を使うと[[著者]]が好きな種別を[[要素]]に付与することができます。
この値は[[スクリプト]]や[[スタイルシート]]などからアクセスできます。

** データ集合

[46] [[HTML要素]]には [CODE(HTMLa)@en[[[data-*]]]] [[属性]]があります。これらの[[属性]]には、
[[著者]]が好きな名前と値の組を設定することができます。これによって、
[[スクリプト]]に対して[[要素]]の処理についての付加データを与えるなど、
実質的に[[マーク付け言語]]の局所的な拡張として機能します。

;; [85] 単一の[[要素]]の[[属性]]として表しきれない構造を表現したいときは、
[[マイクロデータ]]を使えます。特定の[[要素]](群)に対応しないデータを埋め込みたいときは、
[CODE(HTMLe)@en[[[script]]]] [[要素]]によるデータブロックを使えます。

** マイクロデータ

[84] [[マイクロデータ]]と呼ばれる [[HTML]] の[[大域属性]]群を使うことで、
[[HTML]] 文書中の構造化されたデータを表現することができます。 [[schema.org]]
のような共通化された語彙だけでなく、[[著者]]がその場限りのデータ構造を記述することもできます。

** スクリプトデータブロック

[47] [CODE(HTMLe)@en[[[script]]]] [[要素]]には、実行される[[スクリプト]]の他、
(適当な [CODE(HTMLa)@en[[[type]]]] [[属性]]を指定することによって) 任意のデータを埋め込むことができます。
これは[[スクリプトデータブロック]]と呼ばれています。

[EG[
[100] [[schema.org]] は、その[[語彙]]を [[JSON-LD]] で記述し[[スクリプトデータブロック]]として
[[HTML]] に埋め込む方法を規定しています。
]EG]

[HISTORY[
[48] [[WinIE]] は [CODE(HTMLe)@en[[[xml]]]] [[要素]]を実装していて、そこに任意の [[XML]]
データを埋め込むことができました。これは1990年代末の [[HTML WG]] が [[HTML]] 仕様に追加する予定でしたが、
実現しませんでした。
]HISTORY]

* ARIA

[49] [[HTML要素]]には [CODE(HTMLa)@en[[[aria-*]]]] [[属性]]群があります。これらの[[属性]]は [[ARIA]]
仕様によって規定される名前と値を設定することができます。 [CODE[aria-]] は実質的に[[名前空間接頭辞]]として機能していることになります。

* 注釈

[102] [[HTMLの注釈]]は、しばしば拡張点として利用されてきました。

- [[SSI]], [[PPI]] は、[[指令]]を埋め込みに[[注釈]]のような構文を採用しています。
- [CODE(HTMLe)@en[[[script]]]] や [CODE(HTMLe)@en[[[style]]]]
は、古い[[Webブラウザー]]から[[内容]]を隠すために[[注釈]]のような構文を認めています。
- [[RDF/XML/HTML注釈]]は、 [[RDF/XML]] を埋め込むために[[注釈]]を採用しています。
- [[PageMap]] は、 [[XML]] を埋め込むために[[注釈]]を採用しています。
- [[CF_HTML]] は、対象範囲の指定に[[注釈]]を使っています。
- [[Marp’s Markdown]]
- [[webbot]]
- [CODE[<!--METADATA-->]]
- [110] [[IE]] は [[<!--saved from url-->]] という特殊な指令を使っていました。
- [109] [[Microsoft]] は [[IE]] と [[Microsoft Office]]
で[[条件付注釈]]と呼ばれる特殊な指令を実装していました。
-- [103] [[Microsoft Office]] は [[IE]] の[[条件付注釈]]構文と組み合わせた複雑な方法で
[[HTML]] で ([[Microsoft]] 版の) [[XML名前空間]]を使っていました。
- [116] [CODE[<noindex>]] にも関連事例がいくつか
- [CODE[<!--MadeByWZ-->]]

- 
[121] 
[CITE[WZ3.0 HTML機能拡張プロダクト]], [TIME[2024-08-19T08:58:07.000Z]], [TIME[1998-01-31T16:33:55.886Z]] <https://web.archive.org/web/19980131163139/http://www.villagecenter.co.jp/ftp/Macro-WZ/htmlex/htmlex.htm>
- [119] [CITE@ja[目次の自動作成 - XHTMLプラグイン マニュアル]], [TIME[2024-08-19T08:49:16.000Z]], [TIME[2005-10-31T18:48:44.548Z]] <https://web.archive.org/web/20051031184835/http://www.villagecenter.co.jp/atvc/wz/xhtml/xhtml/heading.html>
- [118] [CITE@ja[他文書のインクルード - XHTMLプラグイン マニュアル]], [TIME[2024-08-19T08:48:05.000Z]], [TIME[2005-12-08T02:15:47.070Z]] <https://web.archive.org/web/20051208021524/http://www.villagecenter.co.jp/atvc/wz/xhtml/xhtml/include.html>
-[117] [CITE@ja[今日の日付と更新マーク - XHTMLプラグイン マニュアル]], [TIME[2024-08-19T08:45:32.000Z]], [TIME[2005-11-25T02:10:41.701Z]] <https://web.archive.org/web/20051125021013/http://www.villagecenter.co.jp/atvc/wz/xhtml/xhtml/today.html>
- [126] [CODE[<!--webbot-->
--
[120] [[FrontPage]] もこういうの大量に埋め込んでいたっけ。
- [128] [CODE[charset]] 

[114] 関連: [[コメントの中身が意味を持ってしまう]]

* 普及しなかった提案

[101] [[90年代]]末には 
[CODE(HTMLe)@en[[[meta]]]] [[要素]]によって[[メタ情報]]を含めるのが一部で流行しました。
[[DCMI]] は [CODE(HTMLe)@en[[[link]]]] [[要素]]で[[名前空間]]を宣言し
[CODE(HTMLe)@en[[[meta]]]] [[要素]]で利用する方法を規定しました。
しかし結局一部で [[Dublin Core]] の記述に利用されただけで、ほとんど意味がありませんでした。

[92] [[Internet Explorer]] が実装していた [CODE(XMLe)@en[[[xml]]]] [[要素]]
([[XMLデータアイランド]]) は、任意の [[XML]] のデータを [[HTML文書]]に埋め込めるようにするものでした。
[[IE]] 専用の [[Webアプリケーション]]ではたまに使われていましたが、
[[10年代]]になって [[IE]] が [[HTML5構文解析器]]に移行したことにより、
使えなくなりました。

[99] [[W3C勧告]]となった [[ITS 2.0]] は [CODE[[[its-*]]]] [[属性]]群を
[[HTML要素]]に追加していました。これも [CODE[aria-]] と同じく実質的に[[名前空間接頭辞]]として機能しています。
しかし誰もこれを相手にしていないようです。

** XML名前空間

[41] 1990年代末から2000年代初頭にかけて、[[語彙]]の混合には [[XML名前空間]]を用いることが (政治的に)
正しいと考えられていました。 [[XHTML]] 同様、[[HTML文書]]においてもこれを利用可能にするべきとの主張はずっと存在していましたし、
むしろ [[Web]] の [[XML]] への移行が考えられ、しかしその方法が定まっていなかった1990年代末頃には、
[[Microsoft Office]] や [[Opera]] のように、実際に [[XML名前空間]]を [[HTML]]
に導入した実装も存在していました。 [[Internet Explorer]] は [[VML]]
や [[HTML+TIME]]、[[SALT]] のようにかなり積極的に利用していました。
[SEE[ [[カスタムタグ]] ]]

;; [[IE]] は [[DOM2]] よりも前に、独自の[[名前空間]]処理用 [[DOM API]]
を実装していました。

[42] ですが、[[名前空間URL]]の用法が当時はまだ確定しておらず、 [[HTML4]] 仕様書の [[URL]]
など様々な値が使われたことや、 [[HTML WG]] の [[MIME型]]の解釈についての見解によって [[HTML]] から [[XHTML]] 
へのスムーズな移行に失敗してしまったことなどから、 [[HTML]] において 
[[XML名前空間]]を解釈する実装は次第に不可能になってゆきます。更に、時代が下るにつれ
[[XML名前空間]]が難解であることが明確になり、
[[Webブラウザー]]開発者らは[[XML名前空間]]を好ましくないと考えるようになっていきました。

[104] [[金融]]関係のシステムで [[Inline XBRL]] を使っていることがあります。
これは [[XHTML1]] に [[XBRL]] を[[XML名前空間]]を使って埋め込むことで、
[[Webブラウザー]]で表示もでき、 [[XBRL]] データを取り出すこともできる、
と謳ったものでした。 [[XHTML1]] ベースであり、 [[HTML5]] 以降の仕様には整合しないものですが、
未だに使われているようです。

;; [105] 普通の [[XBRL]] データも提供する方が有用そうですし、
[[金融庁]]のデータベースも実際そうしています。むしろ [[HTML]] 版は
[[Webブラウザー]]からの [CODE(HTTP)@en[[[POST]]]] アクセスで生成される仕組みのようなので、
機械処理には向かなそうで、 [[Inline XBRL]] としている意味があるのかは謎です。
業界では [[Inline XBRL]] に対応したツールも使われていたりするのでしょうか??

[43] 現在 [[HTML]] では一切 [[XML名前空間]]は利用できません。ただし、 [[HTML]] と [[XHTML]]
のテキスト・レベルでの互換性の観点から、 [CODE(HTMLe)@en[[[html]]]] [[要素]]に
[CODE(XMLa)@en[[[xmlns]]]] という名前の属性があっても不適合とはならず、単に無視されるなど、
一部 [[XML名前空間]]の構文が取り入れられています。ただし、あくまで無意味な構造が認められているに過ぎず、
実質的な機能は持ちません。

[81] 以上は構文としての [[HTML文書]]に関するものです。 [[XML]] ([[XHTML]])
では、[[内容モデル]]の制約の範囲内で、[[HTML要素]]とそれ以外の[[要素]]を混在させることができます。
また、[[構文解析]]によって得られた [[DOM]] の木においては、 [[HTML文書]]であっても、
(やはり[[内容モデル]]の制約の範囲内で) [[HTML]] 以外の[[要素]]を混在させることができます。

[EG[
[82] 例えば、 [CODE(HTMLe)@en[[[head]]]] [[要素]]は[[メタデータ内容]]を[[子要素]]として使うことができます。
[[メタデータ内容]]の一例として [[RDF/XML]] の [CODE(XMLe)@en[[[rdf:RDF]]]]
[[要素]]は、 [[HTML文書]]に記述することはできませんが、 [[XML]]
であれば、あるいは [[HTML]] 内の [CODE(HTMLe)@en[[[script]]]] によって挿入するのであれば、
[CODE(HTMLe)@en[[[head]]]] [[要素]]の[[子要素]]として利用することができます。
]EG]

[EG[
[83] [[XML Schema]] の [CODE(XMLe)@en[[[documentation]]]] [[要素]]は、
任意の[[内容]]を認めており、そこには[[HTML要素]]も含まれます。従って、
[[XML Schema]] の[[要素]]を使った [[XML文書]]の [CODE(XMLe)@en[[[documentation]]]]
[[要素]]内に [[XML名前空間]]を使って [[HTML名前空間]]の[[要素]]を含めることはできます。
]EG]

** RDF

[93] [[RDFa]] は [CODE(HTMLe)@en[[[meta]]]] [[要素]]などの枠を超えて任意の
[[HTML要素]]に [[RDF]] に基づく[[メタデータ]]を埋め込めるようにすることを提案していました。
宿主だった [[XHTML2]] が破棄された後も根強く信仰を広め、[[W3C勧告]]ともなりましたが、
[[HTML]] との親和性の低さから [[HTML5]] には受け入れられず、
[[RDF]] を扱わない世間一般の[[著者]]からは関心も持たれず、ほとんど実装されていません。
[[OGP]] が構文として採用したため、その範囲でのみ限定的に使われていますが、
皮肉なことに [CODE(HTMLe)@en[[[meta]]]] [[要素]]しか使われていません。

[94] [[RDF/XML/HTML注釈]]は [[Web 2.0]] 時代に広く用いられましたが、
[[HTML]] [[注釈]]を使うことから [[XML]] コミュニティーにはあまりよく思われず、
[[RDF/XML]] を使うことから [[RDF]] コミュニティーの関心も次第に薄れてゆき、
構文が不必要に複雑なことから [[Webアプリケーション]]開発者も積極的に活用範囲を広めてゆくことはせず、
[[Web 2.0]] ブームの収束と共に忘れ去られてゆきました。
他にも幾つか [[RDF in HTML]] の提案がありました。

* 歴史

[1]
The whatwg September 2006 Archive by thread <http://listserver.dreamhost.com/pipermail/whatwg-whatwg.org/2006-September/thread.html#7281>
([[名無しさん]])

[2]
The problems with namespaces in text/html (Was: MathML-in-HTML5) <http://groups.google.co.jp/group/mozilla.dev.tech.mathml/msg/8a048192f90b2fe1>
([[名無しさん]])

[3]
[CITE[dolphinling’s weblog &#187; Blog Archive &#187; Namespace syntax in HTML]] <http://blog.dolphinling.net/2006/10/namespace-syntax-in-html/>
([[名無しさん]])

[4]
[CITE@en[RDFa in HTML]] ([[Steven Pemberton]] 著, [CODE[2007-04-17 00:02:16 +09:00]] 版) <http://lists.w3.org/Archives/Public/public-rdf-in-xhtml-tf/2007Apr/0068.html>
([[名無しさん]] [WEAK[2007-04-20 00:06:59 +00:00]])

[5]
[CITE@en[Sam Ruby: HTML5 and Distributed Extensibility]] ([CODE[2007-08-04 10:38:13 +09:00]] 版) <http://www.intertwingly.net/blog/2007/08/02/HTML5-and-Distributed-Extensibility>
([[名無しさん]] [TIME[2007-08-04 02:40:45 +00:00]])

[96] [CITE@en[Sam Ruby: SVG in HTML Momentum Building]] ([TIME[2007-10-19 22:53:05 +09:00]] 版) <http://www.intertwingly.net/blog/2007/10/18/SVG-in-HTML-Momentum-Building>

- [122] 
[CITE@en['''['''ac''']''' (0) Define where <svg> and <math> fit into the HTML content model.]], [[Hixie]], [TIME[2008-04-05 19:46:12 +09:00]], [TIME[2024-09-01T13:22:50.000Z]] <https://github.com/whatwg/html/commit/08ef3826f902c4b0859487552ac4b496fcd5c416#diff-41cf6794ba4200b839c53531555f0f3998df4cbb01a4d5cb0b94e3ca5e23947d>
- [123] 
[CITE@en['''['''a''']''' (0) Define the syntax for the upcoming SVG+MathML-in-text/html re…]], [[Hixie]], [TIME[2008-04-05 19:35:47 +09:00]], [TIME[2024-09-01T13:22:57.000Z]] <https://github.com/whatwg/html/commit/679ec1e236fc0b28a3bab360206f622bbc078b6b#diff-41cf6794ba4200b839c53531555f0f3998df4cbb01a4d5cb0b94e3ca5e23947d>
- [124] [CITE@en['''['''acgiowt''']''' (2) MathML and SVG support in text/html: the parsing infras…]], [[Hixie]], [TIME[2008-04-05 22:00:21 +09:00]], [TIME[2024-09-01T13:23:05.000Z]] <https://github.com/whatwg/html/commit/1ff9688ab0090e646f69d64e57c814ca44f584b7#diff-41cf6794ba4200b839c53531555f0f3998df4cbb01a4d5cb0b94e3ca5e23947d>


[FIG(data)[ [125] [[HTML要素概説]]

:[F[要素名]]:[CODE[svg]]
:[F[要素名]]:[CODE[math]]
:日付:[TIME[2008-04-05]]
:説明:
[TIME[2008-04-05]]、
[CITE[HTML5]]
は、
[[HTML文書]]中の
[CODE[svg]],
[CODE[math]]
の[[開始タグ]]とその続きを [[SVG]] や [[MathML]] の[[名前空間]]と解釈することとした。
現行仕様である。
なお、
その時点で既存の [[HTML文書]]で何らかの理由で
[CODE[svg]],
[CODE[math]]
の[[開始タグ]]を含むものが一定数存在していたことが設計に影響を与えている。
:出典:
[REFS[

-
[CITE[HTML5 r1400]],
[DATA(.author)[[[Hixie]]]], 
[TIME(.published)[2008-04-05 19:35:47 +09:00]], [TIME[2024-09-01T13:22:57.000Z]] <https://github.com/whatwg/html/commit/679ec1e236fc0b28a3bab360206f622bbc078b6b>
-
[CITE[HTML5 r1401]],
[DATA(.author)[[[Hixie]]]], 
[TIME(.published)[2008-04-05 19:46:12 +09:00]], [TIME[2024-09-01T13:22:50.000Z]] <https://github.com/whatwg/html/commit/08ef3826f902c4b0859487552ac4b496fcd5c416>
-
[CITE[HTML5 r1404]],
[DATA(.author)[[[Hixie]]]], 
[TIME(.published)[2008-04-05 22:00:21 +09:00]], [TIME[2024-09-01T13:23:05.000Z]] <https://github.com/whatwg/html/commit/1ff9688ab0090e646f69d64e57c814ca44f584b7>
-
[DFN[SVGInHTMLIan]]:
[CITE@en[Feedback on SVGWG's SVG-in-text/html proposal]],
[DATA(.author)[[[Ian Hickson]]]],
[TIME(.published)[Thu, 28 Aug 2008 02:07:54 +0000][2008-08-28 11:07:54 +09:00]]
<http://lists.w3.org/Archives/Public/public-html/2008Aug/0852.html>



]REFS]


]FIG]


[95] [CITE@en[Feedback on SVGWG's SVG-in-text/html proposal]] ([[Ian Hickson]] 著, [TIME[2008-08-28 11:07:54 +09:00]] 版) <http://lists.w3.org/Archives/Public/public-html/2008Aug/0852.html>

[6]
[CITE@en[SVG and MathML in text/html]] ([[Henri Sivonen]] 著, [CODE[2008-03-09 19:46:47 +09:00]] 版) <http://lists.w3.org/Archives/Public/public-html/2008Mar/0039.html>
([[名無しさん]])

[7]
[CITE@en[Re: SVG and MathML in text/html]] ([[Ian Hickson]] 著, [CODE[2008-03-12 05:24:16 +09:00]] 版) <http://lists.w3.org/Archives/Public/public-html/2008Mar/0094.html>
([[名無しさん]])

[8]
[CITE@en[Re: SVG and MathML in text/html]] ([[Ian Hickson]] 著, [CODE[2008-03-12 05:24:16 +09:00]] 版) <http://lists.w3.org/Archives/Public/public-html/2008Mar/0094.html>
([[名無しさん]])

[9]
[CITE@en[CustomData - WHATWG Wiki]] ([CODE[2008-03-27 10:30:19 +09:00]] 版) <http://wiki.whatwg.org/wiki/CustomData>
([[名無しさん]])

[10]
[CITE@en[Re: Exploring new vocabularies for HTML from Robert Miner on 2008-03-27 (public-html@w3.org from March 2008)]] ([[Robert Miner (robertm@dessci.com)]] 著, [CODE[2008-03-28 07:05:37 +09:00]] 版) <http://lists.w3.org/Archives/Public/public-html/2008Mar/0255.html>

A feedback from [[Math WG]]
([[名無しさん]])

[11]
[CITE@en[Re: Exploring new vocabularies for HTML from Ian Hickson on 2008-03-25 (public-html@w3.org from March 2008)]] ([[Ian Hickson (ian@hixie.ch)]] 著, [CODE[2008-03-26 06:59:41 +09:00]] 版) <http://lists.w3.org/Archives/Public/public-html/2008Mar/0225.html>
([[名無しさん]])

[12]
[CITE[HTML/SVGInTextHTML - ESW Wiki]] ([CODE[2008-03-30 19:35:17 +09:00]] 版) <http://esw.w3.org/topic/HTML/SVGInTextHTML>
([[名無しさん]])

[13]
[CITE@en[Diagrams in HTML - WHATWG Wiki]] ([CODE[2008-04-01 23:31:21 +09:00]] 版) <http://wiki.whatwg.org/wiki/Diagrams_in_HTML>
([[名無しさん]])

[14]
[CITE[XML in HTML Meeting Report]] ([CODE[2007-01-26 19:12:49 +09:00]] 版) <http://www.w3.org/TR/NOTE-xh>
([[名無しさん]])

[15]
>>14 このときの結論はその後の [[HTML WG]] の成果には全然反映されていませんね。
この結論の方向で標準化が進められていれば、現実の今とは違った状況になっていたかもしれませんのに。

この文書で説明されている背景や提案されている手法が最近のとほとんど変わらないのが、なんとも悲しい。

([[名無しさん]] [WEAK[2008-04-05 11:04:55 +00:00]])

[16]
[CITE@en[Re: several messages about New Vocabularies in text/html]] ([[Ian Hickson]] 著, [CODE[2008-04-02 10:57:08 +09:00]] 版) <http://lists.w3.org/Archives/Public/public-html/2008Apr/0044.html>
([[名無しさん]])

[17]
[CITE@en[Supporting MathML and SVG in text/html, and related topics]] ([[Ian Hickson]] 著, [CODE[2008-04-10 18:51:20 +09:00]] 版) <http://lists.w3.org/Archives/Public/public-html/2008Apr/0205.html>
([[名無しさん]])

[18]
>>17 折角だから全部読もうと思ったものの挫折[AA[orz]]
([[名無しさん]] [WEAK[2008-04-13 08:08:23 +00:00]])

[19]
[CITE@en[SVG in text/html]] ([[Andrew Emmons]] 著, [CODE[2008-04-15 20:06:36 +09:00]] 版) <http://lists.w3.org/Archives/Public/public-html/2008Apr/0392.html>
([[名無しさん]])

[20]
[CITE@en[Re: SVG in text/html]] ([[Ian Hickson]] 著, [CODE[2008-04-16 02:42:15 +09:00]] 版) <http://lists.w3.org/Archives/Public/public-html/2008Apr/0407.html>
([[名無しさん]])

[21]
[CITE[SVG and text/html - Anne’s Weblog]] ([CODE[2008-01-25 14:19:49 +09:00]] 版) <http://annevankesteren.nl/2007/10/svg-html>
([[名無しさん]])

[22]
[CITE[SVG and HTML]] ([CODE[2008-07-14 04:11:27 -04:00]] 版) <http://lists.w3.org/Archives/Public/public-html/2008Jul/att-0179/svg-html-proposal.html>


[23]
[CITE@en[Re: some technical thoughts about incremental improvements to forms]] ([[Lachlan Hunt]] 著, [TIME[2006-09-06 00:04:30 +09:00]] 版) <http://lists.w3.org/Archives/Public/www-forms/2006Sep/0057.html>

[26] [CITE@en[SVG Filter Effects in HTML without External References]] ([[Henri Sivonen]] 著, [TIME[2009-03-11 21:45:47 +09:00]] 版) <http://hsivonen.iki.fi/svg-filters-html5/>

[24] [CITE[SVG and MathML]] ([TIME[2008-12-03 19:29:12 +09:00]] 版) <http://hsivonen.iki.fi/test/svg-and-mathml-in-html.html>

[25] [CITE[Kiss The Moon]] ([[日月九曜]] 著, [TIME[2009-01-06 00:18:35 +09:00]] 版) <http://kissmoon.net/>
([CODE(MIME)@en[[[text/html]]]])

[PRE(HTML example code)[
<?xml version="1.0" encoding="Shift_JIS" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ap="http://www.remus.dti.ne.jp/~a-satomi/ap" xml:lang="ja">
]PRE]

[PRE(HTML example code)[
  <dd>動作確認環境は<a href="http://getfirefox.jp/" title="Firefox" ap:banner="links/firefox.png">Firefox</a> 3.X、<a href="http://wp.netscape.com/ja/browser/" title="Netscape" ap:banner="links/netscape.gif">Netscape Communicator</a> 4.78、<a href="http://www.jp.opera.com/" title="Opera" ap:banner="links/opera.png">Opera</a> 9.X、<a href="http://www.microsoft.com/windows/ie_intl/ja/default.mspx" title="マイクロソフト" ap:banner="links/ie.gif">Internet Explorer</a> 6.X / 7.Xの各Windows版です。</dd>
]PRE]

[27] [CITE@en[SVG in text/html, getting closer]] ([[Cameron McCormack]] 著, [TIME[2009-03-03 09:24:34 +09:00]] 版) <http://lists.w3.org/Archives/Public/public-svg-wg/2009JanMar/0191.html>

[28] [CITE@en[(X)HTML5 Tracking]]
([TIME[2009-09-23 09:01:42 +09:00]] 版)
<http://html5.org/tools/web-apps-tracker?from=3976&to=3977>

[29] [CITE@en[Re: '''['''xml-dev''']''' Pragmatic namespaces]]
([TIME[2009-10-11 01:14:14 +09:00]] 版)
<http://lists.xml.org/archives/xml-dev/200908/msg00203.html>

[30] [CITE[IRC logs: freenode / #whatwg / 20090907]]
([TIME[2009-10-17 22:29:17 +09:00]] 版)
<http://krijnhoetmer.nl/irc-logs/whatwg/20090907#l-337>

[31] [CITE[IRC logs: freenode / #whatwg / 20090915]]
([TIME[2009-10-31 11:41:27 +09:00]] 版)
<http://krijnhoetmer.nl/irc-logs/whatwg/20090915>

[32] [CITE[Surfin' Safari]]
([TIME[2007-12-11 02:31:26 +09:00]] 版)
<http://weblogs.mozillazine.org/hyatt/archives/2004_07.html#005951>

[33] [CITE@en[Null change proposal for ISSUE-41]]
( ([[Ian Hickson]] 著, [TIME[2010-03-24 15:57:04 +09:00]] 版))
<http://lists.w3.org/Archives/Public/www-archive/2010Mar/0030.html>

[34] [CITE@en[RE: ISSUE-41: extensibility change proposal advocates]]
( ([[Tony Ross]] 著, [TIME[2010-08-12 06:01:42 +09:00]] 版))
<http://lists.w3.org/Archives/Public/public-html/2010Aug/0116.html>

[35] [CITE@en[Working Group Decision on ISSUE-41 Decentralized extensibility]]
( ([[Sam Ruby]] 著, [TIME[2011-02-04 01:00:01 +09:00]] 版))
<http://lists.w3.org/Archives/Public/public-html/2011Feb/0085.html>

[36] [CITE@en[Working Group Decision on ISSUE-41 Decentralized extensibility]]
( ([[Sam Ruby]] 著, [TIME[2011-02-04 01:00:01 +09:00]] 版))
<http://lists.w3.org/Archives/Public/public-html/2011Feb/0085.html>

[37] [CITE@en[Re: Working Group Decision on ISSUE-41 Decentralized extensibility]]
( ([[Jirka Kosek]] 著, [TIME[2011-02-09 09:02:20 +09:00]] 版))
<http://lists.w3.org/Archives/Public/public-html/2011Feb/0188.html>

[38] [CITE[IRC logs: freenode / #whatwg / 20110802]]
( ([TIME[2011-08-13 13:39:31 +09:00]] 版))
<http://krijnhoetmer.nl/irc-logs/whatwg/20110802>

[39] [CITE[IRC logs: freenode / #whatwg / 20120508]]
( ([TIME[2012-05-12 19:16:00 +09:00]] 版))
<http://krijnhoetmer.nl/irc-logs/whatwg/20120508>

[78] [CITE[SVG and HTML]]
( ([TIME[2008-07-15 17:27:06 +09:00]] 版))
<http://dev.w3.org/SVG/proposals/svg-html/svg-html-proposal.html>

[79] [CITE@en[Web Applications 1.0 r7918       Turn off a quirk in foreign lands when doing innerHTML parsing]]
( ([TIME[2013-06-07 04:56:00 +09:00]] 版))
<http://html5.org/tools/web-apps-tracker?from=7917&to=7918>

[87] [CODE(DOMa)@en[[[innerHTML]]]] の設定の場合、 [CODE(XMLe)@en[[[annotation-xml]]]]
の[[内容]]を [[Chrome]] は常に[[外来要素]]として[[構文解析]]し、
[[Firefox]] は常に[[通常要素]]として[[構文解析]]するようです。
[TIME[2014-08-04T01:44:50.300Z]]

;;
[REFS[
- <http://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cmath%3E%3Cannotation-xml%3E%3C%2Fannotation-xml%3E%3C%2Fmath%3E%0A%3Cscript%3E%0A%20%20document.getElementsByTagName%20(%27annotation-xml%27)%5B0%5D.innerHTML%20%3D%20%27%3Cx%3Ea%3Cy%2F%3Ea%3C%2Fx%3E%27%3B%0A%3C%2Fscript%3E>
- <http://software.hixie.ch/utilities/js/live-dom-viewer/?%3Cmath%3E%3Cannotation-xml%20encoding%3D%22text%2Fhtml%22%3E%3C%2Fannotation-xml%3E%3C%2Fmath%3E%0A%3Cscript%3E%0A%20%20document.getElementsByTagName%20(%27annotation-xml%27)%5B0%5D.innerHTML%20%3D%20%27%3Cx%3Ea%3Cy%2F%3Ea%3C%2Fx%3E%27%3B%0A%3C%2Fscript%3E>
]REFS]

;; 通常の[[構文解析]]なら、どちらも仕様通りの動作です。

;; [90] 仕様上の[[MathMLテキスト統合点]]の定義は[[要素]]を作成した[[字句]]を参照していて、
[[構文解析器]]外部から与えられる[[文脈要素]]である場合を考慮していないようです。
[CODE(DOMa)@en[[[innerHTML]]]] 呼び出し時点での[[属性]]の状態によって判断するべきでしょう。

[89] >>90 は >>88 により修正されました。 >>87 は不具合のようです。

[REFS[
- [88] [CITE@en[Web Applications 1.0 r8805       Clarify what the start tag of the context node is when parsing]] ([TIME[2014-09-23 08:53:00 +09:00]] 版) <https://html5.org/r/8805>
]REFS]


[91] [CITE@en[Using SVG elements directly in HTML]]
( ([[Brian Birtles]] 著, [TIME[2014-11-01 02:34:25 +09:00]] 版))
<http://lists.w3.org/Archives/Public/www-svg/2014Oct/0032.html>

[97] [CITE@en[Remove xml:base dependency · whatwg/html@56f4346]] ([TIME[2015-09-03 23:50:35 +09:00]] 版) <https://github.com/whatwg/html/commit/56f4346ec71b2dc138038ce6512b626d6c563e00>

[106] [CITE[SVG and HTML]]
([TIME[2008-07-15 17:27:06 +09:00]] 版)
<https://dev.w3.org/SVG/proposals/svg-html/svg-html-proposal.html>

[107] [CITE@en[Add MathML and SVG to dependencies and cross-reference their elements · whatwg/html@c35ad72]]
([TIME[2016-03-24 15:30:16 +09:00]] 版)
<https://github.com/whatwg/html/commit/c35ad7267634f640e8e22b615893b78d6252998e>

[FIG(quote)[
[FIGCAPTION[
[108] ( ([TIME[2016-05-09 20:21:51 +09:00]]))
<https://www.imperialviolet.org/2015/12/24/rlwe.html>
]FIGCAPTION]

> <svg
>    style="margin-left: 3em;"
>    xmlns:dc="http://purl.org/dc/elements/1.1/"
>    xmlns:cc="http://creativecommons.org/ns#"
>    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
>    xmlns:svg="http://www.w3.org/2000/svg"
>    xmlns="http://www.w3.org/2000/svg"
>    xmlns:xlink="http://www.w3.org/1999/xlink"
>    xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
>    xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
>    width="533.48083"
>    height="450.41718"
>    viewBox="0 0 533.48083 450.41718"
>    id="svg2"
>    version="1.1"
>    inkscape:version="0.91 r13725"
>    sodipodi:docname="noise.svg">
>   <metadata
>      id="metadata248">
>     <rdf:RDF>
>       <cc:Work
>          rdf:about="">
>         <dc:format>image/svg+xml</dc:format>
>         <dc:type
>            rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
>         <dc:title>Gnuplot</dc:title>
>       </cc:Work>
>     </rdf:RDF>
>   </metadata>
>   <defs
> ;; [CODE(MIME)@en[text/html]]

]FIG]


- [111] [CITE[Systems Biology Markup Language (SBML) Level 3Core - sbml-level-3-version-2-release-2-core.pdf]], [TIME[2019-04-26T19:11:44.000Z]], [TIME[2021-06-09T06:30:54.597Z]] <http://sbml.org/Special/specifications/sbml-level-3/version-2/core/release-2/sbml-level-3-version-2-release-2-core.pdf#page=16>
- [113] [CITE[Systems Biology Markup Language (SBML) Level 3Core - sbml-level-3-version-2-release-2-core.pdf]], [TIME[2019-04-26T19:11:44.000Z]], [TIME[2021-06-09T06:39:36.786Z]] <http://sbml.org/Special/specifications/sbml-level-3/version-2/core/release-2/sbml-level-3-version-2-release-2-core.pdf#page=67>

[112] 
[[SBML]] の 
[CODE[notes]],
[CODE[message]]
[[要素]]には任意の
[[HTML要素]]を含められる。
[SRC[>>111, >>113]]


[127] 
[CITE['''['''whatwg''']''' Including HTML more directly into SVG]], [TIME[2024-08-20T17:41:31.000Z]], [TIME[2024-09-14T08:40:59.493Z]] <https://lists.whatwg.org/pipermail/whatwg-whatwg.org/2012-December/038475.html>
