如何利用Java向XSLT Stylesheet里面传递参数。

Minoopy 2003-08-15 01:05:25
例如:我有一个XSLT Stylesheet文件,我想利用Java向其中传递参数已控制转化过程。

XSLT Stylesheet:-

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format">

<xsl:template match="node()">
<xsl:apply-templates/>
</xsl:template>

<xsl:template match="class[own-slots/own-slot/entry/value = 'Barn_swallow']">
<xsl:copy-of select="."/>
</xsl:template>

</xsl:stylesheet>

我想利用Java来控制"Barn_swallow"这个值,而且还希望利用Java可以改变其值,比如说,改成chaffinch或者其他的值。该如何实现呢?

请高手们指教!谢谢!
...全文
93 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
saucer 2003-08-15
  • 打赏
  • 举报
回复
use a top-level parameter:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format">

<xsl:param name="value" />

<xsl:template match="node()">
<xsl:apply-templates/>
</xsl:template>

<xsl:template match="class">
<xsl:if test="own-slots/own-slot/entry/value = $value">
<xsl:copy-of select="."/>
</xsl:if>
</xsl:template>

</xsl:stylesheet>

in your code, if you are usng JAXP, do

Transformer trans = ... // obtain Transformer from JAXP
trans.setParameter("value", "Barn_swallow");

8,906

社区成员

发帖
与我相关
我的任务
社区描述
XML/XSL相关问题讨论专区
社区管理员
  • XML/XSL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧