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>