Понедельник, 18 Июнь 2007

Задачка с xslt

В процессе работы попалась интересная (сложная) задачка на xslt:

Есть xml:

<root>
  <values>
    <value g="a" title="t1" /> 
    <value g="b" title="t2" /> 
    <value g="b" title="t3" /> 
    <value g="a" title="t4" /> 
    <value title="t5" /> 
    <value title="t6" /> 
    <value g="b" title="t7" />
  </values>
</root>

Требуется из него получить:

<root>
  <items>
    <group name="a">
      <value>t1</value>
      <value>t4</value>
    </group>
    <group name="b">
      <value>t2</value>
      <value>t3</value>
      <value>t7</value>
    </group>
    <value>t5</value>
    <value>t6</value>
  </items>
</root>

Ниже решение, которое нашел я. Если хотите — смотрите сразу, но интереснее подумать. У меня это заняло около полу часа, а у вас?

 

Написано в: 18:54 | 0 комментариев | | теги: , , , , | постоянная ссылка