juls_pro_37: XSLT 1.0 Kompletten Inhalt aus XML löschen

Beitrag lesen

Hi,

wie kann man durch eine Bedingung (zB. wenn unter "Totals" das Segment "InvoiceTotal" nicht 0 beinhaltet, den kompletten Inhalt des XMLs entfernen?

Hätte es so probiert:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:output method="xml" version="1.0" encoding="UTF-8" standalone="yes" indent="yes"/>
  <xsl:strip-space elements="*" />

    <xsl:template match="/">    
        <xsl:if test="//Totals[InvoiceTotal != 0 or 0.00 or 0.0000]">       
            <xsl:apply-templates select="@* | node()"/>          
        </xsl:if>
    </xsl:template>

</xsl:stylesheet>

Jedoch bleibt immer der Header erhalten: <?xml version="1.0" encoding="UTF-8" standalone="yes"?>

XML:

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<SALESINVOICE>
  <Interchange>    
    <Interchange_Control_Number>5637355402</Interchange_Control_Number>
  </Interchange>
  <HeaderInformation>
    <OrigInvoiceNumber>1</OrigInvoiceNumber>
  </HeaderInformation>
  <LineInformation>
    <Item>
      <LineNum>1</LineNum>     
    </Item>
  </LineInformation> 
  <Totals>   
    <InvoiceTotal>0.0000</InvoiceTotal>
  </Totals>
</SALESINVOICE>

Danke & LG Julian

akzeptierte Antworten