juls_pro_37: XSLT 1.0 when

Beitrag lesen

Hi,

ich würde gerne mittels XSLT ein leeres XML erstellen, falls ein bestimmter Wert (ADD_002/IDENTIFIER) ungleich test1 oder ungleich test2 ist. -> Also, wenn ADD_002/IDENTIFIER = test 1 oder test 2 dann ist alles ok -> Wenn ADD_002/IDENTIFIER = test3, dann soll das XML leer sein. (alle Knoten sollen entfernt werden)

XML:

<?xml version="1.0" encoding="ISO-8859-1"?>
<SEEDESADV>
	<CNT>
		<GRP>
			<MSG>	
				<ASN>
					<ADD_002>					
						<IDENTIFIER>test3</IDENTIFIER>						
					</ADD_002>				
					<ITEM>
						<ITEM_POS>
							<LINE_ITEM_NUMBER>1</LINE_ITEM_NUMBER>						
						</ITEM_POS>						
					</ITEM>
				</ASN>
			</MSG>
		</GRP>
	</CNT>
</SEEDESADV>

XSLT:

  <xsl:stylesheet version="1.0"
     xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

 <xsl:output method="xml" indent="yes" encoding="UTF-8"/>
 
  <xsl:strip-space elements="*" />

    <xsl:template match="/">   
        <xsl:choose>
            <xsl:when test="//ADD_002[IDENTIFIER != 'test1' or != 'test2']"></xsl:when>
                <xsl:otherwise> <xsl:apply-templates select="@* | node()"/></xsl:otherwise>                
        </xsl:choose>
    </xsl:template>
 
</xsl:stylesheet>

Vielen Dank

LG Julian