Me gustaría tomar datos de algunos archivos XML y transformarlos en un nuevo documento XML. Sin embargo, no quiero que la definición de un espacio de nombres en el XSLT ocurra en el documento de resultados.XSL: Evite exportar definiciones de espacio de nombres a los documentos XML resultantes
En otras palabras:
fuente:
<Namespace:Root xmlns:Namespace="http://www.something.com">
hoja de estilo:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:Namespace="http://www.something.com">
resultado:
<resultRoot xmlns:Namespace="http://www.something.com">
<!--I don't want the Namespace definition above-->
estoy usando msxsl para la transformación.
Supongo que se refería a exclude-result-prefixes? –
Estamos usando extension-element-prefixes y funciona muy bien. – alamar
extension-element-prefixes tiene el mismo efecto, pero tiene un efecto adicional. Cualquier elemento que coloque en uno de esos espacios de nombres se interpretará como un elemento de extensión (en lugar de un elemento de resultado literal). Eso puede ser apropiado para los ejemplos que tienes en tu respuesta. Pero si no quiere ese comportamiento adicional, simplemente use exclude-result-prefixes –