1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2026-01-17 02:02:39 +03:00
Files
libxml2/doc/html/libxml-DOCBparser.html
Daniel Veillard 2fdbd32d51 new dictionary module to keep a single instance of the names used by the
* dict.c include/libxml/dict.h Makefile.am include/libxml/Makefile.am:
  new dictionary module to keep a single instance of the names used
  by the parser
* DOCBparser.c HTMLparser.c parser.c parserInternals.c valid.c:
  switched all parsers to use the dictionary internally
* include/libxml/HTMLparser.h include/libxml/parser.h
  include/libxml/parserInternals.h include/libxml/valid.h:
  Some of the interfaces changed as a result to receive or return
  "const xmlChar *" instead of "xmlChar *", this is either
  insignificant from an user point of view or when the returning
  value changed, those function are really parser internal methods
  that no user code should really change
* doc/libxml2-api.xml doc/html/*: the API interface changed and
  the docs were regenerated
Daniel
2003-08-18 12:15:38 +00:00

215 lines
21 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>DOCBparser</title><meta name="generator" content="DocBook XSL Stylesheets V1.58.1"><style xmlns="http://www.w3.org/TR/xhtml1/transitional" type="text/css">
.synopsis, .classsynopsis {
background: #eeeeee;
border: solid 1px #aaaaaa;
padding: 0.5em;
}
.programlisting {
background: #eeeeff;
border: solid 1px #aaaaff;
padding: 0.5em;
}
.variablelist {
padding: 4px;
margin-left: 3em;
}
.navigation {
background: #ffeeee;
border: solid 1px #ffaaaa;
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.navigation a {
color: #770000;
}
.navigation a:visited {
color: #550000;
}
.navigation .title {
font-size: 200%;
}
</style><link rel="home" href="index.html" title="Gnome XML Library Reference Manual"><link rel="up" href="libxml-lib.html" title="Libxml Library Reference"><link rel="previous" href="libxml-globals.html" title="globals"><link rel="next" href="libxml-parserInternals.html" title="parserInternals"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table xmlns="http://www.w3.org/TR/xhtml1/transitional" class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-globals.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></img></a></td><td><a accesskey="u" href="libxml-lib.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></img></a></td><td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></img></a></td><th width="100%" align="center">Gnome XML Library Reference Manual</th><td><a accesskey="n" href="libxml-parserInternals.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></img></a></td></tr></table><div class="refentry" lang="en"><a name="libxml-DOCBparser"></a><div class="titlepage"></div><div class="refnamediv"><h2>DOCBparser</h2><p>DOCBparser &#8212; </p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><pre class="synopsis">
typedef <a href="libxml-DOCBparser.html#docbParserCtxt">docbParserCtxt</a>;
typedef <a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a>;
typedef <a href="libxml-DOCBparser.html#docbParserNodeInfo">docbParserNodeInfo</a>;
typedef <a href="libxml-DOCBparser.html#docbSAXHandler">docbSAXHandler</a>;
typedef <a href="libxml-DOCBparser.html#docbSAXHandlerPtr">docbSAXHandlerPtr</a>;
typedef <a href="libxml-DOCBparser.html#docbParserInput">docbParserInput</a>;
typedef <a href="libxml-DOCBparser.html#docbParserInputPtr">docbParserInputPtr</a>;
typedef <a href="libxml-DOCBparser.html#docbDocPtr">docbDocPtr</a>;
typedef <a href="libxml-DOCBparser.html#docbNodePtr">docbNodePtr</a>;
int <a href="libxml-DOCBparser.html#docbEncodeEntities">docbEncodeEntities</a> (unsigned char *out,
int *outlen,
unsigned char *in,
int *inlen,
int quoteChar);
<a href="libxml-DOCBparser.html#docbDocPtr">docbDocPtr</a> <a href="libxml-DOCBparser.html#docbSAXParseDoc">docbSAXParseDoc</a> (<a href="libxml-tree.html#xmlChar">xmlChar</a> *cur,
const char *encoding,
<a href="libxml-DOCBparser.html#docbSAXHandlerPtr">docbSAXHandlerPtr</a> sax,
void *userData);
<a href="libxml-DOCBparser.html#docbDocPtr">docbDocPtr</a> <a href="libxml-DOCBparser.html#docbParseDoc">docbParseDoc</a> (<a href="libxml-tree.html#xmlChar">xmlChar</a> *cur,
const char *encoding);
<a href="libxml-DOCBparser.html#docbDocPtr">docbDocPtr</a> <a href="libxml-DOCBparser.html#docbSAXParseFile">docbSAXParseFile</a> (const char *filename,
const char *encoding,
<a href="libxml-DOCBparser.html#docbSAXHandlerPtr">docbSAXHandlerPtr</a> sax,
void *userData);
<a href="libxml-DOCBparser.html#docbDocPtr">docbDocPtr</a> <a href="libxml-DOCBparser.html#docbParseFile">docbParseFile</a> (const char *filename,
const char *encoding);
void <a href="libxml-DOCBparser.html#docbFreeParserCtxt">docbFreeParserCtxt</a> (<a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a> ctxt);
<a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a> <a href="libxml-DOCBparser.html#docbCreatePushParserCtxt">docbCreatePushParserCtxt</a> (<a href="libxml-DOCBparser.html#docbSAXHandlerPtr">docbSAXHandlerPtr</a> sax,
void *user_data,
const char *chunk,
int size,
const char *filename,
<a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc);
int <a href="libxml-DOCBparser.html#docbParseChunk">docbParseChunk</a> (<a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a> ctxt,
const char *chunk,
int size,
int terminate);
<a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a> <a href="libxml-DOCBparser.html#docbCreateFileParserCtxt">docbCreateFileParserCtxt</a> (const char *filename,
const char *encoding);
int <a href="libxml-DOCBparser.html#docbParseDocument">docbParseDocument</a> (<a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a> ctxt);
</pre></div><div class="refsect1" lang="en"><h2>Description</h2><p>
</p></div><div class="refsect1" lang="en"><h2>Details</h2><div class="refsect2" lang="en"><h3><a name="docbParserCtxt"></a>docbParserCtxt</h3><pre class="programlisting">typedef xmlParserCtxt docbParserCtxt;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="docbParserCtxtPtr"></a>docbParserCtxtPtr</h3><pre class="programlisting">typedef xmlParserCtxtPtr docbParserCtxtPtr;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="docbParserNodeInfo"></a>docbParserNodeInfo</h3><pre class="programlisting">typedef xmlParserNodeInfo docbParserNodeInfo;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="docbSAXHandler"></a>docbSAXHandler</h3><pre class="programlisting">typedef xmlSAXHandler docbSAXHandler;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="docbSAXHandlerPtr"></a>docbSAXHandlerPtr</h3><pre class="programlisting">typedef xmlSAXHandlerPtr docbSAXHandlerPtr;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="docbParserInput"></a>docbParserInput</h3><pre class="programlisting">typedef xmlParserInput docbParserInput;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="docbParserInputPtr"></a>docbParserInputPtr</h3><pre class="programlisting">typedef xmlParserInputPtr docbParserInputPtr;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="docbDocPtr"></a>docbDocPtr</h3><pre class="programlisting">typedef xmlDocPtr docbDocPtr;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="docbNodePtr"></a>docbNodePtr</h3><pre class="programlisting">typedef xmlNodePtr docbNodePtr;
</pre><p>
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="docbEncodeEntities"></a>docbEncodeEntities ()</h3><pre class="programlisting">int docbEncodeEntities (unsigned char *out,
int *outlen,
unsigned char *in,
int *inlen,
int quoteChar);</pre><p>
Take a block of UTF-8 chars in and try to convert it to an ASCII
plus SGML entities block of chars out.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>out</tt></i> :</span></td><td> a pointer to an array of bytes to store the result
</td></tr><tr><td><span class="term"><i><tt>outlen</tt></i> :</span></td><td> the length of <i><tt>out</tt></i>
</td></tr><tr><td><span class="term"><i><tt>in</tt></i> :</span></td><td> a pointer to an array of UTF-8 chars
</td></tr><tr><td><span class="term"><i><tt>inlen</tt></i> :</span></td><td> the length of <i><tt>in</tt></i>
</td></tr><tr><td><span class="term"><i><tt>quoteChar</tt></i> :</span></td><td> the quote character to escape (' or ") or zero.
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0 if success, -2 if the transcoding fails, or -1 otherwise
The value of <i><tt>inlen</tt></i> after return is the number of octets consumed
as the return value is positive, else unpredictable.
The value of <i><tt>outlen</tt></i> after return is the number of octets consumed.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="docbSAXParseDoc"></a>docbSAXParseDoc ()</h3><pre class="programlisting"><a href="libxml-DOCBparser.html#docbDocPtr">docbDocPtr</a> docbSAXParseDoc (<a href="libxml-tree.html#xmlChar">xmlChar</a> *cur,
const char *encoding,
<a href="libxml-DOCBparser.html#docbSAXHandlerPtr">docbSAXHandlerPtr</a> sax,
void *userData);</pre><p>
parse an SGML in-memory document and build a tree.
It use the given SAX function block to handle the parsing callback.
If sax is NULL, fallback to the default DOM tree building routines.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> a pointer to an array of xmlChar
</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i> :</span></td><td> a free form C string describing the SGML document encoding, or NULL
</td></tr><tr><td><span class="term"><i><tt>sax</tt></i> :</span></td><td> the SAX handler block
</td></tr><tr><td><span class="term"><i><tt>userData</tt></i> :</span></td><td> if using SAX, this pointer will be provided on callbacks.
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the resulting document tree
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="docbParseDoc"></a>docbParseDoc ()</h3><pre class="programlisting"><a href="libxml-DOCBparser.html#docbDocPtr">docbDocPtr</a> docbParseDoc (<a href="libxml-tree.html#xmlChar">xmlChar</a> *cur,
const char *encoding);</pre><p>
parse an SGML in-memory document and build a tree.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>cur</tt></i> :</span></td><td> a pointer to an array of xmlChar
</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i> :</span></td><td> a free form C string describing the SGML document encoding, or NULL
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the resulting document tree
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="docbSAXParseFile"></a>docbSAXParseFile ()</h3><pre class="programlisting"><a href="libxml-DOCBparser.html#docbDocPtr">docbDocPtr</a> docbSAXParseFile (const char *filename,
const char *encoding,
<a href="libxml-DOCBparser.html#docbSAXHandlerPtr">docbSAXHandlerPtr</a> sax,
void *userData);</pre><p>
parse an SGML file and build a tree. Automatic support for ZLIB/Compress
compressed document is provided by default if found at compile-time.
It use the given SAX function block to handle the parsing callback.
If sax is NULL, fallback to the default DOM tree building routines.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>filename</tt></i> :</span></td><td> the filename
</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i> :</span></td><td> a free form C string describing the SGML document encoding, or NULL
</td></tr><tr><td><span class="term"><i><tt>sax</tt></i> :</span></td><td> the SAX handler block
</td></tr><tr><td><span class="term"><i><tt>userData</tt></i> :</span></td><td> if using SAX, this pointer will be provided on callbacks.
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the resulting document tree
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="docbParseFile"></a>docbParseFile ()</h3><pre class="programlisting"><a href="libxml-DOCBparser.html#docbDocPtr">docbDocPtr</a> docbParseFile (const char *filename,
const char *encoding);</pre><p>
parse a Docbook SGML file and build a tree. Automatic support for
ZLIB/Compress compressed document is provided by default if found
at compile-time.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>filename</tt></i> :</span></td><td> the filename
</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i> :</span></td><td> a free form C string describing document encoding, or NULL
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the resulting document tree
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="docbFreeParserCtxt"></a>docbFreeParserCtxt ()</h3><pre class="programlisting">void docbFreeParserCtxt (<a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a> ctxt);</pre><p>
Free all the memory used by a parser context. However the parsed
document in ctxt-&gt;myDoc is not freed.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td> an SGML parser context
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="docbCreatePushParserCtxt"></a>docbCreatePushParserCtxt ()</h3><pre class="programlisting"><a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a> docbCreatePushParserCtxt (<a href="libxml-DOCBparser.html#docbSAXHandlerPtr">docbSAXHandlerPtr</a> sax,
void *user_data,
const char *chunk,
int size,
const char *filename,
<a href="libxml-encoding.html#xmlCharEncoding">xmlCharEncoding</a> enc);</pre><p>
Create a parser context for using the DocBook SGML parser in push mode
To allow content encoding detection, <i><tt>size</tt></i> should be &gt;= 4
The value of <i><tt>filename</tt></i> is used for fetching external entities
and error/warning reports.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>sax</tt></i> :</span></td><td> a SAX handler
</td></tr><tr><td><span class="term"><i><tt>user_data</tt></i> :</span></td><td> The user data returned on SAX callbacks
</td></tr><tr><td><span class="term"><i><tt>chunk</tt></i> :</span></td><td> a pointer to an array of chars
</td></tr><tr><td><span class="term"><i><tt>size</tt></i> :</span></td><td> number of chars in the array
</td></tr><tr><td><span class="term"><i><tt>filename</tt></i> :</span></td><td> an optional file name or URI
</td></tr><tr><td><span class="term"><i><tt>enc</tt></i> :</span></td><td> an optional encoding
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the new parser context or NULL
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="docbParseChunk"></a>docbParseChunk ()</h3><pre class="programlisting">int docbParseChunk (<a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a> ctxt,
const char *chunk,
int size,
int terminate);</pre><p>
Parse a Chunk of memory</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td> an XML parser context
</td></tr><tr><td><span class="term"><i><tt>chunk</tt></i> :</span></td><td> an char array
</td></tr><tr><td><span class="term"><i><tt>size</tt></i> :</span></td><td> the size in byte of the chunk
</td></tr><tr><td><span class="term"><i><tt>terminate</tt></i> :</span></td><td> last chunk indicator
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>zero if no error, the xmlParserErrors otherwise.
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="docbCreateFileParserCtxt"></a>docbCreateFileParserCtxt ()</h3><pre class="programlisting"><a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a> docbCreateFileParserCtxt (const char *filename,
const char *encoding);</pre><p>
Create a parser context for a file content.
Automatic support for ZLIB/Compress compressed document is provided
by default if found at compile-time.</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>filename</tt></i> :</span></td><td> the filename
</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i> :</span></td><td> the SGML document encoding, or NULL
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the new parser context or NULL
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="docbParseDocument"></a>docbParseDocument ()</h3><pre class="programlisting">int docbParseDocument (<a href="libxml-DOCBparser.html#docbParserCtxtPtr">docbParserCtxtPtr</a> ctxt);</pre><p>
parse an SGML document (and build a tree if using the standard SAX
interface).</p><p>
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i> :</span></td><td> an SGML parser context
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>0, -1 in case of error. the parser context is augmented
as a result of the parsing.
</td></tr></tbody></table></div></div></div></div><table xmlns="http://www.w3.org/TR/xhtml1/transitional" class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="0"><tr valign="middle"><td align="left"><a accesskey="p" href="libxml-globals.html"><b>&lt;&lt; globals</b></a></td><td align="right"><a accesskey="n" href="libxml-parserInternals.html"><b>parserInternals &gt;&gt;</b></a></td></tr></table></body></html>