XML名前空間 【xmlns】 XMLネームスペース / Namespaces in XML
概要
XML名前空間(xmlns)とは、XMLで定義された複数の言語を一つの文書で扱う場合に、要素や属性の名前が衝突することを避けるために用いる修飾子。要素名(タグ名)の前に「識別名:」という記述を追加する。XMLはメタ言語であり、要素(タグ)や属性を「スキーマ」(schema)として定義することで様々なマークアップ言語を作成することができる。これらは目的に応じて使い分けることになるが、一つの文書を複数のマークアップ言語で記述することもできる。
その際、同じタグ名を複数の言語で定義してあると、文書中でそのタグが登場したときにどの言語で定義されたものなのか区別する必要が生じる。このとき、スキーマののURIなど厳密な定義をいちいちタグに記述するのは面倒で冗長である。
XML名前空間では、使用する言語(のスキーマが置いてあるURI)と対応する接頭辞を文書の先頭で定義しておき、タグにはその接頭辞を頭に追加することにより区別する。接頭辞とタグ名の間は「:」(コロン)で区切り、「<en:verb>」「<ja:verb>」のように記述することで区別する。
(2022.6.11更新)