XML 宣言
XML 宣言は通常、XML ドキュメントの最初の行として現れます。 XML 宣言は必須ではありませんが、使用する場合はドキュメントの最初の行になければならず、空白や他のものがその前にあってはなりません。
ドキュメント マップ中で XML 宣言は、次の項目から構成されます。
バージョン番号、
<?xml version="1.0"?>
。これは必須です。 将来の XML バージョンでは番号が変わることがありますが、現在のバージョンは 1.0 です。
encoding 宣言、
<?xml version="1.0" encoding="UTF-8"?>
この属性は省略できます。 使用する場合、encoding 宣言は XML 宣言中でバージョン情報の直後になければならず、既存の文字エンコードを示す値を含んでいる必要があります。
XML に standalone 宣言を含むこともできます。たとえば、<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
です。 エンコーディング宣言と同様に、standalone 宣言は省略できます。 使用する場合、standalone 宣言は XML 宣言の最後である必要があります。
Encoding 宣言
encoding 宣言は、ドキュメント内の文字を表すために使用するエンコーディングを指定します。 ドキュメントで UTF-8 または UTF-16 Unicode エンコーディングが使用された場合、XML パーサーは自動的に識別することができますが、他のエンコーディングをサポートするドキュメントはこの宣言を使用する必要があります。
たとえば、次は ISO-8859-1 (Latin 1) を使用するドキュメントのエンコーディング宣言です。
<?xml version="1.0" encoding="ISO-8859-1"?>
注 : |
---|
指定する値の大文字と小文字は区別されません。"ISO-8859-1" は、"iso-8859-1" と同じです。
|
次は、日本語のエンコーディングである Shift-JIS を使用するドキュメントの encoding 宣言です。
<?xml version="1.0" encoding="Shift-JIS"?>
Standalone 宣言
standalone 宣言は、ドキュメントがその内容に関して、外部ドキュメント型定義 (DTD) などの外部情報に依存しているかどうかを示します。
standalone 宣言の値が "yes"
の場合、たとえば <?xml version="1.0" standalone="yes"?>
となっていて、ドキュメントが外部 DTD や外部エンティティを参照すると、パーサーはエラーを報告します。
standalone 宣言を除外した場合は、standalone 宣言を "no"
として含めた場合と同じ結果をもたらします。 外部リソースがある場合、XML パーサーはエラーを報告することなく、外部リソースを受け入れます。