blob: 4965c1c92cf94008905b4ffe09a061f9b9f6f920 [file] [log] [blame]
Daniel Veillardaeea04f2000-01-25 19:27:27 +00001<HTML
2><HEAD
3><TITLE
4>encoding</TITLE
5><META
6NAME="GENERATOR"
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00007CONTENT="Modular DocBook HTML Stylesheet Version 1.33"><LINK
Daniel Veillardaeea04f2000-01-25 19:27:27 +00008REL="HOME"
9TITLE="Gnome XML Library Reference Manual"
10HREF="book1.html"><LINK
11REL="UP"
12TITLE="Libxml Library Reference"
13HREF="libxml-lib.html"><LINK
14REL="PREVIOUS"
15TITLE="parserInternals"
16HREF="gnome-xml-parserinternals.html"><LINK
17REL="NEXT"
18TITLE="debugXML"
19HREF="gnome-xml-debugxml.html"></HEAD
20><BODY
21BGCOLOR="#FFFFFF"
22TEXT="#000000"
23><DIV
24CLASS="NAVHEADER"
25><TABLE
26WIDTH="100%"
27BORDER="0"
28BGCOLOR="#000000"
29CELLPADDING="1"
30CELLSPACING="0"
31><TR
32><TH
33COLSPAN="4"
34ALIGN="center"
35><FONT
36COLOR="#FFFFFF"
37SIZE="5"
38>Gnome XML Library Reference Manual</FONT
39></TH
40></TR
41><TR
42><TD
43WIDTH="25%"
44BGCOLOR="#C00000"
45ALIGN="left"
46><A
47HREF="gnome-xml-parserinternals.html"
48><FONT
49COLOR="#FFFFFF"
50SIZE="3"
51><B
52>&#60;&#60;&#60; Previous Page</B
53></FONT
54></A
55></TD
56><TD
57WIDTH="25%"
58BGCOLOR="#0000C0"
59ALIGN="center"
60><FONT
61COLOR="#FFFFFF"
62SIZE="3"
63><B
64><A
65HREF="book1.html"
66><FONT
67COLOR="#FFFFFF"
68SIZE="3"
69><B
70>Home</B
71></FONT
72></A
73></B
74></FONT
75></TD
76><TD
77WIDTH="25%"
78BGCOLOR="#00C000"
79ALIGN="center"
80><FONT
81COLOR="#FFFFFF"
82SIZE="3"
83><B
84><A
85HREF="libxml-lib.html"
86><FONT
87COLOR="#FFFFFF"
88SIZE="3"
89><B
90>Up</B
91></FONT
92></A
93></B
94></FONT
95></TD
96><TD
97WIDTH="25%"
98BGCOLOR="#C00000"
99ALIGN="right"
100><A
101HREF="gnome-xml-debugxml.html"
102><FONT
103COLOR="#FFFFFF"
104SIZE="3"
105><B
106>Next Page &#62;&#62;&#62;</B
107></FONT
108></A
109></TD
110></TR
111></TABLE
112></DIV
113><H1
Daniel Veillard3f6f7f62000-06-30 17:58:25 +0000114>encoding</H1
Daniel Veillardaeea04f2000-01-25 19:27:27 +0000115><DIV
116CLASS="REFNAMEDIV"
117><A
Daniel Veillard7e99c632000-10-06 12:59:53 +0000118NAME="AEN15431"
Daniel Veillardaeea04f2000-01-25 19:27:27 +0000119></A
120><H2
121>Name</H2
Daniel Veillard3f6f7f62000-06-30 17:58:25 +0000122>encoding &#8212; </DIV
Daniel Veillardaeea04f2000-01-25 19:27:27 +0000123><DIV
124CLASS="REFSYNOPSISDIV"
125><A
Daniel Veillard7e99c632000-10-06 12:59:53 +0000126NAME="AEN15434"
Daniel Veillardaeea04f2000-01-25 19:27:27 +0000127></A
128><H2
129>Synopsis</H2
130><TABLE
131BORDER="0"
132BGCOLOR="#D6E8FF"
133WIDTH="100%"
134CELLPADDING="6"
135><TR
136><TD
137><PRE
138CLASS="SYNOPSIS"
139>&#13;
140
141enum <A
142HREF="gnome-xml-encoding.html#XMLCHARENCODING"
143>xmlCharEncoding</A
144>;
145int (<A
146HREF="gnome-xml-encoding.html#XMLCHARENCODINGINPUTFUNC"
147>*xmlCharEncodingInputFunc</A
148>) (unsigned char *out,
Daniel Veillard3f6f7f62000-06-30 17:58:25 +0000149 int *outlen,
Daniel Veillardaeea04f2000-01-25 19:27:27 +0000150 unsigned char *in,
Daniel Veillardedfb29b2000-03-14 19:59:05 +0000151 int *inlen);
Daniel Veillardaeea04f2000-01-25 19:27:27 +0000152int (<A
153HREF="gnome-xml-encoding.html#XMLCHARENCODINGOUTPUTFUNC"
154>*xmlCharEncodingOutputFunc</A
155>) (unsigned char *out,
Daniel Veillard3f6f7f62000-06-30 17:58:25 +0000156 int *outlen,
Daniel Veillardaeea04f2000-01-25 19:27:27 +0000157 unsigned char *in,
Daniel Veillardedfb29b2000-03-14 19:59:05 +0000158 int *inlen);
Daniel Veillard3f6f7f62000-06-30 17:58:25 +0000159struct <A
160HREF="gnome-xml-encoding.html#XMLCHARENCODINGHANDLER"
161>xmlCharEncodingHandler</A
162>;
Daniel Veillardaeea04f2000-01-25 19:27:27 +0000163typedef <A
164HREF="gnome-xml-encoding.html#XMLCHARENCODINGHANDLERPTR"
165>xmlCharEncodingHandlerPtr</A
166>;
167void <A
Daniel Veillard3f6f7f62000-06-30 17:58:25 +0000168HREF="gnome-xml-encoding.html#XMLINITCHARENCODINGHANDLERS"
169>xmlInitCharEncodingHandlers</A
170> (void);
171void <A
172HREF="gnome-xml-encoding.html#XMLCLEANUPCHARENCODINGHANDLERS"
173>xmlCleanupCharEncodingHandlers</A
174> (void);
175void <A
Daniel Veillardaeea04f2000-01-25 19:27:27 +0000176HREF="gnome-xml-encoding.html#XMLREGISTERCHARENCODINGHANDLER"
177>xmlRegisterCharEncodingHandler</A
178> (<A
179HREF="gnome-xml-encoding.html#XMLCHARENCODINGHANDLERPTR"
180>xmlCharEncodingHandlerPtr</A
181> handler);
182<A
Daniel Veillardaeea04f2000-01-25 19:27:27 +0000183HREF="gnome-xml-encoding.html#XMLCHARENCODINGHANDLERPTR"
184>xmlCharEncodingHandlerPtr</A
185> <A
186HREF="gnome-xml-encoding.html#XMLGETCHARENCODINGHANDLER"
187>xmlGetCharEncodingHandler</A
188>
189 (<A
190HREF="gnome-xml-encoding.html#XMLCHARENCODING"
191>xmlCharEncoding</A
192> enc);
193<A
194HREF="gnome-xml-encoding.html#XMLCHARENCODINGHANDLERPTR"
195>xmlCharEncodingHandlerPtr</A
196> <A
197HREF="gnome-xml-encoding.html#XMLFINDCHARENCODINGHANDLER"
198>xmlFindCharEncodingHandler</A
199>
Daniel Veillardedfb29b2000-03-14 19:59:05 +0000200 (const char *name);
Daniel Veillard3f6f7f62000-06-30 17:58:25 +0000201int <A
Daniel Veillard3bff2b02000-10-01 20:33:47 +0000202HREF="gnome-xml-encoding.html#XMLADDENCODINGALIAS"
203>xmlAddEncodingAlias</A
204> (const char *name,
205 const char *alias);
206int <A
207HREF="gnome-xml-encoding.html#XMLDELENCODINGALIAS"
208>xmlDelEncodingAlias</A
209> (const char *alias);
210const char* <A
211HREF="gnome-xml-encoding.html#XMLGETENCODINGALIAS"
212>xmlGetEncodingAlias</A
213> (const char *alias);
214void <A
215HREF="gnome-xml-encoding.html#XMLCLEANUPENCODINGALIASES"
216>xmlCleanupEncodingAliases</A
217> (void);
218<A
219HREF="gnome-xml-encoding.html#XMLCHARENCODING"
220>xmlCharEncoding</A
221> <A
222HREF="gnome-xml-encoding.html#XMLPARSECHARENCODING"
223>xmlParseCharEncoding</A
224> (const char *name);
225const char* <A
226HREF="gnome-xml-encoding.html#XMLGETCHARENCODINGNAME"
227>xmlGetCharEncodingName</A
228> (<A
229HREF="gnome-xml-encoding.html#XMLCHARENCODING"
230>xmlCharEncoding</A
231> enc);
232<A
233HREF="gnome-xml-encoding.html#XMLCHARENCODING"
234>xmlCharEncoding</A
235> <A
236HREF="gnome-xml-encoding.html#XMLDETECTCHARENCODING"
237>xmlDetectCharEncoding</A
238> (unsigned char *in,
239 int len);
240int <A
Daniel Veillard3f6f7f62000-06-30 17:58:25 +0000241HREF="gnome-xml-encoding.html#XMLCHECKUTF8"
242>xmlCheckUTF8</A
243> (unsigned char *utf);
244int <A
245HREF="gnome-xml-encoding.html#XMLCHARENCOUTFUNC"
246>xmlCharEncOutFunc</A
247> (<A
248HREF="gnome-xml-encoding.html#XMLCHARENCODINGHANDLER"
249>xmlCharEncodingHandler</A
250> *handler,
251 <A
252HREF="gnome-xml-tree.html#XMLBUFFERPTR"
253>xmlBufferPtr</A
254> out,
255 <A
256HREF="gnome-xml-tree.html#XMLBUFFERPTR"
257>xmlBufferPtr</A
258> in);
259int <A
260HREF="gnome-xml-encoding.html#XMLCHARENCINFUNC"
261>xmlCharEncInFunc</A
262> (<A
263HREF="gnome-xml-encoding.html#XMLCHARENCODINGHANDLER"
264>xmlCharEncodingHandler</A
265> *handler,
266 <A
267HREF="gnome-xml-tree.html#XMLBUFFERPTR"
268>xmlBufferPtr</A
269> out,
270 <A
271HREF="gnome-xml-tree.html#XMLBUFFERPTR"
272>xmlBufferPtr</A
273> in);
274int <A
275HREF="gnome-xml-encoding.html#XMLCHARENCFIRSTLINE"
276>xmlCharEncFirstLine</A
277> (<A
278HREF="gnome-xml-encoding.html#XMLCHARENCODINGHANDLER"
279>xmlCharEncodingHandler</A
280> *handler,
281 <A
282HREF="gnome-xml-tree.html#XMLBUFFERPTR"
283>xmlBufferPtr</A
284> out,
285 <A
286HREF="gnome-xml-tree.html#XMLBUFFERPTR"
287>xmlBufferPtr</A
288> in);
289int <A
290HREF="gnome-xml-encoding.html#XMLCHARENCCLOSEFUNC"
291>xmlCharEncCloseFunc</A
292> (<A
293HREF="gnome-xml-encoding.html#XMLCHARENCODINGHANDLER"
294>xmlCharEncodingHandler</A
295> *handler);</PRE
Daniel Veillardaeea04f2000-01-25 19:27:27 +0000296></TD
297></TR
298></TABLE
299></DIV
300><DIV
301CLASS="REFSECT1"
302><A
Daniel Veillard7e99c632000-10-06 12:59:53 +0000303NAME="AEN15476"
Daniel Veillardaeea04f2000-01-25 19:27:27 +0000304></A
305><H2
306>Description</H2
307><P
308></P
309></DIV
310><DIV
311CLASS="REFSECT1"
312><A
Daniel Veillard7e99c632000-10-06 12:59:53 +0000313NAME="AEN15479"
Daniel Veillardaeea04f2000-01-25 19:27:27 +0000314></A
315><H2
316>Details</H2
317><DIV
318CLASS="REFSECT2"
319><A
Daniel Veillard7e99c632000-10-06 12:59:53 +0000320NAME="AEN15481"
Daniel Veillardaeea04f2000-01-25 19:27:27 +0000321></A
322><H3
323><A
324NAME="XMLCHARENCODING"
325></A
326>enum xmlCharEncoding</H3
327><TABLE
328BORDER="0"
329BGCOLOR="#D6E8FF"
330WIDTH="100%"
331CELLPADDING="6"
332><TR
333><TD
334><PRE
335CLASS="PROGRAMLISTING"
336>typedef enum {
337 XML_CHAR_ENCODING_ERROR= -1, /* No char encoding detected */
338 XML_CHAR_ENCODING_NONE= 0, /* No char encoding detected */
339 XML_CHAR_ENCODING_UTF8= 1, /* UTF-8 */
340 XML_CHAR_ENCODING_UTF16LE= 2, /* UTF-16 little endian */
341 XML_CHAR_ENCODING_UTF16BE= 3, /* UTF-16 big endian */
342 XML_CHAR_ENCODING_UCS4LE= 4, /* UCS-4 little endian */
343 XML_CHAR_ENCODING_UCS4BE= 5, /* UCS-4 big endian */
344 XML_CHAR_ENCODING_EBCDIC= 6, /* EBCDIC uh! */
345 XML_CHAR_ENCODING_UCS4_2143=7, /* UCS-4 unusual ordering */
346 XML_CHAR_ENCODING_UCS4_3412=8, /* UCS-4 unusual ordering */
347 XML_CHAR_ENCODING_UCS2= 9, /* UCS-2 */
348 XML_CHAR_ENCODING_8859_1= 10,/* ISO-8859-1 ISO Latin 1 */
349 XML_CHAR_ENCODING_8859_2= 11,/* ISO-8859-2 ISO Latin 2 */
350 XML_CHAR_ENCODING_8859_3= 12,/* ISO-8859-3 */
351 XML_CHAR_ENCODING_8859_4= 13,/* ISO-8859-4 */
352 XML_CHAR_ENCODING_8859_5= 14,/* ISO-8859-5 */
353 XML_CHAR_ENCODING_8859_6= 15,/* ISO-8859-6 */
354 XML_CHAR_ENCODING_8859_7= 16,/* ISO-8859-7 */
355 XML_CHAR_ENCODING_8859_8= 17,/* ISO-8859-8 */
356 XML_CHAR_ENCODING_8859_9= 18,/* ISO-8859-9 */
357 XML_CHAR_ENCODING_2022_JP= 19,/* ISO-2022-JP */
358 XML_CHAR_ENCODING_SHIFT_JIS=20,/* Shift_JIS */
Daniel Veillarde46e20d2000-07-14 15:02:46 +0000359 XML_CHAR_ENCODING_EUC_JP= 21,/* EUC-JP */
360 XML_CHAR_ENCODING_ASCII= 22 /* pure ASCII */
Daniel Veillardaeea04f2000-01-25 19:27:27 +0000361} xmlCharEncoding;</PRE
362></TD
363></TR
364></TABLE
365><P
366></P
367></DIV
368><HR><DIV
369CLASS="REFSECT2"
370><A
Daniel Veillard7e99c632000-10-06 12:59:53 +0000371NAME="AEN15486"
Daniel Veillardaeea04f2000-01-25 19:27:27 +0000372></A
373><H3
374><A
375NAME="XMLCHARENCODINGINPUTFUNC"
376></A
377>xmlCharEncodingInputFunc ()</H3
378><TABLE
379BORDER="0"
380BGCOLOR="#D6E8FF"
381WIDTH="100%"
382CELLPADDING="6"
383><TR
384><TD
385><PRE
386CLASS="PROGRAMLISTING"
387>int (*xmlCharEncodingInputFunc) (unsigned char *out,
Daniel Veillard3f6f7f62000-06-30 17:58:25 +0000388 int *outlen,
Daniel Veillardaeea04f2000-01-25 19:27:27 +0000389 unsigned char *in,
Daniel Veillardedfb29b2000-03-14 19:59:05 +0000390 int *inlen);</PRE
Daniel Veillardaeea04f2000-01-25 19:27:27 +0000391></TD
392></TR
393></TABLE
394><P
395></P
396><DIV
397CLASS="INFORMALTABLE"
398><P
399></P
400><TABLE
401BORDER="0"
402WIDTH="100%"
403BGCOLOR="#FFD0D0"
404CELLSPACING="0"
405CELLPADDING="4"
406CLASS="CALSTABLE"
407><TR
408><TD
409WIDTH="20%"
410ALIGN="RIGHT"
411VALIGN="TOP"
412><TT
413CLASS="PARAMETER"
414><I
415>out</I
416></TT
417>&nbsp;:</TD
418><TD
419WIDTH="80%"
420ALIGN="LEFT"
421VALIGN="TOP"
422>&nbsp;</TD
423></TR
424><TR
425><TD
426WIDTH="20%"
427ALIGN="RIGHT"
428VALIGN="TOP"
429><TT
430CLASS="PARAMETER"
431><I
432>outlen</I
433></TT
434>&nbsp;:</TD
435><TD
436WIDTH="80%"
437ALIGN="LEFT"
438VALIGN="TOP"
439>&nbsp;</TD
440></TR
441><TR
442><TD
443WIDTH="20%"
444ALIGN="RIGHT"
445VALIGN="TOP"
446><TT
447CLASS="PARAMETER"
448><I
449>in</I
450></TT
451>&nbsp;:</TD
452><TD
453WIDTH="80%"
454ALIGN="LEFT"
455VALIGN="TOP"
456>&nbsp;</TD
457></TR
458><TR
459><TD
460WIDTH="20%"
461ALIGN="RIGHT"
462VALIGN="TOP"
463><TT
464CLASS="PARAMETER"
465><I
466>inlen</I
467></TT
468>&nbsp;:</TD
469><TD
470WIDTH="80%"
471ALIGN="LEFT"
472VALIGN="TOP"
473>&nbsp;</TD
474></TR
475><TR
476><TD
477WIDTH="20%"
478ALIGN="RIGHT"
479VALIGN="TOP"
480><I
481CLASS="EMPHASIS"
482>Returns</I
483> :</TD
484><TD
485WIDTH="80%"
486ALIGN="LEFT"
487VALIGN="TOP"
488>&nbsp;</TD
489></TR
490></TABLE
491><P
492></P
493></DIV
494></DIV
495><HR><DIV
496CLASS="REFSECT2"
497><A
Daniel Veillard7e99c632000-10-06 12:59:53 +0000498NAME="AEN15516"
Daniel Veillardaeea04f2000-01-25 19:27:27 +0000499></A
500><H3
501><A
502NAME="XMLCHARENCODINGOUTPUTFUNC"
503></A
504>xmlCharEncodingOutputFunc ()</H3
505><TABLE
506BORDER="0"
507BGCOLOR="#D6E8FF"
508WIDTH="100%"
509CELLPADDING="6"
510><TR
511><TD
512><PRE
513CLASS="PROGRAMLISTING"
514>int (*xmlCharEncodingOutputFunc) (unsigned char *out,
Daniel Veillard3f6f7f62000-06-30 17:58:25 +0000515 int *outlen,
Daniel Veillardaeea04f2000-01-25 19:27:27 +0000516 unsigned char *in,
Daniel Veillardedfb29b2000-03-14 19:59:05 +0000517 int *inlen);</PRE
Daniel Veillardaeea04f2000-01-25 19:27:27 +0000518></TD
519></TR
520></TABLE
521><P
522></P
523><DIV
524CLASS="INFORMALTABLE"
525><P
526></P
527><TABLE
528BORDER="0"
529WIDTH="100%"
530BGCOLOR="#FFD0D0"
531CELLSPACING="0"
532CELLPADDING="4"
533CLASS="CALSTABLE"
534><TR
535><TD
536WIDTH="20%"
537ALIGN="RIGHT"
538VALIGN="TOP"
539><TT
540CLASS="PARAMETER"
541><I
542>out</I
543></TT
544>&nbsp;:</TD
545><TD
546WIDTH="80%"
547ALIGN="LEFT"
548VALIGN="TOP"
549>&nbsp;</TD
550></TR
551><TR
552><TD
553WIDTH="20%"
554ALIGN="RIGHT"
555VALIGN="TOP"
556><TT
557CLASS="PARAMETER"
558><I
559>outlen</I
560></TT
561>&nbsp;:</TD
562><TD
563WIDTH="80%"
564ALIGN="LEFT"
565VALIGN="TOP"
566>&nbsp;</TD
567></TR
568><TR
569><TD
570WIDTH="20%"
571ALIGN="RIGHT"
572VALIGN="TOP"
573><TT
574CLASS="PARAMETER"
575><I
576>in</I
577></TT
578>&nbsp;:</TD
579><TD
580WIDTH="80%"
581ALIGN="LEFT"
582VALIGN="TOP"
583>&nbsp;</TD
584></TR
585><TR
586><TD
587WIDTH="20%"
588ALIGN="RIGHT"
589VALIGN="TOP"
590><TT
591CLASS="PARAMETER"
592><I
593>inlen</I
594></TT
595>&nbsp;:</TD
596><TD
597WIDTH="80%"
598ALIGN="LEFT"
599VALIGN="TOP"
600>&nbsp;</TD
601></TR
602><TR
603><TD
604WIDTH="20%"
605ALIGN="RIGHT"
606VALIGN="TOP"
607><I
608CLASS="EMPHASIS"
609>Returns</I
610> :</TD
611><TD
612WIDTH="80%"
613ALIGN="LEFT"
614VALIGN="TOP"
615>&nbsp;</TD
616></TR
617></TABLE
618><P
619></P
620></DIV
621></DIV
622><HR><DIV
623CLASS="REFSECT2"
624><A
Daniel Veillard7e99c632000-10-06 12:59:53 +0000625NAME="AEN15546"
Daniel Veillardaeea04f2000-01-25 19:27:27 +0000626></A
627><H3
628><A
Daniel Veillard3f6f7f62000-06-30 17:58:25 +0000629NAME="XMLCHARENCODINGHANDLER"
Daniel Veillardaeea04f2000-01-25 19:27:27 +0000630></A
Daniel Veillard3f6f7f62000-06-30 17:58:25 +0000631>struct xmlCharEncodingHandler</H3
632><TABLE
633BORDER="0"
634BGCOLOR="#D6E8FF"
635WIDTH="100%"
636CELLPADDING="6"
637><TR
638><TD
639><PRE
640CLASS="PROGRAMLISTING"
641>struct xmlCharEncodingHandler {
642 char *name;
643 xmlCharEncodingInputFunc input;
644 xmlCharEncodingOutputFunc output;
645#ifdef LIBXML_ICONV_ENABLED
646 iconv_t iconv_in;
647 iconv_t iconv_out;
648#endif /* LIBXML_ICONV_ENABLED */
649};</PRE
650></TD
651></TR
652></TABLE
Daniel Veillardaeea04f2000-01-25 19:27:27 +0000653><P
654></P
655></DIV
656><HR><DIV
657CLASS="REFSECT2"
658><A
Daniel Veillard7e99c632000-10-06 12:59:53 +0000659NAME="AEN15551"
Daniel Veillard3f6f7f62000-06-30 17:58:25 +0000660></A
661><H3
662><A
663NAME="XMLCHARENCODINGHANDLERPTR"
664></A
665>xmlCharEncodingHandlerPtr</H3
Daniel Veillard3f6f7f62000-06-30 17:58:25 +0000666><P
667></P
668></DIV
669><HR><DIV
670CLASS="REFSECT2"
671><A
Daniel Veillard7e99c632000-10-06 12:59:53 +0000672NAME="AEN15555"
Daniel Veillard3f6f7f62000-06-30 17:58:25 +0000673></A
674><H3
675><A
676NAME="XMLINITCHARENCODINGHANDLERS"
677></A
678>xmlInitCharEncodingHandlers ()</H3
679><TABLE
680BORDER="0"
681BGCOLOR="#D6E8FF"
682WIDTH="100%"
683CELLPADDING="6"
684><TR
685><TD
686><PRE
687CLASS="PROGRAMLISTING"
688>void xmlInitCharEncodingHandlers (void);</PRE
689></TD
690></TR
691></TABLE
692><P
693>Initialize the char encoding support, it registers the default
694encoding supported.
695NOTE: while public, this function usually doesn't need to be called
696in normal processing.</P
697><P
698></P
699></DIV
700><HR><DIV
701CLASS="REFSECT2"
702><A
Daniel Veillard7e99c632000-10-06 12:59:53 +0000703NAME="AEN15561"
Daniel Veillard3f6f7f62000-06-30 17:58:25 +0000704></A
705><H3
706><A
707NAME="XMLCLEANUPCHARENCODINGHANDLERS"
708></A
709>xmlCleanupCharEncodingHandlers ()</H3
710><TABLE
711BORDER="0"
712BGCOLOR="#D6E8FF"
713WIDTH="100%"
714CELLPADDING="6"
715><TR
716><TD
717><PRE
718CLASS="PROGRAMLISTING"
719>void xmlCleanupCharEncodingHandlers (void);</PRE
720></TD
721></TR
722></TABLE
723><P
724>Cleanup the memory allocated for the char encoding support, it
Daniel Veillard3bff2b02000-10-01 20:33:47 +0000725unregisters all the encoding handlers and the aliases.</P
Daniel Veillard3f6f7f62000-06-30 17:58:25 +0000726><P
727></P
728></DIV
729><HR><DIV
730CLASS="REFSECT2"
731><A
Daniel Veillard7e99c632000-10-06 12:59:53 +0000732NAME="AEN15567"
Daniel Veillardaeea04f2000-01-25 19:27:27 +0000733></A
734><H3
735><A
736NAME="XMLREGISTERCHARENCODINGHANDLER"
737></A
738>xmlRegisterCharEncodingHandler ()</H3
739><TABLE
740BORDER="0"
741BGCOLOR="#D6E8FF"
742WIDTH="100%"
743CELLPADDING="6"
744><TR
745><TD
746><PRE
747CLASS="PROGRAMLISTING"
748>void xmlRegisterCharEncodingHandler (<A
749HREF="gnome-xml-encoding.html#XMLCHARENCODINGHANDLERPTR"
750>xmlCharEncodingHandlerPtr</A
751> handler);</PRE
752></TD
753></TR
754></TABLE
755><P
756>Register the char encoding handler, surprizing, isn't it ?</P
757><P
758></P
759><DIV
760CLASS="INFORMALTABLE"
761><P
762></P
763><TABLE
764BORDER="0"
765WIDTH="100%"
766BGCOLOR="#FFD0D0"
767CELLSPACING="0"
768CELLPADDING="4"
769CLASS="CALSTABLE"
770><TR
771><TD
772WIDTH="20%"
773ALIGN="RIGHT"
774VALIGN="TOP"
775><TT
776CLASS="PARAMETER"
777><I
778>handler</I
779></TT
780>&nbsp;:</TD
781><TD
782WIDTH="80%"
783ALIGN="LEFT"
784VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +0000785>&nbsp;</TD
Daniel Veillardaeea04f2000-01-25 19:27:27 +0000786></TR
787></TABLE
788><P
789></P
790></DIV
791></DIV
792><HR><DIV
793CLASS="REFSECT2"
794><A
Daniel Veillard7e99c632000-10-06 12:59:53 +0000795NAME="AEN15583"
Daniel Veillard3bff2b02000-10-01 20:33:47 +0000796></A
797><H3
798><A
799NAME="XMLGETCHARENCODINGHANDLER"
800></A
801>xmlGetCharEncodingHandler ()</H3
802><TABLE
803BORDER="0"
804BGCOLOR="#D6E8FF"
805WIDTH="100%"
806CELLPADDING="6"
807><TR
808><TD
809><PRE
810CLASS="PROGRAMLISTING"
811><A
812HREF="gnome-xml-encoding.html#XMLCHARENCODINGHANDLERPTR"
813>xmlCharEncodingHandlerPtr</A
814> xmlGetCharEncodingHandler
815 (<A
816HREF="gnome-xml-encoding.html#XMLCHARENCODING"
817>xmlCharEncoding</A
818> enc);</PRE
819></TD
820></TR
821></TABLE
822><P
823>Search in the registrered set the handler able to read/write that encoding.</P
824><P
825></P
826><DIV
827CLASS="INFORMALTABLE"
828><P
829></P
830><TABLE
831BORDER="0"
832WIDTH="100%"
833BGCOLOR="#FFD0D0"
834CELLSPACING="0"
835CELLPADDING="4"
836CLASS="CALSTABLE"
837><TR
838><TD
839WIDTH="20%"
840ALIGN="RIGHT"
841VALIGN="TOP"
842><TT
843CLASS="PARAMETER"
844><I
845>enc</I
846></TT
847>&nbsp;:</TD
848><TD
849WIDTH="80%"
850ALIGN="LEFT"
851VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +0000852>&nbsp;</TD
Daniel Veillard3bff2b02000-10-01 20:33:47 +0000853></TR
854><TR
855><TD
856WIDTH="20%"
857ALIGN="RIGHT"
858VALIGN="TOP"
859><I
860CLASS="EMPHASIS"
861>Returns</I
862> :</TD
863><TD
864WIDTH="80%"
865ALIGN="LEFT"
866VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +0000867>&nbsp;</TD
Daniel Veillard3bff2b02000-10-01 20:33:47 +0000868></TR
869></TABLE
870><P
871></P
872></DIV
873></DIV
874><HR><DIV
875CLASS="REFSECT2"
876><A
Daniel Veillard7e99c632000-10-06 12:59:53 +0000877NAME="AEN15604"
Daniel Veillard3bff2b02000-10-01 20:33:47 +0000878></A
879><H3
880><A
881NAME="XMLFINDCHARENCODINGHANDLER"
882></A
883>xmlFindCharEncodingHandler ()</H3
884><TABLE
885BORDER="0"
886BGCOLOR="#D6E8FF"
887WIDTH="100%"
888CELLPADDING="6"
889><TR
890><TD
891><PRE
892CLASS="PROGRAMLISTING"
893><A
894HREF="gnome-xml-encoding.html#XMLCHARENCODINGHANDLERPTR"
895>xmlCharEncodingHandlerPtr</A
896> xmlFindCharEncodingHandler
897 (const char *name);</PRE
898></TD
899></TR
900></TABLE
901><P
902></P
903><DIV
904CLASS="INFORMALTABLE"
905><P
906></P
907><TABLE
908BORDER="0"
909WIDTH="100%"
910BGCOLOR="#FFD0D0"
911CELLSPACING="0"
912CELLPADDING="4"
913CLASS="CALSTABLE"
914><TR
915><TD
916WIDTH="20%"
917ALIGN="RIGHT"
918VALIGN="TOP"
919><TT
920CLASS="PARAMETER"
921><I
922>name</I
923></TT
924>&nbsp;:</TD
925><TD
926WIDTH="80%"
927ALIGN="LEFT"
928VALIGN="TOP"
929>&nbsp;</TD
930></TR
931><TR
932><TD
933WIDTH="20%"
934ALIGN="RIGHT"
935VALIGN="TOP"
936><I
937CLASS="EMPHASIS"
938>Returns</I
939> :</TD
940><TD
941WIDTH="80%"
942ALIGN="LEFT"
943VALIGN="TOP"
944>&nbsp;</TD
945></TR
946></TABLE
947><P
948></P
949></DIV
950></DIV
951><HR><DIV
952CLASS="REFSECT2"
953><A
Daniel Veillard7e99c632000-10-06 12:59:53 +0000954NAME="AEN15623"
Daniel Veillard3bff2b02000-10-01 20:33:47 +0000955></A
956><H3
957><A
958NAME="XMLADDENCODINGALIAS"
959></A
960>xmlAddEncodingAlias ()</H3
961><TABLE
962BORDER="0"
963BGCOLOR="#D6E8FF"
964WIDTH="100%"
965CELLPADDING="6"
966><TR
967><TD
968><PRE
969CLASS="PROGRAMLISTING"
970>int xmlAddEncodingAlias (const char *name,
971 const char *alias);</PRE
972></TD
973></TR
974></TABLE
975><P
976>Registers and alias <TT
977CLASS="PARAMETER"
978><I
979>alias</I
980></TT
981> for an encoding named <TT
982CLASS="PARAMETER"
983><I
984>name</I
985></TT
986>. Existing alias
987will be overwritten.</P
988><P
989></P
990><DIV
991CLASS="INFORMALTABLE"
992><P
993></P
994><TABLE
995BORDER="0"
996WIDTH="100%"
997BGCOLOR="#FFD0D0"
998CELLSPACING="0"
999CELLPADDING="4"
1000CLASS="CALSTABLE"
1001><TR
1002><TD
1003WIDTH="20%"
1004ALIGN="RIGHT"
1005VALIGN="TOP"
1006><TT
1007CLASS="PARAMETER"
1008><I
1009>name</I
1010></TT
1011>&nbsp;:</TD
1012><TD
1013WIDTH="80%"
1014ALIGN="LEFT"
1015VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001016>&nbsp;</TD
Daniel Veillard3bff2b02000-10-01 20:33:47 +00001017></TR
1018><TR
1019><TD
1020WIDTH="20%"
1021ALIGN="RIGHT"
1022VALIGN="TOP"
1023><TT
1024CLASS="PARAMETER"
1025><I
1026>alias</I
1027></TT
1028>&nbsp;:</TD
1029><TD
1030WIDTH="80%"
1031ALIGN="LEFT"
1032VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001033>&nbsp;</TD
Daniel Veillard3bff2b02000-10-01 20:33:47 +00001034></TR
1035><TR
1036><TD
1037WIDTH="20%"
1038ALIGN="RIGHT"
1039VALIGN="TOP"
1040><I
1041CLASS="EMPHASIS"
1042>Returns</I
1043> :</TD
1044><TD
1045WIDTH="80%"
1046ALIGN="LEFT"
1047VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001048>&nbsp;</TD
Daniel Veillard3bff2b02000-10-01 20:33:47 +00001049></TR
1050></TABLE
1051><P
1052></P
1053></DIV
1054></DIV
1055><HR><DIV
1056CLASS="REFSECT2"
1057><A
Daniel Veillard7e99c632000-10-06 12:59:53 +00001058NAME="AEN15648"
Daniel Veillard3bff2b02000-10-01 20:33:47 +00001059></A
1060><H3
1061><A
1062NAME="XMLDELENCODINGALIAS"
1063></A
1064>xmlDelEncodingAlias ()</H3
1065><TABLE
1066BORDER="0"
1067BGCOLOR="#D6E8FF"
1068WIDTH="100%"
1069CELLPADDING="6"
1070><TR
1071><TD
1072><PRE
1073CLASS="PROGRAMLISTING"
1074>int xmlDelEncodingAlias (const char *alias);</PRE
1075></TD
1076></TR
1077></TABLE
1078><P
1079>Unregisters an encoding alias <TT
1080CLASS="PARAMETER"
1081><I
1082>alias</I
1083></TT
1084></P
1085><P
1086></P
1087><DIV
1088CLASS="INFORMALTABLE"
1089><P
1090></P
1091><TABLE
1092BORDER="0"
1093WIDTH="100%"
1094BGCOLOR="#FFD0D0"
1095CELLSPACING="0"
1096CELLPADDING="4"
1097CLASS="CALSTABLE"
1098><TR
1099><TD
1100WIDTH="20%"
1101ALIGN="RIGHT"
1102VALIGN="TOP"
1103><TT
1104CLASS="PARAMETER"
1105><I
1106>alias</I
1107></TT
1108>&nbsp;:</TD
1109><TD
1110WIDTH="80%"
1111ALIGN="LEFT"
1112VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001113>&nbsp;</TD
Daniel Veillard3bff2b02000-10-01 20:33:47 +00001114></TR
1115><TR
1116><TD
1117WIDTH="20%"
1118ALIGN="RIGHT"
1119VALIGN="TOP"
1120><I
1121CLASS="EMPHASIS"
1122>Returns</I
1123> :</TD
1124><TD
1125WIDTH="80%"
1126ALIGN="LEFT"
1127VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001128>&nbsp;</TD
Daniel Veillard3bff2b02000-10-01 20:33:47 +00001129></TR
1130></TABLE
1131><P
1132></P
1133></DIV
1134></DIV
1135><HR><DIV
1136CLASS="REFSECT2"
1137><A
Daniel Veillard7e99c632000-10-06 12:59:53 +00001138NAME="AEN15668"
Daniel Veillard3bff2b02000-10-01 20:33:47 +00001139></A
1140><H3
1141><A
1142NAME="XMLGETENCODINGALIAS"
1143></A
1144>xmlGetEncodingAlias ()</H3
1145><TABLE
1146BORDER="0"
1147BGCOLOR="#D6E8FF"
1148WIDTH="100%"
1149CELLPADDING="6"
1150><TR
1151><TD
1152><PRE
1153CLASS="PROGRAMLISTING"
1154>const char* xmlGetEncodingAlias (const char *alias);</PRE
1155></TD
1156></TR
1157></TABLE
1158><P
1159>Lookup an encoding name for the given alias.</P
1160><P
1161></P
1162><DIV
1163CLASS="INFORMALTABLE"
1164><P
1165></P
1166><TABLE
1167BORDER="0"
1168WIDTH="100%"
1169BGCOLOR="#FFD0D0"
1170CELLSPACING="0"
1171CELLPADDING="4"
1172CLASS="CALSTABLE"
1173><TR
1174><TD
1175WIDTH="20%"
1176ALIGN="RIGHT"
1177VALIGN="TOP"
1178><TT
1179CLASS="PARAMETER"
1180><I
1181>alias</I
1182></TT
1183>&nbsp;:</TD
1184><TD
1185WIDTH="80%"
1186ALIGN="LEFT"
1187VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001188>&nbsp;</TD
Daniel Veillard3bff2b02000-10-01 20:33:47 +00001189></TR
1190><TR
1191><TD
1192WIDTH="20%"
1193ALIGN="RIGHT"
1194VALIGN="TOP"
1195><I
1196CLASS="EMPHASIS"
1197>Returns</I
1198> :</TD
1199><TD
1200WIDTH="80%"
1201ALIGN="LEFT"
1202VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001203>&nbsp;</TD
Daniel Veillard3bff2b02000-10-01 20:33:47 +00001204></TR
1205></TABLE
1206><P
1207></P
1208></DIV
1209></DIV
1210><HR><DIV
1211CLASS="REFSECT2"
1212><A
Daniel Veillard7e99c632000-10-06 12:59:53 +00001213NAME="AEN15687"
Daniel Veillard3bff2b02000-10-01 20:33:47 +00001214></A
1215><H3
1216><A
1217NAME="XMLCLEANUPENCODINGALIASES"
1218></A
1219>xmlCleanupEncodingAliases ()</H3
1220><TABLE
1221BORDER="0"
1222BGCOLOR="#D6E8FF"
1223WIDTH="100%"
1224CELLPADDING="6"
1225><TR
1226><TD
1227><PRE
1228CLASS="PROGRAMLISTING"
1229>void xmlCleanupEncodingAliases (void);</PRE
1230></TD
1231></TR
1232></TABLE
1233><P
1234>Unregisters all aliases</P
1235><P
1236></P
1237></DIV
1238><HR><DIV
1239CLASS="REFSECT2"
1240><A
Daniel Veillard7e99c632000-10-06 12:59:53 +00001241NAME="AEN15693"
Daniel Veillard3bff2b02000-10-01 20:33:47 +00001242></A
1243><H3
1244><A
1245NAME="XMLPARSECHARENCODING"
1246></A
1247>xmlParseCharEncoding ()</H3
1248><TABLE
1249BORDER="0"
1250BGCOLOR="#D6E8FF"
1251WIDTH="100%"
1252CELLPADDING="6"
1253><TR
1254><TD
1255><PRE
1256CLASS="PROGRAMLISTING"
1257><A
1258HREF="gnome-xml-encoding.html#XMLCHARENCODING"
1259>xmlCharEncoding</A
1260> xmlParseCharEncoding (const char *name);</PRE
1261></TD
1262></TR
1263></TABLE
1264><P
1265>Conpare the string to the known encoding schemes already known. Note
1266that the comparison is case insensitive accordingly to the section
1267[XML] 4.3.3 Character Encoding in Entities.</P
1268><P
1269></P
1270><DIV
1271CLASS="INFORMALTABLE"
1272><P
1273></P
1274><TABLE
1275BORDER="0"
1276WIDTH="100%"
1277BGCOLOR="#FFD0D0"
1278CELLSPACING="0"
1279CELLPADDING="4"
1280CLASS="CALSTABLE"
1281><TR
1282><TD
1283WIDTH="20%"
1284ALIGN="RIGHT"
1285VALIGN="TOP"
1286><TT
1287CLASS="PARAMETER"
1288><I
1289>name</I
1290></TT
1291>&nbsp;:</TD
1292><TD
1293WIDTH="80%"
1294ALIGN="LEFT"
1295VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001296>&nbsp;</TD
Daniel Veillard3bff2b02000-10-01 20:33:47 +00001297></TR
1298><TR
1299><TD
1300WIDTH="20%"
1301ALIGN="RIGHT"
1302VALIGN="TOP"
1303><I
1304CLASS="EMPHASIS"
1305>Returns</I
1306> :</TD
1307><TD
1308WIDTH="80%"
1309ALIGN="LEFT"
1310VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001311>&nbsp;</TD
Daniel Veillard3bff2b02000-10-01 20:33:47 +00001312></TR
1313></TABLE
1314><P
1315></P
1316></DIV
1317></DIV
1318><HR><DIV
1319CLASS="REFSECT2"
1320><A
Daniel Veillard7e99c632000-10-06 12:59:53 +00001321NAME="AEN15713"
Daniel Veillard3bff2b02000-10-01 20:33:47 +00001322></A
1323><H3
1324><A
1325NAME="XMLGETCHARENCODINGNAME"
1326></A
1327>xmlGetCharEncodingName ()</H3
1328><TABLE
1329BORDER="0"
1330BGCOLOR="#D6E8FF"
1331WIDTH="100%"
1332CELLPADDING="6"
1333><TR
1334><TD
1335><PRE
1336CLASS="PROGRAMLISTING"
1337>const char* xmlGetCharEncodingName (<A
1338HREF="gnome-xml-encoding.html#XMLCHARENCODING"
1339>xmlCharEncoding</A
1340> enc);</PRE
1341></TD
1342></TR
1343></TABLE
1344><P
1345>The "canonical" name for XML encoding.
1346C.f. http://www.w3.org/TR/REC-xml<GTKDOCLINK
1347HREF="CHARENCODING"
1348>charencoding</GTKDOCLINK
1349>
1350Section 4.3.3 Character Encoding in Entities</P
1351><P
1352></P
1353><DIV
1354CLASS="INFORMALTABLE"
1355><P
1356></P
1357><TABLE
1358BORDER="0"
1359WIDTH="100%"
1360BGCOLOR="#FFD0D0"
1361CELLSPACING="0"
1362CELLPADDING="4"
1363CLASS="CALSTABLE"
1364><TR
1365><TD
1366WIDTH="20%"
1367ALIGN="RIGHT"
1368VALIGN="TOP"
1369><TT
1370CLASS="PARAMETER"
1371><I
1372>enc</I
1373></TT
1374>&nbsp;:</TD
1375><TD
1376WIDTH="80%"
1377ALIGN="LEFT"
1378VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001379>&nbsp;</TD
Daniel Veillard3bff2b02000-10-01 20:33:47 +00001380></TR
1381><TR
1382><TD
1383WIDTH="20%"
1384ALIGN="RIGHT"
1385VALIGN="TOP"
1386><I
1387CLASS="EMPHASIS"
1388>Returns</I
1389> :</TD
1390><TD
1391WIDTH="80%"
1392ALIGN="LEFT"
1393VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001394>&nbsp;</TD
Daniel Veillard3bff2b02000-10-01 20:33:47 +00001395></TR
1396></TABLE
1397><P
1398></P
1399></DIV
1400></DIV
1401><HR><DIV
1402CLASS="REFSECT2"
1403><A
Daniel Veillard7e99c632000-10-06 12:59:53 +00001404NAME="AEN15734"
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001405></A
1406><H3
1407><A
1408NAME="XMLDETECTCHARENCODING"
1409></A
1410>xmlDetectCharEncoding ()</H3
1411><TABLE
1412BORDER="0"
1413BGCOLOR="#D6E8FF"
1414WIDTH="100%"
1415CELLPADDING="6"
1416><TR
1417><TD
1418><PRE
1419CLASS="PROGRAMLISTING"
1420><A
1421HREF="gnome-xml-encoding.html#XMLCHARENCODING"
1422>xmlCharEncoding</A
1423> xmlDetectCharEncoding (unsigned char *in,
1424 int len);</PRE
1425></TD
1426></TR
1427></TABLE
1428><P
1429>Guess the encoding of the entity using the first bytes of the entity content
1430accordingly of the non-normative appendix F of the XML-1.0 recommendation.</P
1431><P
1432></P
1433><DIV
1434CLASS="INFORMALTABLE"
1435><P
1436></P
1437><TABLE
1438BORDER="0"
1439WIDTH="100%"
1440BGCOLOR="#FFD0D0"
1441CELLSPACING="0"
1442CELLPADDING="4"
1443CLASS="CALSTABLE"
1444><TR
1445><TD
1446WIDTH="20%"
1447ALIGN="RIGHT"
1448VALIGN="TOP"
1449><TT
1450CLASS="PARAMETER"
1451><I
1452>in</I
1453></TT
1454>&nbsp;:</TD
1455><TD
1456WIDTH="80%"
1457ALIGN="LEFT"
1458VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001459>&nbsp;</TD
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001460></TR
1461><TR
1462><TD
1463WIDTH="20%"
1464ALIGN="RIGHT"
1465VALIGN="TOP"
1466><TT
1467CLASS="PARAMETER"
1468><I
1469>len</I
1470></TT
1471>&nbsp;:</TD
1472><TD
1473WIDTH="80%"
1474ALIGN="LEFT"
1475VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001476>&nbsp;</TD
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001477></TR
1478><TR
1479><TD
1480WIDTH="20%"
1481ALIGN="RIGHT"
1482VALIGN="TOP"
1483><I
1484CLASS="EMPHASIS"
1485>Returns</I
1486> :</TD
1487><TD
1488WIDTH="80%"
1489ALIGN="LEFT"
1490VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001491>&nbsp;</TD
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001492></TR
1493></TABLE
1494><P
1495></P
1496></DIV
1497></DIV
1498><HR><DIV
1499CLASS="REFSECT2"
1500><A
Daniel Veillard7e99c632000-10-06 12:59:53 +00001501NAME="AEN15758"
Daniel Veillardedfb29b2000-03-14 19:59:05 +00001502></A
1503><H3
1504><A
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001505NAME="XMLCHECKUTF8"
Daniel Veillardedfb29b2000-03-14 19:59:05 +00001506></A
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001507>xmlCheckUTF8 ()</H3
Daniel Veillardedfb29b2000-03-14 19:59:05 +00001508><TABLE
1509BORDER="0"
1510BGCOLOR="#D6E8FF"
1511WIDTH="100%"
1512CELLPADDING="6"
1513><TR
1514><TD
1515><PRE
1516CLASS="PROGRAMLISTING"
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001517>int xmlCheckUTF8 (unsigned char *utf);</PRE
Daniel Veillardedfb29b2000-03-14 19:59:05 +00001518></TD
1519></TR
1520></TABLE
1521><P
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001522>Checks <TT
1523CLASS="PARAMETER"
1524><I
1525>utf</I
1526></TT
1527> for being valid utf-8. <TT
1528CLASS="PARAMETER"
1529><I
1530>utf</I
1531></TT
1532> is assumed to be
1533null-terminated. This function is not super-strict, as it will
1534allow longer utf-8 sequences than necessary. Note that Java is
1535capable of producing these sequences if provoked. Also note, this
1536routine checks for the 4-byte maxiumum size, but does not check for
15370x10ffff maximum value.</P
Daniel Veillardedfb29b2000-03-14 19:59:05 +00001538><P
1539></P
1540><DIV
1541CLASS="INFORMALTABLE"
1542><P
1543></P
1544><TABLE
1545BORDER="0"
1546WIDTH="100%"
1547BGCOLOR="#FFD0D0"
1548CELLSPACING="0"
1549CELLPADDING="4"
1550CLASS="CALSTABLE"
1551><TR
1552><TD
1553WIDTH="20%"
1554ALIGN="RIGHT"
1555VALIGN="TOP"
1556><TT
1557CLASS="PARAMETER"
1558><I
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001559>utf</I
1560></TT
1561>&nbsp;:</TD
1562><TD
1563WIDTH="80%"
1564ALIGN="LEFT"
1565VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001566>&nbsp;</TD
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001567></TR
1568><TR
1569><TD
1570WIDTH="20%"
1571ALIGN="RIGHT"
1572VALIGN="TOP"
1573><I
1574CLASS="EMPHASIS"
1575>Returns</I
1576> :</TD
1577><TD
1578WIDTH="80%"
1579ALIGN="LEFT"
1580VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001581>&nbsp;</TD
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001582></TR
1583></TABLE
1584><P
1585></P
1586></DIV
1587></DIV
1588><HR><DIV
1589CLASS="REFSECT2"
1590><A
Daniel Veillard7e99c632000-10-06 12:59:53 +00001591NAME="AEN15779"
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001592></A
1593><H3
1594><A
1595NAME="XMLCHARENCOUTFUNC"
1596></A
1597>xmlCharEncOutFunc ()</H3
1598><TABLE
1599BORDER="0"
1600BGCOLOR="#D6E8FF"
1601WIDTH="100%"
1602CELLPADDING="6"
1603><TR
1604><TD
1605><PRE
1606CLASS="PROGRAMLISTING"
1607>int xmlCharEncOutFunc (<A
1608HREF="gnome-xml-encoding.html#XMLCHARENCODINGHANDLER"
1609>xmlCharEncodingHandler</A
1610> *handler,
1611 <A
1612HREF="gnome-xml-tree.html#XMLBUFFERPTR"
1613>xmlBufferPtr</A
1614> out,
1615 <A
1616HREF="gnome-xml-tree.html#XMLBUFFERPTR"
1617>xmlBufferPtr</A
1618> in);</PRE
1619></TD
1620></TR
1621></TABLE
1622><P
1623>Generic front-end for the encoding handler output function
1624a first call with <TT
1625CLASS="PARAMETER"
1626><I
1627>in</I
1628></TT
1629> == NULL has to be made firs to initiate the
1630output in case of non-stateless encoding needing to initiate their
1631state or the output (like the BOM in UTF16).
1632In case of UTF8 sequence conversion errors for the given encoder,
1633the content will be automatically remapped to a CharRef sequence.</P
1634><P
1635></P
1636><DIV
1637CLASS="INFORMALTABLE"
1638><P
1639></P
1640><TABLE
1641BORDER="0"
1642WIDTH="100%"
1643BGCOLOR="#FFD0D0"
1644CELLSPACING="0"
1645CELLPADDING="4"
1646CLASS="CALSTABLE"
1647><TR
1648><TD
1649WIDTH="20%"
1650ALIGN="RIGHT"
1651VALIGN="TOP"
1652><TT
1653CLASS="PARAMETER"
1654><I
1655>handler</I
1656></TT
1657>&nbsp;:</TD
1658><TD
1659WIDTH="80%"
1660ALIGN="LEFT"
1661VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001662>&nbsp;</TD
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001663></TR
1664><TR
1665><TD
1666WIDTH="20%"
1667ALIGN="RIGHT"
1668VALIGN="TOP"
1669><TT
1670CLASS="PARAMETER"
1671><I
1672>out</I
1673></TT
1674>&nbsp;:</TD
1675><TD
1676WIDTH="80%"
1677ALIGN="LEFT"
1678VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001679>&nbsp;</TD
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001680></TR
1681><TR
1682><TD
1683WIDTH="20%"
1684ALIGN="RIGHT"
1685VALIGN="TOP"
1686><TT
1687CLASS="PARAMETER"
1688><I
Daniel Veillard06047432000-04-24 11:33:38 +00001689>in</I
Daniel Veillardedfb29b2000-03-14 19:59:05 +00001690></TT
1691>&nbsp;:</TD
1692><TD
1693WIDTH="80%"
1694ALIGN="LEFT"
1695VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001696>&nbsp;</TD
Daniel Veillardedfb29b2000-03-14 19:59:05 +00001697></TR
1698><TR
1699><TD
1700WIDTH="20%"
1701ALIGN="RIGHT"
1702VALIGN="TOP"
1703><I
1704CLASS="EMPHASIS"
1705>Returns</I
1706> :</TD
1707><TD
1708WIDTH="80%"
1709ALIGN="LEFT"
1710VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001711>&nbsp;</TD
Daniel Veillardedfb29b2000-03-14 19:59:05 +00001712></TR
1713></TABLE
1714><P
1715></P
1716></DIV
1717></DIV
Daniel Veillard06047432000-04-24 11:33:38 +00001718><HR><DIV
1719CLASS="REFSECT2"
1720><A
Daniel Veillard7e99c632000-10-06 12:59:53 +00001721NAME="AEN15810"
Daniel Veillard06047432000-04-24 11:33:38 +00001722></A
1723><H3
1724><A
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001725NAME="XMLCHARENCINFUNC"
Daniel Veillard06047432000-04-24 11:33:38 +00001726></A
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001727>xmlCharEncInFunc ()</H3
Daniel Veillard06047432000-04-24 11:33:38 +00001728><TABLE
1729BORDER="0"
1730BGCOLOR="#D6E8FF"
1731WIDTH="100%"
1732CELLPADDING="6"
1733><TR
1734><TD
1735><PRE
1736CLASS="PROGRAMLISTING"
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001737>int xmlCharEncInFunc (<A
1738HREF="gnome-xml-encoding.html#XMLCHARENCODINGHANDLER"
1739>xmlCharEncodingHandler</A
1740> *handler,
1741 <A
1742HREF="gnome-xml-tree.html#XMLBUFFERPTR"
1743>xmlBufferPtr</A
1744> out,
1745 <A
1746HREF="gnome-xml-tree.html#XMLBUFFERPTR"
1747>xmlBufferPtr</A
1748> in);</PRE
Daniel Veillard06047432000-04-24 11:33:38 +00001749></TD
1750></TR
1751></TABLE
1752><P
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001753>Generic front-end for the encoding handler input function</P
Daniel Veillard06047432000-04-24 11:33:38 +00001754><P
1755></P
1756><DIV
1757CLASS="INFORMALTABLE"
1758><P
1759></P
1760><TABLE
1761BORDER="0"
1762WIDTH="100%"
1763BGCOLOR="#FFD0D0"
1764CELLSPACING="0"
1765CELLPADDING="4"
1766CLASS="CALSTABLE"
1767><TR
1768><TD
1769WIDTH="20%"
1770ALIGN="RIGHT"
1771VALIGN="TOP"
1772><TT
1773CLASS="PARAMETER"
1774><I
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001775>handler</I
Daniel Veillard06047432000-04-24 11:33:38 +00001776></TT
1777>&nbsp;:</TD
1778><TD
1779WIDTH="80%"
1780ALIGN="LEFT"
1781VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001782>&nbsp;</TD
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001783></TR
1784><TR
1785><TD
1786WIDTH="20%"
1787ALIGN="RIGHT"
1788VALIGN="TOP"
1789><TT
1790CLASS="PARAMETER"
1791><I
1792>out</I
1793></TT
1794>&nbsp;:</TD
1795><TD
1796WIDTH="80%"
1797ALIGN="LEFT"
1798VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001799>&nbsp;</TD
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001800></TR
1801><TR
1802><TD
1803WIDTH="20%"
1804ALIGN="RIGHT"
1805VALIGN="TOP"
1806><TT
1807CLASS="PARAMETER"
1808><I
1809>in</I
1810></TT
1811>&nbsp;:</TD
1812><TD
1813WIDTH="80%"
1814ALIGN="LEFT"
1815VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001816>&nbsp;</TD
Daniel Veillard06047432000-04-24 11:33:38 +00001817></TR
1818><TR
1819><TD
1820WIDTH="20%"
1821ALIGN="RIGHT"
1822VALIGN="TOP"
1823><I
1824CLASS="EMPHASIS"
1825>Returns</I
1826> :</TD
1827><TD
1828WIDTH="80%"
1829ALIGN="LEFT"
1830VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001831>&nbsp;</TD
Daniel Veillard06047432000-04-24 11:33:38 +00001832></TR
1833></TABLE
1834><P
1835></P
1836></DIV
1837></DIV
1838><HR><DIV
1839CLASS="REFSECT2"
1840><A
Daniel Veillard7e99c632000-10-06 12:59:53 +00001841NAME="AEN15840"
Daniel Veillard06047432000-04-24 11:33:38 +00001842></A
1843><H3
1844><A
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001845NAME="XMLCHARENCFIRSTLINE"
Daniel Veillard06047432000-04-24 11:33:38 +00001846></A
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001847>xmlCharEncFirstLine ()</H3
Daniel Veillard06047432000-04-24 11:33:38 +00001848><TABLE
1849BORDER="0"
1850BGCOLOR="#D6E8FF"
1851WIDTH="100%"
1852CELLPADDING="6"
1853><TR
1854><TD
1855><PRE
1856CLASS="PROGRAMLISTING"
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001857>int xmlCharEncFirstLine (<A
1858HREF="gnome-xml-encoding.html#XMLCHARENCODINGHANDLER"
1859>xmlCharEncodingHandler</A
1860> *handler,
1861 <A
1862HREF="gnome-xml-tree.html#XMLBUFFERPTR"
1863>xmlBufferPtr</A
1864> out,
1865 <A
1866HREF="gnome-xml-tree.html#XMLBUFFERPTR"
1867>xmlBufferPtr</A
1868> in);</PRE
Daniel Veillard06047432000-04-24 11:33:38 +00001869></TD
1870></TR
1871></TABLE
1872><P
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001873>Front-end for the encoding handler input function, but handle only
1874the very first line, i.e. limit itself to 45 chars.</P
Daniel Veillard06047432000-04-24 11:33:38 +00001875><P
1876></P
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001877><DIV
1878CLASS="INFORMALTABLE"
1879><P
1880></P
1881><TABLE
1882BORDER="0"
1883WIDTH="100%"
1884BGCOLOR="#FFD0D0"
1885CELLSPACING="0"
1886CELLPADDING="4"
1887CLASS="CALSTABLE"
1888><TR
1889><TD
1890WIDTH="20%"
1891ALIGN="RIGHT"
1892VALIGN="TOP"
1893><TT
1894CLASS="PARAMETER"
1895><I
1896>handler</I
1897></TT
1898>&nbsp;:</TD
1899><TD
1900WIDTH="80%"
1901ALIGN="LEFT"
1902VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001903>&nbsp;</TD
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001904></TR
1905><TR
1906><TD
1907WIDTH="20%"
1908ALIGN="RIGHT"
1909VALIGN="TOP"
1910><TT
1911CLASS="PARAMETER"
1912><I
1913>out</I
1914></TT
1915>&nbsp;:</TD
1916><TD
1917WIDTH="80%"
1918ALIGN="LEFT"
1919VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001920>&nbsp;</TD
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001921></TR
1922><TR
1923><TD
1924WIDTH="20%"
1925ALIGN="RIGHT"
1926VALIGN="TOP"
1927><TT
1928CLASS="PARAMETER"
1929><I
1930>in</I
1931></TT
1932>&nbsp;:</TD
1933><TD
1934WIDTH="80%"
1935ALIGN="LEFT"
1936VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001937>&nbsp;</TD
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001938></TR
1939><TR
1940><TD
1941WIDTH="20%"
1942ALIGN="RIGHT"
1943VALIGN="TOP"
1944><I
1945CLASS="EMPHASIS"
1946>Returns</I
1947> :</TD
1948><TD
1949WIDTH="80%"
1950ALIGN="LEFT"
1951VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00001952>&nbsp;</TD
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001953></TR
1954></TABLE
1955><P
1956></P
1957></DIV
1958></DIV
1959><HR><DIV
1960CLASS="REFSECT2"
1961><A
Daniel Veillard7e99c632000-10-06 12:59:53 +00001962NAME="AEN15870"
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00001963></A
1964><H3
1965><A
1966NAME="XMLCHARENCCLOSEFUNC"
1967></A
1968>xmlCharEncCloseFunc ()</H3
1969><TABLE
1970BORDER="0"
1971BGCOLOR="#D6E8FF"
1972WIDTH="100%"
1973CELLPADDING="6"
1974><TR
1975><TD
1976><PRE
1977CLASS="PROGRAMLISTING"
1978>int xmlCharEncCloseFunc (<A
1979HREF="gnome-xml-encoding.html#XMLCHARENCODINGHANDLER"
1980>xmlCharEncodingHandler</A
1981> *handler);</PRE
1982></TD
1983></TR
1984></TABLE
1985><P
1986>Generic front-end for hencoding handler close function</P
1987><P
1988></P
1989><DIV
1990CLASS="INFORMALTABLE"
1991><P
1992></P
1993><TABLE
1994BORDER="0"
1995WIDTH="100%"
1996BGCOLOR="#FFD0D0"
1997CELLSPACING="0"
1998CELLPADDING="4"
1999CLASS="CALSTABLE"
2000><TR
2001><TD
2002WIDTH="20%"
2003ALIGN="RIGHT"
2004VALIGN="TOP"
2005><TT
2006CLASS="PARAMETER"
2007><I
2008>handler</I
2009></TT
2010>&nbsp;:</TD
2011><TD
2012WIDTH="80%"
2013ALIGN="LEFT"
2014VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00002015>&nbsp;</TD
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00002016></TR
2017><TR
2018><TD
2019WIDTH="20%"
2020ALIGN="RIGHT"
2021VALIGN="TOP"
2022><I
2023CLASS="EMPHASIS"
2024>Returns</I
2025> :</TD
2026><TD
2027WIDTH="80%"
2028ALIGN="LEFT"
2029VALIGN="TOP"
Daniel Veillard7e99c632000-10-06 12:59:53 +00002030>&nbsp;</TD
Daniel Veillard3f6f7f62000-06-30 17:58:25 +00002031></TR
2032></TABLE
2033><P
2034></P
2035></DIV
Daniel Veillard06047432000-04-24 11:33:38 +00002036></DIV
Daniel Veillardaeea04f2000-01-25 19:27:27 +00002037></DIV
2038><DIV
2039CLASS="NAVFOOTER"
2040><BR
2041CLEAR="all"><BR><TABLE
2042WIDTH="100%"
2043BORDER="0"
2044BGCOLOR="#000000"
2045CELLPADDING="1"
2046CELLSPACING="0"
2047><TR
2048><TD
2049WIDTH="25%"
2050BGCOLOR="#C00000"
2051ALIGN="left"
2052><A
2053HREF="gnome-xml-parserinternals.html"
2054><FONT
2055COLOR="#FFFFFF"
2056SIZE="3"
2057><B
2058>&#60;&#60;&#60; Previous Page</B
2059></FONT
2060></A
2061></TD
2062><TD
2063WIDTH="25%"
2064BGCOLOR="#0000C0"
2065ALIGN="center"
2066><FONT
2067COLOR="#FFFFFF"
2068SIZE="3"
2069><B
2070><A
2071HREF="book1.html"
2072><FONT
2073COLOR="#FFFFFF"
2074SIZE="3"
2075><B
2076>Home</B
2077></FONT
2078></A
2079></B
2080></FONT
2081></TD
2082><TD
2083WIDTH="25%"
2084BGCOLOR="#00C000"
2085ALIGN="center"
2086><FONT
2087COLOR="#FFFFFF"
2088SIZE="3"
2089><B
2090><A
2091HREF="libxml-lib.html"
2092><FONT
2093COLOR="#FFFFFF"
2094SIZE="3"
2095><B
2096>Up</B
2097></FONT
2098></A
2099></B
2100></FONT
2101></TD
2102><TD
2103WIDTH="25%"
2104BGCOLOR="#C00000"
2105ALIGN="right"
2106><A
2107HREF="gnome-xml-debugxml.html"
2108><FONT
2109COLOR="#FFFFFF"
2110SIZE="3"
2111><B
2112>Next Page &#62;&#62;&#62;</B
2113></FONT
2114></A
2115></TD
2116></TR
2117><TR
2118><TD
2119COLSPAN="2"
2120ALIGN="left"
2121><FONT
2122COLOR="#FFFFFF"
2123SIZE="3"
2124><B
2125>parserInternals</B
2126></FONT
2127></TD
2128><TD
2129COLSPAN="2"
2130ALIGN="right"
2131><FONT
2132COLOR="#FFFFFF"
2133SIZE="3"
2134><B
2135>debugXML</B
2136></FONT
2137></TD
2138></TR
2139></TABLE
2140></DIV
2141></BODY
2142></HTML
2143>