Мне нужно «объединить» два документа XML, перезаписав наложенные атрибуты и элементы. Например, если у меня есть Document1:Объединить XML-документы
<mapping>
<key value="assigned">
<a/>
</key>
<whatever attribute="x">
<k/>
<j/>
</whatever>
</mapping>
и документ2:
<mapping>
<key value="identity">
<a/>
<b/>
</key>
</mapping>
Я хочу, чтобы объединить эти два так:
<mapping>
<key value="identity">
<a/>
<b/>
</key>
<whatever attribute="x">
<k/>
<j/>
</whatever>
</mapping>
Я предпочитаю Java или XSLT - так lutions, муравей будет делать хорошо, но если есть простой способ сделать это в Rake, Руби или Python, пожалуйста, не стесняйтесь :-)
EDIT: на самом деле я считаю, Я бы предпочел использовать автоматизированный инструмент/скрипт, даже writing it by myself, потому что вручную слияние около 30 XML-файлов немного громоздко ... :-(
вы можете быть немного более конкретную информацию о правилах, которые вы хотите применять? Всегда ли будет только один элемент с тем же именем? Вы углубляетесь в дерево, чтобы сравнить дочерние элементы, когда оба документа имеют один и тот же элемент (с идентичными атрибутами)? – 2008-09-17 16:56:04
Кстати, ваш пример не является корректным («все» не закрыто). – 2008-09-17 16:56:51