#

## Module DOCBparser from libxml2

API Menu

- Main Menu
- Developer Menu
- Code Examples
- API Menu
- Parser API
- Tree API
- Reader API
- XML Guidelines
- ChangeLog

API Indexes

- Alphabetic
- Constructors
- Functions/Types
- Modules
- Symbols

Related links

- Mail archive
- XSLT libxslt
- DOM gdome2
- XML-DSig xmlsec
- FTP
- Windows binaries
- Solaris binaries
- MacOsX binaries
- lxml Python bindings
- Perl bindings
- C++ bindings
- PHP bindings
- Pascal bindings
- Ruby bindings
- Tcl bindings
- Bug Tracker

## This module is deprecated

interface for a DocBook SGML non-verifying parser This code is DEPRECATED, and should not be used anymore.

## Table of Contents

    Typedef xmlParserInputPtr docbParserInputPtr

    Typedef xmlParserCtxt docbParserCtxt

    Typedef xmlParserCtxtPtr docbParserCtxtPtr

    Typedef xmlParserInput docbParserInput

    Typedef xmlDocPtr docbDocPtr

    Typedef xmlSAXHandler docbSAXHandler

    Typedef xmlSAXHandlerPtr docbSAXHandlerPtr

    void	docbFreeParserCtxt		(docbParserCtxtPtr ctxt)

    docbDocPtr	docbParseDoc		(xmlChar * cur,
    					 const char * encoding)

    docbParserCtxtPtr	docbCreateFileParserCtxt	(const char * filename,
    							 const char * encoding)

    docbDocPtr	docbSAXParseFile	(const char * filename,
    					 const char * encoding,
    					 docbSAXHandlerPtr sax,
    					 void * userData)

    docbDocPtr	docbSAXParseDoc		(xmlChar * cur,
    					 const char * encoding,
    					 docbSAXHandlerPtr sax,
    					 void * userData)

    docbParserCtxtPtr	docbCreatePushParserCtxt	(docbSAXHandlerPtr sax,
    							 void * user_data,
    							 const char * chunk,
    							 int size,
    							 const char * filename,
    							 xmlCharEncoding enc)

    int	docbEncodeEntities		(unsigned char * out,
    					 int * outlen,
    					 const unsigned char * in,
    					 int * inlen,
    					 int quoteChar)

    docbDocPtr	docbParseFile		(const char * filename,
    					 const char * encoding)

    int	docbParseDocument		(docbParserCtxtPtr ctxt)

    int	docbParseChunk			(docbParserCtxtPtr ctxt,
    					 const char * chunk,
    					 int size,
    					 int terminate)

## Description

### Function: docbFreeParserCtxt

    void	docbFreeParserCtxt		(docbParserCtxtPtr ctxt)

Free all the memory used by a parser context. However the parsed document in ctxt->myDoc is not freed.

`ctxt`: | an SGML parser context

### Function: docbParseDoc

    docbDocPtr	docbParseDoc		(xmlChar * cur,
    					 const char * encoding)

parse an SGML in-memory document and build a tree.

`cur`: | a pointer to an array of xmlChar
`encoding`: | a free form C string describing the SGML document encoding, or NULL
`Returns`: | the resulting document tree

### Function: docbCreateFileParserCtxt

    docbParserCtxtPtr	docbCreateFileParserCtxt	(const char * filename,
    							 const char * encoding)

Create a parser context for a file content. Automatic support for ZLIB/Compress compressed document is provided by default if found at compile-time.

`filename`: | the filename
`encoding`: | the SGML document encoding, or NULL
`Returns`: | the new parser context or NULL

### Function: docbSAXParseFile

    docbDocPtr	docbSAXParseFile	(const char * filename,
    					 const char * encoding,
    					 docbSAXHandlerPtr sax,
    					 void * userData)

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.

`filename`: | the filename
`encoding`: | a free form C string describing the SGML document encoding, or NULL
`sax`: | the SAX handler block
`userData`: | if using SAX, this pointer will be provided on callbacks.
`Returns`: | the resulting document tree

### Function: docbSAXParseDoc

    docbDocPtr	docbSAXParseDoc		(xmlChar * cur,
    					 const char * encoding,
    					 docbSAXHandlerPtr sax,
    					 void * userData)

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.

`cur`: | a pointer to an array of xmlChar
`encoding`: | a free form C string describing the SGML document encoding, or NULL
`sax`: | the SAX handler block
`userData`: | if using SAX, this pointer will be provided on callbacks.
`Returns`: | the resulting document tree

### Function: docbCreatePushParserCtxt

    docbParserCtxtPtr	docbCreatePushParserCtxt	(docbSAXHandlerPtr sax,
    							 void * user_data,
    							 const char * chunk,
    							 int size,
    							 const char * filename,
    							 xmlCharEncoding enc)

Create a parser context for using the DocBook SGML parser in push mode To allow content encoding detection, @size should be >= 4 The value of @filename is used for fetching external entities and error/warning reports.

`sax`: | a SAX handler
`user_data`: | The user data returned on SAX callbacks
`chunk`: | a pointer to an array of chars
`size`: | number of chars in the array
`filename`: | an optional file name or URI
`enc`: | an optional encoding
`Returns`: | the new parser context or NULL

### Function: docbEncodeEntities

    int	docbEncodeEntities		(unsigned char * out,
    					 int * outlen,
    					 const unsigned char * in,
    					 int * inlen,
    					 int quoteChar)

Take a block of UTF-8 chars in and try to convert it to an ASCII plus SGML entities block of chars out.

`out`: | a pointer to an array of bytes to store the result
`outlen`: | the length of @out
`in`: | a pointer to an array of UTF-8 chars
`inlen`: | the length of @in
`quoteChar`: | the quote character to escape (' or ") or zero.
`Returns`: | 0 if success, -2 if the transcoding fails, or -1 otherwise The value of @inlen after return is the number of octets consumed as the return value is positive, else unpredictable. The value of @outlen after return is the number of octets consumed.

### Function: docbParseFile

    docbDocPtr	docbParseFile		(const char * filename,
    					 const char * encoding)

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.

`filename`: | the filename
`encoding`: | a free form C string describing document encoding, or NULL
`Returns`: | the resulting document tree

### Function: docbParseDocument

    int	docbParseDocument		(docbParserCtxtPtr ctxt)

parse an SGML document (and build a tree if using the standard SAX interface).

`ctxt`: | an SGML parser context
`Returns`: | 0, -1 in case of error. the parser context is augmented as a result of the parsing.

### Function: docbParseChunk

    int	docbParseChunk			(docbParserCtxtPtr ctxt,
    					 const char * chunk,
    					 int size,
    					 int terminate)

Parse a Chunk of memory

`ctxt`: | an XML parser context
`chunk`: | an char array
`size`: | the size in byte of the chunk
`terminate`: | last chunk indicator
`Returns`: | zero if no error, the xmlParserErrors otherwise.

Daniel Veillard