Abel,
At 11:54 AM 11/10/2010, you wrote:
Hi Wolfgang,
If one of the grand wizards would kindly review my solution:
That won't be me, but let's give it a try regardless ;)
<xsl:copy copy-namespaces = "no">
You don't want the namespaces but the output:
<?xml version="1.0" encoding="UTF-8"?>
<doc xmlns="p/q/r" xmlns:abc="a/b/c" xmlns:def="d/e/f" xmlns:ghi="g/h/i">
<abc:bef>The quick brown fox jumps over the lazy dog</abc:bef>
still contains them.
I think the OP actually does want the namespaces that are actually used.
The object is to remove namespaces (and hence namespace declarations)
that aren't actually needed by virtue of being used in any names.
Given that, the only potential issue I see in Wolfgang's code is that
he matches "/node()" for the top level, which would match any comment
or PI siblings of the document element as well as the element itself.
If you want to keep the local part and remove the namespace part of
an element, you'll have to use xsl:element with only a local-part.
True, but that's a different problem (at least if I understood the OP).
Cheers,
Wendell
======================================================================
Wendell Piez
mailto:wapiez(_at_)mulberrytech(_dot_)com
Mulberry Technologies, Inc. http://www.mulberrytech.com
17 West Jefferson Street Direct Phone: 301/315-9635
Suite 207 Phone: 301/315-9631
Rockville, MD 20850 Fax: 301/315-8285
----------------------------------------------------------------------
Mulberry Technologies: A Consultancy Specializing in SGML and XML
======================================================================
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--