XML と XSLT

XSLTを使用してXMLドキュメントをHTMLに変換できます。

XSLTを使用してXMLを表示する

XSLT(拡張スタイルシート言語変換、eXtensible Stylesheet Language Transformations)は推奨のXMLスタイルシート言語です。

XSLTはCSSよりもずっと複雑です。XSLTを使用すると、出力ファイルに要素や属性を追加/削除し、要素を再配置および並べ替え、テストを実行し、要素を隠すか表示するかを決定することができます。

XSLTはXMLドキュメント内で情報を検索するためにXPathを使用します。

XSLT 例

以下のXMLドキュメントを使用します:

<?xml version="1.0" encoding="UTF-8"?>
<breakfast_menu>
<food>
<name>Belgian Waffles</name>
<price>$5.95</price>
<description>当店の有名なベルギー菓子粉2枚と、十分な本物のメープルシロップ</description>
<calories>650</calories>
</food>
<food>
<name>Strawberry Belgian Waffles</name>
<price>$7.95</price>
<description>軽いベルギー菓子粉で、ストロベリーとクレームフレッシュで覆われたもの</description>
<calories>900</calories>
</food>
<food>
<name>Berry-Berry Belgian Waffles</name>
<price>$8.95</price>
<description>軽いベルギー菓子粉で、フレッシュベリーとクレームフレッシュで覆われたもの</description>
<calories>900</calories>
</food>
<food>
<name>French Toast</name>
<price>$4.50</price>
<description>私たちの自家製のレンゲンブラッドから作られた厚めのスライス</description>
<calories>600</calories>
</food>
<food>
<name>ホムースタイルブレックファスト</name>
<price>$6.95</price>
<description>二個の卵、ベーコンまたはソーセージ、トースト、そして私たちの人気のハッシュブラウンズ</description>
<calories>950</calories>
</food>
</breakfast_menu>

ブラウザで表示する前に、XSLTを使用してXMLをHTMLに変換します:

XSLT スタイルシートの例:

<?xml version="1.0" encoding="UTF-8"?>
<html xsl:version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<body style="font-family:Arial;font-size:12pt;background-color:#EEEEEE">
<xsl:for-each select="breakfast_menu/food">
  <div style="background-color:teal;color:white;padding:4px">
    <span style="font-weight:bold"><xsl:value-of select="name"/> - </span>
    <xsl:value-of select="price"/>
    </div>
  <div style="margin-left:20px;margin-bottom:1em;font-size:10pt">
    <p>
    <xsl:value-of select="description"/>
    <span style="font-style:italic">(<xsl:value-of select="calories"/> カロリー当たり)</span>
    </p>
  </div>
</xsl:for-each>
</body>
</html>

自分で試してみる

XSLT 教程

XSLT に関する更多信息を学びたい場合は、私たちの XSLT 教程