empty tags vs. singletons
Hello. New here, with a question that I've been able to turn up frustratingly little on -
We are using XSLT, parsed by jd.xslt, to transform XML into XHTML. We are currently using
<xsl:output method="html" encoding="utf-8" doctype-public="-//W3C//DTD XHTML 1.0 Transitional//EN" doctype-system="http://www.w3.org/TR/2000/REC-xhtml1-20000126/DTD/xhtml1-transitional.dtd"/>
This obviously doesn't produce valid xhtml - the slash is removed from singleton tags, 'checked="checked"' is transformed to simply 'checked', and some other similar things. This is not surprising, since our method is set to "html", but ideally we would like this not to be the case.
So why, you ask, are we not using 'method="xml"'? This would solve the above problem, true, but we've had problems with it because our content is variable enough that we may have the situation of empty tags (i.e. '<h3></h3>') being converted into singleton tags (i.e. <h3/>) by the parser, which, while valid XHTML, is not accepted by practically any current web browser. It is a possibility that we might be able to, say, append a ' ' to every tag set that might ever be empty, to prevent them from collapsing in this manner, but we'd really rather not, as it will mess up some formatting and generally be a pain.
My question - is there any compromise we can find between these two problems, making our XHTML valid but making empty tags not collapse into singletons? I am fairly new to XSLT, so apologies if this is an obvious or ill-advised question. But any advice anyone has would be appreciated.
Thanks!
--
jonah
|