ITエンジニアの成長ブログ

ITエンジニアとして行う勉強の発信&日々の生活で体験した楽しいことをゆるく発信

xml宣言について簡単に調べたことをメモ

xml宣言について簡単に調べたことをメモしておきます。

xml宣言とは?

xml宣言とは、xmlファイルの先頭行に定義される記述のことです。この記述によってドキュメントがxml文書であることを明確に示すことができます。

<?xml version="1.0" encoding="UTF-8" ?>

このxml宣言は、必ずドキュメントの先頭に記述しなければなりません。

xml宣言の各属性について

xml宣言でよく見る属性を簡単に紹介しておきます。

version

xmlのバージョンを指定する属性で、必須属性です。基本的には、"1.0"もしくは、"1.1"を指定するようです。

また、現状(2023/12)はxmlバージョンは上記2つしかなさそうです。しかし、"1.1"も策定されてからかなり長い年月が経っているのであまり活発には議論されていないのでしょうか。ちょっと気になるところです。

encoding

xmlファイルのエンコーディングを指定します。ここで指定した値とファイルのエンコーディングが異なる場合は、エラーになります。

試しに、文字コードSJISで保存した以下のxmlファイルを、Google Chromeで開いてみたらエラーになりました。

<?xml version="1.0" encoding="UTF-8" ?>
<root>
  <column1>
    <name>名前</name>
    <value>あいうえお</value>
  </column1>
</root>
Google Chrome文字コードによるエラー発生

また、この属性を省略した場合はUTF-8 または UTF-16として判断されるようです。しかし、無用な混乱を避けるため定義しておいた方が良さそうです。

xml宣言は必須なのか?

結論から言うと、xml宣言は必須ではないようです。しかし、定義することが推奨されているという位置づけのようです。

ですので、通常使う場合は指定しておくのが良いと思われます。

おわりに

いかがでしょうか。私自身、xmlファイルは設定ファイル等を記載する際によく使っているのですが、多くは設定をコピーしてから使うのでxml宣言もあまり気にしたことがなかったので勉強になりました。

今回は簡単ですが、この辺で失礼いたします。最後までお読みいただきありがとうございました。