Xquery: как извлечь информацию из REF/ID
В моем XML у меня есть несколько идентификаторов и атрибутов REF.
Упрощено под:
<library>
<book ID="123">
<author ref="33"></author>
<Info>Vulpes Vulpes, Canis Lupus</info>
<about>Programming</about>
</book>
<author ID="33">
<firstname>John</firstname>
<lastname>McLovin</lastname>
</author>
</library>
Поэтому я хочу использовать Xquery для извлечения информации об авторе, используя атрибут REF под книгой.
for $x in library/book
where $x/about = "programming"
return data ($x/library/book/author/@ref)
С помощью этого метода я извлекаю refnumber 33. Но я хочу, чтобы данные, на которые указывает ref="33", находились под ID="33". Я хотел бы, чтобы имя и фамилия, как результат.
Это возможно? Если не так, как это возможно?
1 ответ
Решение
for $x in library/book
where $x/about = "Programming"
return data (library/author[@ID=$x/author/@ref])