Kerstin: xsl:copy und/oder xsl:copy-of

Beitrag lesen

Hallo Thomas,

vielen Dank für Deine schnelle Antwort.

Hiermit:
<xsl:template match="kontakte">
 xsl:copy
  <xsl:element name="kontakt">
   <xsl:attribute name="id">2</xsl:attribute>
  </xsl:element>
  <xsl:copy-of select="*"/>
 </xsl:copy>
</xsl:template>

bekomme ich dann den gesamten Inhalt von <kontakte> + das Element, welches ich anlege.

Wenn ich jedoch im ersten Teil:
<xsl:template match="root">
 xsl:copy
  <xsl:element name="daten">
   <xsl:attribute name="id">3</xsl:attribute>
  </xsl:element>
  <xsl:copy-of select="*"/>
  xsl:apply-templates/
 </xsl:copy>
</xsl:template>

kein xsl:apply-templates/ angebe, wird auch nicht auf das <xsl:template match="kontakte"> zugegriffen. Das neue XML sieht aus wie das alte ohne den neuen kontakt hinzuzufügen.
Ich müsste sagen könnte: Wenn du beim Kopieren auf <kontakte> triffst, führe das unterhalb von <xsl:template match="kontakte"> aus, also füge neuen kontakt hinzu, kopiere alles unterhalb und mache dann mit kopieren des rests weiter. Nur wie mache ich das dem XSL klar'??? *ratlosgugg*

Gruß,
Kerstin