XSLT変換
- 前のページ XSLT言語
- 次のページ XSLT <template>
実例研究:XSLTを使用してXMLをXHTMLに変換する方法
次のセクションでこの例の詳細を説明します。
正しいスタイルシート宣言
ドキュメントを XSL スタイルシートのルート要素として宣言するのは <xsl:stylesheet> または <xsl:transform> です。
注記: <xsl:stylesheet> と <xsl:transform> は完全に同義であり、どちらも使用できます!
W3CのXSLT標準に従って、XSLスタイルシートを宣言する正しい方法は以下の通りです:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
または:
<xsl:transform version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
XSLT の要素、属性および特性にアクセスするには、ドキュメントの先頭に XSLT 命名空間を宣言する必要があります。
xmlns:xsl="http://www.w3.org/1999/XSL/Transform" は公式の W3C XSLT 命名空間を指しています。この命名空間を使用する場合、属性 version="1.0" を含める必要があります。
元の XML ドキュメントから始める
以下のこの XML ドキュメント("cdcatalog.xml")を XHTML に変換する必要があります:
<?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>
Internet Explorer と Firefox で XML ファイルを確認する:
XML ファイルを開く(通常リンクをクリックすることで行います) - XML ドキュメントは色分けされたコードでルート要素および子要素が表示されます。要素の左側のプラスまたはマイナス記号をクリックして要素の構造を展開または折りたたみます。元の XML 源ファイル(プラスおよびマイナス記号が含まれないもの)を確認するには、ブラウザのメニューから「ページソースを表示」を選択してください。
Netscape 6 で XML ファイルを確認する:
XMLファイルを開き、XMLファイル内で右クリックして「ページソースを表示」を選択します。XMLドキュメントは色付けされたコードとして表示されます。
Opera 7でXMLファイルを確認します:
XMLファイルを開き、XMLファイル内で右クリックして「フレーム」/「ソースコードを表示」を選択します。XMLドキュメントはテキストとして表示されます。
XSLスタイルシートの作成
次に、変換テンプレートを持つXSLスタイルシート("cdcatalog.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>私のCDコレクション</h2> <table border="1"> <tr bgcolor="#9acd32"> <th align="left">タイトル</th> <th align="left">アーティスト</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ドキュメントにリンクします
XMLドキュメント("cdcatalog.xml")にXSLスタイルシートの参照を追加します:
<?xml version="1.0" encoding="ISO-8859-1"?> <?xml-stylesheet type="text/xsl" href="cdcatalog.xsl"?> <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>
もしあなたのブラウザがXSLTに対応している場合、あなたのXMLをスムーズに変換します。 変換 XHTML。
次のセクションで、上記の例の詳細を説明します。
- 前のページ XSLT言語
- 次のページ XSLT <template>