Altova Mailing List Archives

Re: Empty element tags in expat

From: Steven Rowe <sarowe@--------.--->
To: Jan- Arve Sæther <jan.arve@--------.--->
Date: 5/11/2000 1:30:00 PM
Jan- Arve Sæther wrote:
> I'm just wondering if expat can preserve empty elements?
> I'm telling expat to parse this little document fragment:
> <?xml version="1.0"?>
> <size height="180" width="70"/>
> It seems that expat will parse it with no complaints
> and output it to my handlers as "size" is stored as a
> start/end-element pair.
> The consequence is that my output document will look like this:
> <?xml version="1.0"?>
> <size height="180" width="70"></size>
> This also seems to be the case for SAX, so I am wondering if there
> is any good reason why it is like this. Simplicity?

The two forms are exactly equivalent.  This is not a parsing problem,
but rather a serialization problem.

In order to support what you want, an event-based parser (Expat, SAX)
would need to: a) read ahead to see whether an element is empty; and
b) emit a different type of event (start-empty-element? or
empty-element (since no start/end)?) from that of the standard
start-element event.  

So I rather suspect that you are correct in assuming that the issue is

Steve Rowe
MNIS-TextWise Labs

This is xml-dev, the mailing list for XML developers.
To unsubscribe, mailto:majordomo@x...&BODY=unsubscribe%20xml-dev
List archives are available at


These Archives are provided for informational purposes only and have been generated directly from the Altova mailing list archive system and are comprised of the lists set forth on Therefore, Altova does not warrant or guarantee the accuracy, reliability, completeness, usefulness, non-infringement of intellectual property rights, or quality of any content on the Altova Mailing List Archive(s), regardless of who originates that content. You expressly understand and agree that you bear all risks associated with using or relying on that content. Altova will not be liable or responsible in any way for any content posted including, but not limited to, any errors or omissions in content, or for any losses or damage of any kind incurred as a result of the use of or reliance on any content. This disclaimer and limitation on liability is in addition to the disclaimers and limitations contained in the Website Terms of Use and elsewhere on the site.