gpt4 book ai didi

xslt - 如何仅在xslt中选择第一个节点

转载 作者:行者123 更新时间:2023-12-02 19:28:13 25 4
gpt4 key购买 nike

我的 XML 为我提供了分配给不同 mmids 的多个图像:

<Mediendaten>
<Mediendaten mmid="22404">
<url size="original">A 22404 FILE</url>
<url size="thumb">ANOTHER 22404 FILE</url>
</Mediendaten>
<Mediendaten mmid="22405">
<url size="original">A 22405 FILE</url>
<url size="thumb">ANOTHER 22405 FILE</url>
</Mediendaten>
<Mediendaten>

我的 XSLT 仅选择 size=thumb 的网址:

<xsl:template match="/Mediendaten">
<xsl:apply-templates select="Mediendaten/url">
</xsl:apply-templates>
</xsl:template>

<xsl:template match="Mediendaten/url">
<xsl:if test="@size = 'thumb'">
<img width="280" border="0" align="left">
<xsl:attribute name="src"><xsl:value-of select="."/></xsl:attribute>
</img>
</xsl:if>
</xsl:template>

但是,我只需要第一个 mmid 的缩略图(在本例中为 22404)。我无法控制 mmid 值。

如何停止我的模板,使其仅输出第一个 mmid 的缩略图文件?

非常感谢您的帮助!

最佳答案

最简单的方法是更改​​ /Mediendaten 的模板:

<xsl:template match="/Mediendaten">
<xsl:apply-templates select="Mediendaten[@mmid][1]/url"/>
</xsl:template>

[@mmid] 将选择限制为带有 mmid 属性的子Mediendaten 元素,[1] 将选择限制为其中第一个元素。

附注无论是谁设计了您所使用的 XML,都会讨厌您。 (对现在标记为 Mediendaten 的两种元素使用相同的名称是一种肮脏的恶作剧;它使您对数据所做的一切变得更加困难。尝试找出您做了什么让他们如此生气,并弥补他们。只是对智者说一句话。)

关于xslt - 如何仅在xslt中选择第一个节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16928121/

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