| XMLTRANSFORM | |
| 説明
XSLT (Extensible Stylesheet Language Transformation) を XML に適用します。XML は、文字列形式ドキュメントの場合と XML ドキュメントオブジェクトの場合があります。 |
|
| 戻り値
XSLT を XML に適用した結果を含む文字列 |
|
| カテゴリ
変換関数、XML 関数 |
|
関数のシンタックスXmlTransform(xml, xsl[, parameters]) |
|
| 関連項目
cfxml、XmlFormat、XmlNew、XmlParse、XmlSearch、XmlValidate、『ColdFusion MX 開発ガイド』の第35章の「XML および WDDX の使用」 |
|
| ヒストリ
ColdFusion MX 7: parameters パラメータが追加され、XSL のファイルを使用できるようになりました。 ColdFusion MX: この関数が追加されました。 |
|
| パラメータ
|
|
| 使用方法
XSLT では、Extensible Stylesheet Language (XSL) スタイルシートを適用することにより、XML ドキュメントを別の形式や表現に変換します。XSLT シンタックスを含む XSL は、W3C (World Wide Web Consortium) によって仕様が定められています。XSL および XSLT の詳細については、W3C の Web サイト www.w3.org/Style/XSL/ を参照してください。 インクルードステートメントが相対パスと共に XSLT コードに含まれている場合、ColdFusion は XSLT ファイルの場所に相対してパスを解決します。XSL 文字列の場合は、現在の ColdFusion ページの場所に相対してパスを解決します。 |
|
| 例
次の例では、顧客注文を示す XML ドキュメントを、顧客名および注文品と数量の表を含む HTML ドキュメントに変換します。 顧客注文を示す "custorder.xml" ファイルには、次の行があります。 <?xml version="1.0" encoding="UTF-8"?>
<order id="4323251">
<customer firstname="Philip" lastname="Cramer" accountNum="21"/>
<items>
<item id="43">
<name>高級大工用ハンマー</name>
<quantity>1</quantity>
<unitprice>15.95</unitprice>
</item>
<item id="54">
<name>36 インチのプラスチック製熊手</name>
<quantity>2</quantity>
<unitprice>6.95</unitprice>
</item>
<item id="68">
<name>標準の塗料用シンナー</name>
<quantity>3</quantity>
<unitprice>8.95</unitprice>
</item>
</items>
</order>
XML を HTML に変換して、顧客名および発注された商品と数量を表示する XSLT ファイル "custorder.xsd" には、次の行があります。 <?xml version="1.0" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" doctype-public="-//W3C//DTD HTML 4.0 Transitional//EN" />
<xsl:template match="/">
<html>
<body>
<table border="2" bgcolor="yellow">
<tr>
<th>名前</th>
<th>価格</th>
</tr>
<xsl:for-each select="breakfast_menu/food">
<tr>
<td>
<xsl:value-of select="name"/>
</td>
<td>
<xsl:value-of select="price"/>
</td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
この CFML ファイルには次の行が含まれています。 <cffile action="read" file="C:CFusionMX7wwwrootexamplescustorder.xsl"
variable="xmltrans">
<cfset xmldoc = XmlParse("C:CFusionMX7wwwrootexamplescustorder.xml")>
<cfoutput>#XmlTransform(xmldoc, xmltrans)#</cfoutput>
|
|
| XML | |
| 文字列形式または XML ドキュメントまたは XML ドキュメントオブジェクトです。 | |
| XSL | |
| 適用する XSLT 変換であり、次のいずれかに相当します。 | |
次のいずれかです。
|
|
| ケラメータ | |
| ドキュメントの変換に使用する XSL テンプレートパラメータの名前/値のペアを含む構造 体です。xslString パラメータで定義される XSL 変換では、XML を処理するときにこれ らのパラメータ値を使用します。 | |