xml-xalan-j-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Brecht Yperman <Brecht.Yper...@invenso.com>
Subject Output method html not closing empty tags
Date Thu, 08 Oct 2009 15:22:19 GMT
Hi,

We have an externally generated XSLT which we use for a transformation using Xalan.

The result however is not as expected.

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fn="http://www.w3.org/2005/xpath-functions"
xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xdt="http://www.w3.org/2005/xpath-datatypes"
xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
exclude-result-prefixes="fn link xbrldi xbrli xdt xlink xs xsi">
                <xsl:output version="4.0" method="html" indent="no" encoding="UTF-8"
doctype-public="-//W3C//DTD HTML 4.01 Transitional//EN" doctype-system="http://www.w3.org/TR/html4/loose.dtd"/>
                <xsl:param name="SV_OutputFormat" select="'HTML'"/>
                <xsl:variable name="XML" select="/"/>
                <xsl:template match="/">
                               <html>
                                              
<body style="margin-left=0.6in; margin-right=0.6in; margin-top=0.79in; margin-bottom=0.79in">
                                                              
<img>
                                                                             
<xsl:attribute name="src">
                                                                                             
<xsl:text>file:///</xsl:text>
                                                                             
</xsl:attribute>
                                                              
</img>
                                              
</body>
                               </html>
                </xsl:template>
</xsl:stylesheet>

This results in the following output:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html xmlns:altova="http://www.altova.com"><body style="margin-left=0.6in; margin-right=0.6in;
margin-top=0.79in; margin-bottom=0.79in"><img src="file:///"></body></html>

As you can see the <img/> tag is not well formed, and we'd like to have XHTML.

The result is OK when we use <xsl:output method="xml" />, but we don't have control
over the stylesheet.

I drilled it down to line 1011 of ./trunk/src/org/apache/xml/serializer/ToHTMLStream.java

What's the reason for this not to be:
writer.write('/>');
?
Thanks,
Brecht

Mime
View raw message