将路径传递给模板

时间:2008-10-16 08:38:03

标签: xml xslt

是否可以将主题/名称等路径传递给模板,然后使用在模板中作为路径而不是文本字符串传递的路径。我发现路径被视为文本而不是路径。

4 个答案:

答案 0 :(得分:1)

有一个EXSLT扩展函数dyn:evaluate(),它将字符串值计算为XPath表达式并返回结果(例如节点集) - 请参阅EXSLT reference page。根据该页面,libxslt,Xalan-J和4XSLT实现了该功能。 Saxon也在它自己的命名空间而不是在EXSLT中实现它。

答案 1 :(得分:1)

我取决于你想做什么。如果路径指向xml文件,则可以使用document(filename)语法将文件内容放入xsl变量中。

<xsl:varialble name="myvar" select="document(somepath)/somenode" />

请注意,首先该文件存在,其次要注意最新解析器中的msxml安全设置,默认情况下限制您访问其他文档。

答案 2 :(得分:0)

XPath或XSLT中没有路径数据类型,所以没有。您想对此参数执行哪些操作?获取有关路径指向的文件的信息?

答案 3 :(得分:0)

Saxon实现了扩展函数saxon:evaluate()saxon:evaluate-node()