xml – 函数“fn:encode-for-uri”导致XSLT发生错误

我需要URL在XSLT中编码一个字符串,但函数

fn:encode-for-uri

打破脚本.我在网上查了一下,显然它是命名空间的一部分

http://www.w3.org/2005/xpath-functions

所以我将以下行添加到我的XSLT文件的顶部无济于事.

xmlns:fn="http://www.w3.org/2005/xpath-functions"

有任何想法吗?我在Visual Studio中逐步完成它,我得到了异常:

Cannot find a script or an extension object associated with namespace 'http://www.w3.org/2005/xpath-functions'.

有任何想法吗?

-ev

解决方法

Visual Studio使用.NET XSLT处理器 – 即XSLT 1.0处理器.

函数encode-for-uri()仅在XPath 2.0 / XQuery中是标准函数. XSLT 1.0处理器仅使用XPath 1.0,并且encode-for-uri()函数未实现和可用.

要使用此功能,您需要一个XSLT 2.0处理器,例如Saxon.NET或XQSharp.

相关文章

php输出xml格式字符串
J2ME Mobile 3D入门教程系列文章之一
XML轻松学习手册
XML入门的常见问题(一)
XML入门的常见问题(三)
XML轻松学习手册(2)XML概念