XML

XMLはExtensible Markup Language(拡張可能なマーク付け言語)の略称であり、W3C(World Wide Web Consortium)が公開している標準であり[1]、自己記述型の特徴を活かし、地理情報分野をはじめとする様々な分野において、データ交換の仕様として採用されています。

自己記述型とは、自分自身の意味を付加している、という意味です。XMLでは、原則としてマークアップまたはタグと呼ばれる文字列(開始タグと終了タグ)でデータの意味を示します。自己記述型のデータを作るための仕様としては、例えば、Webページを作成する時に利用されるマークアップ言語であるHTMLがありますが、これはタグが固定されており、ユーザが自由にタグを作ることはできません。これに対しXMLでは自由にタグを定義し、ドキュメントの階層構造を設計して、それを規則として提示することができます。例えば

<建物名>神楽坂ヒルズ</建物名>

によって、神楽坂ヒルズが建物の名前であることが明示的に示されます。ここで、<建物名>は開始タグ、</建物>は終了タグです。開始と終了のタグで囲まれた文字列をXML要素 (element) といいます。「神楽坂ヒルズ」はXML要素の内容 (content) になります。さらに、「建物名は文字列で表現すること」といった規則を設けて、XMLで記述したデータがそれに違反していないかを調べることを可能にします。このような規則としてW3CのXMLスキーマ規則[2]などがあります。

XMLスキーマもXMLの文法に従って記述されますが、上記の例の場合は以下のようになります。

<xsd:element name=“建物名” type="xsd:string"/>

これによって、建物名という要素の内容はxsd:string、つまりW3CのXMLスキーマ規則[2]に従う文字列型にすることが規定されます。なお、上に示した例は、タグの属性 (attribute) としてnameとtypeを示して1行でまとめ、終了タグを省略した表現をとっています。このようなタグは内容を持たないので、空要素タグと呼ばれます。

[参考文献]
[1] XMLチュートリアル, w3Schools
https://www.w3schools.com/xml/default.asp
(閲覧2022-01-09)
[2] XMLスキーマ, w3Schools
https://www.w3schools.com/xml/xml_schema.asp
(閲覧2022-01-09)
注:[1][2]については、ホームページの右上のある地球のアイコンを押すと言語選択ができます。

(2022年01月27日 初稿)

English

XML (Extensible Markup Language)

定義

XMLとは、データの意味を示すタグと呼ばれる文字列を使ってデータの内容を説明する自己記述型のドキュメントを作成するための仕様です。