HTMLとXML
トップ
>
読み物
> (その他)HTMLとXML
HTMLとXML、単純に優劣を比較できるものではありません。
私がXMLを学習し始めたころ、よくこんな解説を目にしました。
XMLはHTMLと違い、タグを自由に定義できる。
この解説は確かに間違いではないのですが、比較のためにHTMLを持ち出すと、XMLで自由に定義したタグがブラウザできちんと解釈されて表示できてしまうかのような誤解を与えかねません。
実際は、XMLでredというタグを定義し、「<red>あ</red>」と記述しても、それがブラウザで「
あ
」と表示されるわけではありません。XMLはHTMLとは違い、ブラウザで表示することが目的ではありません。
XMLとは何かを理解する上で、HTMLのことは忘れましょう。
XMLは数ある
データフォーマット
の中の一つです。データフォーマットとはデータを記録する際の書式のことです。データフォーマットには
CSV
や
TSV
、
固定長ファイル
や
JSON
など、いろいろありますが、XMLもその中の一つです。
システムにおいて、データの格納先といえばまずデータベースでしょう。しかし、少量のデータやシステムの定義情報などは単なる
テキストファイル
に保存しておくこともしばしばあります。また異なるシステム間において、データをやりとりする場合にも、テキストファイルが使われることがあります。このようなテキストファイルにデータをどのような書式で記述するかが問題になります。上に挙げたようなデータフォーマットにはそれぞれ長所・短所があるので、状況によってどのデータフォーマットを使うかを決めます。
XMLの長所の一つは、
データの論理構造がわかりやすい
ということです。
あるシステムの定義情報をCSVで記述した例と、XMLで記述した例を比較してみましょう。(下記はあくまで私が定義した例に過ぎません。定義の仕方は十人十色です。)
CSVでの定義例
D:\,log.txt debug,0
XMLでの定義例
<SystemInformation> <log-file> <dir>D:\</dir> <file>log.txt</file> </log-file> <init-param> <name>debug</name> <value>0</value> </init-param> </SystemInformation>
どちらで定義しても
プログラムからは容易に扱うことができます
。
CSVの場合は一行ずつループしながら読み込んで、カンマで分割して配列に格納し、各データにアクセスできます。
XMLの場合はDOMやSAXといったAPIを使い、各データにアクセスできます。
では、
人から見た場合のわかりやすさ
はどうでしょう?
CSVで定義した場合、データの意味は定義した人に聞かないと(あるいは設計書を見ないと)わかりません。
一方、XMLで定義した場合、データの意味および論理構造がわかりやすくなります。
トップ
>
読み物
> (その他)HTMLとXML
トップ
|
このサイトについて
|
管理者へメール
|
サイトマップ
www
una.soragoto.net
Copyright(c) 2009 - 2012 una All Rights Reserved.