ITIT用語

XSLT / Extensible Stylesheet Language Transformations

XSLT(Extensible Stylesheet Language Transformations)は、XMLデータを他の形式に変換するための強力なツールです。以下に、XSLTの詳細な説明を提供します。

基本概念

  • XSLTスタイルシート: XSLTスタイルシートは、XML文書を変換するためのテンプレートを含むXML文書です。スタイルシートは、または要素で始まります。
  • テンプレートマッチング: XSLTは、XML文書の特定の部分に対してテンプレートを適用します。テンプレートは、要素で定義され、match属性を使用してXML文書のどの部分に適用するかを指定します。
  • XPath: XSLTは、XPath(XML Path Language)を使用してXML文書内の要素や属性を選択します。XPathは、XML文書の構造をナビゲートするための言語です。

主な要素

  • <xsl:template>: 特定のパターンに一致するXML要素に適用されるテンプレートを定義します。
  • <xsl:value-of>: 指定されたXPath式の結果を出力します。
  • <xsl:for-each>: 指定されたXPath式に一致する各要素に対して処理を繰り返します。
  • <xsl:if>: 条件が真の場合にのみ処理を実行します。
  • <xsl:choose>: 複数の条件を評価し、最初に真となる条件の処理を実行します。

以下は、シンプルなXML文書をHTMLに変換するXSLTスタイルシートの例です。

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:template match="/">
        <html>
            <body>
                <h2>Book List</h2>
                                   <tr bgcolor="#9acd32">
                        <th>Title</th>
                        <th>Author</th>
                    </tr>
                    <xsl:for-each select="catalog/book">
                        <tr>
                            <td><xsl:value-of select="title"/></td>
                            <td><xsl:value-of select="author"/></td>
                        </tr>
                    </xsl:for-each>
                </table>
            </body>
        </html>
    </xsl:template>
</xsl:stylesheet>

この例では、catalog要素内のbook要素をループし、それぞれのtitleとauthorをHTMLテーブルに変換しています。

タイトルとURLをコピーしました