XSLT只执行一次应用模板

时间:2017-09-12 18:27:05

标签: xml xslt apply-templates

XSLT -

<Address>
<xsl:apply-templates select="Orders/Rows/Row[addres_no/number = $addr_no]" />
</Address>

输入XML -

<Orders>
    <Rows>
        <Row>
            <addres_no>
                <number>1</number>
            </addres_no>
        </Row>
        <Row>
            <addres_no>
                <number>1</number>
            </addres_no>
        </Row>
        <Row>
            <addres_no>
                <number>3</number>
            </addres_no>
        </Row>
    </Rows>
</Orders>

在上面的例子中,如果地址编号与addr_no变量值匹配,我正在执行模板。

我想要&#34; apply-templates&#34;即使找到多个匹配项也只执行一次。

例如,如果$ addr_no = 1,它会找到两个匹配,但我只想获得第一个可用的匹配。

我试过了 -

<xsl:apply-templates select="Orders/Rows/Row[addres_no/number = $addr_no][1]" />

但这没效果。

0 个答案:

没有答案