• 締切済み

独学でXMLの有効性を感じながら勉強できる方法を教えてください。

XMLを使うメリットがいまいち見えてきません。 XMLのメリットはデータ交換と他端末対応、EZ-WebやPDA? のページを作成するのに便利そうとは思うのですが。。 XMLの有効性が伝わってくる内容のサンプルを作成しながら楽しく 学習できる書籍やサイトはありますでしょうか? 例えば、CGIやDBであれば、xxによるWeb-DBシステムの作成といった感じで、独学で実際に試して形にできるので有用性が簡単に理解できるのですが、XMLの場合だと別にXMLでなくても良いのでは。。と思うようなサンプルや複雑すぎて難しいものが多いような気がします。 あまり小規模な事には使わないからなのかもしれませんが、シンプルなサンプルで学習したいです。 大きな事例はインターネット上に多少載っていますが、実際に現場で、どのようにWebページを製作し、データ交換を行うのかが見えないです。 ・データ交換に関して XMLは、HTMLと違いタグに構造化された情報を持たせられるということで、CSVの行列といった簡単な情報でなく、RDBのようにデータを使用でき、かつFireWallのポートも気にせずにSOAPプロトコルを使用しリモートとのデータ交換ができるから良いということなのでしょうか? ・他端末対応に関して EZ-Webページを作成する際に手間だったので XML、XSLという組み合わせは有効そうに思えます。 ただ、Webページ作成だけに限れば、XSLなどWebデザイナーが覚えるかというと敷居が高いような気がしますし、 XSL対応のWYSYWIGエディタがあるかというとそうでもなく、 デザインを凝らないページであればXSLでも良い気がしますが、既存のHTMLとスタイルシートの方が早くて簡単な気がします。 XML、XSLという組み合わせは携帯などデータ重視のページでのみ利用されていくのかと感じてしまうぐらいです。 ふと、本屋に行き個人レベルでXMLのメリットを感じるには難しく学習へのきっかけが欲しいです。

  • XML
  • 回答数2
  • ありがとう数7

みんなの回答

  • jakarta
  • ベストアンサー率38% (607/1597)
回答No.2

デザイナーですのでwebコンテンツ制作の専門家という視点でお答えします。 >・他端末対応に関して CocoonやBayServer(旧:BXS)はご存知ですか?これらはXML文書を PDFやSVG、XHTMLなどでプレゼンテーションすることができます。 とりあえずXMLで何ができるか試したいというのであればおすすめできます。 >Webページ作成だけに限れば、XSLなどWebデザイナーが覚えるかというと敷居が高いような気がしますし、 AdobeのinDesignではWYSWYGでXSLが作成できます。またXMLのデータを XSLに関連づけし任意のデータに吐き出すことが可能です。 これは印刷・PDF・WEBとデータをXMLで共有できることを意味します。 ものすごく便利で可能性を秘めたものですが、印刷業界での シェアにおいて従来のQuarkXpressが不動の地位にあること、 市販の参考書にXMLについて書かれたページがなかったりする ところを見ると関心が低いのかもしれません。 XMLだけではなくXMLベースの他のアプリケーション(SMIL,SVG)も 注目されてはいかがでしょうか。 個人で使用できるXMLの利用としては定型的なフォーマットをXSLで 作成し、データをXMLで作成することです。 JavaのXalanなどを使用してXMLとXSLからHTMLで出力させることが 可能です。

  • COOKY2
  • ベストアンサー率28% (2/7)
回答No.1

>XMLを使うメリットがいまいち見えてきません。 私も、2,3年前から、自由にマークアップできるXMLの「DBMSとシームレスに連携が取れる」とか「改定を繰り返しながらも、、走りながら運用ができる」とか、「HTMLベースで、システム間の情報交換ができる」等の歌い文句をさまざまなセミナで耳にしており、「XML!」「XML!」と、何とか物にしたいと実際どう現状に適用させればよいのか判らず、最近まで過ごしてまいりました。 私の場合、JAVAを習得しなければならなくなった時、やっと、XMLに触れることができました。 JAVA暦はまだ半年ですが、JAVAアプリケーションの初期化ファイルとして使っております。DBMSまでとわ言わず、テキストファイルでは、心もとない、、こんなときXMLは役に立ちます。XML自体、非常に軽い、テキストベースのデータベースですよね。 >FireWallのポートも気にせずに HTMLが使えれば、大丈夫ですよね。社外のお天気情報のXMLに、ファイアウォール経由でアクセスできましたよ。 最後に、、 XMLは、それ自体が手段ではなくて、道具に過ぎません。 だから、XMLだけにスポットを当てていると、どう使えばよいのか見えてきませんよ。何か目的があって、システムを構築していくとき、きっと出逢うと思います。

matchori
質問者

お礼

私と同じような方がいらっしゃって嬉しく思います。 確かに、単体ではメリットはわかりずらいですよね。 私も早く実際に仕事で使ってみたいです。 軽いのは良いですね(^^)

関連するQ&A

  • XMLからHDMLを生成したいのですが・・・。

    XMLからXSLスタイルシートを使って、携帯Webコンテンツ用のソースを生成したいのですが、そのようなスタイルシートのサンプルコードはないでしょうか? また、HDML・HTML両方に対応できるようなXMLのサンプルはないでしょうか? もしあればURLおよびソースのどちらでもかまいません。教えてください。

    • 締切済み
    • XML
  • XML → HTML の確認方法

    閲覧ありがとうございます。 まったくの初心者で、かなり初歩的なことだと思うのですが質問させていただきます。 XML文書についてなんですが、Web上でHTMLとして確認したいのですが、それができなくて困っています。泣 XMLの知識がまったくなかったので、色々調べてみたのですが、結果 XML + XSLスタイルシート → HTMLに変換されてWeb上でみれる・・・ということが分かりました。 また、その変換に processorが必要・・・ということも分かりました。 パソコン内にXSLスタイルシートを発見し、HTMLに変換するのに、Easy XSLT processortというのもダウンロードしてみたのですが、使いたかがよくわからず、使えずにいます・・・泣。 また、XML文書につきましては、あるツールを使って簡単に作成しているのでXML文書についての知識は本当にありません。XSLスタイルシートももともと入っていたものなのでよくわかりません。 XML文書もXSLスタイルシートもあるので、このEasy XSLT processorがうまく使えればWeb上でうまく表示されると思うのですが、どのようにすればいいのでしょうか(><)? XMLの部分にXML文書のファイルを、XSLの部分にXSLスタイルシートのファイルを選択しているのですが、毎回「オートフォーメーションサーバーはオブジェクトを作成できません」「undifindはNullまたはオブジェクトではありません」と言われて、終了してしまいます。 本当に初歩的なことでごめんなさい。 長文を読んで下り、ありがとうございます。ご回答お待ちしております。 (補足) 今までWindowsXPを使用しておりまして、作成したXML文書をクリックするだけでWeb上で文書が表示され、確認することができてたのですが、最近Windows7にかわってから、作成したXML文書をクリックしてもWeb上でうまく表示されなくなってしまいました(><)。 見られなくなった、というよりは、今まで表のように見れていたものが、ずらずら~とした単なる文字の羅列になってしまいました。泣 もしprocessorうんぬんの問題ではない場合も、ご指摘いただけると幸いです。

    • 締切済み
    • XML
  • XML→PDF出力

    WebページでXMLで表示している内容をPDFとして出力する方法を 教えて下さい。 XML→XSLT→XSL Formatting Object→XSL Formatter→表示 のようにするみたいですが、 Apacheのxerces-j、xalan-j、FOPなどを 用いて実際にはどのようなソース、手順で作成するのか知りたいです。 よろしくお願いします。

    • ベストアンサー
    • XML
  • XSLTでの複数のXML検索結果を統合するには?

    初歩的な質問でごめんなさい。 XSLTを使って複数のXMLを検索した結果を、表示したいのですが、結果を1つのテーブルに統合するにはどうすればいいのでしょう。 次のスクリプトを基に作りたいのですが。 function search (keyword) { node = thexsl.XMLDocument.selectSingleNode("//xsl:for-each"); if(keyword) node.setAttribute("select", "//data[contains(word, '" + keyword + "')]"); else node.setAttribute("select", "//data"); str = thexml.XMLDocument.transformNode(thexsl.XMLDocument); view1.innerHTML = str; } 次のファイルを利用して検索したいです、 <xml id="thexml1" src="db1.xml"></xml> <xml id="thexml2" src="db2.xml"></xml> <xml id="thexml3" src="db3.xml"></xml> <xml id="thexsl" src="db.xsl"></xml> xmlファイルの内容 <?xml version="1.0" encoding="utf-8" ?> <dataroot xml:lang="ja"> <data>・・・</data>  ・・・ </dataroot> xslファイルの内容 <?xml version="1.0" encoding="utf-8" ?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:template match="/"> <table> <tr>・・・</tr> <xsl:for-each select="//data"> <tr>・・・</tr> </xsl:for-each> </table> </xsl:template> </xsl:stylesheet> よろしくお願いします。

    • 締切済み
    • XML
  • IEのmsxmlでxmlをcsvに変換

    現在IEにくっついているmsxmlでxmlファイルをcsvに変換させるxslを作成しています。 msxmlでもmsxml3でも動くようなxslファイルを作成したいので ワーキングドラフト仕様のxslの記述を使用しようと思い下記のようなXMLとxslを作成しました <?xml version="1.0" encoding="Shift_JIS"?> <?xml-stylesheet type="text/xsl" href="CSV.XSL"?> <root> <data> <record> <aaaa>1234</aaaa> <bbbb>5678</bbbb> <cccc>9abc</cccc> <dummy name="ENDRECORD"></dummy> </record> <record> <aaaa>1122</aaaa> <bbbb>3344</bbbb> <cccc>5566</cccc> <dummy name="ENDRECORD"></dummy> </record> </data> </root> xslのposition()が使えないので xmlに <dummy name="ENDRECORD"></dummy> を追加して xslで一件分のデータの終わりを認識させています -csv.xsl- <?xml version="1.0" encoding="Shift_JIS"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl" version="1.0"> <xsl:template match="/"> <xsl:apply-templates select="root/data/record"/> </xsl:template> <xsl:template match="root/data/record"> <xsl:for-each select="*"> <xsl:choose> <xsl:when test="./@name[(.='ENDRECORD')]">&#xA;</xsl:when> <xsl:otherwise><xsl:value-of select="."/>,</xsl:otherwise> </xsl:choose> </xsl:for-each> </xsl:template> </xsl:stylesheet> しかし、csvのカンマ編集が以下のようになってしまいます。 1234,5678,9abc, ←最後にカンマが残ってしまう 1122,3344,5566, どなたかワーキングドラフト仕様でも勧告後の仕様でも動くような、csvに変換するxslを作成された方はいませんでしょうか。

    • ベストアンサー
    • XML
  • XMLについて

    HTMLで書かれたソースデータの中にはWebページ上で表示されている文字が記述されているじゃないですか?XMLで書かれたソース内にもそのような文字がすべて記述されているのですか? XMLを用いてWebページを作るということができるのでしょうか? XMLを使用しているページを知っていたら教えてください。お願いします。

    • ベストアンサー
    • XML
  • PHPでXMLを表示させたときの外部エンティティの挙動に関して

    XML+XSLでHTMLを生成する上で、PHPを経由する場合と、しない場合で、 外部エンティティの挙動が異なっていて悩んでいます。 具体的には、  ・XML+XSL+外部エンティティ → 意図通りHTML生成  ・PHP+XML+XSL+外部エンティティ → 意図通りHTML生成されない(外部エンティティが生成されない) こういうものなのでしょうか? もし、こういう仕様であれば、なにか対応策はあるのでしょうか? ソースと生成されたHTMLは下記の通りです。 【Though.php】 <?php header( 'Content-Type: text/html; charset=UTF-8' ); $xml = new DomDocument(); $xml->load( 'MainData.xml' ); $xsl = new DomDocument(); $xsl->load('Main.xsl'); $processor = new xsltprocessor(); $processor->importStyleSheet($xsl); echo $processor->transformToXML($xml); ?> 【MainData.xml】 <?xml version="1.0" encoding="utf-8"?> <?xml-stylesheet type="text/xsl" href="Main.xsl" ?> <!DOCTYPE books [ <!ENTITY sub_data SYSTEM "SubData.xml"> ]> <root> <node1>TEST1</node1> <node2>&sub_data;</node2> </root> 【Main.xsl】 <?xml version = "1.0" ?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:template match="/"> <html> <xsl:apply-templates /> </html> </xsl:template> <xsl:template match="@*|node()"> <xsl:copy> <xsl:apply-templates /> </xsl:copy> </xsl:template> </xsl:stylesheet> 【SubData.xml】 <?xml version="1.0" encoding="utf-8"?> <sub_data>Test2</sub_data> 【XML+XSL+外部エンティティで生成されるHTML(ブラウザで直接MainData.xmlを開いた場合)】 <html><?xml-stylesheet type="text/xsl" href="Main.xsl" ><root><node1>TEST1</node1><node2><sub_data>Test2</sub_data></node2></root></html> 【PHP+XML+XSL+外部エンティティで生成されるHTML(ブラウザでThrough.phpを開いた場合)】 <html> <?xml-stylesheet type="text/xsl" href="Main.xsl" ><root> <node1>TEST1</node1> <node2></node2>    //←node2の中がカラッポになっている。。。 </root> </html> ※生成されたHTMLは、IE8の開発者ツールで確認しています。 XMLやPHPは最近やり始めたのでトンチンカンなことを言ってるかもしれませんが、よろしくお願いします。

    • ベストアンサー
    • PHP
  • xmlかMySQLか

    現在、PHPを用いて、簡単なデータを扱うWebページを作成しようと考えております。 簡単な例を挙げますと、 例えば、Webページ上で営業40人の営業成績を表示するプログラムとします。 (この例は、あくまでも例えです。) データベースのフィールドは2つのみで、 営業名、成績です。 行数は40(営業人数)です。 PHPでそれらの値をデータベースから取得し、ページに表示させます。 Aさん‥60点 Bさん‥80点 Cさん‥90点  ・  ・  ・ この場合、データベースとしては、MySQLかXMLかどちらを用いた方が良いでしょうか? 素人の考えですが、xmlだとサーバーを選ばないので良いのかと想像します。 MySQLだとインストール必要かもしれませんので。 それぞれのメリット、デメリットがあればお教え頂ければ幸いです。 よろしくお願い致します。

    • ベストアンサー
    • PHP
  • HTMLとXML

    XMLとHTMLの言語の内容はどのくらい違うものですか? HTML言語をある程度マスターしていればXMLに対応できるのか、疑問に思っています。 またHTMLで書かれたWEBページとXMLで書かれたWEBページでは、大きな点で何が異なってくるのでしょうか?最近はXMLのほうが主流になりつつある、なんてよく聞きますが・・・

  • XSLってもう古いのですか?

    XSLとXMLを組み合わせたWEBサイトを構築使用と考えていますが、初心者なので書籍を探しても、XSLではあまりヒットしません。 ひょっとしてXSLってもう古いのでしょうか?HTML+CSSは知っていますが、XSLとXMLの組み合わせは、今は他の言語にとって変わられているのでしょうか?もしそうであれば、それは何か?を教えてもらえないでしょうか。 また、XSLが古いことがないのであれば、お勧めの書籍があれば教えてください。

    • ベストアンサー
    • XML

専門家に質問してみよう