XML名前空間

DTDによって自由に要素を定義できるので、文書によって同じ要素名でも異なる使い方をすることがでてきます。複数のXML文書を組み合わせた場合に、要素の使い方が異なるため不具合がでることがあります。そのため、名前空間(name space)というしくみによってどこで決められた要素かを区別して使うことができます。

名前空間の指定

名前空間はURIで以下のように指定します。

<要素名 xmlns:プレフィックス="個別のURI">
:
</要素名>

「:プレフィックス」を省略すると、プレフィックスがないもの名前空間を指定できます。

上記要素内では、プレフィックスを指定すると指定された名前空間の要素になります。

<プレフィックス:要素名>
:
</プレフィックス:要素名>

例 名前空間

<?xml version="1.0" encoding="Shift_JIS" ?>

<characters xmlns:gg="http://www.tokiwa.ac.jp/~shio/gg"
            xmlns:kof="http://www.tokiwa.ac.jp/~shio/kof">
	<gg:character>
		<gg:name> </gg:name>
	</gg:character>
	<gg:character>
		<gg:name> </gg:name>
	</gg:character>

	<kof:name>

	</kof:name>
	<kof:name>

	</kof:name>
</characters>