On Thu, Feb 14, 2008 at 03:10:43PM +0200, Andrew W. Nosenko wrote: > On Thu, Feb 14, 2008 at 2:41 PM, Daniel Veillard <[EMAIL PROTECTED]> wrote: > > On Wed, Feb 13, 2008 at 06:16:49PM +0200, Andrew W. Nosenko wrote: > > > On Aug 29, 2007 3:32 PM, Daniel Veillard <[EMAIL PROTECTED]> wrote: > > > > On Wed, Aug 29, 2007 at 06:50:53PM +0530, harbhanu wrote: > > > > > >> What libxml2 creates is a sliding window over the full document. > > It > > > > > >> contains the current node and its ancestors. That's the only > > guarantee > > > > > > Therefore, if I understand correctly the phrase "It contains the > > > current node and its ancestors", the input document should be fully > > > loaded into memory and parsed at first time because of root node (in > > > any use-case, not only "<a><ab><abc><abcd> ... </abcd></abc></ab></a>" > > > case below)? > > > > No. A node and its ancestors doesn't make a full document. It this > > was the case you would not be able to parse and validate documents > > of more than 4 GB in near constant memory, which the reader allows. > > > > Thanks and sorry, I misread "node and its ancestors" as "node and its > descendants" :-(
No problem :-) Basically the reader maintains a 'sliding window' over what would be the full document, and that window moves to cover the current node as Read() calls are made. Daniel -- Red Hat Virtualization group http://redhat.com/virtualization/ Daniel Veillard | virtualization library http://libvirt.org/ [EMAIL PROTECTED] | libxml GNOME XML XSLT toolkit http://xmlsoft.org/ http://veillard.com/ | Rpmfind RPM search engine http://rpmfind.net/ _______________________________________________ xml mailing list, project page http://xmlsoft.org/ [email protected] http://mail.gnome.org/mailman/listinfo/xml
