Yes, generating the <xsl:stylesheet> explicitly as <newxsl:stylesheet>
rather than using <xsl:copy> would result in newxsl: being declared at the
root.
But then any elements -- or XPaths -- copied from the source stylesheet
would have the reverse problem; they'd still be using the xsl: prefix and
would need to declare *that* prefix.
(The real answer is that prefixes probably shouldn't be preserved. But
that doesn't mesh well with the assumptions folks have layered on top of
the Namespaces spec, most noticably the use of prefixes within text
strings like XPaths. Sigh.)
Looks like giving up and going with explicit <xsl:element> is the most
reliable, and most portable, answer I'm going to get, at least in XSLT
1.0.
______________________________________
Joe Kesselman, IBM Next-Generation Web Technologies:
XML, XSL and more. "may'ron DaroQbe'chugh vaj bIrIQbej"
("Put down the squeezebox and nobody gets hurt.")
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list