• ベストアンサー

XML→XHTML

はじめまして。。。 初心者で大変恐縮なのですが、質問させてください。。 XMLからHTMLに変換することはできるのですが、XHTMLに変換することはできるのでしょうか? もし可能ならば記述方法など教えてください。教えてください。 このサイトをみれば解るといったURLだけでも結構ですのでよろしくおねがいします。

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

  • ベストアンサー
  • kacchann
  • ベストアンサー率58% (347/594)
回答No.2

>eXtyleをつかいHTML化しています eXtyleというソフトは、 (1)元となるファイル(XMLファイル)に ↓ (2)スタイルシート(XSLTファイル)を適用し ↓ (3)お好きなファイル(HTMLファイルなど。それ以外でもよい)を出力 するソフト。 つまり、たとえば HTMLファイルを出力したい場合は そのための「XSLTファイル」が必要であるし、 また、たとえば XHTMLファイルを出力したい場合は そのための「XSLTファイル」が必要。 つまり、「XSLTファイル」というやつを、 あなたの好きに取り変えたり、書き変えたりすればよい。 XSLTファイル次第ってこと。 -------------------- XSLTの書法(書き方)はご存知なのかな? HTMLファイル出力用のXSLTが自力で書けるならば、 あとは「XHTMLの記述法」を知ってさえいれば、 XHTMLファイル出力用のXSLTもすんなり書けると思うよ。 (検索キーワード:XML XHTML XSLT サンプル) ■XHTMを出力するためのXSLTサンプル: http://frog.raindrop.jp/knowledge/archives/000100.html http://msugai.fc2web.com/java/XML/XSLTelements.html http://www.atmarkit.co.jp/fxml/tanpatsu/xslt/xslt06.html ■XHTMLの記法入門 http://tohoho.wakusei.ne.jp/ex/xhtml.htm http://www.cityfujisawa.ne.jp/~yanai/xml/struct/step3.html http://www.cityfujisawa.ne.jp/~yanai/xml/struct/step2.html -------------------- つまり、 >HTMLでなくXHTMLにするにはDTDを付け加えれば出来てしまうということなのですか? そうではなく、 XHTMLを出力したいのであれば、(スタイルシートである)XSLTファイルを XHTML専用のものに変える必要があるということ。 そして基本的にはそれは自力で書く必要がある。

oops0517
質問者

お礼

丁寧なご回答ありがとうございます! XSLTについてはまだ勉強したてで、よくわかっていなかったのですが、教えていただいたURLでおおよその理解が出来ました! XHTMLに自力で変換するにはもうちょっと勉強しなくてはならなそうです(苦笑)。 ただサンプルのURLを教えていただいたので、流用しながらもっと勉強していきたいと思います! 無知の初歩的な質問に対してわざわざご回答いただいたお二方、本当にありがとうございました!

その他の回答 (1)

noname#6715
noname#6715
回答No.1

>XMLからHTMLに変換することはできるのですが、 >XHTMLに変換することはできるのでしょうか? 似たようなものです。 ・・・というより、 HTMLの要素をXMLで定義しなおしたのがXHTMLなので、XHTMLは「XMLの一種」です やり方: XMLを書けるようですので 文書型定義を付け替えてください。 また、HTMLでは区別されない「大文字」と「小文字」の 違いはXML(XHTML)では区別されます その点を気をつければ完成です。 参考: http://www.cityfujisawa.ne.jp/~yanai/xml/ 一応混乱しているようですので XMLSchemaのことを読むといいでしょう さらに混乱しますけどね(汗)

oops0517
質問者

お礼

himajin2003さんありがとうございます! 早速、参考URLをみて勉強してみたいと思います!

oops0517
質問者

補足

ごめんなさい・・ちょっとまだ知識不足でいまいち解りません・・・汗 質問の仕方が悪かったのかもしれませんが・・ 作業的にはまずXMLとXSLの2つのファイルをつくり、eXtyleをつかいHTML化しています。 それをHTMLでなくXHTMLにするにはDTDを付け加えれば出来てしまうということなのですか? 無知すぎて笑われてしまう質問かも知れませんが、教えてください・・・