WWW INFOMATION | |||||
XML top >>XMLとは?
■XMLとは?
最近XMLと言う言葉を良く聞きます。XMLは、ExtensibleMarkupLanguageの略であり、インターネット上で様々なデータを扱う場合に特に利点を発揮します。1998年にW3Cにより勧告された比較的新しい言語ですが、仕様が簡単であるため、広く使用されるようになりました。
以下、XMLの基本的な事項を確認します。(実際のXMLの書き方の説明はありません。手早く学びたい方は、次の章から読み始めて下さい。
■XMLって何?
XMLは、多様な情報を「情報の意味」と「情報の内容」に分けてテキストで記述する方法(言語)です。(と書くと難しいのですが、、。)
例えば、「お客の情報をまとめて管理したい!」、なんて場合にXMLを使用すると、名前、住所などお客の情報を一元的に管理できますし、その情報をインターネットやプログラムから利用できるようになります。 例1)インターネット上でお客の情報を確認する XMLはテキストファイルですので、何かソフトがなければデータが見えないとか、OSが違うとデータが見えないということがありません。インターネットに公開しておけば、どこからでも参照することが可能です。 例1を見て、HTMLと何が違うの?と思った方もいると思います。例1では、XMLに表示の設定を行っているため、表示はHTMLと変わりません。例2でわかりやすいようにXMLそのものを表示してみます。(XMLがデータで構成されていることがわかると思います。) 例2)例1のXMLデータ HTMLは、表示に特化しているため、たとえ何かデータがあっても、そのデータが何を意味するのかコンピュータは判断できません。 しかし、XMLはその「データの意味」を判断できますので、特定のデータのみ取り出したり、データを集計したりといったことが可能になります。 例えば、以下の映画情報を表示するHTMLがあったとします。(HTMLがわからない場合、読み流して下さい。)
<html>
<head><title>映画のレビュー</title></head> <body> <h1>ショーシャンクの空</h1> <table border="1"> <tr><td>得点</td><td>90</td></tr> <tr><td>感想</td><td>とても良い</td></tr> </table> <hr> <h1>タイタニック</h1> <table border="1"> <tr><td>得点</td><td>10</td></tr> <tr><td>感想</td><td>長い</td></tr> </table> </body> </html> このHTMLは表示するとこのようになります。人間がこの表示を見れば、どのデータが映画のタイトルで、どのデータが得点で、どのデータが感想かはわかると思いますが、プログラムからは判断するのが非常に面倒なのです。プログラムから観れば、「映画のタイトル」も「得点」も同じ文字のデータで何を意味しているのかわかりません。 ここでこのデータをXMLで書いてみます。
<?xml version="1.0">
<all_movies> <movie> <title>ショーシャンクの空</title> <point>90</point> <review>とても良い</review> </movie> <movie> <title>タイタニック</title> <point>10</point> <review>長い</review> </movie> </all_movies> 人間が見るとちょっとわかりにくいですが、プログラムから観れば、これ(XML)はわかりやすいものとなります。<>で囲まれたものをタグというのですが、例えば、映画のタイトルだけ抽出したい場合、タグ<all_movies>の<movie>の<title>を抽出するようにプログラムに命令すれば、"ショーシャンクの空"、"タイタニック"を取得できるようになります。 また、タグ<point>が90以上のデータを取り出すことも簡単にできます。取り出したデータは、表示に使用することもできますし、別のプログラムで集計に使用することもできます。 ちょっとわかりづらかったかもしれませんが、XMLはHTMLに比べてプログラムからそのデータを扱いやすいということが特徴です。 ■XMLのメリットは?
XMLの利用を考えた場合、メリットは、以下3点が考えられます。
1) 誰でも簡単に使える 2) ブラウザから使える(インターネットと相性が良い) 3) プログラムからデータが扱いやすい(開発効率が高い) 以下2つの例は、同じXMLファイルに対して表示方法のみを変更しています。(こういうことが、簡単にできます。) 例A) 表示方式1 例B) 表示方式2 XMLは、ホームページに利用されることが多いですが、ホームページのみの利用に制限されるものではありません。例えば、地図データをXML形式でインターネット上に公開することにより、その地図データを各ユーザが別々のプログラムで利用することが可能です。同じ地図データをAさんは、マーケティングに使用し、Bさんはカーナビの元データに使用するといったことが可能です。(XMLデータを扱うプログラムが各種用意されているため、開発も容易です。) また、XMLはオブジェクト指向と親和性の高い仕様となっているため、JavaやC++など現在主流のプログラムとの相性も良くなっています。 ※システム開発において、設定ファイル(外部ファイル、コンフィグファイル)でXMLを使用することもありますが、INIファイルと比べ、ほとんど利点はありません。XMLファイルの利点はデータベースが使用できない環境で、同形式のデータを大量に管理できる点にあります。設定ファイルのような、設定項目がひとつひとつ異なるようなデータでは、むしろ、INIファイルのような単純な形で設定したほうが、処理効率も開発効率も高くなります。 ■XMLのデメリットは?
ホームページでのXML使用を前提としたデメリットです。
■多少は歴史を知っておこう
HTMLは表示する点については優れていますが、データを管理するのには適していません。(もともとHTMLはデータを管理するために作られたのではなく、文章を表示するために作成された言語です。)そこでW3Cはインターネットの更なる発展を願い、データ管理も可能で、HTML並みに記述も容易なマークアップ言語としてXMLを1998年に制定しました。
その後、XML関連の仕様が次々と出てきました。XMLの構造を定義するXML Schemaや、XMLを別の表示形式に変換するXSLTなどは、XMLを補完し、その利便性を高めます。SOAPはXMLを使用して、通信上のデータのやり取りを定めます。他にも、XMLで定義されたグラフィックを扱うSVGや、数式を扱うMathML、マルチメディアを扱うSMILEなどXMLを前提として定義された仕様もあります。 現在も次々と新しい関連仕様が定められつつあります。 ちなみに、HTMLもXMLもSGMLという言語を元に作成されています。SGMLは文書構造を把握するための言語ですが、処理効率が悪く難かしいという特徴を持っています。 |
|
||||