XML:XML XLSのXLST 2


XSLT-クライアント
あなたのブラウザがXSLTをサポートしているなら、ブラウザで文書をXHTMLに変換するために使用することができます.
JavaScriptソリューション
前の章では、XSLTを使ってXMLドキュメントをXHTMLに変換する方法を説明しました.XMLファイルにXSLスタイルシートを追加し、ブラウザで変換を完了しました.
この方法の効果が優れていても、XMLファイルにパターン表参照が含まれていても、常に満足させられない(例えば、XSLTを識別できないブラウザでは効果がない).
より一般的な方法は、JavaScriptを使用して変換を完了することである.
JavaScriptを使うことによって、私達はできます.
  • ブラウザ確認テスト
  • ブラウザと利用者のニーズによって異なる様式表
  • これがXSLTの魅力です.XSLTの設計目的の一つは、フォーマットを別のフォーマットに変換することを可能にし、異なるタイプのブラウザと異なるユーザーニーズをサポートすることである.
    ブラウザ端のXSLT変換は必ず未来のブラウザで実行される主要な任務の一つになります.同時に、特定のブラウザ市場での成長(点字、ネットワークプリンタ、聴覚設備など)も見られます.
    XMLファイルとXSLファイル
    これは前の章ですでに展示されているXML文書を見てください.
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <catalog>
    <cd>
    <title>Empire Burlesque</title>
    <artist>Bob Dylan</artist>
    <country>USA</country>
    <company>Columbia</company>
    <price>10.90</price>
    <year>1985</year>
    </cd>
    .
    .
    .
    </catalog>
    このXMLファイルを表示
    および添付のXSLスタイルシート:
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <xsl:stylesheet version="1.0"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

    <xsl:template match="/">
    <html>
    <body>
    <h2>My CD Collection</h2>
    <table border="1">
    <tr bgcolor="#9acd32">
    <th align="left">Title</th>
    <th align="left">Artist</th>
    </tr>
    <xsl:for-each select="catalog/cd">
    <tr>
    <td><xsl:value-of select="title" /></td>
    <td><xsl:value-of select="artist" /></td>
    </tr>
    </xsl:for-each>
    </table>
    </body>
    </html>
    </xsl:template>

    </xsl:stylesheet>
    このXSLファイルを確認してください
    このXMLファイルにはXSLファイルへの参照が含まれていません.
    重要事項:上のこの言葉は、XMLファイルは複数の異なるXSLパターン表を用いて変換することができるという意味です.
    ブラウザでXMLをXHTMLに変換します.
    これはクライアントでXMLファイルをXHTMLに変換するためのソースコードです.
    <html>
    <body>

    <script type="text/javascript">

    // Load XML
    var xml = new ActiveXObject("Microsoft.XMLDOM")
    xml.async = false
    xml.load("cdcatalog.xml")

    // Load XSL
    var xsl = new ActiveXObject("Microsoft.XMLDOM")
    xsl.async = false
    xsl.load("cdcatalog.xsl")

    // Transform
    document.write(xml.transformNode(xsl))

    </script>

    </body>
    </html>
    ヒント:JavaScriptの書き方がわからないなら、私たちの『JavaScript教程』を勉強してください.
    最初のセグメントコードは、マイクロソフトのXML解析器の一例を作成し、XMLファイルをメモリにロードしました.第二のセグメントコードは、解像度の他の例を作成し、このXSLファイルをメモリにロードします.最後の行のコードはXSLドキュメントを使ってXMLドキュメントを変換し、結果をブラウザでXHTMLとして表示します.ミッション完了
    IEの中でどうやって働くかを見てください。
    以下は私のテストドキュメントです.
    book s.xml
    book s.xsl
    display.
    book s.xmlは以下の通りです
    Everyday Italian200530.00>本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本本uthor>200529.99Learning XMLErik.Ray200339.95
    book s.xslは以下の通りです
    This is myboks
    bok author

    display.は以下の通りです.
    New Dcument