Xml 在使用XSLT之前,请检查该参数是否存在
我正在使用XPATH计算参数$test是否存在。 我在ALtova Stylevision中使用XPATH构建器,并认为可以使用类似 存在$blah或存在字符串$blah 但这一切都结束了 表达式test=存在字符串$blah中未定义的变量 问题是,参数有时会存在,有时不会存在。我不想在空白参数中硬编码 在我使用参数XXXX之前,有没有一种方法可以说检查它是否存在?这是令人沮丧的,因为我知道如何在几乎所有其他编程语言中做到这一点 定义的参数: 一些文本Xml 在使用XSLT之前,请检查该参数是否存在,xml,xslt,altova,Xml,Xslt,Altova,我正在使用XPATH计算参数$test是否存在。 我在ALtova Stylevision中使用XPATH构建器,并认为可以使用类似 存在$blah或存在字符串$blah 但这一切都结束了 表达式test=存在字符串$blah中未定义的变量 问题是,参数有时会存在,有时不会存在。我不想在空白参数中硬编码 在我使用参数XXXX之前,有没有一种方法可以说检查它是否存在?这是令人沮丧的,因为我知道如何在几乎所有其他编程语言中做到这一点 定义的参数: 一些文本 这些参数从单独的文件parameters.
这些参数从单独的文件parameters.xslt中读取。此文件可能存在,也可能不存在,具体取决于场景。在尝试使用参数之前,我需要检查该参数是否确实存在。如果已声明该参数,则该参数存在。你想知道的是
如果您已经声明了参数,那么它就存在。你想知道的是
基本上,如果您正在编写XSLT,那么您应该知道声明了哪些变量。您正在尝试使用某种开发模型,在这种模型中,编写样式表的不同模块的人并不完全了解彼此的代码,XSLT也不适合使用这种模型
XSLT在这方面并不是独一无二的:您在Java方法中找不到任何东西允许方法的编写者询问调用方提供了多少参数?。如果没有提供足够的参数,代码将无法编译。基本上,如果您正在编写XSLT,那么您应该知道声明了哪些变量。您正在尝试使用某种开发模型,在这种模型中,编写样式表的不同模块的人并不完全了解彼此的代码,XSLT也不适合使用这种模型
XSLT在这方面并不是独一无二的:您在Java方法中找不到任何东西允许方法的编写者询问调用方提供了多少参数?。如果提供的参数不足,代码将无法编译。问题在于参数是从parameters文件parameters.xslt中拖入的。有时,根据场景的不同,不需要此文件。因此,我需要做的是检查参数是否确实存在/已创建。9这可能吗?从好的方面来看,对于参数确实存在的情况,NOT works ok(不正常)。啊。不,我不相信有一种方法可以在不知道参数是否存在的情况下检查参数。您是否有条件地添加or?如果是这样的话,那么在包含Parameters.xslt时,以及在没有包含Parameters.xslt时,如何包含这些内容呢?当我说“有条件地添加”时,我的意思是,在生成样式表时,必须包含这些内容,对吗?因为我相信import/include只能是样式表的直接子项,而不是if。嗯,我喜欢这个想法。该文件是使用Stylevision导入的,但通过Stylevision完成。我不确定它是否是动态完成的,因此我必须先搜索一种方法来编辑导入:似乎我必须创建一个带有空白参数的全局文件,我想!感谢您的帮助问题在于参数是从parameters文件parameters.xslt中拖入的。有时,根据场景的不同,不需要此文件。因此,我需要做的是检查参数是否确实存在/已创建。9这可能吗?从好的方面来看,对于参数确实存在的情况,NOT works ok(不正常)。啊。不,我不相信有一种方法可以在不知道参数是否存在的情况下检查参数。您是否有条件地添加or?如果是这样的话,那么在包含Parameters.xslt时,以及在没有包含Parameters.xslt时,如何包含这些内容呢?当我说“有条件地添加”时,我的意思是,在生成样式表时,必须包含这些内容,对吗?因为我相信import/include只能是样式表的直接子项,而不是if。嗯,我喜欢这个想法。该文件是使用Stylevision导入的,但通过Stylevision完成。我不确定它是否是动态完成的,因此我必须先搜索一种方法来编辑导入:似乎我必须创建一个带有空白参数的全局文件,我想!谢谢你的帮助
<xsl:choose>
<xsl:when test="not($blah)">$blah wasn’t passed in</xsl:when>
<xsl:otherwise>$blah was passed in</xsl:otherwise>
</xsl:choose>