XHTML (The Extensible HyperText Markup Language)

エックス・エッチ・ティー・エム・エル

 HTML 4.0を、XML 1.0の構文で再定義したもの。2000年1月にW3C(World Wide Web Consortium)が、XHTMLの最初のバージョンであるXHTML 1.0を勧告した。XHTMLは、初期においては、HTML 5.0のように呼ばれたこともあり、HTMLの正当な後継言語である。つまり、HTML 4.0の次のバージョンがXHTML 1.0であると理解してよい。

 XHTML 1.0は、SGMLで定義されていたHTML 4.0の構文をXMLに置き換えただけで、機能の追加は行われていない。しかしながら、XMLは名前空間によって1つの文書に複数の言語の要素や属性が混在しても識別可能であるため、XHTML文書に、他のXMLによる言語で記述された文書やデータを埋め込むことも不可能ではない。そのような、意味で、HTMLとXHTMLの使い勝手には相違がある。

 SGMLとXMLでは一部の構文が異なるめ、HTMLとXHTMLの間にも構文の差がある。そこで、従来のHTML用のWebブラウザでもXHTMLを閲覧可能とするために、XHTMLではいくつかの互換ルールを定めている。たとえば、HTMLの、

<br>

 は、空要素タグであるため、XMLでは、

<br/>

 と表記する必要がある。しかし、この構文は、XHTMLに対応していない古いWebブラウザは解釈できずにエラーとなる。そこで、/記号の手前に空白文字を入れる。

<br />

 これによって、誤った構文に寛容な古いWebブラウザは、これを解釈して処理することが可能となる。

 特に注意すべき点は、大文字と小文字の選択である。HTMLにおいては、要素名などを大文字で書いても小文字で書いても受け入れられたが、XMLは両者を区別して扱うため、必ず小文字で書かねばならない。

 以下に、HTML 4.0とXHTML 1.0で記述した同一内容のテキストを示す。直接閲覧して比較する場合はここをクリックする(HTML 4.0 XHTML 1.0)。

HTML 4.0の場合:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Strict//EN">
<HTML>
<HEAD>
<TITLE>HTML Hello!</TITLE>
</HEAD>
<BODY>
<P>Hello!
</BODY>
</HTML>

XHTML 1.0の場合:
<?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>HTML Hello!</title>
</head>
<body>
<p>Hello!</p>
</body>
</html>

 

XML & SOA フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

アイティメディアの提供サービス

キャリアアップ