У меня следующие данные xml.Удалить повторяющиеся записи с помощью выражения Xpath
<product ID="2300">
<name>title</name>
<price currency="EUR">174.00</price>
</product>
<product ID="2300">
<name>title</name>
<price currency="EUR">164.00</price>
</product>
Единственная разница между этими двумя - это только цена. Я просто хочу удалить повторяющиеся строки. Я уже пробовал использовать следующий код.
/product[not(@ID=preceding-sibling::product/@ID)]/@ID
и
/product[not(@ID=preceding::product/@ID)]/@ID
Но я получаю сообщение об ошибке, без сопоставления найденных выражений. У меня нет опыта работы с xpath.
может кто-нибудь помочь мне с этим, пожалуйста ...
UPDATE Я включил часть исходного XML-дерева, а некоторые (ссылки образа экрана только), что я вижу в первых шагах wpallimport плагина ,
<?xml version="1.0" encoding="utf-8"?>
<!-- Generated on 07/15/16 at 15:24:54 -->
<products>
<product ID="2300">
<name></name>
<price currency="EUR">174.00</price>
<URL></URL>
<images>
<image></image>
</images>
<description></description>
<categories/>
<properties>
<property name="priority">
<value>1</value>
</property>
<property name="accommodationName">
<value></value>
</property>
<property name="city">
<value>City</value>
</property>
<property name="region">
<value>Region</value>
</property>
<property name="country">
<value>Country</value>
</property>
<property name="origin">
<value></value>
</property>
<property name="transportType">
<value></value>
</property>
<property name="departureDate">
<value></value>
</property>
<property name="duration">
<value></value>
</property>
<property name="minPersons">
<value></value>
</property>
<property name="boardType">
<value></value>
</property>
<property name="stars">
<value></value>
</property>
<property name="accommodationType">
<value></value>
</property>
</properties>
<variations/>
</product>
XML, вы показываете не очень хорошо образован: не содержащий обертку элемент. Если есть элемент-оболочка 'products', ваш путь должен быть изменен на'/products/product [....] '. Кроме того, ваши выражения XPath выглядят хорошо для меня. –
Спасибо! Вы правы насчет обертки. Проверьте мой другой ответ ниже! – user3676298
Очевидно, нам нужно знать дерево XDM, которое мы запрашиваем. Из вашего описания, учитывая, что мы не знаем плагин wpallimport, мы не знаем, являются ли элементы продукта братьями и сестрами, и мы не знаем, являются ли они частью дерева, внедренного в узел документа; без понимания ввода, мы не можем на самом деле разработать подходящее выражение пути. –