XMLXMLの基本

URL XMLとは URL XML文書作成の大まかな流れ
URL XML文書の記述 URL XML文書のブラウザでの表示
URL エラーメッセージが表示された場合の対処法

XMLとは

XMLとはeXtensible Markup Language の略で、マークアップ言語と呼ばれるもののひとつです。
マークアップ言語でよく知られているものといえば、HTML(Hyper text markup language)があります。

HTMLでは、テキストファイルに書かれた文字に、タグという「<」と「>」の間に書式やリンク情報などのいろいろな設定を行ったりするための文字を記述したものを埋め込んで、意味づけを行うことができます。
では、XMLはどうでしょうか。下記にXMLの特徴をあげてみます。

 テキストファイルで記述

XMLはテキスト形式のファイルに記述します。
テキストファイルは保存情報が文字だけなので、その他のデータファイルなどと違いOSの種類を選ばず簡単に扱えるという利点があります。

 タグを自由に定義できる

HTMLではタグの定義は決められており、タグの意味や使用法を覚える必要がありましたが、 XMLではタグの定義は扱いやすいよう自由に設定することができます。

 データ構造を表現できる

XML文書では、HTMLのように書式やレイアウトを設定するタグはなく、データとデータに関する情報を定義したタグを使用します。
XMLで記述すると、データの意味・構造が非常にわかりやすくなります。

 世界標準

XMLの記述ルールなどの仕様は、W3Cという団体によって、誰もが同じ使い方ができるように決められて公開されています。
この仕様は、話し合いにより全ての疑問や反対意見などに答えて十分に検討され、最終的に内外の支持が十分に得られたと判断されてから「勧告」に至ります。
現在でもこの話し合いは続けられ、XMLに関する仕様が標準化されています。
XMLを深く理解するためにも、XMLの仕様書を一度は読んでおくことをお勧めします。

 W3C : World Wide Web Consortium
W3CはWWW技術に関連する取り決めや標準化のために、関わりの深い大学や個人・企業や研究所などによって、1994年10月に発足しました。

ページのTOPへ

XML文書作成の大まかな流れ

XML文書は、テキスト形式で保存されたファイルに記述されています。
使い慣れたテキストエディタがあるならば、それを使用してもいいでしょう。
ここではWindows付属の「メモ帳」を使用して解説していきます。

  • テキストエディタを起動(メモ帳を起動)
  • XMLを記述
  • ファイルに名前をつけて保存(拡張子は.xml)
    ◆ 保存時の文字コードについて ◆
    日本語をコンピュータで扱う場合は、どの文字コードを使用するのか決める必要があります。文字コードとはコンピュータで文字を表示ために決められたコードの事です。
    文字コードはシフトJISJISEUCUnicodeなどがあり、WindowsやMacなどではシフトJISを使用しています。
    メモ帳で保存すると文字コードはシフトJISで保存されます。 (バージョンによりUnicodeで保存できる機能あり)
  • テキストエディタを終了する

ページのTOPへ

XML文書の記述

XML文書は ・XML宣言 ・DTD ・XMLインスタンス の3つの部分から構成されます。DTDについては省略できます。

<?xml version="1.0" encoding="SHIFT_JIS"?> ・・・XML宣言
<商品> ・・・ルート要素
    <商品名>本</商品名> ・・・ルート要素に関連のある要素
    <コード>0001</コード>
    <単価>100</単価>
</商品>

 XML宣言

XML文書はXML宣言から始まります。
XML宣言とはその文書がXMLで記述されていることを知らせるためのものです。
XML宣言は「<?xml」「?>」で囲まれており、内部には「version="1.0"」というようにXMLのバージョンを記述します。(サイト作成現時点ではバージョンは1.0、1.1があります。)
XML宣言は半角英数字記号で記述してください。

XML宣言内部には「encoding="SHIFT_JIS"」というように XML文書の文字コードを指定します。
XML文書の文字コードがUTF-8UTF-16以外の場合は、必ずこのように記述します。

 XMLインスタンス(ルート・ルートに関連のある要素)

XMLインスタンスはXML文書のメイン部分であり、ここにデータを記述します。
データは「要素」と呼ばれタグ付けされて意味や構造がわかるようになっています。
要素は「開始タグ」「文字データ」「終了タグ」から成ります。

XML文書にはルート要素を必ず記述します。
データの階層構造の最上位に位置するものをルート要素といいます。
上記のように、ルート要素である「商品」でその他の要素を囲みます。

このようにデータの階層構造を記述する際、ルート要素によってそのルート要素に関連のある要素を囲むので階層構造がとてもわかりやすいものになります。

ページのTOPへ

XML文書のブラウザでの表示

 XML文書の保存方法

作成したXML文書を保存する際、そのまま保存するとファイルの種類がテキストのまま保存されてしまいますので、ファイルを保存する際は、「ファイル名.xml」という様にファイル名の後に「.xml」と記述してください。

 XML文書をブラウザで開く

xml文書として保存されたファイルをクリックして開いてみましょう。
ブラウザが起動し、xml文書がツリー構造で下記のように表示されます。

 <?xml version="1.0" encoding="SHIFT_JIS"?>
-<商品>
    <商品名>本</商品名>
    <コード>0001</コード>
    <単価>100</単価>
</商品>

要素の「<売上>」の横の「-」をクリックすると、「-」が「+」に変化し、その要素が含むすべての要素を隠します。
もう一度クリックすると、「+」が「-」に変化し、隠された要素が再度表示されます。
なお、 xmlの記述が間違っていると、エラー画面にエラーメッセージが表示されます。

ページのTOPへ

エラーメッセージが表示された場合の対処法

xmlの記述が間違っていると、エラー画面にエラーメッセージが表示されます。
エラーメッセージの表示には以下のようなものがあります。

1 文字コードが指定されていない場合

漢字などを表示する場合に「encoding="SHIFT_JIS"」などの文字コードの指定がなかった場合、「テキストの内容に無効な文字が見つかりました」とエラー画面に表示されます。

2 開始タグと終了タグが異なる場合

例えば「<コード>0001</コード>」を「<コード>0001</ID>」としてブラウザで表示させると、「終了タグ'ID'が開始タグ'コード'と一致していません」と表示されてエラーの原因となった間違った箇所が表示されます。

3 開始タグがない場合

例えば「<コード>0001</コード>」を「0001</ID>」として開始タグを省いた状態でブラウザに表示させると、「終了タグ'ID'が開始タグ'コード'と一致していません」などと表示されてエラーの原因となった間違った箇所が表示されます。

4 XML宣言の中に全角のスペースが入った場合

<?xml 〜?>」のXML宣言の中に全角文字(スペース等)が入ると「テキストの内容に無効な文字が見つかりました」と、エラーメッセージが表示され、間違った箇所が下に表示されます。

5 半角の「<」「>」「"」「'」「&」を記述した場合

<コード>&0001</コード>」というように半角の&を記述してブラウザで表示させると「セミコロン(;)が必要です」と、エラーメッセージが表示され、間違った箇所が下に表示されます。
「&#60;」「&#62;」「&#34;」「&#39;」「&#38;」などと記述すればエラーにはなりません。

6 文字の途中で改行した場合

例えば「<コー」と「ド>」の間で改行したとすると、「無効な文字が含まれた名前です。」とエラーメッセージが表示され、間違った箇所が下に表示されます。
文字の途中で改行すると、改行コードを無効な文字としてエラーが表示されます。

ページのTOPへ