2009-01-09 9 views
1

Comment supprimer tout le texte, mais laisser la structure intacte?Comment supprimer tout le texte d'un document XML

par exemple:

<animals> 
    <animal id="1"> 
    <type>cat</type> 
    <food> 
     <fav>miauwmjam</fav> 
     <quantity unit="day">50g</quantity> 
    </food> 
    </animal> 
</animals> 

transformé en

<animals> 
    <animal id=""> 
    <type></type> 
    <food> 
     <fav></fav> 
     <quantity unit=""></quantity> 
    </food> 
    </animal> 
</animals> 

donc aussi les Vales d'attribut sont vides ...

Répondre

4
<?xml version="1.0" encoding="utf-8"?> 
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
    <xsl:output method="xml" indent="yes"/> 

    <!-- copy all nodes --> 
    <xsl:template match="node()"> 
    <xsl:copy> 
     <xsl:apply-templates select="@*|node()"/> 
    </xsl:copy> 
    </xsl:template> 

    <!-- clear attributes --> 
    <xsl:template match="@*"> 
    <xsl:attribute name="{name()}" /> 
    </xsl:template> 

    <!-- ignore text content of nodex --> 
    <xsl:template match="text()" /> 

</xsl:stylesheet> 
Questions connexes