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ファイルの圧縮方法

AVIやMPGの画像ファイルを圧縮する方法を教えてください。900mb位のファイルをCD-Rに落とし込める700mbまで圧縮したいんですが。できれば、zipやlzhなどの後で解凍しなくてはいけないような圧縮方法ではなく、多少画像が荒くなってもファイルを単純に縮小させるような方法を教えていただけると有り難いのですが。。
因みに、TMPGEncを試してみたんですが、どうもうまくいかなくて。。ファイルサイズが元のファイルより逆に大きくなってしまうんです。
すいませんが、宜しくお願いします。

Aベストアンサー

画像圧縮?くす(^^
エンコはTMPGEncやaviutlでやるのがふつーです。
ええ 絶対! 
aviutl
http://ruriruri.zone.ne.jp/aviutl/

zipとかで圧縮しても意味ありません サイズ的に。

で、TMPGEncで元より大きくなるのは問題は
コーデック、画像サイズ、 音声ファイルなど
理由はいっぱいあります。対処は類似質問みて↓
http://oshiete1.goo.ne.jp/kotaeru.php3?q=625581

だから圧縮というか再エンコードが面倒なら
ファイルをテキトーな部分でカットする方向性はどお?
CD-R 2枚に保存 450 450 くらいでカット。
対処は類似質問みて↓
http://oshiete1.goo.ne.jp/kotaeru.php3?q=610331
ではでは!

追伸
カンタンにならrmファイルに変更かなあ
でも画質は落ちますよ
ネット配信 ストリーミング形式でどぞ!
RealplusG2とかRealEncoderで変換
でもaviでもないしmpegでもないですけど、どお?

参考URL:http://oshiete1.goo.ne.jp/kotaeru.php3?q=610331

画像圧縮?くす(^^
エンコはTMPGEncやaviutlでやるのがふつーです。
ええ 絶対! 
aviutl
http://ruriruri.zone.ne.jp/aviutl/

zipとかで圧縮しても意味ありません サイズ的に。

で、TMPGEncで元より大きくなるのは問題は
コーデック、画像サイズ、 音声ファイルなど
理由はいっぱいあります。対処は類似質問みて↓
http://oshiete1.goo.ne.jp/kotaeru.php3?q=625581

だから圧縮というか再エンコードが面倒なら
ファイルをテキトーな部分でカットする方向性はどお?
CD-R 2枚に保存 450...続きを読む

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に埋め込むのに使う)ためではないでしょうか(根拠なし)

Qファイルの圧縮方法が解りません

窓の杜やベクター等に置かれている、フリーの圧縮、解凍ソフトをダウンロードしていますが、テキストファイルや、画像ファイルの圧縮方法が解りません。何方か教えて頂けませんか?

Aベストアンサー

ソフトの開発者のサイトで質問することをお奨めします。

ソフトごとに操作方法が異なりますので、使用しているソフト名すらない状態では誰も必要とする回答を出せません。

窓の杜やベクターでは開発者のサイトへのリンクがありますから、そこからアクセスできますよ。

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
読んで勉強すると良い。

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

Qpsdファイルの圧縮方法

psdファイルの圧縮方法を教えてください。(基本的質問で恐縮ですが)
win98です。なお、ファイルは9MB程度ですが、圧縮したものを解凍する際、鮮明度が落ちずに元通りの画像で開けますでしょうか?

Aベストアンサー

●大きなサイズのファイルを分割して送付

+Lhaca 1.20 デラックス版での分割方法
http://park8.wakwak.com/~app/Lhaca/

 1. インストールは、ダウンロードした Lhaca120.exe を実行する。
 2. デスクトップに作成された +Lhaca のショートカットに、
   対象のファイルをALTキーを押しながらドロップする。
 3. 保存場所を聞いてくるので、望みの場所を指定する。
   (圧縮形式は、相手が解凍できる形式を選ぶ。)
 4. 分割されたファイル群と結合用のバッチファイルが作成される。
   (デフォルトでは 1.2MB を上限として分割される。)
   (このサイズは +Lhaca で変更できる。)
 5. (4)のファイル全てを、容量を超えないようにメールに添付して送信
   する。
   (添付ファイル総数を本文に明記すること。)
 6. 受け取った側は、全ての添付ファイルを一箇所に集めて、バッチファ
   イルを実行する。
   (操作手順は、本文に明記すること。)
 7. 分割されたファイルが結合されるので、結合された圧縮ファイルを解
   凍する。
 8. 9MBのファイルが解凍されるので、作業する。


これでどうかな!?

※他の圧縮ソフトも分割機能が備わっていると思うが・・・

●大きなサイズのファイルを分割して送付

+Lhaca 1.20 デラックス版での分割方法
http://park8.wakwak.com/~app/Lhaca/

 1. インストールは、ダウンロードした Lhaca120.exe を実行する。
 2. デスクトップに作成された +Lhaca のショートカットに、
   対象のファイルをALTキーを押しながらドロップする。
 3. 保存場所を聞いてくるので、望みの場所を指定する。
   (圧縮形式は、相手が解凍できる形式を選ぶ。)
 4. 分割されたファイル群と結合用のバッチファイルが作成される。
   (...続きを読む

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

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

Aベストアンサー

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

QNTFS圧縮したファイルを全部まとめて戻す方法

NTFS圧縮したファイルをプロパティからひとつひとつチェックをはずして戻すのではなく、圧縮されたファイルを全部まとめて元に戻す方法ってあるのでしょうか?

Aベストアンサー

圧縮を解除したいファイルを全て選択した状態で
→プロパティ→NTFS圧縮のチェックを外す→OK

それらのファイルがフォルダに入っているなら
フォルダのプロパティからやってもいい。
(サブフォルダにも適用するか尋ねられるからOKにする)

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ランキング

おすすめ情報