After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 435187 - XInclude and XMLReader problem
XInclude and XMLReader problem
Status: RESOLVED DUPLICATE of bug 326924
Product: libxml2
Classification: Platform
Component: general
2.6.27
Other All
: Normal normal
: ---
Assigned To: Daniel Veillard
libxml QA maintainers
Depends on:
Blocks:
 
 
Reported: 2007-05-02 13:41 UTC by Julien Reichel
Modified: 2007-07-19 15:26 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Julien Reichel 2007-05-02 13:41:15 UTC
Please describe the problem:
When using XInclude and XMLReader simultaneously, the XML reader returns an additional XML_READER_TYPE_END_ELEMENT under some conditions. The conditions is that the included XML document contains the following:
<a>
<b />
</a>

In this case the reader returns the following list of Node:
XML_READER_TYPE_ELEMENT (a)
XML_READER_TYPE_ELEMENT (b) (the element is marked as empty)
XML_READER_TYPE_END_ELEMENT
XML_READER_TYPE_END_ELEMENT

Note that the following:
<a>
<b />
<c>some text</c>
</a>
returns 
XML_READER_TYPE_ELEMENT (a)
XML_READER_TYPE_ELEMENT (b) (the element is marked as empty)
XML_READER_TYPE_ELEMENT (c) 
XML_READER_TYPE_END_ELEMENT
XML_READER_TYPE_END_ELEMENT

as expected.

Steps to reproduce:
1. Include the following using XInclude in any document:
<xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="bug.xml"/>

bug.xml:
<?xml version="1.0" encoding="UTF-8"?>
<doc>
 <item1>
   <a/>
 </item1>
 <item2>
 </item2>
</doc>
2. Use the XMLReader to read it
3. 


Actual results:
You get:
XML_READER_TYPE_ELEMENT (doc)
XML_READER_TYPE_ELEMENT (item1) 
XML_READER_TYPE_ELEMENT (a) (marked as empty) 
XML_READER_TYPE_END_ELEMENT
XML_READER_TYPE_END_ELEMENT
XML_READER_TYPE_ELEMENT (item2) 
XML_READER_TYPE_END_ELEMENT
XML_READER_TYPE_END_ELEMENT

Expected results:
You get:
XML_READER_TYPE_ELEMENT (doc)
XML_READER_TYPE_ELEMENT (item1) 
XML_READER_TYPE_ELEMENT (a) (marked as empty) 
XML_READER_TYPE_END_ELEMENT
XML_READER_TYPE_ELEMENT (item2) 
XML_READER_TYPE_END_ELEMENT
XML_READER_TYPE_END_ELEMENT

Does this happen every time?
Yes

Other information:
Comment 1 William M. Brack 2007-07-19 15:26:54 UTC

*** This bug has been marked as a duplicate of 326924 ***