我有一個XML的格式一個XML複製到另一個但改變節點屬性和邊緣屬性
<graph id=1>
<nodes>
<node id =2>
<name value=node1/>
</node>
<node id =3>
<name value=node3/>
</node>
<edges>
<edge id=11 source=2 target=3/>
</edges>
</graph>
現在我想用生成-ID()來更改節點的ID,但應該在所有的改變邊緣也是如此。例如,我將node1的id更改爲'1a1',所以它應該在xml中將邊緣源更改爲'1a1'。 它應該爲所有節點和邊緣執行此操作。其餘的xml應該保持原樣。
我的XSL
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="@id[parent::node]">
<xsl:attribute name="id">
<xsl:value-of select="generate-id()"/>
</xsl:attribute>
</xsl:template>
這使節點ID,但我想比較邊緣的源和目標,改變他們。 邊緣源和目標是一些節點ID。
任何幫助將不勝感激。 感謝
謝謝你的幫助,真的很感激。 – Arpita 2011-03-31 13:31:59
@Arpita:不客氣。 – 2011-03-31 13:34:36
謝謝你的幫助,真的很感激it.It的作品,但我不明白你是怎麼做的比較,如果節點ID是假設「11」比它應該取代所有源或目標邊緣屬性與節點ID相同的ID比較。 – Arpita 2011-03-31 13:53:39