Wie kann ich das Präfix urn von allen Elementen entfernen, außer vom Wurzelknoten?XSLT entfernt das Präfix von den Elementen, außer vom Wurzelknoten
XML Eingang
<urn:client xmlns:urn='www.testing.com' xmlns:x='http://schemas.xmlsoap.org/soap/envelope/'>
<urn:header>
<urn:desc1>undefined</urn:desc1>
<urn:desc2>undefined</urn:desc2>
</urn:header>
<urn:itens1>
<urn:item1>undefined
<urn:name1>undefined</urn:name1>
<urn:name2>undefined</urn:name2>
</urn:item1>
</urn:itens1>
<urn:itens2>
<urn:item1>undefined
<urn:name1>undefined</urn:name1>
<urn:name2>undefined</urn:name2>
</urn:item1>
<urn:item2>undefined
<urn:name1>undefined</urn:name1>
<urn:name2>undefined</urn:name2>
</urn:item2>
</urn:itens2>
</urn:client>
XML-Ausgabe
<urn:client xmlns:urn='www.testing.com' xmlns:x='http://schemas.xmlsoap.org/soap/envelope/'>
<header>
<desc1>undefined</desc1>
<desc2>undefined</desc2>
</header>
<itens1>
<item1>undefined
<name1>undefined</name1>
<name2>undefined</name2>
</item1>
</itens1>
<itens2>
<item1>undefined
<name1>undefined</name1>
<name2>undefined</name2>
</item1>
<item2>undefined
<name1>undefined</name1>
<name2>undefined</name2>
</item2>
</itens2>
</urn:client>
ich versuchte, mit dem folgenden XSLT-Code
<?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"/>
<xsl:template match="*">
<xsl:element name="{local-name(.)}">
<xsl:apply-templates select="@* | node()"/>
</xsl:element>
</xsl:template>
<xsl:template match="@*">
<xsl:attribute name="{local-name(.)}">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
</xsl:stylesheet>
jedoch das Präfix und Namensraum von dem Wurzelknoten ebenfalls entfernt wird, .
Dou Jungs haben irgendwelche ideia?
Tks
Ja! Du hast Recht. Es funktioniert jetzt. Danke vielmals. – user1761848