2017-03-21 6 views
0

Ich habe den folgenden Student xml doc. Ist es möglich, den Wert wahr durch den Wert zu ersetzen DELETED in der Ausgabe?Ist es möglich, den Wert true durch den in xslt gelöschten Wert zu ersetzen?

xml doc Code

<Student> 
    <Deleted>true</Deleted> 
</Student> 

Xslt Code

<Student> 
    <xsl:choose> 
     <xsl:when test="Deleted='true'"> 
      <xsl:value-of select="Deleted"/> 
       </xsl:when> 
       <xsl:otherwise> 
        <xsl:value-of select="PRESENT"/> 
       </xsl:otherwise> 
    </xsl:choose> 
</Student> 

I-Ausgang sein möchte

<Student> 
    <StudentDeleted>DELETED</StudentDeleted> 
</Student> 

Hier finden Sie, was ich als Ausgang bin immer was nicht das, was ich

<Student> 
    <StudentDeleted>true</StudentDeleted> 
</Student> 
+1

Sie wollen einen Blick auf [](http://stackoverflow.com/questions/585261/is-there-an-xslt-name-of-element#answer-585290). – Tyblitz

+0

Oh mein Gott. Ich habe den ganzen Tag damit verbracht, verschiedene Dinge auszuprobieren und es ist so so einfach! Danke Tyblitz. Du hast meinen Stress beendet. Beeindruckend. Du bist mein Wundertäter –

Antwort

1
<?xml version="1.0" encoding="UTF-8"?> 

<xsl:template match="Student">   
      <Student> 
       <xsl:choose> 
        <xsl:when test="child::Deleted/text()='true'"> 
         <StudentDeleted> 
         <xsl:value-of select="'Deleted'"/> 
         </StudentDeleted> 
        </xsl:when> 
        <xsl:otherwise> 
         <xsl:value-of select="PRESENT"/> 
        </xsl:otherwise> 
       </xsl:choose> 
      </Student>   
</xsl:template> 

+0

Dieser xslt erzeugt deine gewünschte Ausgabe. –

Verwandte Themen