XSLT変換

インスタンス研究: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文書はテキストとして表示されます。

"cdcatalog.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>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>

"cdcatalog.xsl"を確認します

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。

結果を確認

次のセクションで、上記の例の詳細について説明します。