以文本方式查看主题

-  中文XML论坛 - 专业的XML技术讨论区  (http://bbs.xml.org.cn/index.asp)
--  『 XSL/XSLT/XSL-FO/CSS 』  (http://bbs.xml.org.cn/list.asp?boardid=8)
----  请问如何在xmlspy中调试包含xpath 2.0函数的xml和xsl?  (http://bbs.xml.org.cn/dispbbs.asp?boardid=8&rootid=&id=77813)


--  作者:sdiablo
--  发布时间:10/15/2009 4:33:00 PM

--  请问如何在xmlspy中调试包含xpath 2.0函数的xml和xsl?
在xmlspy中调试有关xpath 2.0函数的代码是总是遇到错误:
'tokenize' is not a valid XSLT or XPath function. -->tokenize($testStr,'##')<--

估计没有引入xpath 2.0相关的声明吧。可是我已经在xsl和xml的头文件中加入了相关的声明啊。
有人能帮帮我吗?谢谢了。

我在xmlspy中选择text和grid都能正常显示,也显示文件已经通过了验证。但是点击Browser就会提示出错。

下面是相关的代码。
XML的头文件:
<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="xxx.xsl"?>

XSL文件:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:gmportal="http://gmweb.gm.com/xmlns/gmportal" xmlns:xs="http://www.w3.org/2001/XMLSchema" >
  <xsl:variable name="testStr" select="//testXML"/>
        <xsl:variable name="testArr" select="tokenize($testStr,'##')"/>
        <xsl:variable name="nameArr" select="tokenize($testArr[position()=1],';#')"/>
        <xsl:variable name="addressArr" select="tokenize($testArr[position()=2],';#')"/>
        <xsl:for-each select="$nameArr">
           <a>
            <xsl:variable name="index" select="position()"/>
            <xsl:variable name="address" select="$addressArr[$index]"/>
            <xsl:attribute name="href"><xsl:value-of select="$address"/></xsl:attribute>
            <xsl:value-of select="."/>
           </a>
        </xsl:for-each>
<xsl:comment>END CONTENT- -WORKSCAPE REQUIRED</xsl:comment>
</xsl:template>


W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
46.875ms