xslt - 检查该文档是否存在

时间:2011-11-28 14:32:15

标签: xml xslt

在XSL中,我正在访问一个XML文件,其中包含一个配置变量,该变量在样式表中使用文档函数。

<xsl:variable name="files" select="document(concat('../../../', utils:Replace(./@src, '/groceries/MarketingContent/', 'MarketingContent/'), '.xml'))/Files" />

<xsl:call-template name="script">
                    <xsl:with-param name="src" select="concat('/groceries/',$files/@outputPath,'/', utils:Replace($files/File/@name, '.js', concat('.', $files/@hashKey, '.js')))"/>
                  </xsl:call-template>

问题是如果这个xml文档不存在我收到错误,导致网站不可用。

我使用的是1.0版,有没有办法检查文件是否存在以便优雅地处理这个问题?

提前致谢

2 个答案:

答案 0 :(得分:2)

如果没有特定于处理器的扩展,在XSLT 1.0中无法做到这一点。

答案 1 :(得分:0)

我很确定在XSLT 1.0中没有标准的方法可以做到这一点。但是,如果您告诉我们您正在使用的XSLT处理器,可能会使用特定于处理器的扩展。

E.g。见