Turning indent off affects processing of omit-xml-declaration
-------------------------------------------------------------

         Key: XALANC-442
         URL: http://nagoya.apache.org/jira/browse/XALANC-442
     Project: XalanC
        Type: Bug
  Components: XalanC  
    Versions: 1.8    
 Environment: AIX 5.2
    Reporter: Mark Hewitt
    Priority: Minor


The following transform

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>
<xsl:output method="xml" indent="no" omit-xml-declaration="yes"/>
<xsl:template match="message">
        <xsl:element name="hello"><xsl:apply-templates/></xsl:element>
</xsl:template>
</xsl:stylesheet>

when applied to the following xml

<?xml version="1.0"?>
<message>hello world</message>

transforms to

<?xml version="1.0" encoding="UTF-8"?><hello>hello world</hello>

So the omit-xml-declaration is ignored.  If you use indent="yes" then the 
omit-xml-declaration is obeyed.


The problem seems to be that if doIndent == false then 
StylesheetExecutionContextDefault.cpp chooses FormatterToXML_UTF8
otherwise it chooses FormatterToXML.

These two classes differ in that FormatterToXMLBase which is used by 
FormatterToXML_UTF8 has the code

    // We must write the XML declaration if standalone is specified
    m_shouldWriteXMLHeader(xmlDecl == true ? true : standalone.length() == 0),

in its constructor initialization list.

While FormatterToXML just simply has

        m_shouldWriteXMLHeader(xmlDecl),

So the two behave differently and hence turning indent off or on affects the
behaviour of the transformer.

The two should be made to work consistently.  Also i'm not sure if
standalone.length() == 0 is really what is needed.  Shouldnt we test
to see if it is "yes" or "no" or empty?







-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://nagoya.apache.org/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to