XSLT チュートリアルlogin
XSLT チュートリアル
著者:php.cn  更新時間:2022-04-20 15:02:22

XSLT変換



ケーススタディ: XSLT を使用して XML を XHTML に変換する方法。

この例の詳細については、次の章で説明します。


正しいスタイルシート宣言

スタイルシートのルート要素は <xsl:stylesheet> または <xsl:transform> としてドキュメントを宣言します。

注: <xsl:stylesheet> と <xsl:transform> は完全に同義であり、使用できます。

W3C の XSLT 標準によれば、XSL スタイルシートを宣言する正しい方法は次のとおりです:

<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL / 変換">

または:

<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"?>
<カタログ>
​ <cd>
​​ <title>エンパイア バーレスク</title>
​​ <アーティスト>ボブ・ディラン</アーティスト>
​​ <国>アメリカ</国>
​​ <会社>コロンビア</会社>
​​ <価格>10.90
​​ <年>1985年
​ </cd>
.
.
</カタログ>

Firefox および Internet Explorer で 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>
​ <本体>
​ <h2>私の CD コレクション</h2>
​ <テーブルボーダー="1">
​​ <tr bgcolor="#9acd32">
                        <th>タイトル</th>
                        <th>アーティスト</th>
​​ </tr>
​​ <xsl:for-each select="カタログ/CD">
​​ <tr>
                        <td><xsl:value-of select="title"/></td>
                        <td><xsl:value-of select="artist"/></td>
​​ </tr>
​​ </xsl:for-each>
​ </表>
​ </body>
​ </html>
</xsl:template>

</xsl:stylesheet>

「cdcatalog.xsl」を表示


XSL スタイルシートを XML ドキュメントにリンク

XSL スタイルシート参照を XML ドキュメント (「cdcatalog.xml」) に追加:

<?xml version="1.0" encoding= "ISO- 8859-1"?>
<?xml-stylesheet type="text/xsl" href="cdcatalog.xsl"?>
<カタログ>
​ <cd>
​​ <title>エンパイア バーレスク</title>
​​ <アーティスト>ボブ・ディラン</アーティスト>
​​ <国>アメリカ</国>
​​ <会社>コロンビア</会社>
​​ <価格>10.90
​​ <年>1985年
​ </cd>
.
.
</catalog>

使用しているブラウザが XSLT と互換性がある場合は、XML を XHTML にスムーズに変換します。

結果を表示する

上記の例の詳細については、次の章で説明します。