C-5 XML とは

C-3節の【応用課題 C-1】を考えた人は気づいたと思いますが、データの構造が複雑になってくると (例えば、氏名や出身地等を識別する必要が生じてくると)、SaveToFileLoadFromFileでは、扱いが面倒になってきます。実はこのような場合、XML (eXtensible Markup Language) というものを使うと、データをより簡単に扱うことが出来ます。

XML って何?」と気になるところですが、その一般的説明から始めては、少々退屈になります。そこで、これまで扱ってきた名簿検索プログラムを題材としてとりあげ、これから C-7 節にかけて具体的な活用例を通して学んで行きましょう。

例えば、C-3 で保存した「data.txt」の中身

団体名:青空テニスクラブ
メンバー:佐藤一郎 石川県 090-1234-5678
メンバー:鈴木二郎 宮崎県 070-8765-4321
メンバー:宮崎三郎 福島県 024-681-3579
メンバー:石川花子 北海道 0123-45-6789
メンバー:佐藤四郎 東京都 03-3333-3333

XML で表すと次のようになります。

<?xml version="1.0" encoding="Shift_JIS"?>
<メンバーデータ>
  <団体名>青空テニスクラブ</団体名>
  <メンバー>佐藤一郎 石川県 090-1234-5678</メンバー>
  <メンバー>鈴木二郎 宮崎県 070-8765-4321</メンバー>
  <メンバー>宮崎三郎 福島県 024-681-3579</メンバー>
  <メンバー>石川花子 北海道 0123-45-6789</メンバー>
  <メンバー>佐藤四郎 東京都 03-3333-3333</メンバー>
</メンバーデータ>

【練習問題】

上記の XML データをコピーし、秀丸やメモ帳に貼り付け、「data.xml」という名前で保存して下さい。その後、Internet Explorer (または XML を解釈できるその他のブラウザ) で「data.xml」を開いてください。

このように表示されます。「<メンバーデータ>」の左側にある「-」をクリックすると、「<メンバーデータ>」以下のデータが折りたたまれたり (隠れたり) 展開されたり (再度表示されたり) します。

この XML 文書は、次のように更に詳しく表現することも出来ます。

<?xml version="1.0" encoding="Shift_JIS"?>
<メンバーデータ>
  <団体名>青空テニスクラブ</団体名>
  <メンバー>
    <名前>佐藤一郎</名前>
    <出身地>石川県</出身地>
    <電話番号>090-1234-5678</電話番号>
  </メンバー>
  <メンバー>
    <名前>鈴木二郎</名前>
    <出身地>宮崎県</出身地>
    <電話番号>070-8765-4321</電話番号>
  </メンバー>
  <メンバー>
    <名前>宮崎三郎</名前>
    <出身地>福島県</出身地>
    <電話番号>024-681-3579</電話番号>
  </メンバー>
  <メンバー>
    <名前>石川花子</名前>
    <出身地>北海道</出身地>
    <電話番号>0123-45-6789</電話番号>
  </メンバー>
  <メンバー>
    <名前>佐藤四郎</名前>
    <出身地>東京都</出身地>
    <電話番号>03-3333-3333</電話番号>
  </メンバー>
</メンバーデータ>

【練習問題】

上記の XML データをコピーし、秀丸やメモ帳に貼り付け、「data.xml」という名前で保存して下さい。その後、Internet Explorer (または XML を解釈できるその他のブラウザ) で「data.xml」を開いてください。

このように表示されます。「<メンバーデータ>」の左側にある「-」や「<メンバー>」の左側にある「-」をクリックすると、そこにぶら下がっているデータが折りたたまれたり (隠れたり) 展開されたり (再度表示されたり) します。