xsl-list
[Top] [All Lists]

Re: [xsl] Saxon output unused namespace declarations

2009-07-23 05:23:27
Weihua JIANG schrieb:

I am wondering why the namespace declaration for xmlns:xs is
outputted. This namespace declaration is not used by the out element.
So, from my opinion, to make the output as simple as possible, the
XSLT 2.0 processor shall not output such declaration.

Yes, but the namespace is present in the instruction tree (the XSL
document), so it is copied to the output - who knows in what weird way
the (XML) output might need the namespaces to be present? Imagine the
output is something like:

  <Constraint type="xs:decimal"/>
  <Constraint>xs:decimal</Constraint>

The QName may not appear in markup, but it appears in element or
attribute content; so it is okay for the XML parser if there is no
namespace declaration - but it might not be okay for the application
processing that document.

Take XSLT and XSD as examples of XML applications that use QNames in
content.

If you don't want the NS declaration in the output, use:

<xsl:stylesheet exclude-result-prefixes="xs bla blub" ...>

Michael Ludwig

--~------------------------------------------------------------------
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>
--~--