Annotation of embedaddon/libxml2/include/libxml/xmlwriter.h, revision 1.1.1.1

1.1       misho       1: 
                      2: /*
                      3:  * Summary: text writing API for XML
                      4:  * Description: text writing API for XML
                      5:  *
                      6:  * Copy: See Copyright for the status of this software.
                      7:  *
                      8:  * Author: Alfred Mickautsch <alfred@mickautsch.de>
                      9:  */
                     10: 
                     11: #ifndef __XML_XMLWRITER_H__
                     12: #define __XML_XMLWRITER_H__
                     13: 
                     14: #include <libxml/xmlversion.h>
                     15: 
                     16: #ifdef LIBXML_WRITER_ENABLED
                     17: 
                     18: #include <stdarg.h>
                     19: #include <libxml/xmlIO.h>
                     20: #include <libxml/list.h>
                     21: #include <libxml/xmlstring.h>
                     22: 
                     23: #ifdef __cplusplus
                     24: extern "C" {
                     25: #endif
                     26: 
                     27:     typedef struct _xmlTextWriter xmlTextWriter;
                     28:     typedef xmlTextWriter *xmlTextWriterPtr;
                     29: 
                     30: /*
                     31:  * Constructors & Destructor
                     32:  */
                     33:     XMLPUBFUN xmlTextWriterPtr XMLCALL
                     34:         xmlNewTextWriter(xmlOutputBufferPtr out);
                     35:     XMLPUBFUN xmlTextWriterPtr XMLCALL
                     36:         xmlNewTextWriterFilename(const char *uri, int compression);
                     37:     XMLPUBFUN xmlTextWriterPtr XMLCALL
                     38:         xmlNewTextWriterMemory(xmlBufferPtr buf, int compression);
                     39:     XMLPUBFUN xmlTextWriterPtr XMLCALL
                     40:         xmlNewTextWriterPushParser(xmlParserCtxtPtr ctxt, int compression);
                     41:     XMLPUBFUN xmlTextWriterPtr XMLCALL
                     42:         xmlNewTextWriterDoc(xmlDocPtr * doc, int compression);
                     43:     XMLPUBFUN xmlTextWriterPtr XMLCALL
                     44:         xmlNewTextWriterTree(xmlDocPtr doc, xmlNodePtr node,
                     45:                              int compression);
                     46:     XMLPUBFUN void XMLCALL xmlFreeTextWriter(xmlTextWriterPtr writer);
                     47: 
                     48: /*
                     49:  * Functions
                     50:  */
                     51: 
                     52: 
                     53: /*
                     54:  * Document
                     55:  */
                     56:     XMLPUBFUN int XMLCALL
                     57:         xmlTextWriterStartDocument(xmlTextWriterPtr writer,
                     58:                                    const char *version,
                     59:                                    const char *encoding,
                     60:                                    const char *standalone);
                     61:     XMLPUBFUN int XMLCALL xmlTextWriterEndDocument(xmlTextWriterPtr
                     62:                                                    writer);
                     63: 
                     64: /*
                     65:  * Comments
                     66:  */
                     67:     XMLPUBFUN int XMLCALL xmlTextWriterStartComment(xmlTextWriterPtr
                     68:                                                     writer);
                     69:     XMLPUBFUN int XMLCALL xmlTextWriterEndComment(xmlTextWriterPtr writer);
                     70:     XMLPUBFUN int XMLCALL
                     71:         xmlTextWriterWriteFormatComment(xmlTextWriterPtr writer,
                     72:                                         const char *format, ...)
                     73:                                        LIBXML_ATTR_FORMAT(2,3);
                     74:     XMLPUBFUN int XMLCALL
                     75:         xmlTextWriterWriteVFormatComment(xmlTextWriterPtr writer,
                     76:                                          const char *format,
                     77:                                          va_list argptr)
                     78:                                         LIBXML_ATTR_FORMAT(2,0);
                     79:     XMLPUBFUN int XMLCALL xmlTextWriterWriteComment(xmlTextWriterPtr
                     80:                                                     writer,
                     81:                                                     const xmlChar *
                     82:                                                     content);
                     83: 
                     84: /*
                     85:  * Elements
                     86:  */
                     87:     XMLPUBFUN int XMLCALL
                     88:         xmlTextWriterStartElement(xmlTextWriterPtr writer,
                     89:                                   const xmlChar * name);
                     90:     XMLPUBFUN int XMLCALL xmlTextWriterStartElementNS(xmlTextWriterPtr
                     91:                                                       writer,
                     92:                                                       const xmlChar *
                     93:                                                       prefix,
                     94:                                                       const xmlChar * name,
                     95:                                                       const xmlChar *
                     96:                                                       namespaceURI);
                     97:     XMLPUBFUN int XMLCALL xmlTextWriterEndElement(xmlTextWriterPtr writer);
                     98:     XMLPUBFUN int XMLCALL xmlTextWriterFullEndElement(xmlTextWriterPtr
                     99:                                                       writer);
                    100: 
                    101: /*
                    102:  * Elements conveniency functions
                    103:  */
                    104:     XMLPUBFUN int XMLCALL
                    105:         xmlTextWriterWriteFormatElement(xmlTextWriterPtr writer,
                    106:                                         const xmlChar * name,
                    107:                                         const char *format, ...)
                    108:                                        LIBXML_ATTR_FORMAT(3,4);
                    109:     XMLPUBFUN int XMLCALL
                    110:         xmlTextWriterWriteVFormatElement(xmlTextWriterPtr writer,
                    111:                                          const xmlChar * name,
                    112:                                          const char *format,
                    113:                                          va_list argptr)
                    114:                                         LIBXML_ATTR_FORMAT(3,0);
                    115:     XMLPUBFUN int XMLCALL xmlTextWriterWriteElement(xmlTextWriterPtr
                    116:                                                     writer,
                    117:                                                     const xmlChar * name,
                    118:                                                     const xmlChar *
                    119:                                                     content);
                    120:     XMLPUBFUN int XMLCALL
                    121:         xmlTextWriterWriteFormatElementNS(xmlTextWriterPtr writer,
                    122:                                           const xmlChar * prefix,
                    123:                                           const xmlChar * name,
                    124:                                           const xmlChar * namespaceURI,
                    125:                                           const char *format, ...)
                    126:                                          LIBXML_ATTR_FORMAT(5,6);
                    127:     XMLPUBFUN int XMLCALL
                    128:         xmlTextWriterWriteVFormatElementNS(xmlTextWriterPtr writer,
                    129:                                            const xmlChar * prefix,
                    130:                                            const xmlChar * name,
                    131:                                            const xmlChar * namespaceURI,
                    132:                                            const char *format,
                    133:                                            va_list argptr)
                    134:                                           LIBXML_ATTR_FORMAT(5,0);
                    135:     XMLPUBFUN int XMLCALL xmlTextWriterWriteElementNS(xmlTextWriterPtr
                    136:                                                       writer,
                    137:                                                       const xmlChar *
                    138:                                                       prefix,
                    139:                                                       const xmlChar * name,
                    140:                                                       const xmlChar *
                    141:                                                       namespaceURI,
                    142:                                                       const xmlChar *
                    143:                                                       content);
                    144: 
                    145: /*
                    146:  * Text
                    147:  */
                    148:     XMLPUBFUN int XMLCALL
                    149:         xmlTextWriterWriteFormatRaw(xmlTextWriterPtr writer,
                    150:                                     const char *format, ...)
                    151:                                    LIBXML_ATTR_FORMAT(2,3);
                    152:     XMLPUBFUN int XMLCALL
                    153:         xmlTextWriterWriteVFormatRaw(xmlTextWriterPtr writer,
                    154:                                      const char *format, va_list argptr)
                    155:                                     LIBXML_ATTR_FORMAT(2,0);
                    156:     XMLPUBFUN int XMLCALL
                    157:         xmlTextWriterWriteRawLen(xmlTextWriterPtr writer,
                    158:                                  const xmlChar * content, int len);
                    159:     XMLPUBFUN int XMLCALL
                    160:         xmlTextWriterWriteRaw(xmlTextWriterPtr writer,
                    161:                               const xmlChar * content);
                    162:     XMLPUBFUN int XMLCALL xmlTextWriterWriteFormatString(xmlTextWriterPtr
                    163:                                                          writer,
                    164:                                                          const char
                    165:                                                          *format, ...)
                    166:                                                         LIBXML_ATTR_FORMAT(2,3);
                    167:     XMLPUBFUN int XMLCALL xmlTextWriterWriteVFormatString(xmlTextWriterPtr
                    168:                                                           writer,
                    169:                                                           const char
                    170:                                                           *format,
                    171:                                                           va_list argptr)
                    172:                                                          LIBXML_ATTR_FORMAT(2,0);
                    173:     XMLPUBFUN int XMLCALL xmlTextWriterWriteString(xmlTextWriterPtr writer,
                    174:                                                    const xmlChar *
                    175:                                                    content);
                    176:     XMLPUBFUN int XMLCALL xmlTextWriterWriteBase64(xmlTextWriterPtr writer,
                    177:                                                    const char *data,
                    178:                                                    int start, int len);
                    179:     XMLPUBFUN int XMLCALL xmlTextWriterWriteBinHex(xmlTextWriterPtr writer,
                    180:                                                    const char *data,
                    181:                                                    int start, int len);
                    182: 
                    183: /*
                    184:  * Attributes
                    185:  */
                    186:     XMLPUBFUN int XMLCALL
                    187:         xmlTextWriterStartAttribute(xmlTextWriterPtr writer,
                    188:                                     const xmlChar * name);
                    189:     XMLPUBFUN int XMLCALL xmlTextWriterStartAttributeNS(xmlTextWriterPtr
                    190:                                                         writer,
                    191:                                                         const xmlChar *
                    192:                                                         prefix,
                    193:                                                         const xmlChar *
                    194:                                                         name,
                    195:                                                         const xmlChar *
                    196:                                                         namespaceURI);
                    197:     XMLPUBFUN int XMLCALL xmlTextWriterEndAttribute(xmlTextWriterPtr
                    198:                                                     writer);
                    199: 
                    200: /*
                    201:  * Attributes conveniency functions
                    202:  */
                    203:     XMLPUBFUN int XMLCALL
                    204:         xmlTextWriterWriteFormatAttribute(xmlTextWriterPtr writer,
                    205:                                           const xmlChar * name,
                    206:                                           const char *format, ...)
                    207:                                          LIBXML_ATTR_FORMAT(3,4);
                    208:     XMLPUBFUN int XMLCALL
                    209:         xmlTextWriterWriteVFormatAttribute(xmlTextWriterPtr writer,
                    210:                                            const xmlChar * name,
                    211:                                            const char *format,
                    212:                                            va_list argptr)
                    213:                                           LIBXML_ATTR_FORMAT(3,0);
                    214:     XMLPUBFUN int XMLCALL xmlTextWriterWriteAttribute(xmlTextWriterPtr
                    215:                                                       writer,
                    216:                                                       const xmlChar * name,
                    217:                                                       const xmlChar *
                    218:                                                       content);
                    219:     XMLPUBFUN int XMLCALL
                    220:         xmlTextWriterWriteFormatAttributeNS(xmlTextWriterPtr writer,
                    221:                                             const xmlChar * prefix,
                    222:                                             const xmlChar * name,
                    223:                                             const xmlChar * namespaceURI,
                    224:                                             const char *format, ...)
                    225:                                            LIBXML_ATTR_FORMAT(5,6);
                    226:     XMLPUBFUN int XMLCALL
                    227:         xmlTextWriterWriteVFormatAttributeNS(xmlTextWriterPtr writer,
                    228:                                              const xmlChar * prefix,
                    229:                                              const xmlChar * name,
                    230:                                              const xmlChar * namespaceURI,
                    231:                                              const char *format,
                    232:                                              va_list argptr)
                    233:                                             LIBXML_ATTR_FORMAT(5,0);
                    234:     XMLPUBFUN int XMLCALL xmlTextWriterWriteAttributeNS(xmlTextWriterPtr
                    235:                                                         writer,
                    236:                                                         const xmlChar *
                    237:                                                         prefix,
                    238:                                                         const xmlChar *
                    239:                                                         name,
                    240:                                                         const xmlChar *
                    241:                                                         namespaceURI,
                    242:                                                         const xmlChar *
                    243:                                                         content);
                    244: 
                    245: /*
                    246:  * PI's
                    247:  */
                    248:     XMLPUBFUN int XMLCALL
                    249:         xmlTextWriterStartPI(xmlTextWriterPtr writer,
                    250:                              const xmlChar * target);
                    251:     XMLPUBFUN int XMLCALL xmlTextWriterEndPI(xmlTextWriterPtr writer);
                    252: 
                    253: /*
                    254:  * PI conveniency functions
                    255:  */
                    256:     XMLPUBFUN int XMLCALL
                    257:         xmlTextWriterWriteFormatPI(xmlTextWriterPtr writer,
                    258:                                    const xmlChar * target,
                    259:                                    const char *format, ...)
                    260:                                   LIBXML_ATTR_FORMAT(3,4);
                    261:     XMLPUBFUN int XMLCALL
                    262:         xmlTextWriterWriteVFormatPI(xmlTextWriterPtr writer,
                    263:                                     const xmlChar * target,
                    264:                                     const char *format, va_list argptr)
                    265:                                    LIBXML_ATTR_FORMAT(3,0);
                    266:     XMLPUBFUN int XMLCALL
                    267:         xmlTextWriterWritePI(xmlTextWriterPtr writer,
                    268:                              const xmlChar * target,
                    269:                              const xmlChar * content);
                    270: 
                    271: /**
                    272:  * xmlTextWriterWriteProcessingInstruction:
                    273:  *
                    274:  * This macro maps to xmlTextWriterWritePI
                    275:  */
                    276: #define xmlTextWriterWriteProcessingInstruction xmlTextWriterWritePI
                    277: 
                    278: /*
                    279:  * CDATA
                    280:  */
                    281:     XMLPUBFUN int XMLCALL xmlTextWriterStartCDATA(xmlTextWriterPtr writer);
                    282:     XMLPUBFUN int XMLCALL xmlTextWriterEndCDATA(xmlTextWriterPtr writer);
                    283: 
                    284: /*
                    285:  * CDATA conveniency functions
                    286:  */
                    287:     XMLPUBFUN int XMLCALL
                    288:         xmlTextWriterWriteFormatCDATA(xmlTextWriterPtr writer,
                    289:                                       const char *format, ...)
                    290:                                      LIBXML_ATTR_FORMAT(2,3);
                    291:     XMLPUBFUN int XMLCALL
                    292:         xmlTextWriterWriteVFormatCDATA(xmlTextWriterPtr writer,
                    293:                                        const char *format, va_list argptr)
                    294:                                       LIBXML_ATTR_FORMAT(2,0);
                    295:     XMLPUBFUN int XMLCALL
                    296:         xmlTextWriterWriteCDATA(xmlTextWriterPtr writer,
                    297:                                 const xmlChar * content);
                    298: 
                    299: /*
                    300:  * DTD
                    301:  */
                    302:     XMLPUBFUN int XMLCALL
                    303:         xmlTextWriterStartDTD(xmlTextWriterPtr writer,
                    304:                               const xmlChar * name,
                    305:                               const xmlChar * pubid,
                    306:                               const xmlChar * sysid);
                    307:     XMLPUBFUN int XMLCALL xmlTextWriterEndDTD(xmlTextWriterPtr writer);
                    308: 
                    309: /*
                    310:  * DTD conveniency functions
                    311:  */
                    312:     XMLPUBFUN int XMLCALL
                    313:         xmlTextWriterWriteFormatDTD(xmlTextWriterPtr writer,
                    314:                                     const xmlChar * name,
                    315:                                     const xmlChar * pubid,
                    316:                                     const xmlChar * sysid,
                    317:                                     const char *format, ...)
                    318:                                    LIBXML_ATTR_FORMAT(5,6);
                    319:     XMLPUBFUN int XMLCALL
                    320:         xmlTextWriterWriteVFormatDTD(xmlTextWriterPtr writer,
                    321:                                      const xmlChar * name,
                    322:                                      const xmlChar * pubid,
                    323:                                      const xmlChar * sysid,
                    324:                                      const char *format, va_list argptr)
                    325:                                     LIBXML_ATTR_FORMAT(5,0);
                    326:     XMLPUBFUN int XMLCALL
                    327:         xmlTextWriterWriteDTD(xmlTextWriterPtr writer,
                    328:                               const xmlChar * name,
                    329:                               const xmlChar * pubid,
                    330:                               const xmlChar * sysid,
                    331:                               const xmlChar * subset);
                    332: 
                    333: /**
                    334:  * xmlTextWriterWriteDocType:
                    335:  *
                    336:  * this macro maps to xmlTextWriterWriteDTD
                    337:  */
                    338: #define xmlTextWriterWriteDocType xmlTextWriterWriteDTD
                    339: 
                    340: /*
                    341:  * DTD element definition
                    342:  */
                    343:     XMLPUBFUN int XMLCALL
                    344:         xmlTextWriterStartDTDElement(xmlTextWriterPtr writer,
                    345:                                      const xmlChar * name);
                    346:     XMLPUBFUN int XMLCALL xmlTextWriterEndDTDElement(xmlTextWriterPtr
                    347:                                                      writer);
                    348: 
                    349: /*
                    350:  * DTD element definition conveniency functions
                    351:  */
                    352:     XMLPUBFUN int XMLCALL
                    353:         xmlTextWriterWriteFormatDTDElement(xmlTextWriterPtr writer,
                    354:                                            const xmlChar * name,
                    355:                                            const char *format, ...)
                    356:                                           LIBXML_ATTR_FORMAT(3,4);
                    357:     XMLPUBFUN int XMLCALL
                    358:         xmlTextWriterWriteVFormatDTDElement(xmlTextWriterPtr writer,
                    359:                                             const xmlChar * name,
                    360:                                             const char *format,
                    361:                                             va_list argptr)
                    362:                                            LIBXML_ATTR_FORMAT(3,0);
                    363:     XMLPUBFUN int XMLCALL xmlTextWriterWriteDTDElement(xmlTextWriterPtr
                    364:                                                        writer,
                    365:                                                        const xmlChar *
                    366:                                                        name,
                    367:                                                        const xmlChar *
                    368:                                                        content);
                    369: 
                    370: /*
                    371:  * DTD attribute list definition
                    372:  */
                    373:     XMLPUBFUN int XMLCALL
                    374:         xmlTextWriterStartDTDAttlist(xmlTextWriterPtr writer,
                    375:                                      const xmlChar * name);
                    376:     XMLPUBFUN int XMLCALL xmlTextWriterEndDTDAttlist(xmlTextWriterPtr
                    377:                                                      writer);
                    378: 
                    379: /*
                    380:  * DTD attribute list definition conveniency functions
                    381:  */
                    382:     XMLPUBFUN int XMLCALL
                    383:         xmlTextWriterWriteFormatDTDAttlist(xmlTextWriterPtr writer,
                    384:                                            const xmlChar * name,
                    385:                                            const char *format, ...)
                    386:                                           LIBXML_ATTR_FORMAT(3,4);
                    387:     XMLPUBFUN int XMLCALL
                    388:         xmlTextWriterWriteVFormatDTDAttlist(xmlTextWriterPtr writer,
                    389:                                             const xmlChar * name,
                    390:                                             const char *format,
                    391:                                             va_list argptr)
                    392:                                            LIBXML_ATTR_FORMAT(3,0);
                    393:     XMLPUBFUN int XMLCALL xmlTextWriterWriteDTDAttlist(xmlTextWriterPtr
                    394:                                                        writer,
                    395:                                                        const xmlChar *
                    396:                                                        name,
                    397:                                                        const xmlChar *
                    398:                                                        content);
                    399: 
                    400: /*
                    401:  * DTD entity definition
                    402:  */
                    403:     XMLPUBFUN int XMLCALL
                    404:         xmlTextWriterStartDTDEntity(xmlTextWriterPtr writer,
                    405:                                     int pe, const xmlChar * name);
                    406:     XMLPUBFUN int XMLCALL xmlTextWriterEndDTDEntity(xmlTextWriterPtr
                    407:                                                     writer);
                    408: 
                    409: /*
                    410:  * DTD entity definition conveniency functions
                    411:  */
                    412:     XMLPUBFUN int XMLCALL
                    413:         xmlTextWriterWriteFormatDTDInternalEntity(xmlTextWriterPtr writer,
                    414:                                                   int pe,
                    415:                                                   const xmlChar * name,
                    416:                                                   const char *format, ...)
                    417:                                                  LIBXML_ATTR_FORMAT(4,5);
                    418:     XMLPUBFUN int XMLCALL
                    419:         xmlTextWriterWriteVFormatDTDInternalEntity(xmlTextWriterPtr writer,
                    420:                                                    int pe,
                    421:                                                    const xmlChar * name,
                    422:                                                    const char *format,
                    423:                                                    va_list argptr)
                    424:                                                   LIBXML_ATTR_FORMAT(4,0);
                    425:     XMLPUBFUN int XMLCALL
                    426:         xmlTextWriterWriteDTDInternalEntity(xmlTextWriterPtr writer,
                    427:                                             int pe,
                    428:                                             const xmlChar * name,
                    429:                                             const xmlChar * content);
                    430:     XMLPUBFUN int XMLCALL
                    431:         xmlTextWriterWriteDTDExternalEntity(xmlTextWriterPtr writer,
                    432:                                             int pe,
                    433:                                             const xmlChar * name,
                    434:                                             const xmlChar * pubid,
                    435:                                             const xmlChar * sysid,
                    436:                                             const xmlChar * ndataid);
                    437:     XMLPUBFUN int XMLCALL
                    438:         xmlTextWriterWriteDTDExternalEntityContents(xmlTextWriterPtr
                    439:                                                     writer,
                    440:                                                     const xmlChar * pubid,
                    441:                                                     const xmlChar * sysid,
                    442:                                                     const xmlChar *
                    443:                                                     ndataid);
                    444:     XMLPUBFUN int XMLCALL xmlTextWriterWriteDTDEntity(xmlTextWriterPtr
                    445:                                                       writer, int pe,
                    446:                                                       const xmlChar * name,
                    447:                                                       const xmlChar *
                    448:                                                       pubid,
                    449:                                                       const xmlChar *
                    450:                                                       sysid,
                    451:                                                       const xmlChar *
                    452:                                                       ndataid,
                    453:                                                       const xmlChar *
                    454:                                                       content);
                    455: 
                    456: /*
                    457:  * DTD notation definition
                    458:  */
                    459:     XMLPUBFUN int XMLCALL
                    460:         xmlTextWriterWriteDTDNotation(xmlTextWriterPtr writer,
                    461:                                       const xmlChar * name,
                    462:                                       const xmlChar * pubid,
                    463:                                       const xmlChar * sysid);
                    464: 
                    465: /*
                    466:  * Indentation
                    467:  */
                    468:     XMLPUBFUN int XMLCALL
                    469:         xmlTextWriterSetIndent(xmlTextWriterPtr writer, int indent);
                    470:     XMLPUBFUN int XMLCALL
                    471:         xmlTextWriterSetIndentString(xmlTextWriterPtr writer,
                    472:                                      const xmlChar * str);
                    473: 
                    474: /*
                    475:  * misc
                    476:  */
                    477:     XMLPUBFUN int XMLCALL xmlTextWriterFlush(xmlTextWriterPtr writer);
                    478: 
                    479: #ifdef __cplusplus
                    480: }
                    481: #endif
                    482: 
                    483: #endif /* LIBXML_WRITER_ENABLED */
                    484: 
                    485: #endif                          /* __XML_XMLWRITER_H__ */

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>