[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
Re: [xml] how to advance the xmlParserInput.cur?
- From: Wei Lu <welu cs indiana edu>
- To: Daniel Veillard <veillard redhat com>
- Cc: xml gnome org
- Subject: Re: [xml] how to advance the xmlParserInput.cur?
- Date: Sun, 12 Mar 2006 10:56:31 -0500 (EST)
On Sun, 12 Mar 2006, Daniel Veillard wrote:
> On Sat, Mar 11, 2006 at 11:00:01PM -0500, Wei Lu wrote:
> >
> > Hi there
> > I have a strang requirement for libxml2. During parsing a XML
> > document in the memory at some point I want to the parser to skip parsing
> > a chunk of memory, which is somehow guarnteed to just include a
> > well-balanced sub-tree. I modified the xmlParseContent function to skip a
> > chunk of memory when it detected a open tag. Any body can tell me the
> > correct and safe method to do that.
>
> By definition it's not correct, it's not an XML parser anymore, "somehow
> it's XML" is not something I feel okay to provide help for. What do you intend
> to do with this bastardized code ?
The ability of skipping of a sub tree is useful for some perfomrance
optimization. For example lazy evaluation can skip a sub-tree once it
found user are not interested in the sub-tree. For tree
A
/ \
B C, if B is not used now, then the generated tree could be just
A
\
C
Thanks
Wei
>
> > By guess I tried the
> > xmlParserInputGrow, which seems doesn't change the xmpParserInput.cur at
> > all; Now my work around is just increaing the xmlParserInput.cur directly,
> > seems works well, but when file size is large, I got segment fault.
> >
> > Any clue is appreciated.
>
> You will need to refill the buffers if you get outside of the chunk
> already availble in xmpParserInput. It is *not* trivial, encoding will
> play a role too.
>
> Daniel
>
> --
> Daniel Veillard | Red Hat http://redhat.com/
> veillard redhat com | libxml GNOME XML XSLT toolkit http://xmlsoft.org/
> http://veillard.com/ | Rpmfind RPM search engine http://rpmfind.net/
>
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]