Опитвам се да добавя атрибута xmlns към получения XML със стойност, предадена от параметър по време на XSLT трансформация с помощта на JDK Transformer (Oracle XML v2 Parser или JAXP), но винаги по подразбиране е http://www.w3.org/2000/xmlns/
Моят изходен XML
<test/>
Моят XSLT
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns="http://example.com">
<xsl:param name="myNameSpace" select="'http://neilghosh.com'"/>
<xsl:template match="/">
<process>
<xsl:attribute name="xmlns:neil">
<xsl:value-of select="$myNameSpace"/>
</xsl:attribute>
</process>
</xsl:template>
</xsl:stylesheet>
Моят резултат
<?xml version="1.0"?>
<process xmlns="http://www.w3.org/2000/xmlns/" xmlns:neil="neilghosh.com">
</process>
Моят желан резултат
<?xml version="1.0"?>
<process xmlns="http://example.com" xmlns:neil="neilghosh.com">
</process>
http://example.com/
, а неhttp://example.com
. Браузърите ще коригират последното към първото, ако ги въведете в лента за местоположение, но това коригира очевидна грешка при въвеждане. Не можете да имате HTTP URI без част от пътя. - person Jon Hanna   schedule 29.08.2012