XMLはタグを自分で定義できるなどと言われ盛り上がっているようですが、XMLは何が便利なのでしょう?

私が思うに、タグを定義できるからといって、タグの持つ意味合いまでは定義できない(例えば「名前」というタグを定義できるからといって、それが人の名前なのか物の名前なのか、人の名前だとして自社担当者の名前であるのか取引先担当者の名前であるのか、と言ったことまで限定できず、データを送る側と受ける側で解釈を取り決めておかなければならない)のに、なぜこんなに持て囃されるのでしょう?

このQ&Aに関連する最新のQ&A

A 回答 (4件)

要素や属性などのmarkupをそれぞれが勝手に定義していては、XMLのメリットは確かにあまりありません。

定義できる可能性があるというだけで、実際には用途に応じた業界などで標準化されていた方がずっと便利です。

しかし、そのような各標準がXMLという同じ土俵の上に乗ることに意味があると思います。どの標準を使う際にも、XMLに関する知識や経験それにプログラムなどを活用することができます。
また、XMLからXMLへならば、XSLTというものを使って、変換することができます。

つまり、あるデータ形式みたいなものが業界や企業などによって定義される際、これまで見たことがないような形式になるよりも、XMLに基づいたものになる方が、定義する側にとっても利用する側にとってもメリットがあることになります。

XMLを分かりやすく説明するために<名前>jo-ji</名前>みたいな例がよく使われますが、実用的な観点ではあまり意味がない(それだけでは)と考えた方がいいと思います。あなたのおっしゃる通り、約束事があってはじめて役に立つのです。
    • good
    • 0
この回答へのお礼

XMLさえあれば便利ということではなく、タグや属性などは送り手と受け手で約束しておかなければならないのですね。業界で標準化されていれば確かに便利ですね。しかも記述が柔軟なので、標準化する際に制限事項も少ないと。そういう便利であれば理解できます。

ご解答いただいた皆様ありがとうございました。

お礼日時:2001/03/17 01:04

XMLの利便性に関しては、言葉だけでは簡単に説明できないので、以下のサイトを参考にしてみたら如何でしょうか?



http://www.ibsinc.co.jp
http://www.utj.co.jp/

かなり詳しい解説が掲載されています。

ご参考までに...

参考URL:http://www.utj.co.jp/

この回答への補足

ありがとうございます。

DTDで文法チェック、XSL(+CCS)で表示形式へ変換、DOM(or SAX)でデータ処理、が出来るという便利さは理解できます。

しかし、例えば取引先が伝票をXMLで送ってくれることになったとして(表現の自由さ故に)、A社は<price>タグで金額を表し、B社は<金額>タグで金額を表し、、、なのだとしたら、取引会社ごとに伝票処理プログラム作らないとならないですよね。さすがに取引先の数(M)と処理の数(N)の積(M×N)だけ作るのは大変過ぎますから、実際には各社の形式のXMLを読んで自社形式のXMLを出力するプログラムを取引先の数(M)だけ作っておいて処理プログラムの前処理とする(プログラムの数=M+N)と思うのですけど、それにしても取引先の数(M)が多いと、やはり大変なことにならないのでしょうか。

補足日時:2001/03/15 00:04
    • good
    • 2

XMLで定義したタグとHTMLのタグが混ざっていませんか?XMLというのはあくまでデータの表現方法ですから、「カンマ区切りのCSV」とか「固定長区切りのテキスト」とかそういうレベルです。



HTMLタグと同じレベルで考えるとホームページのことしか考えられなくなってしまいます。(ただし、このHTMLにちょっと似てて簡単そうというのは、もてはやされる最大の理由のように思えます)

XMLが注目された背景としては、システムで処理した結果を最終的に人間が見る文書という形にしたとき、正規化されたリレーショナルデータベースでは、どうもそれを表現しづらい。XMLはそういった意味でいうと、データに属性や値、キーをつけることができて、人間が見る文書を定式化された形に格納しやすい。じゃぁ、これでデータ交換とかやればいいじゃん。

乱暴に言うとそういう話です。

この回答への補足

ありがとうございます。

XMLとHTMLは混乱していないつもりです。

仰る「XMLはそういった意味でいうと、データに属性や値、キーをつけることができて、」はXMLのデータ構造の柔軟さを指していると思うのですが、その柔軟さゆえに送り手と受け手の間で如何にして意思の疎通を図るのかが理解できずにいます。

補足日時:2001/03/13 23:15
    • good
    • 0

確かにタグを定義できる、というだけではメリットはない気がしますが、


それって、「だれでも」Webの更新が出来る、っていうことなんです。
HTMLに詳しくなくても、例えば
 <あなたの名前>  </あなたの名前>
って書いてあれば、誰だって名前を打ち込みますよね。
そのほかにも、メンテナンス面ではずいぶん楽です。
更新作業とか、今まではそれがどこにあるかを探すのも大変。
エディターを使ってもいいけど、下手をすればデザインが狂ってしまう。
そういう面では、十分効果を発揮できます。

ただ、これだけでは物足りないと思うでしょう。
実はXMLはデータベースとの連携においてとても優れています。
HTMLだと最低でもJavaScriptがないとデータベースは構築できません。
XMLはある特定のタグについて集計するように動作させる
ことが出来るので、結構簡単に実現できます。

この回答への補足

ありがとうございます。

<あなたの名前>は理解できますが、現にXMLは電子商取引にも使われ(ようとし)ているのですよね。例えばその際 <合計>1,050円</合計> は消費税を含んでいるのか、含んでいないのか、とか、、、人の名前を表す際に、

<名前>山田太郎</名前><ふりがな>やまだたろう</ふりがな>

<名前 ふりがな="やまだたろう">山田太郎</名前>

<名前><姓 読み="やまだ">山田</姓><名 読み="たろう">太郎</名></名前>

などと様々な表現が考えられるわけで、この非常に表現力豊かなデータ構造であるXMLで、どうやって送り手と受け手がやり取りしようというのかが理解できないのです。

補足日時:2001/03/13 22:59
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q「古い圧縮ファイル」の確認方法

Dドライブのディスクのクリーンアップをしたいのですが、実行できるものが、「古い圧縮ファイル」の削除しかありません。

「古い圧縮ファイル」がどのプログラムかを確認する方法を教えてください。

また、圧縮されたファイルの名前は青くなるらしいのですが、見つかりません。どうしてでしょうか
圧縮ファイルは1G弱あります。

Aベストアンサー

http://www.atmarkit.co.jp/fwin2k/win2ktips/106cleanup/106cleanup.html

初期設定では、50日以上アクセスの無かったファイルに対して、圧縮が行われます。
当然、圧縮してからでないと、ファイル名は青色にはなりませんので、ディスク・クリーンアップでの候補段階では、黒色のままです。


尚、設定によっては青色表示にならない場合も有りますけど。

http://121ware.com/qasearch/1007/app/nec.jsp?005084

QXMLのタグ名の禁則文字

こんにちは。

XMLのタグ名称に日本語を使用することができますよね。
ただし、先頭文字として「数値」や「記号(ある記号は除く)」など、いくつか制限がありますよね!?
あとは、そもそも使用禁止のもの(半角カナ??)もあったと思うのですが,全然思い出せないので質問させていただきました。

知りたいのは、以下の通りです。
・使用禁止文字
・先頭文字として使用禁止文字
・第2文字以降で使用可能文字

まぁ、ようするに全部となってしまうのかな!?

以上、宜しくお願い致します。

Aベストアンサー

使える文字:
 半角英数*(下記注)漢字 ひらがな カタカナ アンダースコア :(コロン)**

*半角数字は先頭で使えない

** :(コロン)は名前空間で記述されるため、避ける

使えないもの:
 半角カタカナ
 全角英数字
 <xml は予約語で利用不可(XML xMl など大小文字のいかなる組み合わせも同じ)


2文字目以降は、エクステンダー(文字間に使用されるーなど)、結合文字(アクセント記号)、ピリオド(.)、ハイフン(-)

<> &など(実際には半角)は、表記したい場合は実体参照を利用(&lt; &gt; &amp; など )

Q.zipファイルのパスワード解除方法

画像のデータ、音楽のデータを保存するために.zipファイルにパスワードを掛けたのですが、忘れてしまって解除することができません。
パスワードを解除する方法はありますか?

Aベストアンサー

普通は解除できませんが、このソフトを使えば簡単に解除できますよ。
Advanced ZIP Password Recovery
このサイトより試用品をダウンロードしてください。
インストーラー英語ですがソフトのオプションタブのLanguageタブで
Japaneseを選ぶと日本語になります。2kでは文字化けします。
このソフトは有料ですがどこかにserialがあるかもしれません。

参考URL:http://www.elcomsoft.jp/?page=archives#zip

QXMLのタグ名に予約語は禁止?

こんばんは、こんにちは。。

XMLのタグに関してです。
「XMLのタグ名には予約語が禁止です。」
と色々なところに書かれていました。

しかし、テキストファイルで
<xml>aaa</xml>(xmlは予約語)
と書いてIE6で見ると特に問題なく
エラーになりません。なぜでしょうか?
また、どこにそのような仕様が書かれているのか
ご存知ありませんか?

・例えばその旨について、
 以下のところに書かれていました。

1.同カテゴリの質問で。
「XMLのタグ名の禁則文字 」

2.以下のURL
http://noribeat.s38.xrea.com/xml/xml20020315.html

他には参考書など。。

※YAHOO!で「xml タグ 予約語 禁止」と検索すると
 上の二つが検索できました。

ご回答よろしくお願いいたします。
以上

Aベストアンサー

http://www.fxis.co.jp/xmlcafe/tmp/wrapper-xml-19980210.html
からXML規格の日本語訳が読めます。
http://www.fxis.co.jp/xmlcafe/tmp/rec-xml.html

Nameは
で、始まる部分の前後を参照してください。
なので、参考URL(2.)に書いてあることは正しいです。

IE6でエラーにならない理由は良く判りませんが、
おそらく、IEのHTML文書の中では、<XML>要素が使える(XMLをHTMLに埋め込むのに使う)ためではないでしょうか(根拠なし)

QWinXPHe、フォルダとファイルの区別

初心者です。Aフォルダの1つ下の階層に1と2と3があり、その1又は2又は3の下の階層にそれぞれア・イ・ウと内訳がある場合、どの階層までがフォルダで、どこからがファイルなのでしょう。
フォルダとファイルの違いや、必要性などお教え下さい。

Aベストアンサー

こんばんわ。

>Aフォルダの1つ下の階層に1と2と3があり、その1又は2又は3の下の階層にそれぞれア・イ・ウと内訳がある場合、
>どの階層までがフォルダで、どこからがファイルなのでしょう
もし、下のような感じでしたら、全部フォルダです。

Aフォルダ
 L1
  Lア
  Lイ
  Lウ
 L2
  Lア
  Lイ
  Lウ
 L3
  Lア
  Lイ
  Lウ

ちょっと、分かりにくいかもしれませんが、
ファイル、フォルダについて解説しているサイトがありますので、
参考にして見て下さい。
では。

参考URL:http://www.geocities.co.jp/HeartLand-Gaien/6611/pcbegin/filefol.html

Qブログですが xmlとcssでh1タグ

お世話になります。

ブログユーザーなんですが 
本体のxmlとデザインのcssのファイルがあり
cssのファイルの中にh1タグがあるのですが
関連する本体のxmlのファイルの中にh1タグが
見当たりません ?
でもcssのh1タグで指定するとその指定が
ブログタイトルに反映されます
 h1タグとblogtitleは初めから
関連づいているものなのでしょうか?
よろしくお願いします

Aベストアンサー

#1だ。

折角だから
http://www6.airnet.ne.jp/manyo/xml/index.html
読んで勉強すると良い。

順番が多少読みにくいが,説明は解りやすいぞ

Qファイルの圧縮解凍ソフトで圧縮中(または解凍中)にファイルが壊れる事ってありますか?

以前、ファイルを圧縮しましたら、驚くほどサイズが小さくなって驚いたのですが、ファイルの中身を見てみましたら、ファイルの数も少なくなってビックリでした!ファイルの圧縮解凍ソフトで圧縮中(または解凍中)にファイルが壊れる事ってあるのでしょうか?

ひょっとして、そういうことがあるから、様々な種類の圧縮解凍ソフトがあるのとか…

だとしたら、一番信頼性の高い圧縮解凍ソフトはなんでしょうか?

Aベストアンサー

圧縮で壊れた経験はありませんが、解凍中に壊れたことはよくありました。
Macでしたが、原因は解凍ソフトが古いバージョンでOSに合わなかったようです。

QXMLのnodeValueの中にHTMLタグを書きたい。

XMLのnodeValueの中にHTMLタグを書きたいのですが。
<>/などはXMLのnodeValueの中に埋め込めないのでしょうか?エスケープシーケンスのような感じに。

Aベストアンサー

XML中では、
< は、&lt;
> は、&gt;
を使います

Q「ウイルス感染ファイル」削除後のシステム復元でどうなる?

ウイルスバスターで幾つかのウイルス感染ファイル発見し全て削除しましたが、感染したファイルはシステムファイルでしたので少し心配でしたが削除しました。
そこで教えて頂きたいのですが、感染した日付以前でシステムの復元をする事によって削除されたシステムファイルは復元できるのでしょうか?一度削除されたシステムファイルはシステムの復元をしても二度と復元しないのでしょうか?

Aベストアンサー

以下WindowsXPという前提で・・・

>システムファイルでしたので少し心配でしたが削除しました。
通常、このままではシステムエラーが発生します。
しかし、Windowsには自動復旧機能があり、削除されたファイルをハードディスク上にあるCabファイルから呼び出して復旧させるようになっています。
従って、殆どの場合、削除されたシステムファイルを手動でインストールする必要はありません。

☆SFCの実行
もしシステムエラーが出る場合SFC(System File Checker)の実行をお勧めします。

1.CDドライブにOSのインストールディスクを入れておく。
2.「スタート」「コマンドプロンプト」または「ファイル名を指定して実行」で
「sfc /scannow」と入力して「OK」

「Windows XP professional のディスクを入れてください」という表示が出ることがありますがHome Editionであれば「無視」を選んでスキップしてください

>感染した日付以前でシステムの復元をする事によって削除されたシステムファイルは復元できるのでしょうか?
出来ないことはないでしょうが、あまりお勧めできません。
現在の状態が正常でない。
過去の状態の方が快適に操作できる。
という場合、それがいいかもしれません。
しかし、Windowsの設定というのは非常に広範囲にわたっており、現在と過去を比較して、どちらが適正かを判断するのは容易ではありません。
また、過去の復元ポイントの中には不正な設定が含まれている場合があり、間違って、そのポイントを選択することもあります。
ウィルス対策ソフトのサイトでは一旦復元設定を無効にして、過去の復元ポイントを全て消去することを推奨しています。

>一度削除されたシステムファイルはシステムの復元をしても二度と復元しないのでしょうか?
間違った操作をすると汚染されたファイルが復元されてしまいます。
一旦復元設定を無効にして、過去の復元ポイントを全て消去することで汚染されたファイルは二度と復元しません。

以下WindowsXPという前提で・・・

>システムファイルでしたので少し心配でしたが削除しました。
通常、このままではシステムエラーが発生します。
しかし、Windowsには自動復旧機能があり、削除されたファイルをハードディスク上にあるCabファイルから呼び出して復旧させるようになっています。
従って、殆どの場合、削除されたシステムファイルを手動でインストールする必要はありません。

☆SFCの実行
もしシステムエラーが出る場合SFC(System File Checker)の実行をお勧めします。

1.CDドライ...続きを読む

QVBAでXML文書のある特定タグ以下の内容をそのまま取得したい

お世話になります。

下記のようなXMLソースがあります。
下記のXMLソースをMSXML2.DOMDocumentで読み込んだ上で、
情報/大問/@形式="1" の内容の
「<中問><小問>a</小問><小問>b</小問><小問>c</小問></中問>
<中問><小問>あ</小問><小問>い</小問><小問>う</小問></中問>」
だけをタグ付きで取得したいのですが、どのような関数を使えばよいでしょうか?

大問 形式=1以下の内容をタグ付きで取得したいのです。
何卒よろしくお願いします。
XMLソース-----------------------
<情報>
<大問 形式=1>
<中問>
<小問>a</小問>
<小問>b</小問>
<小問>c</小問>
</中問>
<中問>
<小問>あ</小問>
<小問>い</小問>
<小問>う</小問>
</中問>
</大問>
<大問 形式=2>
<中問>
<小問>1</小問>
<小問>2</小問>
<小問>3</小問>
</中問>
<中問>
<小問>A</小問>
<小問>B</小問>
<小問>C</小問>
</中問>
</大問>
</情報>

お世話になります。

下記のようなXMLソースがあります。
下記のXMLソースをMSXML2.DOMDocumentで読み込んだ上で、
情報/大問/@形式="1" の内容の
「<中問><小問>a</小問><小問>b</小問><小問>c</小問></中問>
<中問><小問>あ</小問><小問>い</小問><小問>う</小問></中問>」
だけをタグ付きで取得したいのですが、どのような関数を使えばよいでしょうか?

大問 形式=1以下の内容をタグ付きで取得したいのです。
何卒よろしくお願いします。
XMLソース-----------------------
<情報>
<大問 形...続きを読む

Aベストアンサー

Microsoft XML v3.0 以上だと、selectNodesメソッドでxpathが使えるようです。
Dim ObjXml As MSXML2.DOMDocument
Set ObjXml = CreateObject("MSXML2.DOMDocument")
ObjXml.Load("​hoge.xml")​
Set nlist = xmldom.selectNodes("//情報/大問/@形式=""1""")
Dim node As MSXML2.IXMLDOMNode
For Each node In nlist
Debug.Print node.nodeName
Debug.Print node.childNodes(0).nodeValue
Next

できるかなああ...


人気Q&Aランキング

おすすめ情報