目次へ

8.NamespaceとXML Schema

XML Schemaの説明の最後として、Namespaceを取り上げます。Namespaceはスキーマをモジュール化して使用するための概念です。本章では、XML Schemaによりスキーマを作成した場合に、そのスキーマに沿ったXML文書記述する方法などについて説明します。

8.1 Namespaceとは

ここで、復習も兼ねて、Namespaceについて、再度説明します。XMLの利用が拡大し、XMLにより作成された言語も増えれば、既存のXMLのスキーマをモジュールとして再利用する方が賢明です。NamespaceはXMLのスキーマをモジュール化して再利用するために、制定された概念です。XMLで作成された言語それぞれに、「日本語」「英語」などのように、「paperinfo」「peopleinfo」と言語に名前を付け、それぞれのタグが「何語」のタグか記述することによって、複数の「言語」が混在するXML文書も処理できるようにします。

image

Namespaceは、このようにスキーマをモジュール化し、再利用することを目的として作成された概念です。Namespaceの実体は、要素や属性の名前の集合です。ちょうど「日本語」が、「あめ」や「橋」や「行く」などの言葉の集まりであるのと同じです。

XMLでは、Namespaceの識別名にURIを使用します。例えばXMLの変換言語としてXSLT(eXtensible Styelsheet Language Transformation)というものがあります。XSLTもXMLにより作成された言語です。XSLTのNamespaceの識別名は、"http://www.w3.org/1999/XSL/Transform"というURIです。XMLプロセッサは、 "http://www.w3.org/1999/XSL/Transform"という文字列より、そのXML文書がXSLTという言語で記述されたものであると識別するのです。

image

XMLパーサにとって、XSLTは"http://www/w3.org/1999/XSL/Transform"という名前の言語です。XSLTには、stylesheetやimportという名前の要素、あるいは、methodという名前の属性があります。これらは、XSLTのNamespaceに属しているといえます。

このように、要素や属性の集合に"http://www/w3.org/1999/XSL/Transform"という名前を付けることによって、ひとつの文書に別の「言語」の要素や属性を混在させることが出来るのです。

↑このページの先頭へ

こちらもチェック!

PR
  • XMLDB.jp