XML宣言
XML宣言について、結構曖昧なところがあったのであらためてまとめてみました。
XML Declaration.
■XML宣言とはなにか?
XML文書の最上部に記述され、XML文書であることを明示する記述だ。
XML宣言は処理命令ではない。
【XML記述条件】
エラー回避のためには、ページ最上部に記述し、かつ空白文字や空行があってはならない。
DTDをXTML1.1で記述して、かつXML宣言をした場合は、bodyタグの中に文法エラーがあった場合、ページが正常に表示されない場合もあるので注意が必要だ。
Windows IE6では正しく認識されず互換モード解釈バグがある。
例えばコンテンツを中央に表示させたい場合は、bodyタグにtext-align:center;を記述してから直下のタグ要素をmargin:auto;指定しないと正常に中央表示されません。
文字コード「UTF-8」もしくは「UTF-16」は記述がない場合、デフォルト指定されるためXML宣言省略が可能でもある。
version属性について
version=の内容は常に1.0でXML宣言中で省略はできない。
値はXHTMLバージョンを指定していない。XHTML1.0もしくはXHTML1.1であっても「1.0」と指記述。
encoding属性について
encoding=文字コード指定をするが、HTTPヘッダーcharsetパラメータ指定がある。
エンコードに用いる文字コードセットを指定します。
特に指定しない場合は、XHTMLのデフォルト文字コードである「UTF-8」または「UTF-16」が適用されます。
standalone属性について
standalone=は、スタンドアロン文書かどうかをyesまたはnoのブーリアン型で指定可能。XMLはXMLプロセッサ(パーサ)という解析装置で、内部・外部のDTD参照が可能でるそうだ。
standalone="yes"とすれば、外部DTDを参照する必要がなくなるので余分な処理が必要なくなるようです。
文字コードに関しては、一般的に「UTF-8」「Shft_JIS」「EUC-JP」「iso-2022-jp」が使用されてます。