HTMLとXML
HTMLとXML、単純に優劣を比較できるものではありません。
 私がXMLを学習し始めたころ、よくこんな解説を目にしました。

 XMLはHTMLと違い、タグを自由に定義できる。

 この解説は確かに間違いではないのですが、比較のためにHTMLを持ち出すと、XMLで自由に定義したタグがブラウザできちんと解釈されて表示できてしまうかのような誤解を与えかねません。
 実際は、XMLでredというタグを定義し、「<red>あ</red>」と記述しても、それがブラウザで「」と表示されるわけではありません。XMLはHTMLとは違い、ブラウザで表示することが目的ではありません。

 XMLとは何かを理解する上で、HTMLのことは忘れましょう。

 XMLは数あるデータフォーマットの中の一つです。データフォーマットとはデータを記録する際の書式のことです。データフォーマットにはCSVTSV固定長ファイルJSONなど、いろいろありますが、XMLもその中の一つです。

 システムにおいて、データの格納先といえばまずデータベースでしょう。しかし、少量のデータやシステムの定義情報などは単なるテキストファイルに保存しておくこともしばしばあります。また異なるシステム間において、データをやりとりする場合にも、テキストファイルが使われることがあります。このようなテキストファイルにデータをどのような書式で記述するかが問題になります。上に挙げたようなデータフォーマットにはそれぞれ長所・短所があるので、状況によってどのデータフォーマットを使うかを決めます。

 XMLの長所の一つは、データの論理構造がわかりやすいということです。
 あるシステムの定義情報をCSVで記述した例と、XMLで記述した例を比較してみましょう。(下記はあくまで私が定義した例に過ぎません。定義の仕方は十人十色です。)

CSVでの定義例 XMLでの定義例

 どちらで定義してもプログラムからは容易に扱うことができます
 CSVの場合は一行ずつループしながら読み込んで、カンマで分割して配列に格納し、各データにアクセスできます。
 XMLの場合はDOMやSAXといったAPIを使い、各データにアクセスできます。

 では、人から見た場合のわかりやすさはどうでしょう?

 CSVで定義した場合、データの意味は定義した人に聞かないと(あるいは設計書を見ないと)わかりません。
 一方、XMLで定義した場合、データの意味および論理構造がわかりやすくなります。


Yahoo!ブックマークに登録 Googleブックマークに登録 はてなブックマークに登録 livedoorブックマークに登録 deliciousブックマークに登録 Buzzurlブックマークに登録


トップ | このサイトについて | 管理者へメール | サイトマップ
Google www una.soragoto.net  
Copyright(c) 2009 - 2012 una All Rights Reserved.