個別記事
- 前後の記事
XML宣言のstandalone属性
- この記事が属するカテゴリー
- web&blog
SGMLを元としたHTMLを、XMLベースで再定義したしたモノがXHTMLです。XML文書なので、XML宣言の記述はデフォルト文字コードのUTF-8とUTF-16以外は必須とされています。XML宣言は<?xmlで始まり?>で終わる記述で、属性としては以下の3点があります。
- version 属性
- encoding 属性
- standalone 属性
version 属性についてはその文書のxmlバージョン、encoding 属性についてはその文書の文字コードを記述をすれば良いのは分かるのですが、standalone 属性については、自分的に曖昧だったので調べたメモとして記しておきます。
standalone 属性とは
XMLはXMLプロセッサ(パーサ)と言われる解析装置によって、内部・外部DTDを参照することで、その文書の妥当性の検証を行うことができます。standalone 属性にはyesかnoの指定があり、その文書にとって外部DTDの参照が必要か不要かを明示するためのものです。つまり、standalone="yes"とすれば、外部DTDを参照する必要がないので、余計な処理をしなくて良い事になります。
XHTMLの場合standalone 属性は必要か
XHTML1.0には3種類、XHTML1.1には1種類のW3Cが定義したDTDが存在し、通常はこの標準DTDを文書型宣言DOCTYPEのPUBLICで指定します。
- XHTML1.0
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
- XHTML1.1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
これは外部DTDなので、standalone 属性はnoとなります。そしてstandalone 属性を省略した場合、文書型宣言が存在していればstandalone="no"とみなされます。つまり、一般的にXHTMLで作成し文書型宣言を記述した場合は、standalone 属性を省略しても構わないという事になります。なので、XHTML文書でstandalone 属性が記述されているのを見かける事は少ない筈です。当サイトのxml宣言にstandalone 属性を付加して記述するとなると以下のようになります。
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2005-01-06T21:19:50+09:00
| コメント (0)
| トラックバック (1)
|
関連性が高いエントリー 5 件
- 「実践 Web Standards Design」という本を書きました
- Validator は完璧じゃない
- ID の名前によって IE は印刷時にスクリプトエラー
- IE 7 は期待して良さそう
- プログレスバーの進行度を CSS で表現する
トラックバック
- このエントリーのトラックバックURL:
- http://WWW.lucky-bag.com/cgi/mt/mt-tb.cgi/115
このリストは、次のエントリーを参照しています: XML宣言のstandalone属性:
- 鳥さんの独り言 さんからのトラックバック
- WinIEでXHTML文書を保存する
- ふと思い出したので、メモ。 [続きを読む]
- 2005年01月07日 22:57
コメント
"XML宣言のstandalone属性"へのコメントはまだありません。
コメントしてください
コメント内ではタグは一切使えません。コメント内にてタグを表記したい場合は、お手数ですが、文字実体参照を利用して < を < 、> を > とそれぞれ置き換えてください。