XSLT Xalan dyn:evaluateの例
-
04-07-2019 - |
質問
スタイルシートでEXSLT-DYN:EVALUATEを使用します。名前のペースを追加しましたが、インポートする必要がある.xslファイルの場所がわかりません。インポートを指すXALANがインストールされているとは思わない。これをどのようにインストールしますか?インストールしたら、.xslをポイントし、関数を取得して適用しますか? Windowsを実行しています。 XSLTファイルは、XMLドキュメントの上部に含まれています。
ありがとう
ピート
解決
XalanにはEXSL dyn:evaluate関数が組み込まれています。使用するために何もインポートする必要はありません。名前空間を宣言するだけです。小さな例を挙げます:
input.xml :
<root>
<foo>I am foo</foo>
<bar>I am bar</bar>
</root>
dyn_evaluate.xsl :
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:dyn="http://exslt.org/dynamic"
extension-element-prefixes="dyn">
<xsl:param name="path"/>
<xsl:output method="text"/>
<xsl:template match="/">
<xsl:value-of select="dyn:evaluate($path)"/>
</xsl:template>
</xsl:stylesheet>
実行中
xalan.exe -p path '/root/foo' input.xml dyn_evaluate.xsl
与える
I am foo
実行中
xalan.exe -p path '/ root / bar' input.xml dyn_evaluate.xsl
与える
I am bar
これがお役に立てば幸いです。
他のヒント
JSPページからこれをどのように呼び出しますか? JSPはXMLを提供し、現在スタイルシートをXMLページに添付し、結果をサーバーします。
できません。スタイルシートが添付されたXMLページをクライアントに提供する場合、これは機能しません。ブラウザはexsltをサポートしていません。
ただし、サーバー上で(xalanを使用して)XSLT処理を行うと動作するようになりますが、xsltをjspと組み合わせる方法がわかりません。
所属していません StackOverflow