xsl:将多个项目存储在变量或参数中以供以后使用

发布于 2024-12-07 23:36:51 字数 430 浏览 0 评论 0原文

我需要将 xml 转换为某种自定义 xml 格式。

在新格式中,我将有许多 sections 节点,对于每个节点,我使用以下方法创建一个唯一的 id:

<xsl:attribute name="identifier">
                <xsl:variable name="uid" select="util:randomUUID()"/>A<xsl:value-of select="util:toString($uid)"/>
</xsl:attribute>

我需要一种方法将所有这些 Id 存储在列表或数组中,以便我可以引用它从其他模板返回并在 for-each 循环中使用它们。

有没有办法用 xsl 做到这一点?

感谢您的帮助

I need to transform an xml to some custom xml format.

In the new format i would have many sections node and for each node i am creating a unique id using:

<xsl:attribute name="identifier">
                <xsl:variable name="uid" select="util:randomUUID()"/>A<xsl:value-of select="util:toString($uid)"/>
</xsl:attribute>

I need a way to store all of these Ids in a list or array so that i can refer it back from some other template and use them in for-each loop.

Is there a way to do this with xsl?

Thanks for any help

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

浅忆流年 2024-12-14 23:36:51

全局声明这些

<xsl:variable name="vrtfRandList">
 <xsl:for-each select="yourNodeSet">
  <rand><xsl:value-of select="util:randomUUID()"/></rand>
 </xsl:for-each>
</xsl:variable>

<xsl:variable name="vRandlist" select="ext:node-set($vrtfRandList)/*"/>

然后使用

$vRandlist[$k]

使用 XSLT 2.0

<xsl:variable name="vRandlist" as="xs:integer*"
     select="for $i in 1 to count(yourNodeSet)
              return 
                 util:randomUUID()
            "/>

Have these globally declared:

<xsl:variable name="vrtfRandList">
 <xsl:for-each select="yourNodeSet">
  <rand><xsl:value-of select="util:randomUUID()"/></rand>
 </xsl:for-each>
</xsl:variable>

<xsl:variable name="vRandlist" select="ext:node-set($vrtfRandList)/*"/>

Then later use:

$vRandlist[$k]

Using XSLT 2.0:

<xsl:variable name="vRandlist" as="xs:integer*"
     select="for $i in 1 to count(yourNodeSet)
              return 
                 util:randomUUID()
            "/>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文