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

Reply via email to