XSLT的新功能。我有一個xml,看起來像 -基於子節點索引的XSLT映射
<?xml version="1.0" encoding="UTF-8"?>
<Parent>
<Child1>
<A>ContentAC1</A>
<B>ContentBC1</B>
<C>ContentCC1</C>
</Child1>
<Child2>
<A>ContentAC2</A>
<B>ContentBC2</B>
<C>ContentCC2</C>
</Child2>
<Child3>
<A>ContentAC3</A>
<B>ContentBC3</B>
<C>ContentCC3</C>
</Child3>
<Child4>
<A>ContentAC4</A>
<B>ContentBC4</B>
<C>ContentCC4</C>
</Child4>
...
</Parent>
我想根據條件創建XSLT映射。如果兒童的節點數< = 3,我想映射XML的樣子 -
<Children>
<C1A>ContentAC1</C1A>
<C1B>ContentBC1</C1B>
<C1C>ContentCC1</C1C>
<C2A>ContentAC2</C2A>
<C2B>ContentBC2</C2B>
<C2C>ContentCC2</C2C>
<C3A>ContentAC3</C3A>
<C3B>ContentBC3</C3B>
<C3C>ContentCC3</C3C>
</Children>
如果子節點> 3的數,child3後,每個孩子都應該被映射到C3A,C3B和C3C。例如:如果子節點= 5,映射的xml應該看起來像:
<Children>
<C1A>ContentAC1</C1A>
<C1B>ContentBC1</C1B>
<C1C>ContentCC1</C1C>
<C2A>ContentAC2</C2A>
<C2B>ContentBC2</C2B>
<C2C>ContentCC2</C2C>
<C3A>ContentAC3</C3A>
<C3B>ContentBC3</C3B>
<C3C>ContentCC3</C3C>
<C3A>ContentAC3</C3A>
<C3B>ContentBC3</C3B>
<C3C>ContentCC3</C3C>
<C3A>ContentAC3</C3A>
<C3B>ContentBC3</C3B>
<C3C>ContentCC3</C3C>
</Children>
如何使用XSLT實現此目的?
這兩個結果之間的區別是什麼 - 除了分離原始組的非重要空行之外? - P.S.請在您的輸入中添加一個根元素,使其成爲格式良好的XML。 –
@ michael.hor257k目的就像你說的那樣。根據孩子的索引更改孩子姓名並分隔原始組。我能夠使用position()獲取當前的孩子索引,並且使用xsl:根據索引選擇map。但是,這組所有的C1A,C2A,C3A ...然後C1B,C2B,C3B ...但我想要保留相同的順序。即C1A,C1B,C1C然後是C2A,C2B,C2C等 – eechpeech