<HTML
><HEAD
><TITLE
>xmlIO</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.64
"><LINK
REL="HOME"
TITLE="Gnome XML Library Reference Manual"
HREF="book1.html"><LINK
REL="UP"
TITLE="Libxml Library Reference"
HREF="libxml-lib.html"><LINK
REL="PREVIOUS"
TITLE="nanoftp"
HREF="libxml-nanoftp.html"><LINK
REL="NEXT"
TITLE="catalog"
HREF="libxml-catalog.html"></HEAD
><BODY
CLASS="REFENTRY"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
WIDTH="100%"
BORDER="0"
BGCOLOR="#000000"
CELLPADDING="1"
CELLSPACING="0"
><TR
><TH
COLSPAN="4"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="5"
>Gnome XML Library Reference Manual</FONT
></TH
></TR
><TR
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="left"
><A
HREF="libxml-nanoftp.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>&#60;&#60;&#60; Previous Page</B
></FONT
></A
></TD
><TD
WIDTH="25%"
BGCOLOR="#0000C0"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="book1.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Home</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#00C000"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="libxml-lib.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Up</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="right"
><A
HREF="libxml-catalog.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Next Page &#62;&#62;&#62;</B
></FONT
></A
></TD
></TR
></TABLE
></DIV
><H1
><A
NAME="LIBXML-XMLIO"
>xmlIO</A
></H1
><DIV
CLASS="REFNAMEDIV"
><A
NAME="AEN18069"
></A
><H2
>Name</H2
>xmlIO&nbsp;--&nbsp;</DIV
><DIV
CLASS="REFSYNOPSISDIV"
><A
NAME="AEN18072"
></A
><H2
>Synopsis</H2
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="SYNOPSIS"
>&#13;

int         (<A
HREF="libxml-xmlio.html#XMLINPUTMATCHCALLBACK"
>*xmlInputMatchCallback</A
>)        (char const *filename);
void*       (<A
HREF="libxml-xmlio.html#XMLINPUTOPENCALLBACK"
>*xmlInputOpenCallback</A
>)         (char const *filename);
int         (<A
HREF="libxml-xmlio.html#XMLINPUTREADCALLBACK"
>*xmlInputReadCallback</A
>)         (void *context,
                                             char *buffer,
                                             int len);
int         (<A
HREF="libxml-xmlio.html#XMLINPUTCLOSECALLBACK"
>*xmlInputCloseCallback</A
>)        (void *context);
struct      <A
HREF="libxml-tree.html#XMLPARSERINPUTBUFFER"
>xmlParserInputBuffer</A
>;
int         (<A
HREF="libxml-xmlio.html#XMLOUTPUTMATCHCALLBACK"
>*xmlOutputMatchCallback</A
>)       (char const *filename);
void*       (<A
HREF="libxml-xmlio.html#XMLOUTPUTOPENCALLBACK"
>*xmlOutputOpenCallback</A
>)        (char const *filename);
int         (<A
HREF="libxml-xmlio.html#XMLOUTPUTWRITECALLBACK"
>*xmlOutputWriteCallback</A
>)       (void *context,
                                             const char *buffer,
                                             int len);
int         (<A
HREF="libxml-xmlio.html#XMLOUTPUTCLOSECALLBACK"
>*xmlOutputCloseCallback</A
>)       (void *context);
struct      <A
HREF="libxml-tree.html#XMLOUTPUTBUFFER"
>xmlOutputBuffer</A
>;
void        <A
HREF="libxml-xmlio.html#XMLCLEANUPINPUTCALLBACKS"
>xmlCleanupInputCallbacks</A
>        (void);
void        <A
HREF="libxml-xmlio.html#XMLCLEANUPOUTPUTCALLBACKS"
>xmlCleanupOutputCallbacks</A
>       (void);
void        <A
HREF="libxml-xmlio.html#XMLREGISTERDEFAULTINPUTCALLBACKS"
>xmlRegisterDefaultInputCallbacks</A
>
                                            (void);
<A
HREF="libxml-tree.html#XMLPARSERINPUTBUFFERPTR"
>xmlParserInputBufferPtr</A
> <A
HREF="libxml-xmlio.html#XMLALLOCPARSERINPUTBUFFER"
>xmlAllocParserInputBuffer</A
>
                                            (<A
HREF="libxml-encoding.html#XMLCHARENCODING"
>xmlCharEncoding</A
> enc);
<A
HREF="libxml-tree.html#XMLPARSERINPUTBUFFERPTR"
>xmlParserInputBufferPtr</A
> <A
HREF="libxml-xmlio.html#XMLPARSERINPUTBUFFERCREATEFNAME"
>xmlParserInputBufferCreateFname</A
>
                                            (const char *URI,
                                             <A
HREF="libxml-encoding.html#XMLCHARENCODING"
>xmlCharEncoding</A
> enc);
<A
HREF="libxml-tree.html#XMLPARSERINPUTBUFFERPTR"
>xmlParserInputBufferPtr</A
> <A
HREF="libxml-xmlio.html#XMLPARSERINPUTBUFFERCREATEFILENAME"
>xmlParserInputBufferCreateFilename</A
>
                                            (const char *URI,
                                             <A
HREF="libxml-encoding.html#XMLCHARENCODING"
>xmlCharEncoding</A
> enc);
<A
HREF="libxml-tree.html#XMLPARSERINPUTBUFFERPTR"
>xmlParserInputBufferPtr</A
> <A
HREF="libxml-xmlio.html#XMLPARSERINPUTBUFFERCREATEFILE"
>xmlParserInputBufferCreateFile</A
>
                                            (<GTKDOCLINK
HREF="FILE-CAPS"
>FILE</GTKDOCLINK
> *file,
                                             <A
HREF="libxml-encoding.html#XMLCHARENCODING"
>xmlCharEncoding</A
> enc);
<A
HREF="libxml-tree.html#XMLPARSERINPUTBUFFERPTR"
>xmlParserInputBufferPtr</A
> <A
HREF="libxml-xmlio.html#XMLPARSERINPUTBUFFERCREATEFD"
>xmlParserInputBufferCreateFd</A
>
                                            (int fd,
                                             <A
HREF="libxml-encoding.html#XMLCHARENCODING"
>xmlCharEncoding</A
> enc);
<A
HREF="libxml-tree.html#XMLPARSERINPUTBUFFERPTR"
>xmlParserInputBufferPtr</A
> <A
HREF="libxml-xmlio.html#XMLPARSERINPUTBUFFERCREATEMEM"
>xmlParserInputBufferCreateMem</A
>
                                            (const char *mem,
                                             int size,
                                             <A
HREF="libxml-encoding.html#XMLCHARENCODING"
>xmlCharEncoding</A
> enc);
<A
HREF="libxml-tree.html#XMLPARSERINPUTBUFFERPTR"
>xmlParserInputBufferPtr</A
> <A
HREF="libxml-xmlio.html#XMLPARSERINPUTBUFFERCREATEIO"
>xmlParserInputBufferCreateIO</A
>
                                            (<A
HREF="libxml-xmlio.html#XMLINPUTREADCALLBACK"
>xmlInputReadCallback</A
> ioread,
                                             <A
HREF="libxml-xmlio.html#XMLINPUTCLOSECALLBACK"
>xmlInputCloseCallback</A
> ioclose,
                                             void *ioctx,
                                             <A
HREF="libxml-encoding.html#XMLCHARENCODING"
>xmlCharEncoding</A
> enc);
int         <A
HREF="libxml-xmlio.html#XMLPARSERINPUTBUFFERREAD"
>xmlParserInputBufferRead</A
>        (<A
HREF="libxml-tree.html#XMLPARSERINPUTBUFFERPTR"
>xmlParserInputBufferPtr</A
> in,
                                             int len);
int         <A
HREF="libxml-xmlio.html#XMLPARSERINPUTBUFFERGROW"
>xmlParserInputBufferGrow</A
>        (<A
HREF="libxml-tree.html#XMLPARSERINPUTBUFFERPTR"
>xmlParserInputBufferPtr</A
> in,
                                             int len);
int         <A
HREF="libxml-xmlio.html#XMLPARSERINPUTBUFFERPUSH"
>xmlParserInputBufferPush</A
>        (<A
HREF="libxml-tree.html#XMLPARSERINPUTBUFFERPTR"
>xmlParserInputBufferPtr</A
> in,
                                             int len,
                                             const char *buf);
void        <A
HREF="libxml-xmlio.html#XMLFREEPARSERINPUTBUFFER"
>xmlFreeParserInputBuffer</A
>        (<A
HREF="libxml-tree.html#XMLPARSERINPUTBUFFERPTR"
>xmlParserInputBufferPtr</A
> in);
char*       <A
HREF="libxml-xmlio.html#XMLPARSERGETDIRECTORY"
>xmlParserGetDirectory</A
>           (const char *filename);
int         <A
HREF="libxml-xmlio.html#XMLREGISTERINPUTCALLBACKS"
>xmlRegisterInputCallbacks</A
>       (<A
HREF="libxml-xmlio.html#XMLINPUTMATCHCALLBACK"
>xmlInputMatchCallback</A
> matchFunc,
                                             <A
HREF="libxml-xmlio.html#XMLINPUTOPENCALLBACK"
>xmlInputOpenCallback</A
> openFunc,
                                             <A
HREF="libxml-xmlio.html#XMLINPUTREADCALLBACK"
>xmlInputReadCallback</A
> readFunc,
                                             <A
HREF="libxml-xmlio.html#XMLINPUTCLOSECALLBACK"
>xmlInputCloseCallback</A
> closeFunc);
void        <A
HREF="libxml-xmlio.html#XMLREGISTERDEFAULTOUTPUTCALLBACKS"
>xmlRegisterDefaultOutputCallbacks</A
>
                                            (void);
<A
HREF="libxml-tree.html#XMLOUTPUTBUFFERPTR"
>xmlOutputBufferPtr</A
> <A
HREF="libxml-xmlio.html#XMLALLOCOUTPUTBUFFER"
>xmlAllocOutputBuffer</A
>     (<A
HREF="libxml-encoding.html#XMLCHARENCODINGHANDLERPTR"
>xmlCharEncodingHandlerPtr</A
> encoder);
<A
HREF="libxml-tree.html#XMLOUTPUTBUFFERPTR"
>xmlOutputBufferPtr</A
> <A
HREF="libxml-xmlio.html#XMLOUTPUTBUFFERCREATEFILENAME"
>xmlOutputBufferCreateFilename</A
>
                                            (const char *URI,
                                             <A
HREF="libxml-encoding.html#XMLCHARENCODINGHANDLERPTR"
>xmlCharEncodingHandlerPtr</A
> encoder,
                                             int compression);
<A
HREF="libxml-tree.html#XMLOUTPUTBUFFERPTR"
>xmlOutputBufferPtr</A
> <A
HREF="libxml-xmlio.html#XMLOUTPUTBUFFERCREATEFILE"
>xmlOutputBufferCreateFile</A
>
                                            (<GTKDOCLINK
HREF="FILE-CAPS"
>FILE</GTKDOCLINK
> *file,
                                             <A
HREF="libxml-encoding.html#XMLCHARENCODINGHANDLERPTR"
>xmlCharEncodingHandlerPtr</A
> encoder);
<A
HREF="libxml-tree.html#XMLOUTPUTBUFFERPTR"
>xmlOutputBufferPtr</A
> <A
HREF="libxml-xmlio.html#XMLOUTPUTBUFFERCREATEFD"
>xmlOutputBufferCreateFd</A
>  (int fd,
                                             <A
HREF="libxml-encoding.html#XMLCHARENCODINGHANDLERPTR"
>xmlCharEncodingHandlerPtr</A
> encoder);
<A
HREF="libxml-tree.html#XMLOUTPUTBUFFERPTR"
>xmlOutputBufferPtr</A
> <A
HREF="libxml-xmlio.html#XMLOUTPUTBUFFERCREATEIO"
>xmlOutputBufferCreateIO</A
>  (<A
HREF="libxml-xmlio.html#XMLOUTPUTWRITECALLBACK"
>xmlOutputWriteCallback</A
> iowrite,
                                             <A
HREF="libxml-xmlio.html#XMLOUTPUTCLOSECALLBACK"
>xmlOutputCloseCallback</A
> ioclose,
                                             void *ioctx,
                                             <A
HREF="libxml-encoding.html#XMLCHARENCODINGHANDLERPTR"
>xmlCharEncodingHandlerPtr</A
> encoder);
int         <A
HREF="libxml-xmlio.html#XMLOUTPUTBUFFERWRITE"
>xmlOutputBufferWrite</A
>            (<A
HREF="libxml-tree.html#XMLOUTPUTBUFFERPTR"
>xmlOutputBufferPtr</A
> out,
                                             int len,
                                             const char *buf);
int         <A
HREF="libxml-xmlio.html#XMLOUTPUTBUFFERWRITESTRING"
>xmlOutputBufferWriteString</A
>      (<A
HREF="libxml-tree.html#XMLOUTPUTBUFFERPTR"
>xmlOutputBufferPtr</A
> out,
                                             const char *str);
int         <A
HREF="libxml-xmlio.html#XMLOUTPUTBUFFERFLUSH"
>xmlOutputBufferFlush</A
>            (<A
HREF="libxml-tree.html#XMLOUTPUTBUFFERPTR"
>xmlOutputBufferPtr</A
> out);
int         <A
HREF="libxml-xmlio.html#XMLOUTPUTBUFFERCLOSE"
>xmlOutputBufferClose</A
>            (<A
HREF="libxml-tree.html#XMLOUTPUTBUFFERPTR"
>xmlOutputBufferPtr</A
> out);
int         <A
HREF="libxml-xmlio.html#XMLREGISTEROUTPUTCALLBACKS"
>xmlRegisterOutputCallbacks</A
>      (<A
HREF="libxml-xmlio.html#XMLOUTPUTMATCHCALLBACK"
>xmlOutputMatchCallback</A
> matchFunc,
                                             <A
HREF="libxml-xmlio.html#XMLOUTPUTOPENCALLBACK"
>xmlOutputOpenCallback</A
> openFunc,
                                             <A
HREF="libxml-xmlio.html#XMLOUTPUTWRITECALLBACK"
>xmlOutputWriteCallback</A
> writeFunc,
                                             <A
HREF="libxml-xmlio.html#XMLOUTPUTCLOSECALLBACK"
>xmlOutputCloseCallback</A
> closeFunc);
void*       <A
HREF="libxml-xmlio.html#XMLIOHTTPOPENW"
>xmlIOHTTPOpenW</A
>                  (const char *post_uri,
                                             int compression);
void        <A
HREF="libxml-xmlio.html#XMLREGISTERHTTPPOSTCALLBACKS"
>xmlRegisterHTTPPostCallbacks</A
>    (void);
<A
HREF="libxml-tree.html#XMLPARSERINPUTPTR"
>xmlParserInputPtr</A
> <A
HREF="libxml-xmlio.html#XMLNONETEXTERNALENTITYLOADER"
>xmlNoNetExternalEntityLoader</A
>
                                            (const char *URL,
                                             const char *ID,
                                             <A
HREF="libxml-tree.html#XMLPARSERCTXTPTR"
>xmlParserCtxtPtr</A
> ctxt);</PRE
></TD
></TR
></TABLE
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN18163"
></A
><H2
>Description</H2
><P
></P
></DIV
><DIV
CLASS="REFSECT1"
><A
NAME="AEN18166"
></A
><H2
>Details</H2
><DIV
CLASS="REFSECT2"
><A
NAME="AEN18168"
></A
><H3
><A
NAME="XMLINPUTMATCHCALLBACK"
></A
>xmlInputMatchCallback ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         (*xmlInputMatchCallback)        (char const *filename);</PRE
></TD
></TR
></TABLE
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18173"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>filename</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18186"
></A
><H3
><A
NAME="XMLINPUTOPENCALLBACK"
></A
>xmlInputOpenCallback ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void*       (*xmlInputOpenCallback)         (char const *filename);</PRE
></TD
></TR
></TABLE
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18191"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>filename</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18200"
></A
><H3
><A
NAME="XMLINPUTREADCALLBACK"
></A
>xmlInputReadCallback ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         (*xmlInputReadCallback)         (void *context,
                                             char *buffer,
                                             int len);</PRE
></TD
></TR
></TABLE
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18205"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>context</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>buffer</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>len</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18226"
></A
><H3
><A
NAME="XMLINPUTCLOSECALLBACK"
></A
>xmlInputCloseCallback ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         (*xmlInputCloseCallback)        (void *context);</PRE
></TD
></TR
></TABLE
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18231"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>context</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18244"
></A
><H3
><A
NAME="XMLPARSERINPUTBUFFER"
></A
>struct xmlParserInputBuffer</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>struct xmlParserInputBuffer {
    void*                  context;
    xmlInputReadCallback   readcallback;
    xmlInputCloseCallback  closecallback;
    
    xmlCharEncodingHandlerPtr encoder; /* I18N conversions to UTF-8 */
    
    xmlBufferPtr buffer;    /* Local buffer encoded in UTF-8 */
    xmlBufferPtr raw;       /* if encoder != NULL buffer for raw input */
};</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18249"
></A
><H3
><A
NAME="XMLOUTPUTMATCHCALLBACK"
></A
>xmlOutputMatchCallback ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         (*xmlOutputMatchCallback)       (char const *filename);</PRE
></TD
></TR
></TABLE
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18254"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>filename</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18267"
></A
><H3
><A
NAME="XMLOUTPUTOPENCALLBACK"
></A
>xmlOutputOpenCallback ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void*       (*xmlOutputOpenCallback)        (char const *filename);</PRE
></TD
></TR
></TABLE
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18272"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>filename</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18281"
></A
><H3
><A
NAME="XMLOUTPUTWRITECALLBACK"
></A
>xmlOutputWriteCallback ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         (*xmlOutputWriteCallback)       (void *context,
                                             const char *buffer,
                                             int len);</PRE
></TD
></TR
></TABLE
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18286"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>context</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>buffer</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>len</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18307"
></A
><H3
><A
NAME="XMLOUTPUTCLOSECALLBACK"
></A
>xmlOutputCloseCallback ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         (*xmlOutputCloseCallback)       (void *context);</PRE
></TD
></TR
></TABLE
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18312"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>context</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18325"
></A
><H3
><A
NAME="XMLOUTPUTBUFFER"
></A
>struct xmlOutputBuffer</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>struct xmlOutputBuffer {
    void*                   context;
    xmlOutputWriteCallback  writecallback;
    xmlOutputCloseCallback  closecallback;
    
    xmlCharEncodingHandlerPtr encoder; /* I18N conversions to UTF-8 */
    
    xmlBufferPtr buffer;    /* Local buffer encoded in UTF-8 or ISOLatin */
    xmlBufferPtr conv;      /* if encoder != NULL buffer for output */
    int written;            /* total number of byte written */
};</PRE
></TD
></TR
></TABLE
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18330"
></A
><H3
><A
NAME="XMLCLEANUPINPUTCALLBACKS"
></A
>xmlCleanupInputCallbacks ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void        xmlCleanupInputCallbacks        (void);</PRE
></TD
></TR
></TABLE
><P
>clears the entire input callback table. this includes the
compiled-in I/O.</P
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18336"
></A
><H3
><A
NAME="XMLCLEANUPOUTPUTCALLBACKS"
></A
>xmlCleanupOutputCallbacks ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void        xmlCleanupOutputCallbacks       (void);</PRE
></TD
></TR
></TABLE
><P
>clears the entire output callback table. this includes the
compiled-in I/O callbacks.</P
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18342"
></A
><H3
><A
NAME="XMLREGISTERDEFAULTINPUTCALLBACKS"
></A
>xmlRegisterDefaultInputCallbacks ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void        xmlRegisterDefaultInputCallbacks
                                            (void);</PRE
></TD
></TR
></TABLE
><P
>Registers the default compiled-in I/O handlers.</P
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18348"
></A
><H3
><A
NAME="XMLALLOCPARSERINPUTBUFFER"
></A
>xmlAllocParserInputBuffer ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><A
HREF="libxml-tree.html#XMLPARSERINPUTBUFFERPTR"
>xmlParserInputBufferPtr</A
> xmlAllocParserInputBuffer
                                            (<A
HREF="libxml-encoding.html#XMLCHARENCODING"
>xmlCharEncoding</A
> enc);</PRE
></TD
></TR
></TABLE
><P
>Create a buffered parser input for progressive parsing</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18356"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>enc</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the charset encoding if known</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the new parser input or NULL</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18369"
></A
><H3
><A
NAME="XMLPARSERINPUTBUFFERCREATEFNAME"
></A
>xmlParserInputBufferCreateFname ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><A
HREF="libxml-tree.html#XMLPARSERINPUTBUFFERPTR"
>xmlParserInputBufferPtr</A
> xmlParserInputBufferCreateFname
                                            (const char *URI,
                                             <A
HREF="libxml-encoding.html#XMLCHARENCODING"
>xmlCharEncoding</A
> enc);</PRE
></TD
></TR
></TABLE
><P
>VMS version of <A
HREF="libxml-xmlio.html#XMLPARSERINPUTBUFFERCREATEFILENAME"
>xmlParserInputBufferCreateFilename</A
>()</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18378"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>URI</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  a C string containing the URI or filename</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>enc</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the charset encoding if known</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the new parser input or NULL</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18395"
></A
><H3
><A
NAME="XMLPARSERINPUTBUFFERCREATEFILENAME"
></A
>xmlParserInputBufferCreateFilename ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><A
HREF="libxml-tree.html#XMLPARSERINPUTBUFFERPTR"
>xmlParserInputBufferPtr</A
> xmlParserInputBufferCreateFilename
                                            (const char *URI,
                                             <A
HREF="libxml-encoding.html#XMLCHARENCODING"
>xmlCharEncoding</A
> enc);</PRE
></TD
></TR
></TABLE
><P
>Create a buffered parser input for the progressive parsing of a file
If filename is "-' then we use stdin as the input.
Automatic support for ZLIB/Compress compressed document is provided
by default if found at compile-time.
Do an encoding check if enc == XML_CHAR_ENCODING_NONE</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18403"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>URI</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  a C string containing the URI or filename</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>enc</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the charset encoding if known</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the new parser input or NULL</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18420"
></A
><H3
><A
NAME="XMLPARSERINPUTBUFFERCREATEFILE"
></A
>xmlParserInputBufferCreateFile ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><A
HREF="libxml-tree.html#XMLPARSERINPUTBUFFERPTR"
>xmlParserInputBufferPtr</A
> xmlParserInputBufferCreateFile
                                            (<GTKDOCLINK
HREF="FILE-CAPS"
>FILE</GTKDOCLINK
> *file,
                                             <A
HREF="libxml-encoding.html#XMLCHARENCODING"
>xmlCharEncoding</A
> enc);</PRE
></TD
></TR
></TABLE
><P
>Create a buffered parser input for the progressive parsing of a FILE *
buffered C I/O</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18429"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>file</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  a FILE* </TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>enc</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the charset encoding if known</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the new parser input or NULL</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18446"
></A
><H3
><A
NAME="XMLPARSERINPUTBUFFERCREATEFD"
></A
>xmlParserInputBufferCreateFd ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><A
HREF="libxml-tree.html#XMLPARSERINPUTBUFFERPTR"
>xmlParserInputBufferPtr</A
> xmlParserInputBufferCreateFd
                                            (int fd,
                                             <A
HREF="libxml-encoding.html#XMLCHARENCODING"
>xmlCharEncoding</A
> enc);</PRE
></TD
></TR
></TABLE
><P
>Create a buffered parser input for the progressive parsing for the input
from a file descriptor</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18454"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>fd</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  a file descriptor number</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>enc</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the charset encoding if known</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the new parser input or NULL</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18471"
></A
><H3
><A
NAME="XMLPARSERINPUTBUFFERCREATEMEM"
></A
>xmlParserInputBufferCreateMem ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><A
HREF="libxml-tree.html#XMLPARSERINPUTBUFFERPTR"
>xmlParserInputBufferPtr</A
> xmlParserInputBufferCreateMem
                                            (const char *mem,
                                             int size,
                                             <A
HREF="libxml-encoding.html#XMLCHARENCODING"
>xmlCharEncoding</A
> enc);</PRE
></TD
></TR
></TABLE
><P
>Create a buffered parser input for the progressive parsing for the input
from a memory area.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18479"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>mem</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the memory input</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>size</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the length of the memory block</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>enc</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the charset encoding if known</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the new parser input or NULL</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18500"
></A
><H3
><A
NAME="XMLPARSERINPUTBUFFERCREATEIO"
></A
>xmlParserInputBufferCreateIO ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><A
HREF="libxml-tree.html#XMLPARSERINPUTBUFFERPTR"
>xmlParserInputBufferPtr</A
> xmlParserInputBufferCreateIO
                                            (<A
HREF="libxml-xmlio.html#XMLINPUTREADCALLBACK"
>xmlInputReadCallback</A
> ioread,
                                             <A
HREF="libxml-xmlio.html#XMLINPUTCLOSECALLBACK"
>xmlInputCloseCallback</A
> ioclose,
                                             void *ioctx,
                                             <A
HREF="libxml-encoding.html#XMLCHARENCODING"
>xmlCharEncoding</A
> enc);</PRE
></TD
></TR
></TABLE
><P
>Create a buffered parser input for the progressive parsing for the input
from an I/O handler</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18510"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>ioread</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  an I/O read function</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>ioclose</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  an I/O close function</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>ioctx</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  an I/O handler</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>enc</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the charset encoding if known</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the new parser input or NULL</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18535"
></A
><H3
><A
NAME="XMLPARSERINPUTBUFFERREAD"
></A
>xmlParserInputBufferRead ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         xmlParserInputBufferRead        (<A
HREF="libxml-tree.html#XMLPARSERINPUTBUFFERPTR"
>xmlParserInputBufferPtr</A
> in,
                                             int len);</PRE
></TD
></TR
></TABLE
><P
>Refresh the content of the input buffer, the old data are considered
consumed
This routine handle the I18N transcoding to internal UTF-8</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18542"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>in</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  a buffered parser input</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>len</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  indicative value of the amount of chars to read</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the number of chars read and stored in the buffer, or -1
in case of error.</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18559"
></A
><H3
><A
NAME="XMLPARSERINPUTBUFFERGROW"
></A
>xmlParserInputBufferGrow ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         xmlParserInputBufferGrow        (<A
HREF="libxml-tree.html#XMLPARSERINPUTBUFFERPTR"
>xmlParserInputBufferPtr</A
> in,
                                             int len);</PRE
></TD
></TR
></TABLE
><P
>Grow up the content of the input buffer, the old data are preserved
This routine handle the I18N transcoding to internal UTF-8
This routine is used when operating the parser in normal (pull) mode</P
><P
>TODO: one should be able to remove one extra copy by copying directy
onto in-&gt;buffer or in-&gt;raw</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18567"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>in</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  a buffered parser input</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>len</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  indicative value of the amount of chars to read</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the number of chars read and stored in the buffer, or -1
in case of error.</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18584"
></A
><H3
><A
NAME="XMLPARSERINPUTBUFFERPUSH"
></A
>xmlParserInputBufferPush ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         xmlParserInputBufferPush        (<A
HREF="libxml-tree.html#XMLPARSERINPUTBUFFERPTR"
>xmlParserInputBufferPtr</A
> in,
                                             int len,
                                             const char *buf);</PRE
></TD
></TR
></TABLE
><P
>Push the content of the arry in the input buffer
This routine handle the I18N transcoding to internal UTF-8
This is used when operating the parser in progressive (push) mode.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18591"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>in</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  a buffered parser input</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>len</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the size in bytes of the array.</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>buf</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  an char array</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the number of chars read and stored in the buffer, or -1
in case of error.</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18612"
></A
><H3
><A
NAME="XMLFREEPARSERINPUTBUFFER"
></A
>xmlFreeParserInputBuffer ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void        xmlFreeParserInputBuffer        (<A
HREF="libxml-tree.html#XMLPARSERINPUTBUFFERPTR"
>xmlParserInputBufferPtr</A
> in);</PRE
></TD
></TR
></TABLE
><P
>Free up the memory used by a buffered parser input</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18619"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>in</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  a buffered parser input</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18628"
></A
><H3
><A
NAME="XMLPARSERGETDIRECTORY"
></A
>xmlParserGetDirectory ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>char*       xmlParserGetDirectory           (const char *filename);</PRE
></TD
></TR
></TABLE
><P
>lookup the directory for that file</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18634"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>filename</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the path to a file</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>a new allocated string containing the directory, or NULL.</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18647"
></A
><H3
><A
NAME="XMLREGISTERINPUTCALLBACKS"
></A
>xmlRegisterInputCallbacks ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         xmlRegisterInputCallbacks       (<A
HREF="libxml-xmlio.html#XMLINPUTMATCHCALLBACK"
>xmlInputMatchCallback</A
> matchFunc,
                                             <A
HREF="libxml-xmlio.html#XMLINPUTOPENCALLBACK"
>xmlInputOpenCallback</A
> openFunc,
                                             <A
HREF="libxml-xmlio.html#XMLINPUTREADCALLBACK"
>xmlInputReadCallback</A
> readFunc,
                                             <A
HREF="libxml-xmlio.html#XMLINPUTCLOSECALLBACK"
>xmlInputCloseCallback</A
> closeFunc);</PRE
></TD
></TR
></TABLE
><P
>Register a new set of I/O callback for handling parser input.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18657"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>matchFunc</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the xmlInputMatchCallback</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>openFunc</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the xmlInputOpenCallback</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>readFunc</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the xmlInputReadCallback</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>closeFunc</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the xmlInputCloseCallback</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the registered handler number or -1 in case of error</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18682"
></A
><H3
><A
NAME="XMLREGISTERDEFAULTOUTPUTCALLBACKS"
></A
>xmlRegisterDefaultOutputCallbacks ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void        xmlRegisterDefaultOutputCallbacks
                                            (void);</PRE
></TD
></TR
></TABLE
><P
>Registers the default compiled-in I/O handlers.</P
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18688"
></A
><H3
><A
NAME="XMLALLOCOUTPUTBUFFER"
></A
>xmlAllocOutputBuffer ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><A
HREF="libxml-tree.html#XMLOUTPUTBUFFERPTR"
>xmlOutputBufferPtr</A
> xmlAllocOutputBuffer     (<A
HREF="libxml-encoding.html#XMLCHARENCODINGHANDLERPTR"
>xmlCharEncodingHandlerPtr</A
> encoder);</PRE
></TD
></TR
></TABLE
><P
>Create a buffered parser output</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18696"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>encoder</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the encoding converter or NULL</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the new parser output or NULL</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18709"
></A
><H3
><A
NAME="XMLOUTPUTBUFFERCREATEFILENAME"
></A
>xmlOutputBufferCreateFilename ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><A
HREF="libxml-tree.html#XMLOUTPUTBUFFERPTR"
>xmlOutputBufferPtr</A
> xmlOutputBufferCreateFilename
                                            (const char *URI,
                                             <A
HREF="libxml-encoding.html#XMLCHARENCODINGHANDLERPTR"
>xmlCharEncodingHandlerPtr</A
> encoder,
                                             int compression);</PRE
></TD
></TR
></TABLE
><P
>Create a buffered  output for the progressive saving of a file
If filename is "-' then we use stdout as the output.
Automatic support for ZLIB/Compress compressed document is provided
by default if found at compile-time.
TODO: currently if compression is set, the library only support
writing to a local file.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18717"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>URI</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  a C string containing the URI or filename</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>encoder</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the encoding converter or NULL</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>compression</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the compression ration (0 none, 9 max).</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the new output or NULL</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18738"
></A
><H3
><A
NAME="XMLOUTPUTBUFFERCREATEFILE"
></A
>xmlOutputBufferCreateFile ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><A
HREF="libxml-tree.html#XMLOUTPUTBUFFERPTR"
>xmlOutputBufferPtr</A
> xmlOutputBufferCreateFile
                                            (<GTKDOCLINK
HREF="FILE-CAPS"
>FILE</GTKDOCLINK
> *file,
                                             <A
HREF="libxml-encoding.html#XMLCHARENCODINGHANDLERPTR"
>xmlCharEncodingHandlerPtr</A
> encoder);</PRE
></TD
></TR
></TABLE
><P
>Create a buffered output for the progressive saving to a FILE *
buffered C I/O</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18747"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>file</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  a FILE* </TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>encoder</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the encoding converter or NULL</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the new parser output or NULL</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18764"
></A
><H3
><A
NAME="XMLOUTPUTBUFFERCREATEFD"
></A
>xmlOutputBufferCreateFd ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><A
HREF="libxml-tree.html#XMLOUTPUTBUFFERPTR"
>xmlOutputBufferPtr</A
> xmlOutputBufferCreateFd  (int fd,
                                             <A
HREF="libxml-encoding.html#XMLCHARENCODINGHANDLERPTR"
>xmlCharEncodingHandlerPtr</A
> encoder);</PRE
></TD
></TR
></TABLE
><P
>Create a buffered output for the progressive saving 
to a file descriptor</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18772"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>fd</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  a file descriptor number</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>encoder</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the encoding converter or NULL</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the new parser output or NULL</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18789"
></A
><H3
><A
NAME="XMLOUTPUTBUFFERCREATEIO"
></A
>xmlOutputBufferCreateIO ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><A
HREF="libxml-tree.html#XMLOUTPUTBUFFERPTR"
>xmlOutputBufferPtr</A
> xmlOutputBufferCreateIO  (<A
HREF="libxml-xmlio.html#XMLOUTPUTWRITECALLBACK"
>xmlOutputWriteCallback</A
> iowrite,
                                             <A
HREF="libxml-xmlio.html#XMLOUTPUTCLOSECALLBACK"
>xmlOutputCloseCallback</A
> ioclose,
                                             void *ioctx,
                                             <A
HREF="libxml-encoding.html#XMLCHARENCODINGHANDLERPTR"
>xmlCharEncodingHandlerPtr</A
> encoder);</PRE
></TD
></TR
></TABLE
><P
>Create a buffered output for the progressive saving
to an I/O handler</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18799"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>iowrite</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  an I/O write function</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>ioclose</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  an I/O close function</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>ioctx</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  an I/O handler</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>encoder</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>&nbsp;</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the new parser output or NULL</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18824"
></A
><H3
><A
NAME="XMLOUTPUTBUFFERWRITE"
></A
>xmlOutputBufferWrite ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         xmlOutputBufferWrite            (<A
HREF="libxml-tree.html#XMLOUTPUTBUFFERPTR"
>xmlOutputBufferPtr</A
> out,
                                             int len,
                                             const char *buf);</PRE
></TD
></TR
></TABLE
><P
>Write the content of the array in the output I/O buffer
This routine handle the I18N transcoding from internal UTF-8
The buffer is lossless, i.e. will store in case of partial
or delayed writes.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18831"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>out</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  a buffered parser output</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>len</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the size in bytes of the array.</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>buf</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  an char array</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the number of chars immediately written, or -1
in case of error.</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18852"
></A
><H3
><A
NAME="XMLOUTPUTBUFFERWRITESTRING"
></A
>xmlOutputBufferWriteString ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         xmlOutputBufferWriteString      (<A
HREF="libxml-tree.html#XMLOUTPUTBUFFERPTR"
>xmlOutputBufferPtr</A
> out,
                                             const char *str);</PRE
></TD
></TR
></TABLE
><P
>Write the content of the string in the output I/O buffer
This routine handle the I18N transcoding from internal UTF-8
The buffer is lossless, i.e. will store in case of partial
or delayed writes.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18859"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>out</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  a buffered parser output</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>str</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  a zero terminated C string</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the number of chars immediately written, or -1
in case of error.</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18876"
></A
><H3
><A
NAME="XMLOUTPUTBUFFERFLUSH"
></A
>xmlOutputBufferFlush ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         xmlOutputBufferFlush            (<A
HREF="libxml-tree.html#XMLOUTPUTBUFFERPTR"
>xmlOutputBufferPtr</A
> out);</PRE
></TD
></TR
></TABLE
><P
>flushes the output I/O channel</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18883"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>out</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  a buffered output</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the number of byte written or -1 in case of error.</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18896"
></A
><H3
><A
NAME="XMLOUTPUTBUFFERCLOSE"
></A
>xmlOutputBufferClose ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         xmlOutputBufferClose            (<A
HREF="libxml-tree.html#XMLOUTPUTBUFFERPTR"
>xmlOutputBufferPtr</A
> out);</PRE
></TD
></TR
></TABLE
><P
>flushes and close the output I/O channel
and free up all the associated resources</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18903"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>out</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  a buffered output</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the number of byte written or -1 in case of error.</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18916"
></A
><H3
><A
NAME="XMLREGISTEROUTPUTCALLBACKS"
></A
>xmlRegisterOutputCallbacks ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>int         xmlRegisterOutputCallbacks      (<A
HREF="libxml-xmlio.html#XMLOUTPUTMATCHCALLBACK"
>xmlOutputMatchCallback</A
> matchFunc,
                                             <A
HREF="libxml-xmlio.html#XMLOUTPUTOPENCALLBACK"
>xmlOutputOpenCallback</A
> openFunc,
                                             <A
HREF="libxml-xmlio.html#XMLOUTPUTWRITECALLBACK"
>xmlOutputWriteCallback</A
> writeFunc,
                                             <A
HREF="libxml-xmlio.html#XMLOUTPUTCLOSECALLBACK"
>xmlOutputCloseCallback</A
> closeFunc);</PRE
></TD
></TR
></TABLE
><P
>Register a new set of I/O callback for handling output.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18926"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>matchFunc</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the xmlOutputMatchCallback</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>openFunc</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the xmlOutputOpenCallback</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>writeFunc</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the xmlOutputWriteCallback</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>closeFunc</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the xmlOutputCloseCallback</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>the registered handler number or -1 in case of error</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18951"
></A
><H3
><A
NAME="XMLIOHTTPOPENW"
></A
>xmlIOHTTPOpenW ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void*       xmlIOHTTPOpenW                  (const char *post_uri,
                                             int compression);</PRE
></TD
></TR
></TABLE
><P
>Open a temporary buffer to collect the document for a subsequent HTTP POST
request.  Non-static as is called from the output buffer creation routine.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18957"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>post_uri</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  The destination URI for the document</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>compression</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  The compression desired for the document.</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18970"
></A
><H3
><A
NAME="XMLREGISTERHTTPPOSTCALLBACKS"
></A
>xmlRegisterHTTPPostCallbacks ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
>void        xmlRegisterHTTPPostCallbacks    (void);</PRE
></TD
></TR
></TABLE
><P
>By default, libxml submits HTTP output requests using the "PUT" method.
Calling this method changes the HTTP output method to use the "POST"
method instead.</P
><P
></P
></DIV
><HR><DIV
CLASS="REFSECT2"
><A
NAME="AEN18976"
></A
><H3
><A
NAME="XMLNONETEXTERNALENTITYLOADER"
></A
>xmlNoNetExternalEntityLoader ()</H3
><TABLE
BORDER="0"
BGCOLOR="#D6E8FF"
WIDTH="100%"
CELLPADDING="6"
><TR
><TD
><PRE
CLASS="PROGRAMLISTING"
><A
HREF="libxml-tree.html#XMLPARSERINPUTPTR"
>xmlParserInputPtr</A
> xmlNoNetExternalEntityLoader
                                            (const char *URL,
                                             const char *ID,
                                             <A
HREF="libxml-tree.html#XMLPARSERCTXTPTR"
>xmlParserCtxtPtr</A
> ctxt);</PRE
></TD
></TR
></TABLE
><P
>A specific entity loader disabling network accesses, though still
allowing local catalog accesses for resolution.</P
><P
></P
><DIV
CLASS="INFORMALTABLE"
><A
NAME="AEN18984"
></A
><P
></P
><TABLE
BORDER="0"
WIDTH="100%"
BGCOLOR="#FFD0D0"
CELLSPACING="0"
CELLPADDING="4"
CLASS="CALSTABLE"
><TBODY
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>URL</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the URL for the entity to load</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>ID</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the System ID for the entity to load</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><TT
CLASS="PARAMETER"
><I
>ctxt</I
></TT
>&nbsp;:</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>  the context in which the entity is called or NULL</TD
></TR
><TR
><TD
WIDTH="20%"
ALIGN="RIGHT"
VALIGN="TOP"
><I
CLASS="EMPHASIS"
>Returns</I
> :</TD
><TD
WIDTH="80%"
ALIGN="LEFT"
VALIGN="TOP"
>a new allocated xmlParserInputPtr, or NULL.</TD
></TR
></TBODY
></TABLE
><P
></P
></DIV
></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><BR
CLEAR="all"><BR><TABLE
WIDTH="100%"
BORDER="0"
BGCOLOR="#000000"
CELLPADDING="1"
CELLSPACING="0"
><TR
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="left"
><A
HREF="libxml-nanoftp.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>&#60;&#60;&#60; Previous Page</B
></FONT
></A
></TD
><TD
WIDTH="25%"
BGCOLOR="#0000C0"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="book1.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Home</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#00C000"
ALIGN="center"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
><A
HREF="libxml-lib.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Up</B
></FONT
></A
></B
></FONT
></TD
><TD
WIDTH="25%"
BGCOLOR="#C00000"
ALIGN="right"
><A
HREF="libxml-catalog.html"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>Next Page &#62;&#62;&#62;</B
></FONT
></A
></TD
></TR
><TR
><TD
COLSPAN="2"
ALIGN="left"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>nanoftp</B
></FONT
></TD
><TD
COLSPAN="2"
ALIGN="right"
><FONT
COLOR="#FFFFFF"
SIZE="3"
><B
>catalog</B
></FONT
></TD
></TR
></TABLE
></DIV
></BODY
></HTML
>