| /* |
| * Summary: text writing API for XML |
| * Description: text writing API for XML |
| * |
| * Copy: See Copyright for the status of this software. |
| * |
| * Author: Alfred Mickautsch <alfred@mickautsch.de> |
| */ |
| |
| #ifndef __XML_XMLWRITER_H__ |
| #define __XML_XMLWRITER_H__ |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| |
| #include <stdarg.h> |
| #include <libxml/xmlIO.h> |
| #include <libxml/list.h> |
| |
| typedef struct _xmlTextWriter xmlTextWriter; |
| typedef xmlTextWriter *xmlTextWriterPtr; |
| |
| /* |
| * Constructors & Destructor |
| */ |
| XMLPUBFUN xmlTextWriterPtr XMLCALL |
| xmlNewTextWriter (xmlOutputBufferPtr out); |
| XMLPUBFUN xmlTextWriterPtr XMLCALL |
| xmlNewTextWriterFilename(const char *uri, int compression); |
| XMLPUBFUN xmlTextWriterPtr XMLCALL |
| xmlNewTextWriterMemory(xmlBufferPtr buf, int compression); |
| XMLPUBFUN xmlTextWriterPtr XMLCALL |
| xmlNewTextWriterPushParser(xmlParserCtxtPtr ctxt, int compression); |
| XMLPUBFUN xmlTextWriterPtr XMLCALL |
| xmlNewTextWriterDoc(xmlDocPtr * doc, int compression); |
| XMLPUBFUN xmlTextWriterPtr XMLCALL |
| xmlNewTextWriterTree(xmlDocPtr doc, |
| xmlNodePtr node, int compression); |
| XMLPUBFUN void XMLCALL xmlFreeTextWriter(xmlTextWriterPtr writer); |
| |
| /* |
| * Functions |
| */ |
| |
| |
| /* |
| * Document |
| */ |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterStartDocument (xmlTextWriterPtr writer, |
| const char *version, |
| const char *encoding, |
| const char *standalone); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterEndDocument (xmlTextWriterPtr writer); |
| |
| /* |
| * Comments |
| */ |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteFormatComment (xmlTextWriterPtr writer, |
| const char *format, ...); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteVFormatComment(xmlTextWriterPtr writer, |
| const char *format, |
| va_list argptr); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteComment (xmlTextWriterPtr writer, |
| const xmlChar * content); |
| |
| /* |
| * Elements |
| */ |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterStartElement (xmlTextWriterPtr writer, |
| const xmlChar * name); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterStartElementNS (xmlTextWriterPtr writer, |
| const xmlChar * prefix, |
| const xmlChar * name, |
| const xmlChar * namespaceURI); |
| XMLPUBFUN int XMLCALL xmlTextWriterEndElement(xmlTextWriterPtr writer); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterFullEndElement (xmlTextWriterPtr writer); |
| |
| /* |
| * Elements conveniency functions |
| */ |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteFormatElement (xmlTextWriterPtr writer, |
| const xmlChar * name, |
| const char *format, ...); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteVFormatElement(xmlTextWriterPtr writer, |
| const xmlChar * name, |
| const char *format, |
| va_list argptr); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteElement (xmlTextWriterPtr writer, |
| const xmlChar * name, |
| const xmlChar * content); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteFormatElementNS(xmlTextWriterPtr writer, |
| const xmlChar * prefix, |
| const xmlChar * name, |
| const xmlChar * namespaceURI, |
| const char *format, ...); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteVFormatElementNS(xmlTextWriterPtr writer, |
| const xmlChar * prefix, |
| const xmlChar * name, |
| const xmlChar * namespaceURI, |
| const char *format, |
| va_list argptr); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteElementNS (xmlTextWriterPtr writer, |
| const xmlChar * prefix, |
| const xmlChar * name, |
| const xmlChar * namespaceURI, |
| const xmlChar * content); |
| |
| /* |
| * Text |
| */ |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteFormatRaw (xmlTextWriterPtr writer, |
| const char *format, ...); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteVFormatRaw (xmlTextWriterPtr writer, |
| const char *format, va_list argptr); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteRawLen (xmlTextWriterPtr writer, |
| const xmlChar * content, int len); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteRaw (xmlTextWriterPtr writer, |
| const xmlChar * content); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteFormatString (xmlTextWriterPtr writer, |
| const char *format, ...); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteVFormatString (xmlTextWriterPtr writer, |
| const char *format, |
| va_list argptr); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteString (xmlTextWriterPtr writer, |
| const xmlChar * content); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteBase64 (xmlTextWriterPtr writer, |
| const char *data, int start, int len); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteBinHex (xmlTextWriterPtr writer, |
| const char *data, int start, int len); |
| |
| /* |
| * Attributes |
| */ |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterStartAttribute (xmlTextWriterPtr writer, |
| const xmlChar * name); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterStartAttributeNS (xmlTextWriterPtr writer, |
| const xmlChar * prefix, |
| const xmlChar * name, |
| const xmlChar * namespaceURI); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterEndAttribute (xmlTextWriterPtr writer); |
| |
| /* |
| * Attributes conveniency functions |
| */ |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteFormatAttribute(xmlTextWriterPtr writer, |
| const xmlChar * name, |
| const char *format, ...); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteVFormatAttribute(xmlTextWriterPtr writer, |
| const xmlChar * name, |
| const char *format, |
| va_list argptr); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteAttribute (xmlTextWriterPtr writer, |
| const xmlChar * name, |
| const xmlChar * content); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteFormatAttributeNS(xmlTextWriterPtr writer, |
| const xmlChar * prefix, |
| const xmlChar * name, |
| const xmlChar * namespaceURI, |
| const char *format, ...); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteVFormatAttributeNS(xmlTextWriterPtr writer, |
| const xmlChar * prefix, |
| const xmlChar * name, |
| const xmlChar * namespaceURI, |
| const char *format, |
| va_list argptr); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteAttributeNS (xmlTextWriterPtr writer, |
| const xmlChar * prefix, |
| const xmlChar * name, |
| const xmlChar * namespaceURI, |
| const xmlChar * content); |
| |
| /* |
| * PI's |
| */ |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterStartPI (xmlTextWriterPtr writer, |
| const xmlChar * target); |
| XMLPUBFUN int XMLCALL xmlTextWriterEndPI(xmlTextWriterPtr writer); |
| |
| /* |
| * PI conveniency functions |
| */ |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteFormatPI (xmlTextWriterPtr writer, |
| const xmlChar * target, |
| const char *format, ...); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteVFormatPI (xmlTextWriterPtr writer, |
| const xmlChar * target, |
| const char *format, va_list argptr); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWritePI (xmlTextWriterPtr writer, |
| const xmlChar * target, |
| const xmlChar * content); |
| /** |
| * xmlTextWriterWriteProcessingInstruction: |
| * |
| * This macro maps to xmlTextWriterWritePI |
| */ |
| #define xmlTextWriterWriteProcessingInstruction xmlTextWriterWritePI |
| |
| /* |
| * CDATA |
| */ |
| XMLPUBFUN int XMLCALL xmlTextWriterStartCDATA(xmlTextWriterPtr writer); |
| XMLPUBFUN int XMLCALL xmlTextWriterEndCDATA(xmlTextWriterPtr writer); |
| |
| /* |
| * CDATA conveniency functions |
| */ |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteFormatCDATA (xmlTextWriterPtr writer, |
| const char *format, ...); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteVFormatCDATA (xmlTextWriterPtr writer, |
| const char *format, va_list argptr); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteCDATA (xmlTextWriterPtr writer, |
| const xmlChar * content); |
| |
| /* |
| * DTD |
| */ |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterStartDTD (xmlTextWriterPtr writer, |
| const xmlChar * name, |
| const xmlChar * pubid, |
| const xmlChar * sysid); |
| XMLPUBFUN int XMLCALL xmlTextWriterEndDTD(xmlTextWriterPtr writer); |
| |
| /* |
| * DTD conveniency functions |
| */ |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteFormatDTD (xmlTextWriterPtr writer, |
| const xmlChar * name, |
| const xmlChar * pubid, |
| const xmlChar * sysid, |
| const char *format, ...); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteVFormatDTD (xmlTextWriterPtr writer, |
| const xmlChar * name, |
| const xmlChar * pubid, |
| const xmlChar * sysid, |
| const char *format, va_list argptr); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteDTD (xmlTextWriterPtr writer, |
| const xmlChar * name, |
| const xmlChar * pubid, |
| const xmlChar * sysid, |
| const xmlChar * subset); |
| /** |
| * xmlTextWriterWriteDocType: |
| * |
| * this macro maps to xmlTextWriterWriteDTD |
| */ |
| #define xmlTextWriterWriteDocType xmlTextWriterWriteDTD |
| |
| /* |
| * DTD element definition |
| */ |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterStartDTDElement (xmlTextWriterPtr writer, |
| const xmlChar * name); |
| /** |
| * xmlTextWriterEndDTDElement: |
| * |
| * This macro maps to xmlTextWriterEndDTD |
| */ |
| #define xmlTextWriterEndDTDElement xmlTextWriterEndDTD |
| |
| /* |
| * DTD element definition conveniency functions |
| */ |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteFormatDTDElement(xmlTextWriterPtr writer, |
| const xmlChar * name, |
| const char *format, ...); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteVFormatDTDElement(xmlTextWriterPtr writer, |
| const xmlChar * name, |
| const char *format, |
| va_list argptr); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteDTDElement (xmlTextWriterPtr writer, |
| const xmlChar * name, |
| const xmlChar * content); |
| |
| /* |
| * DTD attribute list definition |
| */ |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterStartDTDAttlist (xmlTextWriterPtr writer, |
| const xmlChar * name); |
| /** |
| * xmlTextWriterEndDTDAttlist: |
| * |
| * This macro maps to xmlTextWriterEndDTD |
| */ |
| #define xmlTextWriterEndDTDAttlist xmlTextWriterEndDTD |
| |
| /* |
| * DTD attribute list definition conveniency functions |
| */ |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteFormatDTDAttlist(xmlTextWriterPtr writer, |
| const xmlChar * name, |
| const char *format, ...); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteVFormatDTDAttlist(xmlTextWriterPtr writer, |
| const xmlChar * name, |
| const char *format, |
| va_list argptr); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteDTDAttlist (xmlTextWriterPtr writer, |
| const xmlChar * name, |
| const xmlChar * content); |
| |
| /* |
| * DTD entity definition |
| */ |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterStartDTDEntity (xmlTextWriterPtr writer, |
| int pe, const xmlChar * name); |
| /** |
| * xmlTextWriterEndDTDEntity: |
| * |
| * This macro maps to xmlTextWriterEndDTD |
| */ |
| #define xmlTextWriterEndDTDEntity xmlTextWriterEndDTD |
| |
| /* |
| * DTD entity definition conveniency functions |
| */ |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteFormatDTDInternalEntity(xmlTextWriterPtr writer, |
| int pe, |
| const xmlChar * name, |
| const char *format, ...); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteVFormatDTDInternalEntity(xmlTextWriterPtr writer, |
| int pe, |
| const xmlChar * name, |
| const char *format, |
| va_list argptr); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteDTDInternalEntity(xmlTextWriterPtr writer, |
| int pe, |
| const xmlChar * name, |
| const xmlChar * content); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteDTDExternalEntity(xmlTextWriterPtr writer, |
| int pe, |
| const xmlChar * name, |
| const xmlChar * pubid, |
| const xmlChar * sysid, |
| const xmlChar * ndataid); |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteDTDEntity (xmlTextWriterPtr writer, |
| int pe, |
| const xmlChar * name, |
| const xmlChar * pubid, |
| const xmlChar * sysid, |
| const xmlChar * ndataid, |
| const xmlChar * content); |
| |
| /* |
| * DTD notation definition |
| */ |
| XMLPUBFUN int XMLCALL |
| xmlTextWriterWriteDTDNotation (xmlTextWriterPtr writer, |
| const xmlChar * name, |
| const xmlChar * pubid, |
| const xmlChar * sysid); |
| |
| /* |
| * misc |
| */ |
| XMLPUBFUN int XMLCALL xmlTextWriterFlush(xmlTextWriterPtr writer); |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| #endif /* __XML_XMLWRITER_H__ */ |