00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef __XML_XMLWRITER_H__
00022
00023 #define __XML_XMLWRITER_H__
00024
00025
00026
00027 #include <libxml/xmlversion.h>
00028
00029
00030
00031 #ifdef LIBXML_WRITER_ENABLED
00032
00033
00034
00035 #include <stdarg.h>
00036
00037 #include <libxml/xmlIO.h>
00038
00039 #include <libxml/list.h>
00040
00041 #include <libxml/xmlstring.h>
00042
00043
00044
00045 #ifdef __cplusplus
00046
00047 extern "C" {
00048
00049 #endif
00050
00051
00052
00053 typedef struct _xmlTextWriter xmlTextWriter;
00054
00055 typedef xmlTextWriter *xmlTextWriterPtr;
00056
00057
00058
00059
00060
00061
00062
00063
00064
00065 XMLPUBFUN xmlTextWriterPtr XMLCALL
00066
00067 xmlNewTextWriter(xmlOutputBufferPtr out);
00068
00069 XMLPUBFUN xmlTextWriterPtr XMLCALL
00070
00071 xmlNewTextWriterFilename(const char *uri, int compression);
00072
00073 XMLPUBFUN xmlTextWriterPtr XMLCALL
00074
00075 xmlNewTextWriterMemory(xmlBufferPtr buf, int compression);
00076
00077 XMLPUBFUN xmlTextWriterPtr XMLCALL
00078
00079 xmlNewTextWriterPushParser(xmlParserCtxtPtr ctxt, int compression);
00080
00081 XMLPUBFUN xmlTextWriterPtr XMLCALL
00082
00083 xmlNewTextWriterDoc(xmlDocPtr * doc, int compression);
00084
00085 XMLPUBFUN xmlTextWriterPtr XMLCALL
00086
00087 xmlNewTextWriterTree(xmlDocPtr doc, xmlNodePtr node,
00088
00089 int compression);
00090
00091 XMLPUBFUN void XMLCALL xmlFreeTextWriter(xmlTextWriterPtr writer);
00092
00093
00094
00095
00096
00097
00098
00099
00100
00101
00102
00103
00104
00105
00106
00107
00108
00109
00110
00111 XMLPUBFUN int XMLCALL
00112
00113 xmlTextWriterStartDocument(xmlTextWriterPtr writer,
00114
00115 const char *version,
00116
00117 const char *encoding,
00118
00119 const char *standalone);
00120
00121 XMLPUBFUN int XMLCALL xmlTextWriterEndDocument(xmlTextWriterPtr
00122
00123 writer);
00124
00125
00126
00127
00128
00129
00130
00131
00132
00133 XMLPUBFUN int XMLCALL xmlTextWriterStartComment(xmlTextWriterPtr
00134
00135 writer);
00136
00137 XMLPUBFUN int XMLCALL xmlTextWriterEndComment(xmlTextWriterPtr writer);
00138
00139 XMLPUBFUN int XMLCALL
00140
00141 xmlTextWriterWriteFormatComment(xmlTextWriterPtr writer,
00142
00143 const char *format, ...);
00144
00145 XMLPUBFUN int XMLCALL
00146
00147 xmlTextWriterWriteVFormatComment(xmlTextWriterPtr writer,
00148
00149 const char *format,
00150
00151 va_list argptr);
00152
00153 XMLPUBFUN int XMLCALL xmlTextWriterWriteComment(xmlTextWriterPtr
00154
00155 writer,
00156
00157 const xmlChar *
00158
00159 content);
00160
00161
00162
00163
00164
00165
00166
00167
00168
00169 XMLPUBFUN int XMLCALL
00170
00171 xmlTextWriterStartElement(xmlTextWriterPtr writer,
00172
00173 const xmlChar * name);
00174
00175 XMLPUBFUN int XMLCALL xmlTextWriterStartElementNS(xmlTextWriterPtr
00176
00177 writer,
00178
00179 const xmlChar *
00180
00181 prefix,
00182
00183 const xmlChar * name,
00184
00185 const xmlChar *
00186
00187 namespaceURI);
00188
00189 XMLPUBFUN int XMLCALL xmlTextWriterEndElement(xmlTextWriterPtr writer);
00190
00191 XMLPUBFUN int XMLCALL xmlTextWriterFullEndElement(xmlTextWriterPtr
00192
00193 writer);
00194
00195
00196
00197
00198
00199
00200
00201
00202
00203 XMLPUBFUN int XMLCALL
00204
00205 xmlTextWriterWriteFormatElement(xmlTextWriterPtr writer,
00206
00207 const xmlChar * name,
00208
00209 const char *format, ...);
00210
00211 XMLPUBFUN int XMLCALL
00212
00213 xmlTextWriterWriteVFormatElement(xmlTextWriterPtr writer,
00214
00215 const xmlChar * name,
00216
00217 const char *format,
00218
00219 va_list argptr);
00220
00221 XMLPUBFUN int XMLCALL xmlTextWriterWriteElement(xmlTextWriterPtr
00222
00223 writer,
00224
00225 const xmlChar * name,
00226
00227 const xmlChar *
00228
00229 content);
00230
00231 XMLPUBFUN int XMLCALL
00232
00233 xmlTextWriterWriteFormatElementNS(xmlTextWriterPtr writer,
00234
00235 const xmlChar * prefix,
00236
00237 const xmlChar * name,
00238
00239 const xmlChar * namespaceURI,
00240
00241 const char *format, ...);
00242
00243 XMLPUBFUN int XMLCALL
00244
00245 xmlTextWriterWriteVFormatElementNS(xmlTextWriterPtr writer,
00246
00247 const xmlChar * prefix,
00248
00249 const xmlChar * name,
00250
00251 const xmlChar * namespaceURI,
00252
00253 const char *format,
00254
00255 va_list argptr);
00256
00257 XMLPUBFUN int XMLCALL xmlTextWriterWriteElementNS(xmlTextWriterPtr
00258
00259 writer,
00260
00261 const xmlChar *
00262
00263 prefix,
00264
00265 const xmlChar * name,
00266
00267 const xmlChar *
00268
00269 namespaceURI,
00270
00271 const xmlChar *
00272
00273 content);
00274
00275
00276
00277
00278
00279
00280
00281
00282
00283 XMLPUBFUN int XMLCALL
00284
00285 xmlTextWriterWriteFormatRaw(xmlTextWriterPtr writer,
00286
00287 const char *format, ...);
00288
00289 XMLPUBFUN int XMLCALL
00290
00291 xmlTextWriterWriteVFormatRaw(xmlTextWriterPtr writer,
00292
00293 const char *format, va_list argptr);
00294
00295 XMLPUBFUN int XMLCALL
00296
00297 xmlTextWriterWriteRawLen(xmlTextWriterPtr writer,
00298
00299 const xmlChar * content, int len);
00300
00301 XMLPUBFUN int XMLCALL
00302
00303 xmlTextWriterWriteRaw(xmlTextWriterPtr writer,
00304
00305 const xmlChar * content);
00306
00307 XMLPUBFUN int XMLCALL xmlTextWriterWriteFormatString(xmlTextWriterPtr
00308
00309 writer,
00310
00311 const char
00312
00313 *format, ...);
00314
00315 XMLPUBFUN int XMLCALL xmlTextWriterWriteVFormatString(xmlTextWriterPtr
00316
00317 writer,
00318
00319 const char
00320
00321 *format,
00322
00323 va_list argptr);
00324
00325 XMLPUBFUN int XMLCALL xmlTextWriterWriteString(xmlTextWriterPtr writer,
00326
00327 const xmlChar *
00328
00329 content);
00330
00331 XMLPUBFUN int XMLCALL xmlTextWriterWriteBase64(xmlTextWriterPtr writer,
00332
00333 const char *data,
00334
00335 int start, int len);
00336
00337 XMLPUBFUN int XMLCALL xmlTextWriterWriteBinHex(xmlTextWriterPtr writer,
00338
00339 const char *data,
00340
00341 int start, int len);
00342
00343
00344
00345
00346
00347
00348
00349
00350
00351 XMLPUBFUN int XMLCALL
00352
00353 xmlTextWriterStartAttribute(xmlTextWriterPtr writer,
00354
00355 const xmlChar * name);
00356
00357 XMLPUBFUN int XMLCALL xmlTextWriterStartAttributeNS(xmlTextWriterPtr
00358
00359 writer,
00360
00361 const xmlChar *
00362
00363 prefix,
00364
00365 const xmlChar *
00366
00367 name,
00368
00369 const xmlChar *
00370
00371 namespaceURI);
00372
00373 XMLPUBFUN int XMLCALL xmlTextWriterEndAttribute(xmlTextWriterPtr
00374
00375 writer);
00376
00377
00378
00379
00380
00381
00382
00383
00384
00385 XMLPUBFUN int XMLCALL
00386
00387 xmlTextWriterWriteFormatAttribute(xmlTextWriterPtr writer,
00388
00389 const xmlChar * name,
00390
00391 const char *format, ...);
00392
00393 XMLPUBFUN int XMLCALL
00394
00395 xmlTextWriterWriteVFormatAttribute(xmlTextWriterPtr writer,
00396
00397 const xmlChar * name,
00398
00399 const char *format,
00400
00401 va_list argptr);
00402
00403 XMLPUBFUN int XMLCALL xmlTextWriterWriteAttribute(xmlTextWriterPtr
00404
00405 writer,
00406
00407 const xmlChar * name,
00408
00409 const xmlChar *
00410
00411 content);
00412
00413 XMLPUBFUN int XMLCALL
00414
00415 xmlTextWriterWriteFormatAttributeNS(xmlTextWriterPtr writer,
00416
00417 const xmlChar * prefix,
00418
00419 const xmlChar * name,
00420
00421 const xmlChar * namespaceURI,
00422
00423 const char *format, ...);
00424
00425 XMLPUBFUN int XMLCALL
00426
00427 xmlTextWriterWriteVFormatAttributeNS(xmlTextWriterPtr writer,
00428
00429 const xmlChar * prefix,
00430
00431 const xmlChar * name,
00432
00433 const xmlChar * namespaceURI,
00434
00435 const char *format,
00436
00437 va_list argptr);
00438
00439 XMLPUBFUN int XMLCALL xmlTextWriterWriteAttributeNS(xmlTextWriterPtr
00440
00441 writer,
00442
00443 const xmlChar *
00444
00445 prefix,
00446
00447 const xmlChar *
00448
00449 name,
00450
00451 const xmlChar *
00452
00453 namespaceURI,
00454
00455 const xmlChar *
00456
00457 content);
00458
00459
00460
00461
00462
00463
00464
00465
00466
00467 XMLPUBFUN int XMLCALL
00468
00469 xmlTextWriterStartPI(xmlTextWriterPtr writer,
00470
00471 const xmlChar * target);
00472
00473 XMLPUBFUN int XMLCALL xmlTextWriterEndPI(xmlTextWriterPtr writer);
00474
00475
00476
00477
00478
00479
00480
00481
00482
00483 XMLPUBFUN int XMLCALL
00484
00485 xmlTextWriterWriteFormatPI(xmlTextWriterPtr writer,
00486
00487 const xmlChar * target,
00488
00489 const char *format, ...);
00490
00491 XMLPUBFUN int XMLCALL
00492
00493 xmlTextWriterWriteVFormatPI(xmlTextWriterPtr writer,
00494
00495 const xmlChar * target,
00496
00497 const char *format, va_list argptr);
00498
00499 XMLPUBFUN int XMLCALL
00500
00501 xmlTextWriterWritePI(xmlTextWriterPtr writer,
00502
00503 const xmlChar * target,
00504
00505 const xmlChar * content);
00506
00507
00508
00519 #define xmlTextWriterWriteProcessingInstruction xmlTextWriterWritePI
00520
00521
00522
00523
00524
00525
00526
00527
00528
00529 XMLPUBFUN int XMLCALL xmlTextWriterStartCDATA(xmlTextWriterPtr writer);
00530
00531 XMLPUBFUN int XMLCALL xmlTextWriterEndCDATA(xmlTextWriterPtr writer);
00532
00533
00534
00535
00536
00537
00538
00539
00540
00541 XMLPUBFUN int XMLCALL
00542
00543 xmlTextWriterWriteFormatCDATA(xmlTextWriterPtr writer,
00544
00545 const char *format, ...);
00546
00547 XMLPUBFUN int XMLCALL
00548
00549 xmlTextWriterWriteVFormatCDATA(xmlTextWriterPtr writer,
00550
00551 const char *format, va_list argptr);
00552
00553 XMLPUBFUN int XMLCALL
00554
00555 xmlTextWriterWriteCDATA(xmlTextWriterPtr writer,
00556
00557 const xmlChar * content);
00558
00559
00560
00561
00562
00563
00564
00565
00566
00567 XMLPUBFUN int XMLCALL
00568
00569 xmlTextWriterStartDTD(xmlTextWriterPtr writer,
00570
00571 const xmlChar * name,
00572
00573 const xmlChar * pubid,
00574
00575 const xmlChar * sysid);
00576
00577 XMLPUBFUN int XMLCALL xmlTextWriterEndDTD(xmlTextWriterPtr writer);
00578
00579
00580
00581
00582
00583
00584
00585
00586
00587 XMLPUBFUN int XMLCALL
00588
00589 xmlTextWriterWriteFormatDTD(xmlTextWriterPtr writer,
00590
00591 const xmlChar * name,
00592
00593 const xmlChar * pubid,
00594
00595 const xmlChar * sysid,
00596
00597 const char *format, ...);
00598
00599 XMLPUBFUN int XMLCALL
00600
00601 xmlTextWriterWriteVFormatDTD(xmlTextWriterPtr writer,
00602
00603 const xmlChar * name,
00604
00605 const xmlChar * pubid,
00606
00607 const xmlChar * sysid,
00608
00609 const char *format, va_list argptr);
00610
00611 XMLPUBFUN int XMLCALL
00612
00613 xmlTextWriterWriteDTD(xmlTextWriterPtr writer,
00614
00615 const xmlChar * name,
00616
00617 const xmlChar * pubid,
00618
00619 const xmlChar * sysid,
00620
00621 const xmlChar * subset);
00622
00623
00624
00635 #define xmlTextWriterWriteDocType xmlTextWriterWriteDTD
00636
00637
00638
00639
00640
00641
00642
00643
00644
00645 XMLPUBFUN int XMLCALL
00646
00647 xmlTextWriterStartDTDElement(xmlTextWriterPtr writer,
00648
00649 const xmlChar * name);
00650
00651 XMLPUBFUN int XMLCALL xmlTextWriterEndDTDElement(xmlTextWriterPtr
00652
00653 writer);
00654
00655
00656
00657
00658
00659
00660
00661
00662
00663 XMLPUBFUN int XMLCALL
00664
00665 xmlTextWriterWriteFormatDTDElement(xmlTextWriterPtr writer,
00666
00667 const xmlChar * name,
00668
00669 const char *format, ...);
00670
00671 XMLPUBFUN int XMLCALL
00672
00673 xmlTextWriterWriteVFormatDTDElement(xmlTextWriterPtr writer,
00674
00675 const xmlChar * name,
00676
00677 const char *format,
00678
00679 va_list argptr);
00680
00681 XMLPUBFUN int XMLCALL xmlTextWriterWriteDTDElement(xmlTextWriterPtr
00682
00683 writer,
00684
00685 const xmlChar *
00686
00687 name,
00688
00689 const xmlChar *
00690
00691 content);
00692
00693
00694
00695
00696
00697
00698
00699
00700
00701 XMLPUBFUN int XMLCALL
00702
00703 xmlTextWriterStartDTDAttlist(xmlTextWriterPtr writer,
00704
00705 const xmlChar * name);
00706
00707 XMLPUBFUN int XMLCALL xmlTextWriterEndDTDAttlist(xmlTextWriterPtr
00708
00709 writer);
00710
00711
00712
00713
00714
00715
00716
00717
00718
00719 XMLPUBFUN int XMLCALL
00720
00721 xmlTextWriterWriteFormatDTDAttlist(xmlTextWriterPtr writer,
00722
00723 const xmlChar * name,
00724
00725 const char *format, ...);
00726
00727 XMLPUBFUN int XMLCALL
00728
00729 xmlTextWriterWriteVFormatDTDAttlist(xmlTextWriterPtr writer,
00730
00731 const xmlChar * name,
00732
00733 const char *format,
00734
00735 va_list argptr);
00736
00737 XMLPUBFUN int XMLCALL xmlTextWriterWriteDTDAttlist(xmlTextWriterPtr
00738
00739 writer,
00740
00741 const xmlChar *
00742
00743 name,
00744
00745 const xmlChar *
00746
00747 content);
00748
00749
00750
00751
00752
00753
00754
00755
00756
00757 XMLPUBFUN int XMLCALL
00758
00759 xmlTextWriterStartDTDEntity(xmlTextWriterPtr writer,
00760
00761 int pe, const xmlChar * name);
00762
00763 XMLPUBFUN int XMLCALL xmlTextWriterEndDTDEntity(xmlTextWriterPtr
00764
00765 writer);
00766
00767
00768
00769
00770
00771
00772
00773
00774
00775 XMLPUBFUN int XMLCALL
00776
00777 xmlTextWriterWriteFormatDTDInternalEntity(xmlTextWriterPtr writer,
00778
00779 int pe,
00780
00781 const xmlChar * name,
00782
00783 const char *format, ...);
00784
00785 XMLPUBFUN int XMLCALL
00786
00787 xmlTextWriterWriteVFormatDTDInternalEntity(xmlTextWriterPtr writer,
00788
00789 int pe,
00790
00791 const xmlChar * name,
00792
00793 const char *format,
00794
00795 va_list argptr);
00796
00797 XMLPUBFUN int XMLCALL
00798
00799 xmlTextWriterWriteDTDInternalEntity(xmlTextWriterPtr writer,
00800
00801 int pe,
00802
00803 const xmlChar * name,
00804
00805 const xmlChar * content);
00806
00807 XMLPUBFUN int XMLCALL
00808
00809 xmlTextWriterWriteDTDExternalEntity(xmlTextWriterPtr writer,
00810
00811 int pe,
00812
00813 const xmlChar * name,
00814
00815 const xmlChar * pubid,
00816
00817 const xmlChar * sysid,
00818
00819 const xmlChar * ndataid);
00820
00821 XMLPUBFUN int XMLCALL
00822
00823 xmlTextWriterWriteDTDExternalEntityContents(xmlTextWriterPtr
00824
00825 writer,
00826
00827 const xmlChar * pubid,
00828
00829 const xmlChar * sysid,
00830
00831 const xmlChar *
00832
00833 ndataid);
00834
00835 XMLPUBFUN int XMLCALL xmlTextWriterWriteDTDEntity(xmlTextWriterPtr
00836
00837 writer, int pe,
00838
00839 const xmlChar * name,
00840
00841 const xmlChar *
00842
00843 pubid,
00844
00845 const xmlChar *
00846
00847 sysid,
00848
00849 const xmlChar *
00850
00851 ndataid,
00852
00853 const xmlChar *
00854
00855 content);
00856
00857
00858
00859
00860
00861
00862
00863
00864
00865 XMLPUBFUN int XMLCALL
00866
00867 xmlTextWriterWriteDTDNotation(xmlTextWriterPtr writer,
00868
00869 const xmlChar * name,
00870
00871 const xmlChar * pubid,
00872
00873 const xmlChar * sysid);
00874
00875
00876
00877
00878
00879
00880
00881
00882
00883 XMLPUBFUN int XMLCALL
00884
00885 xmlTextWriterSetIndent(xmlTextWriterPtr writer, int indent);
00886
00887 XMLPUBFUN int XMLCALL
00888
00889 xmlTextWriterSetIndentString(xmlTextWriterPtr writer,
00890
00891 const xmlChar * str);
00892
00893
00894
00895
00896
00897
00898
00899
00900
00901 XMLPUBFUN int XMLCALL xmlTextWriterFlush(xmlTextWriterPtr writer);
00902
00903
00904
00905 #ifdef __cplusplus
00906
00907 }
00908
00909 #endif
00910
00911
00912
00913 #endif
00914
00915
00916
00917 #endif
00918