2008-09-10 23 views
22

Ni siquiera estoy seguro de si es posible, pero decir que tengo alguna XML:¿Cómo se insertan XML en un nodo XML existente

<source> 
     <list> 
      <element id="1"/> 
     </list> 
    </source> 

Y me gustaría insertar en la lista:

<element id="2"/> 

¿Puedo escribir un XSLT para hacer esto?

Respuesta

35

Añadir estos 2 definiciones de plantilla a un archivo XSLT:

<xsl:template match="@*|node()"> 
    <xsl:copy> 
    <xsl:apply-templates select="@*|node()"/> 
    </xsl:copy> 
</xsl:template> 
<xsl:template match="list"> 
    <list> 
    <xsl:apply-templates select="@* | *"/> 
    <element id="2"/> 
    </list> 
</xsl:template> 
+0

eso es exactamente lo que estaba buscando. Tenemos archivos de configuración de proveedores donde tenemos que agregar un montón de propiedades personalizadas. Idealmente, nos gustaría automatizar esto en lugar de editarlo a mano cada vez. Gracias! – warsze

+4

Respuesta impresionante incluso 7 años después. :) – wilx

Cuestiones relacionadas