gpt4 book ai didi

xslt - 在项目中声明全局变量并在 xslt 中使用它

转载 作者:行者123 更新时间:2023-12-04 05:32:44 25 4
gpt4 key购买 nike

对于 XSLT 中的疑问,我会寻求您的指导。在我当前的项目中,需要创建许多 XSLT 文件。在这些转换中,执行的常见步骤很少;例如从输入 xml 更改元素值的大写。我目前在 XSLT 中使用以下代码,因此如果创建了 50 个 XSLT,则此代码将被复制。

<xsl:variable name="smallcase" select="'abcdefghijklmnopqrstuvwxyz'" />
<xsl:variable name="uppercase" select="'ABCDEFGHIJKLMNOPQRSTUVWXYZ'" />
<xsl:message>UPPERCASE is <xsl:value-of select="translate($MsgType, $smallcase, $uppercase)" /></xsl:message>

征求您关于如何避免代码重复的建议。我可以创建一个通用的 XML 文件(例如实用程序)并声明变量大写和小写,我应该在 xslt.xml 文件中调用这些变量吗?类似于其他编。 lang like java,我可以在其中全局声明一个通用函数并在不同的类中使用它。基本上我想知道是否可以全局声明并在所有xslt中使用它。请提供建议,因为我是 XSLT 编程的新手。谢谢。

最佳答案

我会用 <include/>包含定义了所有全局变量的 XSLT 文件。
另见 http://www.w3.org/TR/xslt#element-include

将所有变量放入文件“my_global_variables.xsl”:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">

<xsl:variable name="myVariable" select="'xyz'"/>

<!-- more variables to add -->

</xsl:stylesheet>

您的主样式表如下所示,包括“my_global_variables.xsl”:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">

<xsl:include href="my_global_variables.xsl"/>

<xsl:template match="/">

</xsl:template>
</xsl:stylesheet>

我希望这对你有帮助。

还有 <import>可以导入样式表的元素。导入的样式表的优先级低于导入的样式表 - 所以在你的情况下我会使用 <include> .

最好的问候,
彼得

关于xslt - 在项目中声明全局变量并在 xslt 中使用它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12368164/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com