(Translated by https://www.hiragana.jp/)
Extensible HyperText Markup Language - Wikipedia コンテンツにスキップ

Extensible HyperText Markup Language

出典しゅってん: フリー百科ひゃっか事典じてん『ウィキペディア(Wikipedia)』
XHTMLから転送てんそう
XHTML
拡張子かくちょうし.xhtml、.xht、.html、.htm
MIMEタイプapplication/xhtml+xml
開発かいはつしゃWorld Wide Web Consortium
種別しゅべつマークアップ言語げんご
派生はせいもとXMLHTML
国際こくさい標準ひょうじゅん1.0 (Recommendation),

1.1 (Recommendation),
Basic 1.1 (Recommendation),

2.0 (Working Draft)

Extensible HyperText Markup Language(エクステンシブル ハイパーテキスト マークアップ ランゲージ)、略記りゃっき略称りゃくしょうXHTML (エックスエイチティーエムエル)は、SGML定義ていぎされていたHTMLXML文法ぶんぽう定義ていぎしなおしたマークアップ言語げんごである。その仕様しようはHTMLとおなじくW3Cによって勧告かんこくされていた。しかし2007ねんにW3C HTML WGを設立せつりつするとWHATWGとの共同きょうどう作業さぎょうおこない、2009ねん、W3Cは開発かいはつ正式せいしき中止ちゅうしした。HTML5はXMLの書式しょしきしたがわずともMathMLSVGなどをむことが可能かのうである。

上述じょうじゅつとおりXHTMLは開発かいはつ中止ちゅうしされており、この記事きじにはふる内容ないよう多分たぶんふくんでいる。しかしながら、HTMLを解釈かいしゃくするユーザーエージェント(Webブラウザなど)は、つづきサポートしている。

なお、「eXtensible HyperText Markup Language のりゃくである」とされることがあるが、これは間違まちがいであり、XEx発音はつおんあらわしている[1]

HTMLとの相違そういてん

[編集へんしゅう]

XHTMLはXMLアプリケーションである。よって、XMLの文法ぶんぽうしたがうために、HTMLとことなる部分ぶぶん存在そんざいする。以下いかは、おも文法ぶんぽうじょう相違そういてんとソースのサンプルである。

XML宣言せんげん
XML文書ぶんしょであるため、文書ぶんしょあたまにXML宣言せんげんくことが奨励しょうれいされている。文字もじコードについては、UTF-8ないしUTF-16場合ばあいHTTPなどのプロトコルで文字もじコードが指定していされている場合ばあい省略しょうりゃく可能かのうであるが、つね付与ふよすることが推奨すいしょうされる。
<?xml version="1.0" encoding="UTF-8"?>
要素ようそめい属性ぞくせいめい小文字こもじ
XMLでは大文字おおもじ小文字こもじ厳密げんみつ区別くべつされる。XHTML勧告かんこく場合ばあい要素ようそめい属性ぞくせいめいすべ小文字こもじでのみ定義ていぎされていることから、要素ようそめい属性ぞくせいめいともにすべて小文字こもじ表記ひょうきしなければならない(なお、属性ぞくせいはこのかぎりではない)。
ただし: <p id="iroha">いろにおいへど りぬるを</p>
ただし: <p id="IROHA">いろにおいへど りぬるを</p>
あやま: <p ID="iroha">いろにおいへど りぬるを</p>
あやま: <P id="iroha">いろにおいへど りぬるを</P>
あやま: <P ID="iroha">いろにおいへど りぬるを</P>
要素ようそ終了しゅうりょうタグを
要素ようそかなら開始かいしタグと終了しゅうりょうタグをそなえていなければならない(終了しゅうりょうタグの省略しょうりゃくゆるされない)。
ただし: <p>いろにおいへど りぬるを</p><p>だれつねならん</p>
あやま: <p>いろにおいへど りぬるを<p>だれつねならん
そら要素ようそ終了しゅうりょうタグも
そら要素ようそについても同様どうよう終了しゅうりょうタグを付与ふよするか、開始かいしタグの末尾まつびを「/>」としなければならない。
  • 終了しゅうりょうタグを付与ふよする <br></br> という表記ひょうき場合ばあいは、タグのあいだ空白くうはくるい文字もじすらふくめてはいけない。また、後方こうほう互換ごかんせいのために <br></br> ではなく、<br /> と表記ひょうきすることが推奨すいしょうされている[2]
  • XMLを解釈かいしゃくできないふるUAで <br/> という表記ひょうきたいし、"br/" を要素ようそめいとみなし無視むししてしまう可能かのうせいがあることを考慮こうりょし、XHTMLでは <br /> のようにスラッシュのまえ半角はんかくスペースを先行せんこうさせる表記ひょうき一般いっぱんてきである。
ただし: <em>いろにおいへど りぬるを</em><br />(推奨すいしょうただし: <em>いろにおいへど りぬるを</em><br/>
ただし: <em>いろにおいへど りぬるを</em><br></br>
あやま: <em>いろにおいへど りぬるを</em><br>
あやま: <em>いろにおいへど りぬるを</em><br> </br>
属性ぞくせいはダブルクォーテーションでかこ
属性ぞくせいはすべて " " (ダブルクォーテーション)ないし ' '(シングルクォーテーション)でかこまなければならない。
ただし: <input type="text" size="8" />
ただし: <input type='text' size='8' />
ただし: <input type="text" size='8' />
あやま: <input type=text size=8 />
属性ぞくせいめい省略しょうりゃくせず
属性ぞくせいめい省略しょうりゃくしてはならない。なお、これらを属性ぞくせい省略しょうりゃくというれい存在そんざいするが、SGMLやXMLの観点かんてんからはただしいとはいえない。
ただし: <input type="checkbox" checked="checked" />
あやま: <input type="checkbox" checked />
推奨すいしょうされるメディアタイプ
推奨すいしょうされるメディアタイプが「text/html」から「application/xhtml+xml」に変更へんこうされた[3]。また、HTMLで従来じゅうらい使用しようされていたtext/htmlは、XHTML1.1以降いこうでは推奨すいしょうとなっている。
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=Shift_JIS" />

メディアタイプがapplication/xhtml+xmlの場合ばあい、meta要素ようそのhttp-equiv属性ぞくせい使用しよう推奨すいしょうとなる[4]わりにHTTPのヘッダでメディアタイプを指示しじすることが必要ひつようとなる。

HTML要素ようそ#HTML構文こうぶんとXML構文こうぶんとのちが参照さんしょうされたし。

歴史れきし

[編集へんしゅう]

HTML 4.01をXMLにてさい定義ていぎしたもので、HTML 4.01と同様どうようにStrict、Transitional、Framesetという3種類しゅるいDTD存在そんざいする。

2000ねん1がつ26にち勧告かんこくとなり、2002ねん8がつ1にち改訂かいていばんであるSecond Editionが勧告かんこくされた。

XHTMLのサブセットで、PDAや携帯けいたい電話でんわなどの小規模しょうきぼ端末たんまつふくむ、より広域こういき環境かんきょうのための仕様しようである。2000ねん12月19にちにXHTML Basic 1.0が勧告かんこくされた。

そのOMA策定さくていするXHTML Mobile Profileとの整合せいごう解消かいしょうする目的もくてき策定さくていされた XHTML Basic 1.1が2008ねん7がつ29にち勧告かんこくされた。

Basic1.1では、Basic1.0からつぎのような変更へんこうおこなわれている。

  • target属性ぞくせいやscript/style要素ようそ、style属性ぞくせい追加ついか
  • XFormsよりinputmode属性ぞくせい追加ついか

XHTML Modularization (Modularization of XHTML, M12n)

[編集へんしゅう]

XHTMLをその要素ようそ目的もくてき役割やくわりごとに分割ぶんかつし、フレームワークしたもの。XHTML 1.1やXHTML 2.0は、M12nをベースに構築こうちくされている。バージョン1.0が2001ねん4がつ10日とおかに、バージョン1.1が2008ねん10がつにそれぞれ勧告かんこくされた。2009ねん7がつ現在げんざい、バージョン2.0が草案そうあん段階だんかいにある。 1.0から1.1ではXML Schemaへの対応たいおうなどが変更へんこうてんとなった。

機能きのうがモジュールされたXHTML。XHTML 1.0からのおもちがいは、つぎとおりである。

  • 機能きのうがモジュールされ、カスタマイズせい向上こうじょうした。
  • HTML 4.0以来いらい複数ふくすうあったスキーマが、従来じゅうらいのStrictスキーマの思想しそうもととしたスキーマ1つのみとなった。
  • ルビモジュールが導入どうにゅうされた。

2001ねん5月31にち仕様しよう勧告かんこくとなった。 2010ねん11月23にちにXHTML 1.1 Second Editionが勧告かんこくされた。エラッタの修正しゅうせいとXML Schemaへの対応たいおうおも変更へんこうてんとなる。

策定さくていちゅうであるXHTML Role ModuleやAccess Module、WAI-ARIAの語彙ごいんだあたらしいプロファイルとして策定さくてい予定よてい

XHTML Familyの次期じきバージョンとして策定さくていされていたが、W3Cは2009ねん07がつ03にち策定さくていりを決定けっていし、今後こんごHTML5にリソースをそそぐものとした。理由りゆうとして、XHTML 2.0の市場いちばはHTML5にくらべて非常ひじょうちいさいことがあげられている。

HTML5のXML構文こうぶん

[編集へんしゅう]

HTML5をXML構文こうぶん記述きじゅつしたものは、しばしばXHTML5とばれるが、WHATWG の標準ひょうじゅん仕様しようなかではこのかたりもちいないことが明言めいげんされている[5]

HTML5をXML構文こうぶん記述きじゅつするための仕様しようも、HTML5仕様しようなか定義ていぎされている。そのため、HTML5のXML構文こうぶんはHTML5の一部いちぶである。しかし、HTML5の仕様しようではXML構文こうぶんとHTML構文こうぶんあいだにはちがいがおおく、たんに「HTML5」「HTML5ドキュメント」と場合ばあいには、HTML構文こうぶんによるもののみをすことがおおい。そのため、実用じつようじょうはHTML5のXML構文こうぶんはHTML5とべつのものとしてあつかわれることがある。

以下いかにHTML構文こうぶんとXML構文こうぶんちがいをいくつかげる。

  • HTML構文こうぶん場合ばあい要素ようそめい固定こていだが、XML構文こうぶん場合ばあい要素ようそ名前なまえ空間くうかんが "http://www.w3.org/1999/xhtml" にぞくしていれば接頭せっとうきがゆるされる(XHTML1.x以前いぜんには、文書ぶんしょがた宣言せんげんにモジュールを追加ついかすることで接頭せっとうけることを可能かのうとしていたが、基本きほんてきにはゆるされなかった)
  • HTML構文こうぶんでは限定げんていてきなSVG, MathMLの拡張かくちょうしかおこなえないが、XML構文こうぶんでは名前なまえ空間くうかんもちいて制限せいげんなく拡張かくちょうができる(以下いかれいではxml:id属性ぞくせい利用りようしている)
  • 従来じゅうらいのHTML/XHTMLでゆるされていたDTDをもちいた文字もじ参照さんしょう不可能ふかのうとなった(HTML5はもはやSGMLにもとづいていない)。

上記じょうきのようなちがいによってHTML構文こうぶんおおきくことなるXML構文こうぶん文書ぶんしょとして、以下いかのようなれいかんがえられる。

<?xml version="1.0" encoding="UTF-8"?>
<!-- これは妥当だとうなHTML5のXML構文こうぶん。ただしHTML構文こうぶんとの互換ごかんせいはない -->

<?xml-stylesheet type="text/css" href="test.css"?><!-- ひだりのようなXML処理しょり命令めいれいける -->

<!-- この場合ばあい、ルート要素ようそがxhtml:htmlのため、通常つうじょうのHTML5のように "<!DOCTYPE html>" という文書ぶんしょがた宣言せんげんおこなえない -->

<xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xml:lang="ja">
  <xhtml:head>
    <xhtml:title xml:id="title">XML名前なまえ空間くうかんもちいた拡張かくちょうれい(xml:id)</xhtml:title>
    <xhtml:script><![CDATA[ ... ]]></xhtml:script>
  </xhtml:head>
  <xhtml:body>
    <xhtml:p> ... </xhtml:p>
  </xhtml:body>
</xhtml:html>

関連かんれん項目こうもく

[編集へんしゅう]

脚注きゃくちゅう

[編集へんしゅう]

外部がいぶリンク

[編集へんしゅう]