使用XSLT,如何打包共享同一个属性值的兄弟。基于属性打包兄弟节点
可以说我需要包装一个或多个<amendment/>
与<chapter/>
他们也属于。 从这:
<section>
<heading>some heading text</heading>
<amendment num='1' chapter='1'>
<foo/>
</amendment>
<amendment num='2' chapter='1'>
<bar/>
</amendment>
<amendment num='3' chapter='2'>
<baz/>
</amendment>
<heading>some heading text</heading>
<amendment num='4' chapter='3'>
<baz/>
</amendment>
</section>
到这一点:
<section>
<heading>some heading text</heading>
<chapter num="1">
<amendment num='1'>
<foo/>
</amendment>
<amendment num='2'>
<bar/>
</amendment>
</chapter>
<chapter num="2">
<amendment num='3'>
<baz/>
</amendment>
</chapter>
<heading>some heading text</heading>
<chapter num="3">
<amendment num='4'>
<baz/>
</amendment>
</chapter>
</section>
注1:修正总是被列在源XML章节排序。
注2:IM使用PHP5用XSLT 1.0
最后一个'revision'标签上的输入XML是否缺少'chapter num =“3”'? – Flynn1179 2010-10-04 12:52:03
你打算使用XSLT 1还是2?更容易2 – 2010-10-04 12:56:05
我已更新问题以回答这些问题。 – 2010-10-04 13:10:27