• ベストアンサー

XMLのHTMLへの変換 (初心者)

例えば、以下のようなsample.xmlをWebブラウザで表示する為には どのようにするればよろしいのでしょうか。どなたか教えてください。  <?xml version="1.0" encoding="Shift_JIS" ?> - <cars> - <car> <name>乗用車</name> <price>150</price>  </car> </cars>

  • XML
  • 回答数3
  • ありがとう数6

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

こんにちわ。 もう1ヶ月以上たっているから、遅いかもしれませんが 現在私も同じような勉強をしていて、難しいことはわからないけど 質問内容を見て「私もこのレベル!!」と思ったので参加してみます。 まず、XMLってそのままではブラウザーに表示できないようです。 HTMLと違って表示機能はもっていなくて、質問に書かれていたものは 単なるデータのみのようですね。  他に方法はたくさんあるのかもしれませんが、私の勉強したところによると XMLをブラウザーに表示する為には、他にXSLと言われるスタイルシートを 用意して、XML(データ)+XSL(スタイルシート)の2ファイル(この場合は) を元に、XSLT(extensible Stylesheet Language Transformation)と呼ばれる 変換ツールを使って、HTMLや他の形式に変換して初めて表示できる (スタイルシートによっては、音声として聞ける)状態のファイルに なるようです。  このXSLTというツールは、無料でダウンロードできるものが多数あるようです。 ちなみに私はApache(アパッチ)のサイトからダウンロードしました。 質問のXMLには、以下の2行と、下の1行をかぶせて、 <?xml version="1.0" encoding="Shift_JIS" ?> <PAGE> ・・・・・・・・・・・・・・・・・・・・・・ </PAGE> 別に用意するスタイルシートは以下のような感じに作るのかなぁ。。。。 <?xml version="1.0" encoding="Shift_JIS"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/ 1999/XSL/Transform" version="1.0"> <xsl:output method="html" encoding="Shift_JIS"/> <xsl:template match="/"> <xsl:apply-templates/> </xsl:template> <xsl:template match="PAGE"> <HTML> <BODY> <xsl:apply-templates/> </BODY> </HTML> </xsl:template> <xsl:template match="cars"> <xsl:apply-templates/> </xsl:template> <xsl:template match="car"> <xsl:value-of select="name"/><BR/> <xsl:value-of select="price"/><BR/> </xsl:template> </xsl:stylesheet> そして、XSLTツールで変換するとHTMLができると思いますよ。 http://www.atmarkit.co.jp/fxml/tanpatsu/xslt/xslt00.html には、XMLをHTMLに変換する方法について、サンプルをもとにやり方とか 書かれています。結構参考になるので覗いてみてはいかがですか?

参考URL:
http://www.atmarkit.co.jp/fxml/tanpatsu/xslt/xslt00.html

その他の回答 (2)

  • nonchi
  • ベストアンサー率43% (16/37)
回答No.2

補足です。 以前の質問に、似たようなものがありました。

参考URL:
http://www.okweb.ne.jp/kotaeru.php3?q=8060
  • nonchi
  • ベストアンサー率43% (16/37)
回答No.1

質問の意味を取り違えてたらごめんなさい。 ブラウザ(IE)で、HTMLに変換後のソースを見たいということでしたら以下のとおりです。(私も教えてもらったのですが) ■セットアップ 1. 下記からダウンロード。 http://msdn.microsoft.com/downloads/default.asp?url=/downloads/sample.asp?url=/MSDN-FILES/027/000/543/msdncompositedoc.xml 2. 実行して適当なディレクトリに解凍(セットアップされる訳じゃなくて単に解凍されるだけ)。 3. 出てきた2つのinfファイルを右クリックしてセットアップ。 4. IEが起動していたらいったん終了する。 ■使い方 IEの右ボタンに「Validate XML」と「View XSL Output」が増えてます。 XML+XSLTのページを表示した状態で「View XSL Output」をクリックするだけです。 ついでに、「Validate XML」てのはXMLにエラーが無いかチェックするものです。 でも、質問は変換されたHTMLをブラウザで表示したいということなのかもしれませんね?

関連するQ&A

  • PHPで、XML

    XMLの内容をPHPを使って表示したいのですが どの様にすればいいかがよくわかりません。 インターネットで探して見ても説明が難しかったりで、 よくわかりません。 できれば簡単なサンプルを出して、説明していただけないでしょうか。 表示したいXMLファイルを以下に出しておきます。 <?xml version="1.0" encoding="shift-jis" ?> <member> <list> <name>John</name> <nationality>USA</nationality> </list> <list> <name>Tom</name> <nationality>USA</nationality> </list> </member> テーブルを使って name nationality John USA Tom USA というふうにしたいです。

    • ベストアンサー
    • PHP
  • XMLファイルからXML Schemaを参照する方法?

    XMLファイルの設計をしています。 今まではDTDを使っていたのですが、 勉強するとXML SchemaのほうがXMLの規則にそっていたり、 データ型が多かったりして都合が良い面があると学びました。 そこでXML Schemaを使いたいと思うのですが、 XML SchemaとメインのXMLのファイルはどのように関係させたら良いのでしょうか? DTDのときは以下のように書いていたと思います。 <!DOCTYPE root SYSTEM "sample.dtd" > このような記述をXML Schemaのときには、どのように記載するのだろうと 疑問に思いました。 私なりに調べてみたのですが、 XML Schemaの記述方法は、大まかに理解したのですが、 関係方法をどうすれば良いかは、見つけられませんでした。 本を読んでも、書かれているように思えません。 以下の2つのファイルがあった場合、 【element1.xml】は妥当なXML文書だそうですが、 どのように関連付いているのでしょうか? 【element.xs】 <?xml version="1.0" encoding="Shift_JIS" ?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <!-- 要素宣言 --> <xs:element name="売上高" type="xs:integer" /> </xs:schema> 【element1.xml】 <?xml version="1.0" encoding="Shift_JIS" ?> <売上高>1000</売上高> もしよろしければ、教えて頂けませんか? ぜひご教示お願いいたします。

    • ベストアンサー
    • XML
  • xml

    今契約してるサーバーがSQLをつけるとものすごい金額になってしまうので。XMLに挑戦中です。 作ってみたのですが、ソースが間違ってる?のか表示できません、教えてください. name.xml <?xml version="1.0" encoding="shift-jis"?> <test no="1"> <name>test</name> <no>10</no> <tel>123-456-789</tel> </test> test.php <html> <head> <title>sample1</title> </head> <body> <?php $doc->load("name.xml"); $name = $doc->selectSingleNode("test"); $list = $name->selectNodes("*"); $no = $list->item(1); $text = " 番号 " . $no . "<br>"; print $text; ?> </body> </html>

    • ベストアンサー
    • PHP
  • phpからxmlの上書き

    質問よろしくお願いします。 php5を使っています。 すでに置いてあるxmlをphpで上書きしたいのですがやり方がわかりません。 <?xml version="1.0"?> <cars> <car> <maker>TOYOTA</maker> </car> </cars> に書き込むと <?xml version="1.0"?> <cars> <car> <maker>TOYOTA</maker> </car> <car> <maker>NISSAN</maker> </car> </cars> となるようにしたいです。 どなたか分かる方教えてください。

    • ベストアンサー
    • PHP
  • IEが表示できないXML

    以下のようなXML <?xml version="1.0" encoding="Shift_JIS"?> <aaa> <■漢字/> </aaa> IEで表示しようとするとエラーになります。 encoding が間違っているのでしょうか。 よろしくお願いします。 ----- XML ページを表示できません XSL スタイル シートを使用した XML 入力は表示できません。エラーを訂正してください。 [更新] ボタンをクリックするか、または後でやり直してください。 -------------------------------------------------------------------------------- 無効な文字で名前が始まりました。リソース 'file:///sample.xml' の実行エラーです。ライン 3、位置 3 <■漢字/> --^

    • ベストアンサー
    • XML
  • xmlについてです.

    外部参照をするように記述をしたのですが, 実行するとどのブラウザでも表示されません. 原因はなんでしょうか. お願いします. os: windows7 32bit sp ブラウザ:IE9,firer fox6.0,OPERA11.50, ______________________ <?xml version="1.0" encoding="Shift_JIS" ?> <!DOCTYPE ca [ <!ENTITY rb SYSTEM "rb.xml"> ]> <ca id="001"> <title>料理</title> <cn>メニュー</cn> <rb>&rb;</rb> </ca> ______________________ rb.xml <?xml version="1.0" encoding="Shift_JIS" ?> <rb> <main>コース料理</main> <stand> <id s="B"> ハンバーグ </id> <id s="M"> ステーキ </id> <id s="T"> オムライス </id> </stand> </rb> ______________________ 実行すると以下のような画面になります <ca id="001"> <title>料理</title> <cn>メニュー</cn> <rb/> </ca>

    • 締切済み
    • XML
  • xmlのデータを条件を絞って表示する

    PHPでxmlのデータを条件を絞って表示したいと思っています。 xmlデータをPHPで作成し、結果表示するというのはサンプルを参考に作成できたのですが、条件の絞り方がわからず困っています。 <?php $xmlstr = <<<XML <?xml version="1.0" encoding="UTF-8" standalone='yes'?> <item> <name>牛肉</name> <value>ヒレ</value> <price>500</price> </item> <item> <name>豚肉</name> <value>ヒレ</value> <price>400</price> </item> <item> <name>豚肉</name> <value>もも</value> <price>300</price> </item> <item> <name>鶏肉</name> <value>もも</value> <price>200</price> </item> ・・・・・・ ・・・ XML; ?> というデータを 例えば<value>が(もも)に当てはまるものだけや、 <price>が400以下のものなど、条件を絞って表示したいと思っています。できれば、プルダウンのセレクトメニューを使用して条件をしぼりたいと思っています。 どうすればいいかまったくわかりません。 サンプルを見ながら手を加えるぐらいしかできないレベルです。 よろしければ教えてください。 また、作成したプログラムは携帯でも表示できますでしょうか? セレクトメニューが携帯では表示できないことはしっていますので、チェックボタンなどを使って表示出来ればいいなと思っています。

    • 締切済み
    • PHP
  • XTHMLで<?xml version=

    XHTMLで、ez web用のサイトを制作しています。 携帯サイト制作用のソフトウェアを使って作成していますが、ez webのみ表示させることができません。 いろいろ実験してみると以下のような記述があり、(1行目) <?xml version="1.0" encoding="Shift_JIS"?> この表記がなければ、表示できることがわかりました。 この一行は必ず必要なのでしょうか? なくても構いませんか? すみません、アドバイスのほどよろしくお願いします。

  • xmlファイルが上手にHTMLに変換されない理由

    http://www6.airnet.ne.jp/manyo/xml/ こちらのサイトを参考にxmlを学んでいます。 下記のようにxmlファイルを作りIE9で表示しても コードしか表示されません。 他のサイトでも調べたのですが、原因が分かりませんでした。 ------------------------- 【C:\test\basic.xsl】 ------------------------- <?xml version="1.0" encoding="Shift_JIS"?> <?xml-stylesheet type="text/xsl" href="basic_1.xml"?> <manyosyu> <volume no="1"> <poem> <pno>8</pno> <mkana> 熟田津尓 船乗世武登 月待者 潮毛可奈比沼 今者許藝乞菜 </mkana> <poet>額田王(ぬかたのおおきみ)</poet> <yomi> 熟田津に船乗りせむと月待てば潮もかなひぬ今は漕ぎ出でな </yomi> <image>image/m0008.jpg</image> <mean>熟田津(にきたつ)で、船を出そうと月を待っていると、 いよいよ潮の流れも良くなってきた。 さあ、いまこそ船出するのです。 </mean> </poem> </volume> </manyosyu> ------------------------- 【C:\test\basic_1.xml】 ------------------------- <?xml version="1.0" encoding="Shift_JIS"?> <xsl:stylesheet version="1.0" xmlns:xsl="basic.xsl"> <xsl:template match="/"> <html> <head> <title>たのしいXML: 基本サンプル-1</title> </head> <body> <p align="center">万葉集第1巻抜粋: とにかく表示してみよう</p> <p><xsl:value-of select="manyosyu" /></p> </body> </html> </xsl:template> </xsl:stylesheet>

    • ベストアンサー
    • XML
  • XSLで、XMLの空タグを制御したい。

    値がないXML文書に、 <exsample /> こう書かれてしまうものを、 <exsample></exsample> このように出力したいのですが、出来ずでした。 以下は、私のやり方です。 ■ XSL <?xml version="1.0" encoding="Shift_JIS"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xalan="http://xml.apache.org/xslt"> <xsl:output method="xml" encoding="Shift_JIS" indent="yes" xalan:indent-amount="4"/> <xsl:template match="/"> <xsl:copy-of select="."/> </xsl:template> </xsl:stylesheet> ■ XML <?xml version="1.0" encoding="Shift_JIS"?> <root> <section> <category> <exsample1>value</exsample1> <exsample /> </category> </section> </root> ご教授、よろしくお願いいたします。

    • ベストアンサー
    • XML

専門家に質問してみよう