2016-04-20 2 views
1

Я новичок в XSLT и изучаю, как хранить атрибут в переменной.Сохранение значения атрибута XML в переменной с помощью XSLT

У меня есть сценарий, где мой входной файл XML является:

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

Я хочу знать, как хранить название книги, страницы которого составляет 200, то есть мне нужно «ABC» будет храниться в Переменная.

Я искал во многих местах, но все, что я смог найти, как сохранить последнее значение атрибутов, используя этот код:

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

, где я могу получить значение ключа $ как «страница», но я хочу значение заголовка в

ли можно получить значение TITLE путем использования подобного подхода, если да, то где я буду неправильно, Спасибо заранее

+0

'' не содержит ничего. –

+0

Нет, это был только код, который я понял, работал бы, после этого попробовал бы его правильно. – joga

ответ

1

как хранить название книги, страницы которого составляет 200

Try:

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

спасибо большое :) – joga

Смежные вопросы