У меня есть следующий XML:
<Library>
<Item>
<Field Name="Name">smooth</Field>
<Field Name="File Type">mid</Field>
<Field Name="File Size">60026</Field>
</Item>
<Item>
<Field Name="Name">mid</Field>
<Field Name="File Type">mp3</Field>
<Field Name="File Size">4584972</Field>
</Item>
</Library>
Я хотел бы получить все имена элементов с типом файла "mid".Мой запрос XPATH выглядит как
/Library/Item/Field
[
@Name="Name" and
(../Field[@Name="File Type" and ../Field[.="mid"]])
]
Но, к сожалению, оба элемента возвращаются из этого запроса.
smooth
mid
Похоже, что последнее условие не проверяется для полей с атрибутом «Тип файла»только, но все поля.В результате возвращается имя «mid», даже если этот элемент имеет тип файла «mp3».
Как ограничить сравнение со значением «mid» значением поля с атрибутом Name= "Тип файла"?
Кто-нибудь может мне предложить синтаксис XPATH, который работает как положено?