xmlns="" added to output
I use an XSLT to transform an XML document output from a program into an XML document that will match an XML schema. Some of the original XML is copied as is, some is thrown out and some is altered in some way in order for the final document to validate against the schema. This XSLT, and others like it, have worked fine for several years in a WAS 5 and then WAS 6 environment, but now, in WAS 7, the XML tags that are just copied as is, have xmlns="" in them. Tags that are actually being transformed in some way are still fine. Example, a tag that was returned as <GEOLOCCode>MHMV</GEOLOCCode> is now returned as <GEOLOCCode xmlns="">MHMV</GEOLOCCode> and thus won't validate against the schema which causes errors. Our WAS 6.1 environment uses the XSLT4J processor and the WAS 7 environment uses the XL TXE-J processor. Is the different processor the problem? Below is how I copy the entire original XML document to the new document: <xsl:template match="*"><xsl:copy><xsl:apply-templates/></xsl:copy></xsl:template> Then, I use template matches to either delete unwanted tags or modify tags. Anything that isn't deleted or modified is left copied into the new document as is. Examples: Delete a tag: <xsl:template match="Fuel"/> Modify a tag: <xsl:template match="AircraftStatus"><MaintenanceStatusCode><xsl:value-of select="."/></MaintenanceStatusCode></xsl:template> Any idea on how I can overcome this problem?
PURCHASE STYLUS STUDIO ONLINE TODAY!
Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!
Download The World's Best XML IDE!
Accelerate XML development with our award-winning XML IDE - Download a free trial today!
Subscribe in XML format