У меня есть исходный xml, который выглядит примерно так:
<item>
<id>1</id>
<property name="representative_email"><value>Jallu.Kola@foo.bar.com</value></property>
<property name="representative_name"><value>Jallu Kola</value></property>
<property name="representative_phone"><value>555 123 456</value></property>
<property name="representative_email"><value>Sala.Rakas@foo.bar.com</value></property>
<property name="representative_name"><value>Sala Rakas</value></property>
<property name="representative_phone"><value>555 2314 124</value></property>
</item>
<item>
<id>2</id>
<property name="representative_email"><value>Sala.Rakas@foo.bar.com</value></property>
<property name="representative_name"><value>Sala Rakas</value></property>
<property name="representative_phone"><value>555 2314 124</value></property>
</item>
<item>
<id>3</id>
<property name="representative_email"><value>Jallu.Kola@foo.bar.com</value></property>
<property name="representative_name"><value>Jallu Kola</value></property>
<property name="representative_phone"><value>555 123 456</value></property>
<property name="representative_email"><value>Sala.Rakas@foo.bar.com</value></property>
<property name="representative_name"><value>Sala Rakas</value></property>
<property name="representative_phone"><value>555 2314 124</value></property>
<property name="representative_email"><value>ville.kalle@foo.bar.com</value></property>
<property name="representative_name"><value>Ville Kalle</value></property>
<property name="representative_phone"><value>555 124 124124</value></property>
</item>
К сожалению, я ничего не могу с этим поделать, кроме использования xslt для преобразования его в нечто более разумное.Я хотел бы преобразовать это, чтобы это выглядело так:
<item>
<id>
<representatives>
<representative>
<email></email>
<name></name>
</phone></phone>
</representative
</representatives
</item>
Любые идеи, как этого можно достичь с помощью xslt? Я думаю, что мне нужно собирать элементы представитель_ * в память при обработке элемента.Как только достигнут конец этого элемента элемента, я должен вывести новый элемент.В соответствии с этим мне нужно будет создать элемент для каждой группы элементов email + name + phone, которые появляются в последовательности.