Проблемы X-Path Query

Мой XML DTD выглядит следующим образом:

<!DOCTYPE Bookstore [
<!ELEMENT Bookstore (Book | Magazine)*>
<!ELEMENT Book (Title, Authors, Remark?)>
<!ATTLIST Book ISBN CDATA #REQUIRED
              Price CDATA #REQUIRED
              Edition CDATA #REQUIRED>
<!ELEMENT Magazine (Title)>
<!ATTLIST Magazine Month CDATA #REQUIRED Year CDATA #REQUIRED> 
<!ELEMENT Title (#PCDATA)>
<!ELEMENT Authors (Author+)>
<!ELEMENT Remark (#PCDATA)>
<!ELEMENT Author (First_Name, Last_Name)>
<!ELEMENT First_Name (#PCDATA)>
<!ELEMENT Last_Name (#PCDATA)>
]>

Я хочу выполнить следующий запрос:

Title Book whose title is the same as title of a magazine.

Я не могу придумать способ выполнить этот запрос. Любой Пожалуйста, помогите мне с этим, я буду благодарен.

2 ответа

Решение

Вы можете попробовать что-то вроде этого:

//Bookstore/Book/Title[. = //Magazine/Title]

Выше xpath возвращает все <Title> элементы, которые являются потомками <Book> и имеет значение, равное по крайней мере одному <Title> из <Magazine>,

Вы можете попробовать следующее:

//Bookstore/Book[Title = ../Magazine/Title]/Title
Другие вопросы по тегам