使用 XSLT 将 XML 属性值存储到变量中

Storing XML attribute value into a variable by using XSLT

我是 XSLT 的新手,正在学习如何将属性存储到变量中。

我有一个场景,我的输入 xml 文件是:

<?xml version="1.0" encoding="UTF-8"?>
<books>
    <book title="ABC" id="1">
         <infos>
            <info key="pages">200</info>
            <info key="price">.50</info>
         </infos>
    </book>
    <book title="XYZ" id="1">
         <infos>
            <info key="pages">300</info>
            <info key="price">.00</info>
         </infos>
    </book>
</books>

我想知道如何存储页数为 200 的书的标题,即我需要将 "ABC" 存储在变量中。

我搜索了很多地方,但我只能找到如何使用以下代码存储最后一个属性值:

  <xsl:variable name="pages" select="/*/info[.='200']/@key"/>

我可以在哪里获得 $key 值 "pages",但我想要标题的值

是否可以使用类似的方法获得标题的价值,如果是,那么我哪里错了,在此先感谢

how to store the title of a book whose pages is 200

尝试:

<xsl:variable name="title" select="/books/book[infos/info[@key='pages']=200]/@title" />