私はXMLファイルを持っています:
...
<Chart id="c01">
<expires>2012-07-19 12:20:00</expires>
<data><![CDATA[...]]></data>
</Chart>
...
ここで、CDATAはB64でエンコードされたPNG画像であり、画像を表示するためにXMLをHTMLに変換したいと考えています。
そのために、テキストを出力してCDATAをダンプするようにXSLを設定しました。
<xsl:output method="text"/>
<xsl:template match="//data/text()">
<xsl:value-of select="."/>
</xsl:template>
同じテンプレートで、基本的なHTML構造をラップしますが、ここではクリアランスのために除外しました。
問題は次のとおりです。XMLファイルでXPathを使用すると、CDATAテキストのみが取得されますが、上記のXSLでは、出力でXML要素//data/text()
から「2012-07-1912:20:00」も取得されます。<expires>
それは私が見逃しているいくつかの基本的なことだと思いますが、なぜ日付も出力されるのですか?出力でそれを回避するにはどうすればよいですか?