libxml-valid.html revision af43f63aaabf0dc4b4a070773875d0927da3d8a2
1<HTML
2><HEAD
3><TITLE
4>valid</TITLE
5><META
6NAME="GENERATOR"
7CONTENT="Modular DocBook HTML Stylesheet Version 1.64
8"><LINK
9REL="HOME"
10TITLE="Gnome XML Library Reference Manual"
11HREF="book1.html"><LINK
12REL="UP"
13TITLE="Libxml Library Reference"
14HREF="libxml-lib.html"><LINK
15REL="PREVIOUS"
16TITLE="entities"
17HREF="libxml-entities.html"><LINK
18REL="NEXT"
19TITLE="uri"
20HREF="libxml-uri.html"></HEAD
21><BODY
22CLASS="REFENTRY"
23BGCOLOR="#FFFFFF"
24TEXT="#000000"
25LINK="#0000FF"
26VLINK="#840084"
27ALINK="#0000FF"
28><DIV
29CLASS="NAVHEADER"
30><TABLE
31WIDTH="100%"
32BORDER="0"
33BGCOLOR="#000000"
34CELLPADDING="1"
35CELLSPACING="0"
36><TR
37><TH
38COLSPAN="4"
39ALIGN="center"
40><FONT
41COLOR="#FFFFFF"
42SIZE="5"
43>Gnome XML Library Reference Manual</FONT
44></TH
45></TR
46><TR
47><TD
48WIDTH="25%"
49BGCOLOR="#C00000"
50ALIGN="left"
51><A
52HREF="libxml-entities.html"
53><FONT
54COLOR="#FFFFFF"
55SIZE="3"
56><B
57>&#60;&#60;&#60; Previous Page</B
58></FONT
59></A
60></TD
61><TD
62WIDTH="25%"
63BGCOLOR="#0000C0"
64ALIGN="center"
65><FONT
66COLOR="#FFFFFF"
67SIZE="3"
68><B
69><A
70HREF="book1.html"
71><FONT
72COLOR="#FFFFFF"
73SIZE="3"
74><B
75>Home</B
76></FONT
77></A
78></B
79></FONT
80></TD
81><TD
82WIDTH="25%"
83BGCOLOR="#00C000"
84ALIGN="center"
85><FONT
86COLOR="#FFFFFF"
87SIZE="3"
88><B
89><A
90HREF="libxml-lib.html"
91><FONT
92COLOR="#FFFFFF"
93SIZE="3"
94><B
95>Up</B
96></FONT
97></A
98></B
99></FONT
100></TD
101><TD
102WIDTH="25%"
103BGCOLOR="#C00000"
104ALIGN="right"
105><A
106HREF="libxml-uri.html"
107><FONT
108COLOR="#FFFFFF"
109SIZE="3"
110><B
111>Next Page &#62;&#62;&#62;</B
112></FONT
113></A
114></TD
115></TR
116></TABLE
117></DIV
118><H1
119><A
120NAME="LIBXML-VALID"
121>valid</A
122></H1
123><DIV
124CLASS="REFNAMEDIV"
125><A
126NAME="AEN8371"
127></A
128><H2
129>Name</H2
130>valid&nbsp;--&nbsp;</DIV
131><DIV
132CLASS="REFSYNOPSISDIV"
133><A
134NAME="AEN8374"
135></A
136><H2
137>Synopsis</H2
138><TABLE
139BORDER="0"
140BGCOLOR="#D6E8FF"
141WIDTH="100%"
142CELLPADDING="6"
143><TR
144><TD
145><PRE
146CLASS="SYNOPSIS"
147>&#13;
148
149struct      <A
150HREF="libxml-valid.html#XMLVALIDSTATE"
151>xmlValidState</A
152>;
153typedef     <A
154HREF="libxml-valid.html#XMLVALIDSTATEPTR"
155>xmlValidStatePtr</A
156>;
157void        (<A
158HREF="libxml-valid.html#XMLVALIDITYERRORFUNC"
159>*xmlValidityErrorFunc</A
160>)         (void *ctx,
161                                             const char *msg,
162                                             ...);
163void        (<A
164HREF="libxml-valid.html#XMLVALIDITYWARNINGFUNC"
165>*xmlValidityWarningFunc</A
166>)       (void *ctx,
167                                             const char *msg,
168                                             ...);
169struct      <A
170HREF="libxml-valid.html#XMLVALIDCTXT"
171>xmlValidCtxt</A
172>;
173typedef     <A
174HREF="libxml-valid.html#XMLVALIDCTXTPTR"
175>xmlValidCtxtPtr</A
176>;
177typedef     <A
178HREF="libxml-valid.html#XMLNOTATIONTABLEPTR"
179>xmlNotationTablePtr</A
180>;
181typedef     <A
182HREF="libxml-valid.html#XMLELEMENTTABLEPTR"
183>xmlElementTablePtr</A
184>;
185typedef     <A
186HREF="libxml-valid.html#XMLATTRIBUTETABLEPTR"
187>xmlAttributeTablePtr</A
188>;
189typedef     <A
190HREF="libxml-valid.html#XMLIDTABLEPTR"
191>xmlIDTablePtr</A
192>;
193typedef     <A
194HREF="libxml-valid.html#XMLREFTABLEPTR"
195>xmlRefTablePtr</A
196>;
197<A
198HREF="libxml-tree.html#XMLCHAR"
199>xmlChar</A
200>*    <A
201HREF="libxml-valid.html#XMLSPLITQNAME2"
202>xmlSplitQName2</A
203>                  (const <A
204HREF="libxml-tree.html#XMLCHAR"
205>xmlChar</A
206> *name,
207                                             <A
208HREF="libxml-tree.html#XMLCHAR"
209>xmlChar</A
210> **prefix);
211<A
212HREF="libxml-tree.html#XMLNOTATIONPTR"
213>xmlNotationPtr</A
214> <A
215HREF="libxml-valid.html#XMLADDNOTATIONDECL"
216>xmlAddNotationDecl</A
217>           (<A
218HREF="libxml-valid.html#XMLVALIDCTXTPTR"
219>xmlValidCtxtPtr</A
220> ctxt,
221                                             <A
222HREF="libxml-tree.html#XMLDTDPTR"
223>xmlDtdPtr</A
224> dtd,
225                                             const <A
226HREF="libxml-tree.html#XMLCHAR"
227>xmlChar</A
228> *name,
229                                             const <A
230HREF="libxml-tree.html#XMLCHAR"
231>xmlChar</A
232> *PublicID,
233                                             const <A
234HREF="libxml-tree.html#XMLCHAR"
235>xmlChar</A
236> *SystemID);
237<A
238HREF="libxml-valid.html#XMLNOTATIONTABLEPTR"
239>xmlNotationTablePtr</A
240> <A
241HREF="libxml-valid.html#XMLCOPYNOTATIONTABLE"
242>xmlCopyNotationTable</A
243>    (<A
244HREF="libxml-valid.html#XMLNOTATIONTABLEPTR"
245>xmlNotationTablePtr</A
246> table);
247void        <A
248HREF="libxml-valid.html#XMLFREENOTATIONTABLE"
249>xmlFreeNotationTable</A
250>            (<A
251HREF="libxml-valid.html#XMLNOTATIONTABLEPTR"
252>xmlNotationTablePtr</A
253> table);
254void        <A
255HREF="libxml-valid.html#XMLDUMPNOTATIONDECL"
256>xmlDumpNotationDecl</A
257>             (<A
258HREF="libxml-tree.html#XMLBUFFERPTR"
259>xmlBufferPtr</A
260> buf,
261                                             <A
262HREF="libxml-tree.html#XMLNOTATIONPTR"
263>xmlNotationPtr</A
264> nota);
265void        <A
266HREF="libxml-valid.html#XMLDUMPNOTATIONTABLE"
267>xmlDumpNotationTable</A
268>            (<A
269HREF="libxml-tree.html#XMLBUFFERPTR"
270>xmlBufferPtr</A
271> buf,
272                                             <A
273HREF="libxml-valid.html#XMLNOTATIONTABLEPTR"
274>xmlNotationTablePtr</A
275> table);
276<A
277HREF="libxml-tree.html#XMLELEMENTCONTENTPTR"
278>xmlElementContentPtr</A
279> <A
280HREF="libxml-valid.html#XMLNEWELEMENTCONTENT"
281>xmlNewElementContent</A
282>   (<A
283HREF="libxml-tree.html#XMLCHAR"
284>xmlChar</A
285> *name,
286                                             <A
287HREF="libxml-tree.html#XMLELEMENTCONTENTTYPE"
288>xmlElementContentType</A
289> type);
290<A
291HREF="libxml-tree.html#XMLELEMENTCONTENTPTR"
292>xmlElementContentPtr</A
293> <A
294HREF="libxml-valid.html#XMLCOPYELEMENTCONTENT"
295>xmlCopyElementContent</A
296>  (<A
297HREF="libxml-tree.html#XMLELEMENTCONTENTPTR"
298>xmlElementContentPtr</A
299> content);
300void        <A
301HREF="libxml-valid.html#XMLFREEELEMENTCONTENT"
302>xmlFreeElementContent</A
303>           (<A
304HREF="libxml-tree.html#XMLELEMENTCONTENTPTR"
305>xmlElementContentPtr</A
306> cur);
307void        <A
308HREF="libxml-valid.html#XMLSNPRINTFELEMENTCONTENT"
309>xmlSnprintfElementContent</A
310>       (char *buf,
311                                             int size,
312                                             <A
313HREF="libxml-tree.html#XMLELEMENTCONTENTPTR"
314>xmlElementContentPtr</A
315> content,
316                                             int glob);
317void        <A
318HREF="libxml-valid.html#XMLSPRINTFELEMENTCONTENT"
319>xmlSprintfElementContent</A
320>        (char *buf,
321                                             <A
322HREF="libxml-tree.html#XMLELEMENTCONTENTPTR"
323>xmlElementContentPtr</A
324> content,
325                                             int glob);
326<A
327HREF="libxml-tree.html#XMLELEMENTPTR"
328>xmlElementPtr</A
329> <A
330HREF="libxml-valid.html#XMLADDELEMENTDECL"
331>xmlAddElementDecl</A
332>             (<A
333HREF="libxml-valid.html#XMLVALIDCTXTPTR"
334>xmlValidCtxtPtr</A
335> ctxt,
336                                             <A
337HREF="libxml-tree.html#XMLDTDPTR"
338>xmlDtdPtr</A
339> dtd,
340                                             const <A
341HREF="libxml-tree.html#XMLCHAR"
342>xmlChar</A
343> *name,
344                                             <A
345HREF="libxml-tree.html#XMLELEMENTTYPEVAL"
346>xmlElementTypeVal</A
347> type,
348                                             <A
349HREF="libxml-tree.html#XMLELEMENTCONTENTPTR"
350>xmlElementContentPtr</A
351> content);
352<A
353HREF="libxml-valid.html#XMLELEMENTTABLEPTR"
354>xmlElementTablePtr</A
355> <A
356HREF="libxml-valid.html#XMLCOPYELEMENTTABLE"
357>xmlCopyElementTable</A
358>      (<A
359HREF="libxml-valid.html#XMLELEMENTTABLEPTR"
360>xmlElementTablePtr</A
361> table);
362void        <A
363HREF="libxml-valid.html#XMLFREEELEMENTTABLE"
364>xmlFreeElementTable</A
365>             (<A
366HREF="libxml-valid.html#XMLELEMENTTABLEPTR"
367>xmlElementTablePtr</A
368> table);
369void        <A
370HREF="libxml-valid.html#XMLDUMPELEMENTTABLE"
371>xmlDumpElementTable</A
372>             (<A
373HREF="libxml-tree.html#XMLBUFFERPTR"
374>xmlBufferPtr</A
375> buf,
376                                             <A
377HREF="libxml-valid.html#XMLELEMENTTABLEPTR"
378>xmlElementTablePtr</A
379> table);
380void        <A
381HREF="libxml-valid.html#XMLDUMPELEMENTDECL"
382>xmlDumpElementDecl</A
383>              (<A
384HREF="libxml-tree.html#XMLBUFFERPTR"
385>xmlBufferPtr</A
386> buf,
387                                             <A
388HREF="libxml-tree.html#XMLELEMENTPTR"
389>xmlElementPtr</A
390> elem);
391<A
392HREF="libxml-tree.html#XMLENUMERATIONPTR"
393>xmlEnumerationPtr</A
394> <A
395HREF="libxml-valid.html#XMLCREATEENUMERATION"
396>xmlCreateEnumeration</A
397>      (<A
398HREF="libxml-tree.html#XMLCHAR"
399>xmlChar</A
400> *name);
401void        <A
402HREF="libxml-valid.html#XMLFREEENUMERATION"
403>xmlFreeEnumeration</A
404>              (<A
405HREF="libxml-tree.html#XMLENUMERATIONPTR"
406>xmlEnumerationPtr</A
407> cur);
408<A
409HREF="libxml-tree.html#XMLENUMERATIONPTR"
410>xmlEnumerationPtr</A
411> <A
412HREF="libxml-valid.html#XMLCOPYENUMERATION"
413>xmlCopyEnumeration</A
414>        (<A
415HREF="libxml-tree.html#XMLENUMERATIONPTR"
416>xmlEnumerationPtr</A
417> cur);
418<A
419HREF="libxml-tree.html#XMLATTRIBUTEPTR"
420>xmlAttributePtr</A
421> <A
422HREF="libxml-valid.html#XMLADDATTRIBUTEDECL"
423>xmlAddAttributeDecl</A
424>         (<A
425HREF="libxml-valid.html#XMLVALIDCTXTPTR"
426>xmlValidCtxtPtr</A
427> ctxt,
428                                             <A
429HREF="libxml-tree.html#XMLDTDPTR"
430>xmlDtdPtr</A
431> dtd,
432                                             const <A
433HREF="libxml-tree.html#XMLCHAR"
434>xmlChar</A
435> *elem,
436                                             const <A
437HREF="libxml-tree.html#XMLCHAR"
438>xmlChar</A
439> *name,
440                                             const <A
441HREF="libxml-tree.html#XMLCHAR"
442>xmlChar</A
443> *ns,
444                                             <A
445HREF="libxml-tree.html#XMLATTRIBUTETYPE"
446>xmlAttributeType</A
447> type,
448                                             <A
449HREF="libxml-tree.html#XMLATTRIBUTEDEFAULT"
450>xmlAttributeDefault</A
451> def,
452                                             const <A
453HREF="libxml-tree.html#XMLCHAR"
454>xmlChar</A
455> *defaultValue,
456                                             <A
457HREF="libxml-tree.html#XMLENUMERATIONPTR"
458>xmlEnumerationPtr</A
459> tree);
460<A
461HREF="libxml-valid.html#XMLATTRIBUTETABLEPTR"
462>xmlAttributeTablePtr</A
463> <A
464HREF="libxml-valid.html#XMLCOPYATTRIBUTETABLE"
465>xmlCopyAttributeTable</A
466>  (<A
467HREF="libxml-valid.html#XMLATTRIBUTETABLEPTR"
468>xmlAttributeTablePtr</A
469> table);
470void        <A
471HREF="libxml-valid.html#XMLFREEATTRIBUTETABLE"
472>xmlFreeAttributeTable</A
473>           (<A
474HREF="libxml-valid.html#XMLATTRIBUTETABLEPTR"
475>xmlAttributeTablePtr</A
476> table);
477void        <A
478HREF="libxml-valid.html#XMLDUMPATTRIBUTETABLE"
479>xmlDumpAttributeTable</A
480>           (<A
481HREF="libxml-tree.html#XMLBUFFERPTR"
482>xmlBufferPtr</A
483> buf,
484                                             <A
485HREF="libxml-valid.html#XMLATTRIBUTETABLEPTR"
486>xmlAttributeTablePtr</A
487> table);
488void        <A
489HREF="libxml-valid.html#XMLDUMPATTRIBUTEDECL"
490>xmlDumpAttributeDecl</A
491>            (<A
492HREF="libxml-tree.html#XMLBUFFERPTR"
493>xmlBufferPtr</A
494> buf,
495                                             <A
496HREF="libxml-tree.html#XMLATTRIBUTEPTR"
497>xmlAttributePtr</A
498> attr);
499<A
500HREF="libxml-tree.html#XMLIDPTR"
501>xmlIDPtr</A
502>    <A
503HREF="libxml-valid.html#XMLADDID"
504>xmlAddID</A
505>                        (<A
506HREF="libxml-valid.html#XMLVALIDCTXTPTR"
507>xmlValidCtxtPtr</A
508> ctxt,
509                                             <A
510HREF="libxml-tree.html#XMLDOCPTR"
511>xmlDocPtr</A
512> doc,
513                                             const <A
514HREF="libxml-tree.html#XMLCHAR"
515>xmlChar</A
516> *value,
517                                             <A
518HREF="libxml-tree.html#XMLATTRPTR"
519>xmlAttrPtr</A
520> attr);
521void        <A
522HREF="libxml-valid.html#XMLFREEIDTABLE"
523>xmlFreeIDTable</A
524>                  (<A
525HREF="libxml-valid.html#XMLIDTABLEPTR"
526>xmlIDTablePtr</A
527> table);
528<A
529HREF="libxml-tree.html#XMLATTRPTR"
530>xmlAttrPtr</A
531>  <A
532HREF="libxml-valid.html#XMLGETID"
533>xmlGetID</A
534>                        (<A
535HREF="libxml-tree.html#XMLDOCPTR"
536>xmlDocPtr</A
537> doc,
538                                             const <A
539HREF="libxml-tree.html#XMLCHAR"
540>xmlChar</A
541> *ID);
542int         <A
543HREF="libxml-valid.html#XMLISID"
544>xmlIsID</A
545>                         (<A
546HREF="libxml-tree.html#XMLDOCPTR"
547>xmlDocPtr</A
548> doc,
549                                             <A
550HREF="libxml-tree.html#XMLNODEPTR"
551>xmlNodePtr</A
552> elem,
553                                             <A
554HREF="libxml-tree.html#XMLATTRPTR"
555>xmlAttrPtr</A
556> attr);
557int         <A
558HREF="libxml-valid.html#XMLREMOVEID"
559>xmlRemoveID</A
560>                     (<A
561HREF="libxml-tree.html#XMLDOCPTR"
562>xmlDocPtr</A
563> doc,
564                                             <A
565HREF="libxml-tree.html#XMLATTRPTR"
566>xmlAttrPtr</A
567> attr);
568<A
569HREF="libxml-tree.html#XMLREFPTR"
570>xmlRefPtr</A
571>   <A
572HREF="libxml-valid.html#XMLADDREF"
573>xmlAddRef</A
574>                       (<A
575HREF="libxml-valid.html#XMLVALIDCTXTPTR"
576>xmlValidCtxtPtr</A
577> ctxt,
578                                             <A
579HREF="libxml-tree.html#XMLDOCPTR"
580>xmlDocPtr</A
581> doc,
582                                             const <A
583HREF="libxml-tree.html#XMLCHAR"
584>xmlChar</A
585> *value,
586                                             <A
587HREF="libxml-tree.html#XMLATTRPTR"
588>xmlAttrPtr</A
589> attr);
590void        <A
591HREF="libxml-valid.html#XMLFREEREFTABLE"
592>xmlFreeRefTable</A
593>                 (<A
594HREF="libxml-valid.html#XMLREFTABLEPTR"
595>xmlRefTablePtr</A
596> table);
597int         <A
598HREF="libxml-valid.html#XMLISREF"
599>xmlIsRef</A
600>                        (<A
601HREF="libxml-tree.html#XMLDOCPTR"
602>xmlDocPtr</A
603> doc,
604                                             <A
605HREF="libxml-tree.html#XMLNODEPTR"
606>xmlNodePtr</A
607> elem,
608                                             <A
609HREF="libxml-tree.html#XMLATTRPTR"
610>xmlAttrPtr</A
611> attr);
612int         <A
613HREF="libxml-valid.html#XMLREMOVEREF"
614>xmlRemoveRef</A
615>                    (<A
616HREF="libxml-tree.html#XMLDOCPTR"
617>xmlDocPtr</A
618> doc,
619                                             <A
620HREF="libxml-tree.html#XMLATTRPTR"
621>xmlAttrPtr</A
622> attr);
623<GTKDOCLINK
624HREF="XMLLISTPTR"
625>xmlListPtr</GTKDOCLINK
626>  <A
627HREF="libxml-valid.html#XMLGETREFS"
628>xmlGetRefs</A
629>                      (<A
630HREF="libxml-tree.html#XMLDOCPTR"
631>xmlDocPtr</A
632> doc,
633                                             const <A
634HREF="libxml-tree.html#XMLCHAR"
635>xmlChar</A
636> *ID);
637int         <A
638HREF="libxml-valid.html#XMLVALIDATEROOT"
639>xmlValidateRoot</A
640>                 (<A
641HREF="libxml-valid.html#XMLVALIDCTXTPTR"
642>xmlValidCtxtPtr</A
643> ctxt,
644                                             <A
645HREF="libxml-tree.html#XMLDOCPTR"
646>xmlDocPtr</A
647> doc);
648int         <A
649HREF="libxml-valid.html#XMLVALIDATEELEMENTDECL"
650>xmlValidateElementDecl</A
651>          (<A
652HREF="libxml-valid.html#XMLVALIDCTXTPTR"
653>xmlValidCtxtPtr</A
654> ctxt,
655                                             <A
656HREF="libxml-tree.html#XMLDOCPTR"
657>xmlDocPtr</A
658> doc,
659                                             <A
660HREF="libxml-tree.html#XMLELEMENTPTR"
661>xmlElementPtr</A
662> elem);
663<A
664HREF="libxml-tree.html#XMLCHAR"
665>xmlChar</A
666>*    <A
667HREF="libxml-valid.html#XMLVALIDNORMALIZEATTRIBUTEVALUE"
668>xmlValidNormalizeAttributeValue</A
669> (<A
670HREF="libxml-tree.html#XMLDOCPTR"
671>xmlDocPtr</A
672> doc,
673                                             <A
674HREF="libxml-tree.html#XMLNODEPTR"
675>xmlNodePtr</A
676> elem,
677                                             const <A
678HREF="libxml-tree.html#XMLCHAR"
679>xmlChar</A
680> *name,
681                                             const <A
682HREF="libxml-tree.html#XMLCHAR"
683>xmlChar</A
684> *value);
685<A
686HREF="libxml-tree.html#XMLCHAR"
687>xmlChar</A
688>*    <A
689HREF="libxml-valid.html#XMLVALIDCTXTNORMALIZEATTRIBUTEVALUE"
690>xmlValidCtxtNormalizeAttributeValue</A
691>
692                                            (<A
693HREF="libxml-valid.html#XMLVALIDCTXTPTR"
694>xmlValidCtxtPtr</A
695> ctxt,
696                                             <A
697HREF="libxml-tree.html#XMLDOCPTR"
698>xmlDocPtr</A
699> doc,
700                                             <A
701HREF="libxml-tree.html#XMLNODEPTR"
702>xmlNodePtr</A
703> elem,
704                                             const <A
705HREF="libxml-tree.html#XMLCHAR"
706>xmlChar</A
707> *name,
708                                             const <A
709HREF="libxml-tree.html#XMLCHAR"
710>xmlChar</A
711> *value);
712int         <A
713HREF="libxml-valid.html#XMLVALIDATEATTRIBUTEDECL"
714>xmlValidateAttributeDecl</A
715>        (<A
716HREF="libxml-valid.html#XMLVALIDCTXTPTR"
717>xmlValidCtxtPtr</A
718> ctxt,
719                                             <A
720HREF="libxml-tree.html#XMLDOCPTR"
721>xmlDocPtr</A
722> doc,
723                                             <A
724HREF="libxml-tree.html#XMLATTRIBUTEPTR"
725>xmlAttributePtr</A
726> attr);
727int         <A
728HREF="libxml-valid.html#XMLVALIDATEATTRIBUTEVALUE"
729>xmlValidateAttributeValue</A
730>       (<A
731HREF="libxml-tree.html#XMLATTRIBUTETYPE"
732>xmlAttributeType</A
733> type,
734                                             const <A
735HREF="libxml-tree.html#XMLCHAR"
736>xmlChar</A
737> *value);
738int         <A
739HREF="libxml-valid.html#XMLVALIDATENOTATIONDECL"
740>xmlValidateNotationDecl</A
741>         (<A
742HREF="libxml-valid.html#XMLVALIDCTXTPTR"
743>xmlValidCtxtPtr</A
744> ctxt,
745                                             <A
746HREF="libxml-tree.html#XMLDOCPTR"
747>xmlDocPtr</A
748> doc,
749                                             <A
750HREF="libxml-tree.html#XMLNOTATIONPTR"
751>xmlNotationPtr</A
752> nota);
753int         <A
754HREF="libxml-valid.html#XMLVALIDATEDTD"
755>xmlValidateDtd</A
756>                  (<A
757HREF="libxml-valid.html#XMLVALIDCTXTPTR"
758>xmlValidCtxtPtr</A
759> ctxt,
760                                             <A
761HREF="libxml-tree.html#XMLDOCPTR"
762>xmlDocPtr</A
763> doc,
764                                             <A
765HREF="libxml-tree.html#XMLDTDPTR"
766>xmlDtdPtr</A
767> dtd);
768int         <A
769HREF="libxml-valid.html#XMLVALIDATEDTDFINAL"
770>xmlValidateDtdFinal</A
771>             (<A
772HREF="libxml-valid.html#XMLVALIDCTXTPTR"
773>xmlValidCtxtPtr</A
774> ctxt,
775                                             <A
776HREF="libxml-tree.html#XMLDOCPTR"
777>xmlDocPtr</A
778> doc);
779int         <A
780HREF="libxml-valid.html#XMLVALIDATEDOCUMENT"
781>xmlValidateDocument</A
782>             (<A
783HREF="libxml-valid.html#XMLVALIDCTXTPTR"
784>xmlValidCtxtPtr</A
785> ctxt,
786                                             <A
787HREF="libxml-tree.html#XMLDOCPTR"
788>xmlDocPtr</A
789> doc);
790int         <A
791HREF="libxml-valid.html#XMLVALIDATEELEMENT"
792>xmlValidateElement</A
793>              (<A
794HREF="libxml-valid.html#XMLVALIDCTXTPTR"
795>xmlValidCtxtPtr</A
796> ctxt,
797                                             <A
798HREF="libxml-tree.html#XMLDOCPTR"
799>xmlDocPtr</A
800> doc,
801                                             <A
802HREF="libxml-tree.html#XMLNODEPTR"
803>xmlNodePtr</A
804> elem);
805int         <A
806HREF="libxml-valid.html#XMLVALIDATEONEELEMENT"
807>xmlValidateOneElement</A
808>           (<A
809HREF="libxml-valid.html#XMLVALIDCTXTPTR"
810>xmlValidCtxtPtr</A
811> ctxt,
812                                             <A
813HREF="libxml-tree.html#XMLDOCPTR"
814>xmlDocPtr</A
815> doc,
816                                             <A
817HREF="libxml-tree.html#XMLNODEPTR"
818>xmlNodePtr</A
819> elem);
820int         <A
821HREF="libxml-valid.html#XMLVALIDATEONEATTRIBUTE"
822>xmlValidateOneAttribute</A
823>         (<A
824HREF="libxml-valid.html#XMLVALIDCTXTPTR"
825>xmlValidCtxtPtr</A
826> ctxt,
827                                             <A
828HREF="libxml-tree.html#XMLDOCPTR"
829>xmlDocPtr</A
830> doc,
831                                             <A
832HREF="libxml-tree.html#XMLNODEPTR"
833>xmlNodePtr</A
834> elem,
835                                             <A
836HREF="libxml-tree.html#XMLATTRPTR"
837>xmlAttrPtr</A
838> attr,
839                                             const <A
840HREF="libxml-tree.html#XMLCHAR"
841>xmlChar</A
842> *value);
843int         <A
844HREF="libxml-valid.html#XMLVALIDATEDOCUMENTFINAL"
845>xmlValidateDocumentFinal</A
846>        (<A
847HREF="libxml-valid.html#XMLVALIDCTXTPTR"
848>xmlValidCtxtPtr</A
849> ctxt,
850                                             <A
851HREF="libxml-tree.html#XMLDOCPTR"
852>xmlDocPtr</A
853> doc);
854int         <A
855HREF="libxml-valid.html#XMLVALIDATENOTATIONUSE"
856>xmlValidateNotationUse</A
857>          (<A
858HREF="libxml-valid.html#XMLVALIDCTXTPTR"
859>xmlValidCtxtPtr</A
860> ctxt,
861                                             <A
862HREF="libxml-tree.html#XMLDOCPTR"
863>xmlDocPtr</A
864> doc,
865                                             const <A
866HREF="libxml-tree.html#XMLCHAR"
867>xmlChar</A
868> *notationName);
869int         <A
870HREF="libxml-valid.html#XMLISMIXEDELEMENT"
871>xmlIsMixedElement</A
872>               (<A
873HREF="libxml-tree.html#XMLDOCPTR"
874>xmlDocPtr</A
875> doc,
876                                             const <A
877HREF="libxml-tree.html#XMLCHAR"
878>xmlChar</A
879> *name);
880<A
881HREF="libxml-tree.html#XMLATTRIBUTEPTR"
882>xmlAttributePtr</A
883> <A
884HREF="libxml-valid.html#XMLGETDTDATTRDESC"
885>xmlGetDtdAttrDesc</A
886>           (<A
887HREF="libxml-tree.html#XMLDTDPTR"
888>xmlDtdPtr</A
889> dtd,
890                                             const <A
891HREF="libxml-tree.html#XMLCHAR"
892>xmlChar</A
893> *elem,
894                                             const <A
895HREF="libxml-tree.html#XMLCHAR"
896>xmlChar</A
897> *name);
898<A
899HREF="libxml-tree.html#XMLATTRIBUTEPTR"
900>xmlAttributePtr</A
901> <A
902HREF="libxml-valid.html#XMLGETDTDQATTRDESC"
903>xmlGetDtdQAttrDesc</A
904>          (<A
905HREF="libxml-tree.html#XMLDTDPTR"
906>xmlDtdPtr</A
907> dtd,
908                                             const <A
909HREF="libxml-tree.html#XMLCHAR"
910>xmlChar</A
911> *elem,
912                                             const <A
913HREF="libxml-tree.html#XMLCHAR"
914>xmlChar</A
915> *name,
916                                             const <A
917HREF="libxml-tree.html#XMLCHAR"
918>xmlChar</A
919> *prefix);
920<A
921HREF="libxml-tree.html#XMLNOTATIONPTR"
922>xmlNotationPtr</A
923> <A
924HREF="libxml-valid.html#XMLGETDTDNOTATIONDESC"
925>xmlGetDtdNotationDesc</A
926>        (<A
927HREF="libxml-tree.html#XMLDTDPTR"
928>xmlDtdPtr</A
929> dtd,
930                                             const <A
931HREF="libxml-tree.html#XMLCHAR"
932>xmlChar</A
933> *name);
934<A
935HREF="libxml-tree.html#XMLELEMENTPTR"
936>xmlElementPtr</A
937> <A
938HREF="libxml-valid.html#XMLGETDTDQELEMENTDESC"
939>xmlGetDtdQElementDesc</A
940>         (<A
941HREF="libxml-tree.html#XMLDTDPTR"
942>xmlDtdPtr</A
943> dtd,
944                                             const <A
945HREF="libxml-tree.html#XMLCHAR"
946>xmlChar</A
947> *name,
948                                             const <A
949HREF="libxml-tree.html#XMLCHAR"
950>xmlChar</A
951> *prefix);
952<A
953HREF="libxml-tree.html#XMLELEMENTPTR"
954>xmlElementPtr</A
955> <A
956HREF="libxml-valid.html#XMLGETDTDELEMENTDESC"
957>xmlGetDtdElementDesc</A
958>          (<A
959HREF="libxml-tree.html#XMLDTDPTR"
960>xmlDtdPtr</A
961> dtd,
962                                             const <A
963HREF="libxml-tree.html#XMLCHAR"
964>xmlChar</A
965> *name);
966int         <A
967HREF="libxml-valid.html#XMLVALIDGETVALIDELEMENTS"
968>xmlValidGetValidElements</A
969>        (<A
970HREF="libxml-tree.html#XMLNODE"
971>xmlNode</A
972> *prev,
973                                             <A
974HREF="libxml-tree.html#XMLNODE"
975>xmlNode</A
976> *next,
977                                             const <A
978HREF="libxml-tree.html#XMLCHAR"
979>xmlChar</A
980> **list,
981                                             int max);
982int         <A
983HREF="libxml-valid.html#XMLVALIDGETPOTENTIALCHILDREN"
984>xmlValidGetPotentialChildren</A
985>    (<A
986HREF="libxml-tree.html#XMLELEMENTCONTENT"
987>xmlElementContent</A
988> *ctree,
989                                             const <A
990HREF="libxml-tree.html#XMLCHAR"
991>xmlChar</A
992> **list,
993                                             int *len,
994                                             int max);</PRE
995></TD
996></TR
997></TABLE
998></DIV
999><DIV
1000CLASS="REFSECT1"
1001><A
1002NAME="AEN8605"
1003></A
1004><H2
1005>Description</H2
1006><P
1007></P
1008></DIV
1009><DIV
1010CLASS="REFSECT1"
1011><A
1012NAME="AEN8608"
1013></A
1014><H2
1015>Details</H2
1016><DIV
1017CLASS="REFSECT2"
1018><A
1019NAME="AEN8610"
1020></A
1021><H3
1022><A
1023NAME="XMLVALIDSTATE"
1024></A
1025>struct xmlValidState</H3
1026><TABLE
1027BORDER="0"
1028BGCOLOR="#D6E8FF"
1029WIDTH="100%"
1030CELLPADDING="6"
1031><TR
1032><TD
1033><PRE
1034CLASS="PROGRAMLISTING"
1035>struct xmlValidState;</PRE
1036></TD
1037></TR
1038></TABLE
1039><P
1040></P
1041></DIV
1042><HR><DIV
1043CLASS="REFSECT2"
1044><A
1045NAME="AEN8615"
1046></A
1047><H3
1048><A
1049NAME="XMLVALIDSTATEPTR"
1050></A
1051>xmlValidStatePtr</H3
1052><TABLE
1053BORDER="0"
1054BGCOLOR="#D6E8FF"
1055WIDTH="100%"
1056CELLPADDING="6"
1057><TR
1058><TD
1059><PRE
1060CLASS="PROGRAMLISTING"
1061>typedef xmlValidState *xmlValidStatePtr;</PRE
1062></TD
1063></TR
1064></TABLE
1065><P
1066></P
1067></DIV
1068><HR><DIV
1069CLASS="REFSECT2"
1070><A
1071NAME="AEN8620"
1072></A
1073><H3
1074><A
1075NAME="XMLVALIDITYERRORFUNC"
1076></A
1077>xmlValidityErrorFunc ()</H3
1078><TABLE
1079BORDER="0"
1080BGCOLOR="#D6E8FF"
1081WIDTH="100%"
1082CELLPADDING="6"
1083><TR
1084><TD
1085><PRE
1086CLASS="PROGRAMLISTING"
1087>void        (*xmlValidityErrorFunc)         (void *ctx,
1088                                             const char *msg,
1089                                             ...);</PRE
1090></TD
1091></TR
1092></TABLE
1093><P
1094>Callback called when a validity error is found, this is a message
1095oriented function similar to an *printf function.</P
1096><P
1097></P
1098><DIV
1099CLASS="INFORMALTABLE"
1100><A
1101NAME="AEN8626"
1102></A
1103><P
1104></P
1105><TABLE
1106BORDER="0"
1107WIDTH="100%"
1108BGCOLOR="#FFD0D0"
1109CELLSPACING="0"
1110CELLPADDING="4"
1111CLASS="CALSTABLE"
1112><TBODY
1113><TR
1114><TD
1115WIDTH="20%"
1116ALIGN="RIGHT"
1117VALIGN="TOP"
1118><TT
1119CLASS="PARAMETER"
1120><I
1121>ctx</I
1122></TT
1123>&nbsp;:</TD
1124><TD
1125WIDTH="80%"
1126ALIGN="LEFT"
1127VALIGN="TOP"
1128>  an xmlValidCtxtPtr validity error context</TD
1129></TR
1130><TR
1131><TD
1132WIDTH="20%"
1133ALIGN="RIGHT"
1134VALIGN="TOP"
1135><TT
1136CLASS="PARAMETER"
1137><I
1138>msg</I
1139></TT
1140>&nbsp;:</TD
1141><TD
1142WIDTH="80%"
1143ALIGN="LEFT"
1144VALIGN="TOP"
1145>  the string to format *printf like vararg</TD
1146></TR
1147><TR
1148><TD
1149WIDTH="20%"
1150ALIGN="RIGHT"
1151VALIGN="TOP"
1152><TT
1153CLASS="PARAMETER"
1154><I
1155>...</I
1156></TT
1157>&nbsp;:</TD
1158><TD
1159WIDTH="80%"
1160ALIGN="LEFT"
1161VALIGN="TOP"
1162>  remaining arguments to the format</TD
1163></TR
1164></TBODY
1165></TABLE
1166><P
1167></P
1168></DIV
1169></DIV
1170><HR><DIV
1171CLASS="REFSECT2"
1172><A
1173NAME="AEN8643"
1174></A
1175><H3
1176><A
1177NAME="XMLVALIDITYWARNINGFUNC"
1178></A
1179>xmlValidityWarningFunc ()</H3
1180><TABLE
1181BORDER="0"
1182BGCOLOR="#D6E8FF"
1183WIDTH="100%"
1184CELLPADDING="6"
1185><TR
1186><TD
1187><PRE
1188CLASS="PROGRAMLISTING"
1189>void        (*xmlValidityWarningFunc)       (void *ctx,
1190                                             const char *msg,
1191                                             ...);</PRE
1192></TD
1193></TR
1194></TABLE
1195><P
1196>Callback called when a validity warning is found, this is a message
1197oriented function similar to an *printf function.</P
1198><P
1199></P
1200><DIV
1201CLASS="INFORMALTABLE"
1202><A
1203NAME="AEN8649"
1204></A
1205><P
1206></P
1207><TABLE
1208BORDER="0"
1209WIDTH="100%"
1210BGCOLOR="#FFD0D0"
1211CELLSPACING="0"
1212CELLPADDING="4"
1213CLASS="CALSTABLE"
1214><TBODY
1215><TR
1216><TD
1217WIDTH="20%"
1218ALIGN="RIGHT"
1219VALIGN="TOP"
1220><TT
1221CLASS="PARAMETER"
1222><I
1223>ctx</I
1224></TT
1225>&nbsp;:</TD
1226><TD
1227WIDTH="80%"
1228ALIGN="LEFT"
1229VALIGN="TOP"
1230>  an xmlValidCtxtPtr validity error context</TD
1231></TR
1232><TR
1233><TD
1234WIDTH="20%"
1235ALIGN="RIGHT"
1236VALIGN="TOP"
1237><TT
1238CLASS="PARAMETER"
1239><I
1240>msg</I
1241></TT
1242>&nbsp;:</TD
1243><TD
1244WIDTH="80%"
1245ALIGN="LEFT"
1246VALIGN="TOP"
1247>  the string to format *printf like vararg</TD
1248></TR
1249><TR
1250><TD
1251WIDTH="20%"
1252ALIGN="RIGHT"
1253VALIGN="TOP"
1254><TT
1255CLASS="PARAMETER"
1256><I
1257>...</I
1258></TT
1259>&nbsp;:</TD
1260><TD
1261WIDTH="80%"
1262ALIGN="LEFT"
1263VALIGN="TOP"
1264>  remaining arguments to the format</TD
1265></TR
1266></TBODY
1267></TABLE
1268><P
1269></P
1270></DIV
1271></DIV
1272><HR><DIV
1273CLASS="REFSECT2"
1274><A
1275NAME="AEN8666"
1276></A
1277><H3
1278><A
1279NAME="XMLVALIDCTXT"
1280></A
1281>struct xmlValidCtxt</H3
1282><TABLE
1283BORDER="0"
1284BGCOLOR="#D6E8FF"
1285WIDTH="100%"
1286CELLPADDING="6"
1287><TR
1288><TD
1289><PRE
1290CLASS="PROGRAMLISTING"
1291>struct xmlValidCtxt {
1292    void *userData;			/* user specific data block */
1293    xmlValidityErrorFunc error;		/* the callback in case of errors */
1294    xmlValidityWarningFunc warning;	/* the callback in case of warning */
1295
1296    /* Node analysis stack used when validating within entities */
1297    xmlNodePtr         node;          /* Current parsed Node */
1298    int                nodeNr;        /* Depth of the parsing stack */
1299    int                nodeMax;       /* Max depth of the parsing stack */
1300    xmlNodePtr        *nodeTab;       /* array of nodes */
1301
1302    int              finishDtd;       /* finished validating the Dtd ? */
1303    xmlDocPtr              doc;       /* the document */
1304    int                  valid;       /* temporary validity check result */
1305
1306    /* state state used for non-determinist content validation */
1307    xmlValidState     *vstate;        /* current state */
1308    int                vstateNr;      /* Depth of the validation stack */
1309    int                vstateMax;     /* Max depth of the validation stack */
1310    xmlValidState     *vstateTab;     /* array of validation states */
1311};</PRE
1312></TD
1313></TR
1314></TABLE
1315><P
1316></P
1317><P
1318></P
1319></DIV
1320><HR><DIV
1321CLASS="REFSECT2"
1322><A
1323NAME="AEN8672"
1324></A
1325><H3
1326><A
1327NAME="XMLVALIDCTXTPTR"
1328></A
1329>xmlValidCtxtPtr</H3
1330><TABLE
1331BORDER="0"
1332BGCOLOR="#D6E8FF"
1333WIDTH="100%"
1334CELLPADDING="6"
1335><TR
1336><TD
1337><PRE
1338CLASS="PROGRAMLISTING"
1339>typedef xmlValidCtxt *xmlValidCtxtPtr;</PRE
1340></TD
1341></TR
1342></TABLE
1343><P
1344></P
1345></DIV
1346><HR><DIV
1347CLASS="REFSECT2"
1348><A
1349NAME="AEN8677"
1350></A
1351><H3
1352><A
1353NAME="XMLNOTATIONTABLEPTR"
1354></A
1355>xmlNotationTablePtr</H3
1356><TABLE
1357BORDER="0"
1358BGCOLOR="#D6E8FF"
1359WIDTH="100%"
1360CELLPADDING="6"
1361><TR
1362><TD
1363><PRE
1364CLASS="PROGRAMLISTING"
1365>typedef xmlNotationTable *xmlNotationTablePtr;</PRE
1366></TD
1367></TR
1368></TABLE
1369><P
1370></P
1371></DIV
1372><HR><DIV
1373CLASS="REFSECT2"
1374><A
1375NAME="AEN8682"
1376></A
1377><H3
1378><A
1379NAME="XMLELEMENTTABLEPTR"
1380></A
1381>xmlElementTablePtr</H3
1382><TABLE
1383BORDER="0"
1384BGCOLOR="#D6E8FF"
1385WIDTH="100%"
1386CELLPADDING="6"
1387><TR
1388><TD
1389><PRE
1390CLASS="PROGRAMLISTING"
1391>typedef xmlElementTable *xmlElementTablePtr;</PRE
1392></TD
1393></TR
1394></TABLE
1395><P
1396></P
1397></DIV
1398><HR><DIV
1399CLASS="REFSECT2"
1400><A
1401NAME="AEN8687"
1402></A
1403><H3
1404><A
1405NAME="XMLATTRIBUTETABLEPTR"
1406></A
1407>xmlAttributeTablePtr</H3
1408><TABLE
1409BORDER="0"
1410BGCOLOR="#D6E8FF"
1411WIDTH="100%"
1412CELLPADDING="6"
1413><TR
1414><TD
1415><PRE
1416CLASS="PROGRAMLISTING"
1417>typedef xmlAttributeTable *xmlAttributeTablePtr;</PRE
1418></TD
1419></TR
1420></TABLE
1421><P
1422></P
1423></DIV
1424><HR><DIV
1425CLASS="REFSECT2"
1426><A
1427NAME="AEN8692"
1428></A
1429><H3
1430><A
1431NAME="XMLIDTABLEPTR"
1432></A
1433>xmlIDTablePtr</H3
1434><TABLE
1435BORDER="0"
1436BGCOLOR="#D6E8FF"
1437WIDTH="100%"
1438CELLPADDING="6"
1439><TR
1440><TD
1441><PRE
1442CLASS="PROGRAMLISTING"
1443>typedef xmlIDTable *xmlIDTablePtr;</PRE
1444></TD
1445></TR
1446></TABLE
1447><P
1448></P
1449></DIV
1450><HR><DIV
1451CLASS="REFSECT2"
1452><A
1453NAME="AEN8697"
1454></A
1455><H3
1456><A
1457NAME="XMLREFTABLEPTR"
1458></A
1459>xmlRefTablePtr</H3
1460><TABLE
1461BORDER="0"
1462BGCOLOR="#D6E8FF"
1463WIDTH="100%"
1464CELLPADDING="6"
1465><TR
1466><TD
1467><PRE
1468CLASS="PROGRAMLISTING"
1469>typedef xmlRefTable *xmlRefTablePtr;</PRE
1470></TD
1471></TR
1472></TABLE
1473><P
1474></P
1475></DIV
1476><HR><DIV
1477CLASS="REFSECT2"
1478><A
1479NAME="AEN8702"
1480></A
1481><H3
1482><A
1483NAME="XMLSPLITQNAME2"
1484></A
1485>xmlSplitQName2 ()</H3
1486><TABLE
1487BORDER="0"
1488BGCOLOR="#D6E8FF"
1489WIDTH="100%"
1490CELLPADDING="6"
1491><TR
1492><TD
1493><PRE
1494CLASS="PROGRAMLISTING"
1495><A
1496HREF="libxml-tree.html#XMLCHAR"
1497>xmlChar</A
1498>*    xmlSplitQName2                  (const <A
1499HREF="libxml-tree.html#XMLCHAR"
1500>xmlChar</A
1501> *name,
1502                                             <A
1503HREF="libxml-tree.html#XMLCHAR"
1504>xmlChar</A
1505> **prefix);</PRE
1506></TD
1507></TR
1508></TABLE
1509><P
1510>parse an XML qualified name string</P
1511><P
1512>[NS 5] QName ::= (Prefix ':')? LocalPart</P
1513><P
1514>[NS 6] Prefix ::= NCName</P
1515><P
1516>[NS 7] LocalPart ::= NCName</P
1517><P
1518></P
1519><DIV
1520CLASS="INFORMALTABLE"
1521><A
1522NAME="AEN8714"
1523></A
1524><P
1525></P
1526><TABLE
1527BORDER="0"
1528WIDTH="100%"
1529BGCOLOR="#FFD0D0"
1530CELLSPACING="0"
1531CELLPADDING="4"
1532CLASS="CALSTABLE"
1533><TBODY
1534><TR
1535><TD
1536WIDTH="20%"
1537ALIGN="RIGHT"
1538VALIGN="TOP"
1539><TT
1540CLASS="PARAMETER"
1541><I
1542>name</I
1543></TT
1544>&nbsp;:</TD
1545><TD
1546WIDTH="80%"
1547ALIGN="LEFT"
1548VALIGN="TOP"
1549>  an XML parser context</TD
1550></TR
1551><TR
1552><TD
1553WIDTH="20%"
1554ALIGN="RIGHT"
1555VALIGN="TOP"
1556><TT
1557CLASS="PARAMETER"
1558><I
1559>prefix</I
1560></TT
1561>&nbsp;:</TD
1562><TD
1563WIDTH="80%"
1564ALIGN="LEFT"
1565VALIGN="TOP"
1566>  a xmlChar ** </TD
1567></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"
1581>NULL if not a QName, otherwise the local part, and prefix
1582is updated to get the Prefix if any.</TD
1583></TR
1584></TBODY
1585></TABLE
1586><P
1587></P
1588></DIV
1589></DIV
1590><HR><DIV
1591CLASS="REFSECT2"
1592><A
1593NAME="AEN8731"
1594></A
1595><H3
1596><A
1597NAME="XMLADDNOTATIONDECL"
1598></A
1599>xmlAddNotationDecl ()</H3
1600><TABLE
1601BORDER="0"
1602BGCOLOR="#D6E8FF"
1603WIDTH="100%"
1604CELLPADDING="6"
1605><TR
1606><TD
1607><PRE
1608CLASS="PROGRAMLISTING"
1609><A
1610HREF="libxml-tree.html#XMLNOTATIONPTR"
1611>xmlNotationPtr</A
1612> xmlAddNotationDecl           (<A
1613HREF="libxml-valid.html#XMLVALIDCTXTPTR"
1614>xmlValidCtxtPtr</A
1615> ctxt,
1616                                             <A
1617HREF="libxml-tree.html#XMLDTDPTR"
1618>xmlDtdPtr</A
1619> dtd,
1620                                             const <A
1621HREF="libxml-tree.html#XMLCHAR"
1622>xmlChar</A
1623> *name,
1624                                             const <A
1625HREF="libxml-tree.html#XMLCHAR"
1626>xmlChar</A
1627> *PublicID,
1628                                             const <A
1629HREF="libxml-tree.html#XMLCHAR"
1630>xmlChar</A
1631> *SystemID);</PRE
1632></TD
1633></TR
1634></TABLE
1635><P
1636>Register a new notation declaration</P
1637><P
1638></P
1639><DIV
1640CLASS="INFORMALTABLE"
1641><A
1642NAME="AEN8743"
1643></A
1644><P
1645></P
1646><TABLE
1647BORDER="0"
1648WIDTH="100%"
1649BGCOLOR="#FFD0D0"
1650CELLSPACING="0"
1651CELLPADDING="4"
1652CLASS="CALSTABLE"
1653><TBODY
1654><TR
1655><TD
1656WIDTH="20%"
1657ALIGN="RIGHT"
1658VALIGN="TOP"
1659><TT
1660CLASS="PARAMETER"
1661><I
1662>ctxt</I
1663></TT
1664>&nbsp;:</TD
1665><TD
1666WIDTH="80%"
1667ALIGN="LEFT"
1668VALIGN="TOP"
1669>  the validation context</TD
1670></TR
1671><TR
1672><TD
1673WIDTH="20%"
1674ALIGN="RIGHT"
1675VALIGN="TOP"
1676><TT
1677CLASS="PARAMETER"
1678><I
1679>dtd</I
1680></TT
1681>&nbsp;:</TD
1682><TD
1683WIDTH="80%"
1684ALIGN="LEFT"
1685VALIGN="TOP"
1686>  pointer to the DTD</TD
1687></TR
1688><TR
1689><TD
1690WIDTH="20%"
1691ALIGN="RIGHT"
1692VALIGN="TOP"
1693><TT
1694CLASS="PARAMETER"
1695><I
1696>name</I
1697></TT
1698>&nbsp;:</TD
1699><TD
1700WIDTH="80%"
1701ALIGN="LEFT"
1702VALIGN="TOP"
1703>  the entity name</TD
1704></TR
1705><TR
1706><TD
1707WIDTH="20%"
1708ALIGN="RIGHT"
1709VALIGN="TOP"
1710><TT
1711CLASS="PARAMETER"
1712><I
1713>PublicID</I
1714></TT
1715>&nbsp;:</TD
1716><TD
1717WIDTH="80%"
1718ALIGN="LEFT"
1719VALIGN="TOP"
1720>  the public identifier or NULL</TD
1721></TR
1722><TR
1723><TD
1724WIDTH="20%"
1725ALIGN="RIGHT"
1726VALIGN="TOP"
1727><TT
1728CLASS="PARAMETER"
1729><I
1730>SystemID</I
1731></TT
1732>&nbsp;:</TD
1733><TD
1734WIDTH="80%"
1735ALIGN="LEFT"
1736VALIGN="TOP"
1737>  the system identifier or NULL</TD
1738></TR
1739><TR
1740><TD
1741WIDTH="20%"
1742ALIGN="RIGHT"
1743VALIGN="TOP"
1744><I
1745CLASS="EMPHASIS"
1746>Returns</I
1747> :</TD
1748><TD
1749WIDTH="80%"
1750ALIGN="LEFT"
1751VALIGN="TOP"
1752>NULL if not, otherwise the entity</TD
1753></TR
1754></TBODY
1755></TABLE
1756><P
1757></P
1758></DIV
1759></DIV
1760><HR><DIV
1761CLASS="REFSECT2"
1762><A
1763NAME="AEN8772"
1764></A
1765><H3
1766><A
1767NAME="XMLCOPYNOTATIONTABLE"
1768></A
1769>xmlCopyNotationTable ()</H3
1770><TABLE
1771BORDER="0"
1772BGCOLOR="#D6E8FF"
1773WIDTH="100%"
1774CELLPADDING="6"
1775><TR
1776><TD
1777><PRE
1778CLASS="PROGRAMLISTING"
1779><A
1780HREF="libxml-valid.html#XMLNOTATIONTABLEPTR"
1781>xmlNotationTablePtr</A
1782> xmlCopyNotationTable    (<A
1783HREF="libxml-valid.html#XMLNOTATIONTABLEPTR"
1784>xmlNotationTablePtr</A
1785> table);</PRE
1786></TD
1787></TR
1788></TABLE
1789><P
1790>Build a copy of a notation table.</P
1791><P
1792></P
1793><DIV
1794CLASS="INFORMALTABLE"
1795><A
1796NAME="AEN8780"
1797></A
1798><P
1799></P
1800><TABLE
1801BORDER="0"
1802WIDTH="100%"
1803BGCOLOR="#FFD0D0"
1804CELLSPACING="0"
1805CELLPADDING="4"
1806CLASS="CALSTABLE"
1807><TBODY
1808><TR
1809><TD
1810WIDTH="20%"
1811ALIGN="RIGHT"
1812VALIGN="TOP"
1813><TT
1814CLASS="PARAMETER"
1815><I
1816>table</I
1817></TT
1818>&nbsp;:</TD
1819><TD
1820WIDTH="80%"
1821ALIGN="LEFT"
1822VALIGN="TOP"
1823>  A notation table</TD
1824></TR
1825><TR
1826><TD
1827WIDTH="20%"
1828ALIGN="RIGHT"
1829VALIGN="TOP"
1830><I
1831CLASS="EMPHASIS"
1832>Returns</I
1833> :</TD
1834><TD
1835WIDTH="80%"
1836ALIGN="LEFT"
1837VALIGN="TOP"
1838>the new xmlNotationTablePtr or NULL in case of error.</TD
1839></TR
1840></TBODY
1841></TABLE
1842><P
1843></P
1844></DIV
1845></DIV
1846><HR><DIV
1847CLASS="REFSECT2"
1848><A
1849NAME="AEN8793"
1850></A
1851><H3
1852><A
1853NAME="XMLFREENOTATIONTABLE"
1854></A
1855>xmlFreeNotationTable ()</H3
1856><TABLE
1857BORDER="0"
1858BGCOLOR="#D6E8FF"
1859WIDTH="100%"
1860CELLPADDING="6"
1861><TR
1862><TD
1863><PRE
1864CLASS="PROGRAMLISTING"
1865>void        xmlFreeNotationTable            (<A
1866HREF="libxml-valid.html#XMLNOTATIONTABLEPTR"
1867>xmlNotationTablePtr</A
1868> table);</PRE
1869></TD
1870></TR
1871></TABLE
1872><P
1873>Deallocate the memory used by an entities hash table.</P
1874><P
1875></P
1876><DIV
1877CLASS="INFORMALTABLE"
1878><A
1879NAME="AEN8800"
1880></A
1881><P
1882></P
1883><TABLE
1884BORDER="0"
1885WIDTH="100%"
1886BGCOLOR="#FFD0D0"
1887CELLSPACING="0"
1888CELLPADDING="4"
1889CLASS="CALSTABLE"
1890><TBODY
1891><TR
1892><TD
1893WIDTH="20%"
1894ALIGN="RIGHT"
1895VALIGN="TOP"
1896><TT
1897CLASS="PARAMETER"
1898><I
1899>table</I
1900></TT
1901>&nbsp;:</TD
1902><TD
1903WIDTH="80%"
1904ALIGN="LEFT"
1905VALIGN="TOP"
1906>  An notation table</TD
1907></TR
1908></TBODY
1909></TABLE
1910><P
1911></P
1912></DIV
1913></DIV
1914><HR><DIV
1915CLASS="REFSECT2"
1916><A
1917NAME="AEN8809"
1918></A
1919><H3
1920><A
1921NAME="XMLDUMPNOTATIONDECL"
1922></A
1923>xmlDumpNotationDecl ()</H3
1924><TABLE
1925BORDER="0"
1926BGCOLOR="#D6E8FF"
1927WIDTH="100%"
1928CELLPADDING="6"
1929><TR
1930><TD
1931><PRE
1932CLASS="PROGRAMLISTING"
1933>void        xmlDumpNotationDecl             (<A
1934HREF="libxml-tree.html#XMLBUFFERPTR"
1935>xmlBufferPtr</A
1936> buf,
1937                                             <A
1938HREF="libxml-tree.html#XMLNOTATIONPTR"
1939>xmlNotationPtr</A
1940> nota);</PRE
1941></TD
1942></TR
1943></TABLE
1944><P
1945>This will dump the content the notation declaration as an XML DTD definition</P
1946><P
1947></P
1948><DIV
1949CLASS="INFORMALTABLE"
1950><A
1951NAME="AEN8817"
1952></A
1953><P
1954></P
1955><TABLE
1956BORDER="0"
1957WIDTH="100%"
1958BGCOLOR="#FFD0D0"
1959CELLSPACING="0"
1960CELLPADDING="4"
1961CLASS="CALSTABLE"
1962><TBODY
1963><TR
1964><TD
1965WIDTH="20%"
1966ALIGN="RIGHT"
1967VALIGN="TOP"
1968><TT
1969CLASS="PARAMETER"
1970><I
1971>buf</I
1972></TT
1973>&nbsp;:</TD
1974><TD
1975WIDTH="80%"
1976ALIGN="LEFT"
1977VALIGN="TOP"
1978>  the XML buffer output</TD
1979></TR
1980><TR
1981><TD
1982WIDTH="20%"
1983ALIGN="RIGHT"
1984VALIGN="TOP"
1985><TT
1986CLASS="PARAMETER"
1987><I
1988>nota</I
1989></TT
1990>&nbsp;:</TD
1991><TD
1992WIDTH="80%"
1993ALIGN="LEFT"
1994VALIGN="TOP"
1995>  A notation declaration</TD
1996></TR
1997></TBODY
1998></TABLE
1999><P
2000></P
2001></DIV
2002></DIV
2003><HR><DIV
2004CLASS="REFSECT2"
2005><A
2006NAME="AEN8830"
2007></A
2008><H3
2009><A
2010NAME="XMLDUMPNOTATIONTABLE"
2011></A
2012>xmlDumpNotationTable ()</H3
2013><TABLE
2014BORDER="0"
2015BGCOLOR="#D6E8FF"
2016WIDTH="100%"
2017CELLPADDING="6"
2018><TR
2019><TD
2020><PRE
2021CLASS="PROGRAMLISTING"
2022>void        xmlDumpNotationTable            (<A
2023HREF="libxml-tree.html#XMLBUFFERPTR"
2024>xmlBufferPtr</A
2025> buf,
2026                                             <A
2027HREF="libxml-valid.html#XMLNOTATIONTABLEPTR"
2028>xmlNotationTablePtr</A
2029> table);</PRE
2030></TD
2031></TR
2032></TABLE
2033><P
2034>This will dump the content of the notation table as an XML DTD definition</P
2035><P
2036></P
2037><DIV
2038CLASS="INFORMALTABLE"
2039><A
2040NAME="AEN8838"
2041></A
2042><P
2043></P
2044><TABLE
2045BORDER="0"
2046WIDTH="100%"
2047BGCOLOR="#FFD0D0"
2048CELLSPACING="0"
2049CELLPADDING="4"
2050CLASS="CALSTABLE"
2051><TBODY
2052><TR
2053><TD
2054WIDTH="20%"
2055ALIGN="RIGHT"
2056VALIGN="TOP"
2057><TT
2058CLASS="PARAMETER"
2059><I
2060>buf</I
2061></TT
2062>&nbsp;:</TD
2063><TD
2064WIDTH="80%"
2065ALIGN="LEFT"
2066VALIGN="TOP"
2067>  the XML buffer output</TD
2068></TR
2069><TR
2070><TD
2071WIDTH="20%"
2072ALIGN="RIGHT"
2073VALIGN="TOP"
2074><TT
2075CLASS="PARAMETER"
2076><I
2077>table</I
2078></TT
2079>&nbsp;:</TD
2080><TD
2081WIDTH="80%"
2082ALIGN="LEFT"
2083VALIGN="TOP"
2084>  A notation table</TD
2085></TR
2086></TBODY
2087></TABLE
2088><P
2089></P
2090></DIV
2091></DIV
2092><HR><DIV
2093CLASS="REFSECT2"
2094><A
2095NAME="AEN8851"
2096></A
2097><H3
2098><A
2099NAME="XMLNEWELEMENTCONTENT"
2100></A
2101>xmlNewElementContent ()</H3
2102><TABLE
2103BORDER="0"
2104BGCOLOR="#D6E8FF"
2105WIDTH="100%"
2106CELLPADDING="6"
2107><TR
2108><TD
2109><PRE
2110CLASS="PROGRAMLISTING"
2111><A
2112HREF="libxml-tree.html#XMLELEMENTCONTENTPTR"
2113>xmlElementContentPtr</A
2114> xmlNewElementContent   (<A
2115HREF="libxml-tree.html#XMLCHAR"
2116>xmlChar</A
2117> *name,
2118                                             <A
2119HREF="libxml-tree.html#XMLELEMENTCONTENTTYPE"
2120>xmlElementContentType</A
2121> type);</PRE
2122></TD
2123></TR
2124></TABLE
2125><P
2126>Allocate an element content structure.</P
2127><P
2128></P
2129><DIV
2130CLASS="INFORMALTABLE"
2131><A
2132NAME="AEN8860"
2133></A
2134><P
2135></P
2136><TABLE
2137BORDER="0"
2138WIDTH="100%"
2139BGCOLOR="#FFD0D0"
2140CELLSPACING="0"
2141CELLPADDING="4"
2142CLASS="CALSTABLE"
2143><TBODY
2144><TR
2145><TD
2146WIDTH="20%"
2147ALIGN="RIGHT"
2148VALIGN="TOP"
2149><TT
2150CLASS="PARAMETER"
2151><I
2152>name</I
2153></TT
2154>&nbsp;:</TD
2155><TD
2156WIDTH="80%"
2157ALIGN="LEFT"
2158VALIGN="TOP"
2159>  the subelement name or NULL</TD
2160></TR
2161><TR
2162><TD
2163WIDTH="20%"
2164ALIGN="RIGHT"
2165VALIGN="TOP"
2166><TT
2167CLASS="PARAMETER"
2168><I
2169>type</I
2170></TT
2171>&nbsp;:</TD
2172><TD
2173WIDTH="80%"
2174ALIGN="LEFT"
2175VALIGN="TOP"
2176>  the type of element content decl</TD
2177></TR
2178><TR
2179><TD
2180WIDTH="20%"
2181ALIGN="RIGHT"
2182VALIGN="TOP"
2183><I
2184CLASS="EMPHASIS"
2185>Returns</I
2186> :</TD
2187><TD
2188WIDTH="80%"
2189ALIGN="LEFT"
2190VALIGN="TOP"
2191>NULL if not, otherwise the new element content structure</TD
2192></TR
2193></TBODY
2194></TABLE
2195><P
2196></P
2197></DIV
2198></DIV
2199><HR><DIV
2200CLASS="REFSECT2"
2201><A
2202NAME="AEN8877"
2203></A
2204><H3
2205><A
2206NAME="XMLCOPYELEMENTCONTENT"
2207></A
2208>xmlCopyElementContent ()</H3
2209><TABLE
2210BORDER="0"
2211BGCOLOR="#D6E8FF"
2212WIDTH="100%"
2213CELLPADDING="6"
2214><TR
2215><TD
2216><PRE
2217CLASS="PROGRAMLISTING"
2218><A
2219HREF="libxml-tree.html#XMLELEMENTCONTENTPTR"
2220>xmlElementContentPtr</A
2221> xmlCopyElementContent  (<A
2222HREF="libxml-tree.html#XMLELEMENTCONTENTPTR"
2223>xmlElementContentPtr</A
2224> content);</PRE
2225></TD
2226></TR
2227></TABLE
2228><P
2229>Build a copy of an element content description.</P
2230><P
2231></P
2232><DIV
2233CLASS="INFORMALTABLE"
2234><A
2235NAME="AEN8885"
2236></A
2237><P
2238></P
2239><TABLE
2240BORDER="0"
2241WIDTH="100%"
2242BGCOLOR="#FFD0D0"
2243CELLSPACING="0"
2244CELLPADDING="4"
2245CLASS="CALSTABLE"
2246><TBODY
2247><TR
2248><TD
2249WIDTH="20%"
2250ALIGN="RIGHT"
2251VALIGN="TOP"
2252><TT
2253CLASS="PARAMETER"
2254><I
2255>content</I
2256></TT
2257>&nbsp;:</TD
2258><TD
2259WIDTH="80%"
2260ALIGN="LEFT"
2261VALIGN="TOP"
2262>  An element content pointer.</TD
2263></TR
2264><TR
2265><TD
2266WIDTH="20%"
2267ALIGN="RIGHT"
2268VALIGN="TOP"
2269><I
2270CLASS="EMPHASIS"
2271>Returns</I
2272> :</TD
2273><TD
2274WIDTH="80%"
2275ALIGN="LEFT"
2276VALIGN="TOP"
2277>the new xmlElementContentPtr or NULL in case of error.</TD
2278></TR
2279></TBODY
2280></TABLE
2281><P
2282></P
2283></DIV
2284></DIV
2285><HR><DIV
2286CLASS="REFSECT2"
2287><A
2288NAME="AEN8898"
2289></A
2290><H3
2291><A
2292NAME="XMLFREEELEMENTCONTENT"
2293></A
2294>xmlFreeElementContent ()</H3
2295><TABLE
2296BORDER="0"
2297BGCOLOR="#D6E8FF"
2298WIDTH="100%"
2299CELLPADDING="6"
2300><TR
2301><TD
2302><PRE
2303CLASS="PROGRAMLISTING"
2304>void        xmlFreeElementContent           (<A
2305HREF="libxml-tree.html#XMLELEMENTCONTENTPTR"
2306>xmlElementContentPtr</A
2307> cur);</PRE
2308></TD
2309></TR
2310></TABLE
2311><P
2312>Free an element content structure. This is a recursive call !</P
2313><P
2314></P
2315><DIV
2316CLASS="INFORMALTABLE"
2317><A
2318NAME="AEN8905"
2319></A
2320><P
2321></P
2322><TABLE
2323BORDER="0"
2324WIDTH="100%"
2325BGCOLOR="#FFD0D0"
2326CELLSPACING="0"
2327CELLPADDING="4"
2328CLASS="CALSTABLE"
2329><TBODY
2330><TR
2331><TD
2332WIDTH="20%"
2333ALIGN="RIGHT"
2334VALIGN="TOP"
2335><TT
2336CLASS="PARAMETER"
2337><I
2338>cur</I
2339></TT
2340>&nbsp;:</TD
2341><TD
2342WIDTH="80%"
2343ALIGN="LEFT"
2344VALIGN="TOP"
2345>  the element content tree to free</TD
2346></TR
2347></TBODY
2348></TABLE
2349><P
2350></P
2351></DIV
2352></DIV
2353><HR><DIV
2354CLASS="REFSECT2"
2355><A
2356NAME="AEN8914"
2357></A
2358><H3
2359><A
2360NAME="XMLSNPRINTFELEMENTCONTENT"
2361></A
2362>xmlSnprintfElementContent ()</H3
2363><TABLE
2364BORDER="0"
2365BGCOLOR="#D6E8FF"
2366WIDTH="100%"
2367CELLPADDING="6"
2368><TR
2369><TD
2370><PRE
2371CLASS="PROGRAMLISTING"
2372>void        xmlSnprintfElementContent       (char *buf,
2373                                             int size,
2374                                             <A
2375HREF="libxml-tree.html#XMLELEMENTCONTENTPTR"
2376>xmlElementContentPtr</A
2377> content,
2378                                             int glob);</PRE
2379></TD
2380></TR
2381></TABLE
2382><P
2383>This will dump the content of the element content definition
2384Intended just for the debug routine</P
2385><P
2386></P
2387><DIV
2388CLASS="INFORMALTABLE"
2389><A
2390NAME="AEN8921"
2391></A
2392><P
2393></P
2394><TABLE
2395BORDER="0"
2396WIDTH="100%"
2397BGCOLOR="#FFD0D0"
2398CELLSPACING="0"
2399CELLPADDING="4"
2400CLASS="CALSTABLE"
2401><TBODY
2402><TR
2403><TD
2404WIDTH="20%"
2405ALIGN="RIGHT"
2406VALIGN="TOP"
2407><TT
2408CLASS="PARAMETER"
2409><I
2410>buf</I
2411></TT
2412>&nbsp;:</TD
2413><TD
2414WIDTH="80%"
2415ALIGN="LEFT"
2416VALIGN="TOP"
2417>  an output buffer</TD
2418></TR
2419><TR
2420><TD
2421WIDTH="20%"
2422ALIGN="RIGHT"
2423VALIGN="TOP"
2424><TT
2425CLASS="PARAMETER"
2426><I
2427>size</I
2428></TT
2429>&nbsp;:</TD
2430><TD
2431WIDTH="80%"
2432ALIGN="LEFT"
2433VALIGN="TOP"
2434>  the buffer size</TD
2435></TR
2436><TR
2437><TD
2438WIDTH="20%"
2439ALIGN="RIGHT"
2440VALIGN="TOP"
2441><TT
2442CLASS="PARAMETER"
2443><I
2444>content</I
2445></TT
2446>&nbsp;:</TD
2447><TD
2448WIDTH="80%"
2449ALIGN="LEFT"
2450VALIGN="TOP"
2451>  An element table</TD
2452></TR
2453><TR
2454><TD
2455WIDTH="20%"
2456ALIGN="RIGHT"
2457VALIGN="TOP"
2458><TT
2459CLASS="PARAMETER"
2460><I
2461>glob</I
2462></TT
2463>&nbsp;:</TD
2464><TD
2465WIDTH="80%"
2466ALIGN="LEFT"
2467VALIGN="TOP"
2468> 1 if one must print the englobing parenthesis, 0 otherwise</TD
2469></TR
2470></TBODY
2471></TABLE
2472><P
2473></P
2474></DIV
2475></DIV
2476><HR><DIV
2477CLASS="REFSECT2"
2478><A
2479NAME="AEN8942"
2480></A
2481><H3
2482><A
2483NAME="XMLSPRINTFELEMENTCONTENT"
2484></A
2485>xmlSprintfElementContent ()</H3
2486><TABLE
2487BORDER="0"
2488BGCOLOR="#D6E8FF"
2489WIDTH="100%"
2490CELLPADDING="6"
2491><TR
2492><TD
2493><PRE
2494CLASS="PROGRAMLISTING"
2495>void        xmlSprintfElementContent        (char *buf,
2496                                             <A
2497HREF="libxml-tree.html#XMLELEMENTCONTENTPTR"
2498>xmlElementContentPtr</A
2499> content,
2500                                             int glob);</PRE
2501></TD
2502></TR
2503></TABLE
2504><P
2505>Deprecated, unsafe, use xmlSnprintfElementContent</P
2506><P
2507></P
2508><DIV
2509CLASS="INFORMALTABLE"
2510><A
2511NAME="AEN8949"
2512></A
2513><P
2514></P
2515><TABLE
2516BORDER="0"
2517WIDTH="100%"
2518BGCOLOR="#FFD0D0"
2519CELLSPACING="0"
2520CELLPADDING="4"
2521CLASS="CALSTABLE"
2522><TBODY
2523><TR
2524><TD
2525WIDTH="20%"
2526ALIGN="RIGHT"
2527VALIGN="TOP"
2528><TT
2529CLASS="PARAMETER"
2530><I
2531>buf</I
2532></TT
2533>&nbsp;:</TD
2534><TD
2535WIDTH="80%"
2536ALIGN="LEFT"
2537VALIGN="TOP"
2538>  an output buffer</TD
2539></TR
2540><TR
2541><TD
2542WIDTH="20%"
2543ALIGN="RIGHT"
2544VALIGN="TOP"
2545><TT
2546CLASS="PARAMETER"
2547><I
2548>content</I
2549></TT
2550>&nbsp;:</TD
2551><TD
2552WIDTH="80%"
2553ALIGN="LEFT"
2554VALIGN="TOP"
2555>  An element table</TD
2556></TR
2557><TR
2558><TD
2559WIDTH="20%"
2560ALIGN="RIGHT"
2561VALIGN="TOP"
2562><TT
2563CLASS="PARAMETER"
2564><I
2565>glob</I
2566></TT
2567>&nbsp;:</TD
2568><TD
2569WIDTH="80%"
2570ALIGN="LEFT"
2571VALIGN="TOP"
2572> 1 if one must print the englobing parenthesis, 0 otherwise</TD
2573></TR
2574></TBODY
2575></TABLE
2576><P
2577></P
2578></DIV
2579></DIV
2580><HR><DIV
2581CLASS="REFSECT2"
2582><A
2583NAME="AEN8966"
2584></A
2585><H3
2586><A
2587NAME="XMLADDELEMENTDECL"
2588></A
2589>xmlAddElementDecl ()</H3
2590><TABLE
2591BORDER="0"
2592BGCOLOR="#D6E8FF"
2593WIDTH="100%"
2594CELLPADDING="6"
2595><TR
2596><TD
2597><PRE
2598CLASS="PROGRAMLISTING"
2599><A
2600HREF="libxml-tree.html#XMLELEMENTPTR"
2601>xmlElementPtr</A
2602> xmlAddElementDecl             (<A
2603HREF="libxml-valid.html#XMLVALIDCTXTPTR"
2604>xmlValidCtxtPtr</A
2605> ctxt,
2606                                             <A
2607HREF="libxml-tree.html#XMLDTDPTR"
2608>xmlDtdPtr</A
2609> dtd,
2610                                             const <A
2611HREF="libxml-tree.html#XMLCHAR"
2612>xmlChar</A
2613> *name,
2614                                             <A
2615HREF="libxml-tree.html#XMLELEMENTTYPEVAL"
2616>xmlElementTypeVal</A
2617> type,
2618                                             <A
2619HREF="libxml-tree.html#XMLELEMENTCONTENTPTR"
2620>xmlElementContentPtr</A
2621> content);</PRE
2622></TD
2623></TR
2624></TABLE
2625><P
2626>Register a new element declaration</P
2627><P
2628></P
2629><DIV
2630CLASS="INFORMALTABLE"
2631><A
2632NAME="AEN8978"
2633></A
2634><P
2635></P
2636><TABLE
2637BORDER="0"
2638WIDTH="100%"
2639BGCOLOR="#FFD0D0"
2640CELLSPACING="0"
2641CELLPADDING="4"
2642CLASS="CALSTABLE"
2643><TBODY
2644><TR
2645><TD
2646WIDTH="20%"
2647ALIGN="RIGHT"
2648VALIGN="TOP"
2649><TT
2650CLASS="PARAMETER"
2651><I
2652>ctxt</I
2653></TT
2654>&nbsp;:</TD
2655><TD
2656WIDTH="80%"
2657ALIGN="LEFT"
2658VALIGN="TOP"
2659>  the validation context</TD
2660></TR
2661><TR
2662><TD
2663WIDTH="20%"
2664ALIGN="RIGHT"
2665VALIGN="TOP"
2666><TT
2667CLASS="PARAMETER"
2668><I
2669>dtd</I
2670></TT
2671>&nbsp;:</TD
2672><TD
2673WIDTH="80%"
2674ALIGN="LEFT"
2675VALIGN="TOP"
2676>  pointer to the DTD</TD
2677></TR
2678><TR
2679><TD
2680WIDTH="20%"
2681ALIGN="RIGHT"
2682VALIGN="TOP"
2683><TT
2684CLASS="PARAMETER"
2685><I
2686>name</I
2687></TT
2688>&nbsp;:</TD
2689><TD
2690WIDTH="80%"
2691ALIGN="LEFT"
2692VALIGN="TOP"
2693>  the entity name</TD
2694></TR
2695><TR
2696><TD
2697WIDTH="20%"
2698ALIGN="RIGHT"
2699VALIGN="TOP"
2700><TT
2701CLASS="PARAMETER"
2702><I
2703>type</I
2704></TT
2705>&nbsp;:</TD
2706><TD
2707WIDTH="80%"
2708ALIGN="LEFT"
2709VALIGN="TOP"
2710>  the element type</TD
2711></TR
2712><TR
2713><TD
2714WIDTH="20%"
2715ALIGN="RIGHT"
2716VALIGN="TOP"
2717><TT
2718CLASS="PARAMETER"
2719><I
2720>content</I
2721></TT
2722>&nbsp;:</TD
2723><TD
2724WIDTH="80%"
2725ALIGN="LEFT"
2726VALIGN="TOP"
2727>  the element content tree or NULL</TD
2728></TR
2729><TR
2730><TD
2731WIDTH="20%"
2732ALIGN="RIGHT"
2733VALIGN="TOP"
2734><I
2735CLASS="EMPHASIS"
2736>Returns</I
2737> :</TD
2738><TD
2739WIDTH="80%"
2740ALIGN="LEFT"
2741VALIGN="TOP"
2742>NULL if not, otherwise the entity</TD
2743></TR
2744></TBODY
2745></TABLE
2746><P
2747></P
2748></DIV
2749></DIV
2750><HR><DIV
2751CLASS="REFSECT2"
2752><A
2753NAME="AEN9007"
2754></A
2755><H3
2756><A
2757NAME="XMLCOPYELEMENTTABLE"
2758></A
2759>xmlCopyElementTable ()</H3
2760><TABLE
2761BORDER="0"
2762BGCOLOR="#D6E8FF"
2763WIDTH="100%"
2764CELLPADDING="6"
2765><TR
2766><TD
2767><PRE
2768CLASS="PROGRAMLISTING"
2769><A
2770HREF="libxml-valid.html#XMLELEMENTTABLEPTR"
2771>xmlElementTablePtr</A
2772> xmlCopyElementTable      (<A
2773HREF="libxml-valid.html#XMLELEMENTTABLEPTR"
2774>xmlElementTablePtr</A
2775> table);</PRE
2776></TD
2777></TR
2778></TABLE
2779><P
2780>Build a copy of an element table.</P
2781><P
2782></P
2783><DIV
2784CLASS="INFORMALTABLE"
2785><A
2786NAME="AEN9015"
2787></A
2788><P
2789></P
2790><TABLE
2791BORDER="0"
2792WIDTH="100%"
2793BGCOLOR="#FFD0D0"
2794CELLSPACING="0"
2795CELLPADDING="4"
2796CLASS="CALSTABLE"
2797><TBODY
2798><TR
2799><TD
2800WIDTH="20%"
2801ALIGN="RIGHT"
2802VALIGN="TOP"
2803><TT
2804CLASS="PARAMETER"
2805><I
2806>table</I
2807></TT
2808>&nbsp;:</TD
2809><TD
2810WIDTH="80%"
2811ALIGN="LEFT"
2812VALIGN="TOP"
2813>  An element table</TD
2814></TR
2815><TR
2816><TD
2817WIDTH="20%"
2818ALIGN="RIGHT"
2819VALIGN="TOP"
2820><I
2821CLASS="EMPHASIS"
2822>Returns</I
2823> :</TD
2824><TD
2825WIDTH="80%"
2826ALIGN="LEFT"
2827VALIGN="TOP"
2828>the new xmlElementTablePtr or NULL in case of error.</TD
2829></TR
2830></TBODY
2831></TABLE
2832><P
2833></P
2834></DIV
2835></DIV
2836><HR><DIV
2837CLASS="REFSECT2"
2838><A
2839NAME="AEN9028"
2840></A
2841><H3
2842><A
2843NAME="XMLFREEELEMENTTABLE"
2844></A
2845>xmlFreeElementTable ()</H3
2846><TABLE
2847BORDER="0"
2848BGCOLOR="#D6E8FF"
2849WIDTH="100%"
2850CELLPADDING="6"
2851><TR
2852><TD
2853><PRE
2854CLASS="PROGRAMLISTING"
2855>void        xmlFreeElementTable             (<A
2856HREF="libxml-valid.html#XMLELEMENTTABLEPTR"
2857>xmlElementTablePtr</A
2858> table);</PRE
2859></TD
2860></TR
2861></TABLE
2862><P
2863>Deallocate the memory used by an element hash table.</P
2864><P
2865></P
2866><DIV
2867CLASS="INFORMALTABLE"
2868><A
2869NAME="AEN9035"
2870></A
2871><P
2872></P
2873><TABLE
2874BORDER="0"
2875WIDTH="100%"
2876BGCOLOR="#FFD0D0"
2877CELLSPACING="0"
2878CELLPADDING="4"
2879CLASS="CALSTABLE"
2880><TBODY
2881><TR
2882><TD
2883WIDTH="20%"
2884ALIGN="RIGHT"
2885VALIGN="TOP"
2886><TT
2887CLASS="PARAMETER"
2888><I
2889>table</I
2890></TT
2891>&nbsp;:</TD
2892><TD
2893WIDTH="80%"
2894ALIGN="LEFT"
2895VALIGN="TOP"
2896>  An element table</TD
2897></TR
2898></TBODY
2899></TABLE
2900><P
2901></P
2902></DIV
2903></DIV
2904><HR><DIV
2905CLASS="REFSECT2"
2906><A
2907NAME="AEN9044"
2908></A
2909><H3
2910><A
2911NAME="XMLDUMPELEMENTTABLE"
2912></A
2913>xmlDumpElementTable ()</H3
2914><TABLE
2915BORDER="0"
2916BGCOLOR="#D6E8FF"
2917WIDTH="100%"
2918CELLPADDING="6"
2919><TR
2920><TD
2921><PRE
2922CLASS="PROGRAMLISTING"
2923>void        xmlDumpElementTable             (<A
2924HREF="libxml-tree.html#XMLBUFFERPTR"
2925>xmlBufferPtr</A
2926> buf,
2927                                             <A
2928HREF="libxml-valid.html#XMLELEMENTTABLEPTR"
2929>xmlElementTablePtr</A
2930> table);</PRE
2931></TD
2932></TR
2933></TABLE
2934><P
2935>This will dump the content of the element table as an XML DTD definition</P
2936><P
2937></P
2938><DIV
2939CLASS="INFORMALTABLE"
2940><A
2941NAME="AEN9052"
2942></A
2943><P
2944></P
2945><TABLE
2946BORDER="0"
2947WIDTH="100%"
2948BGCOLOR="#FFD0D0"
2949CELLSPACING="0"
2950CELLPADDING="4"
2951CLASS="CALSTABLE"
2952><TBODY
2953><TR
2954><TD
2955WIDTH="20%"
2956ALIGN="RIGHT"
2957VALIGN="TOP"
2958><TT
2959CLASS="PARAMETER"
2960><I
2961>buf</I
2962></TT
2963>&nbsp;:</TD
2964><TD
2965WIDTH="80%"
2966ALIGN="LEFT"
2967VALIGN="TOP"
2968>  the XML buffer output</TD
2969></TR
2970><TR
2971><TD
2972WIDTH="20%"
2973ALIGN="RIGHT"
2974VALIGN="TOP"
2975><TT
2976CLASS="PARAMETER"
2977><I
2978>table</I
2979></TT
2980>&nbsp;:</TD
2981><TD
2982WIDTH="80%"
2983ALIGN="LEFT"
2984VALIGN="TOP"
2985>  An element table</TD
2986></TR
2987></TBODY
2988></TABLE
2989><P
2990></P
2991></DIV
2992></DIV
2993><HR><DIV
2994CLASS="REFSECT2"
2995><A
2996NAME="AEN9065"
2997></A
2998><H3
2999><A
3000NAME="XMLDUMPELEMENTDECL"
3001></A
3002>xmlDumpElementDecl ()</H3
3003><TABLE
3004BORDER="0"
3005BGCOLOR="#D6E8FF"
3006WIDTH="100%"
3007CELLPADDING="6"
3008><TR
3009><TD
3010><PRE
3011CLASS="PROGRAMLISTING"
3012>void        xmlDumpElementDecl              (<A
3013HREF="libxml-tree.html#XMLBUFFERPTR"
3014>xmlBufferPtr</A
3015> buf,
3016                                             <A
3017HREF="libxml-tree.html#XMLELEMENTPTR"
3018>xmlElementPtr</A
3019> elem);</PRE
3020></TD
3021></TR
3022></TABLE
3023><P
3024>This will dump the content of the element declaration as an XML
3025DTD definition</P
3026><P
3027></P
3028><DIV
3029CLASS="INFORMALTABLE"
3030><A
3031NAME="AEN9073"
3032></A
3033><P
3034></P
3035><TABLE
3036BORDER="0"
3037WIDTH="100%"
3038BGCOLOR="#FFD0D0"
3039CELLSPACING="0"
3040CELLPADDING="4"
3041CLASS="CALSTABLE"
3042><TBODY
3043><TR
3044><TD
3045WIDTH="20%"
3046ALIGN="RIGHT"
3047VALIGN="TOP"
3048><TT
3049CLASS="PARAMETER"
3050><I
3051>buf</I
3052></TT
3053>&nbsp;:</TD
3054><TD
3055WIDTH="80%"
3056ALIGN="LEFT"
3057VALIGN="TOP"
3058>  the XML buffer output</TD
3059></TR
3060><TR
3061><TD
3062WIDTH="20%"
3063ALIGN="RIGHT"
3064VALIGN="TOP"
3065><TT
3066CLASS="PARAMETER"
3067><I
3068>elem</I
3069></TT
3070>&nbsp;:</TD
3071><TD
3072WIDTH="80%"
3073ALIGN="LEFT"
3074VALIGN="TOP"
3075>  An element table</TD
3076></TR
3077></TBODY
3078></TABLE
3079><P
3080></P
3081></DIV
3082></DIV
3083><HR><DIV
3084CLASS="REFSECT2"
3085><A
3086NAME="AEN9086"
3087></A
3088><H3
3089><A
3090NAME="XMLCREATEENUMERATION"
3091></A
3092>xmlCreateEnumeration ()</H3
3093><TABLE
3094BORDER="0"
3095BGCOLOR="#D6E8FF"
3096WIDTH="100%"
3097CELLPADDING="6"
3098><TR
3099><TD
3100><PRE
3101CLASS="PROGRAMLISTING"
3102><A
3103HREF="libxml-tree.html#XMLENUMERATIONPTR"
3104>xmlEnumerationPtr</A
3105> xmlCreateEnumeration      (<A
3106HREF="libxml-tree.html#XMLCHAR"
3107>xmlChar</A
3108> *name);</PRE
3109></TD
3110></TR
3111></TABLE
3112><P
3113>create and initialize an enumeration attribute node.</P
3114><P
3115></P
3116><DIV
3117CLASS="INFORMALTABLE"
3118><A
3119NAME="AEN9094"
3120></A
3121><P
3122></P
3123><TABLE
3124BORDER="0"
3125WIDTH="100%"
3126BGCOLOR="#FFD0D0"
3127CELLSPACING="0"
3128CELLPADDING="4"
3129CLASS="CALSTABLE"
3130><TBODY
3131><TR
3132><TD
3133WIDTH="20%"
3134ALIGN="RIGHT"
3135VALIGN="TOP"
3136><TT
3137CLASS="PARAMETER"
3138><I
3139>name</I
3140></TT
3141>&nbsp;:</TD
3142><TD
3143WIDTH="80%"
3144ALIGN="LEFT"
3145VALIGN="TOP"
3146>  the enumeration name or NULL</TD
3147></TR
3148><TR
3149><TD
3150WIDTH="20%"
3151ALIGN="RIGHT"
3152VALIGN="TOP"
3153><I
3154CLASS="EMPHASIS"
3155>Returns</I
3156> :</TD
3157><TD
3158WIDTH="80%"
3159ALIGN="LEFT"
3160VALIGN="TOP"
3161>the xmlEnumerationPtr just created or NULL in case
3162of error.</TD
3163></TR
3164></TBODY
3165></TABLE
3166><P
3167></P
3168></DIV
3169></DIV
3170><HR><DIV
3171CLASS="REFSECT2"
3172><A
3173NAME="AEN9107"
3174></A
3175><H3
3176><A
3177NAME="XMLFREEENUMERATION"
3178></A
3179>xmlFreeEnumeration ()</H3
3180><TABLE
3181BORDER="0"
3182BGCOLOR="#D6E8FF"
3183WIDTH="100%"
3184CELLPADDING="6"
3185><TR
3186><TD
3187><PRE
3188CLASS="PROGRAMLISTING"
3189>void        xmlFreeEnumeration              (<A
3190HREF="libxml-tree.html#XMLENUMERATIONPTR"
3191>xmlEnumerationPtr</A
3192> cur);</PRE
3193></TD
3194></TR
3195></TABLE
3196><P
3197>free an enumeration attribute node (recursive).</P
3198><P
3199></P
3200><DIV
3201CLASS="INFORMALTABLE"
3202><A
3203NAME="AEN9114"
3204></A
3205><P
3206></P
3207><TABLE
3208BORDER="0"
3209WIDTH="100%"
3210BGCOLOR="#FFD0D0"
3211CELLSPACING="0"
3212CELLPADDING="4"
3213CLASS="CALSTABLE"
3214><TBODY
3215><TR
3216><TD
3217WIDTH="20%"
3218ALIGN="RIGHT"
3219VALIGN="TOP"
3220><TT
3221CLASS="PARAMETER"
3222><I
3223>cur</I
3224></TT
3225>&nbsp;:</TD
3226><TD
3227WIDTH="80%"
3228ALIGN="LEFT"
3229VALIGN="TOP"
3230>  the tree to free.</TD
3231></TR
3232></TBODY
3233></TABLE
3234><P
3235></P
3236></DIV
3237></DIV
3238><HR><DIV
3239CLASS="REFSECT2"
3240><A
3241NAME="AEN9123"
3242></A
3243><H3
3244><A
3245NAME="XMLCOPYENUMERATION"
3246></A
3247>xmlCopyEnumeration ()</H3
3248><TABLE
3249BORDER="0"
3250BGCOLOR="#D6E8FF"
3251WIDTH="100%"
3252CELLPADDING="6"
3253><TR
3254><TD
3255><PRE
3256CLASS="PROGRAMLISTING"
3257><A
3258HREF="libxml-tree.html#XMLENUMERATIONPTR"
3259>xmlEnumerationPtr</A
3260> xmlCopyEnumeration        (<A
3261HREF="libxml-tree.html#XMLENUMERATIONPTR"
3262>xmlEnumerationPtr</A
3263> cur);</PRE
3264></TD
3265></TR
3266></TABLE
3267><P
3268>Copy an enumeration attribute node (recursive).</P
3269><P
3270></P
3271><DIV
3272CLASS="INFORMALTABLE"
3273><A
3274NAME="AEN9131"
3275></A
3276><P
3277></P
3278><TABLE
3279BORDER="0"
3280WIDTH="100%"
3281BGCOLOR="#FFD0D0"
3282CELLSPACING="0"
3283CELLPADDING="4"
3284CLASS="CALSTABLE"
3285><TBODY
3286><TR
3287><TD
3288WIDTH="20%"
3289ALIGN="RIGHT"
3290VALIGN="TOP"
3291><TT
3292CLASS="PARAMETER"
3293><I
3294>cur</I
3295></TT
3296>&nbsp;:</TD
3297><TD
3298WIDTH="80%"
3299ALIGN="LEFT"
3300VALIGN="TOP"
3301>  the tree to copy.</TD
3302></TR
3303><TR
3304><TD
3305WIDTH="20%"
3306ALIGN="RIGHT"
3307VALIGN="TOP"
3308><I
3309CLASS="EMPHASIS"
3310>Returns</I
3311> :</TD
3312><TD
3313WIDTH="80%"
3314ALIGN="LEFT"
3315VALIGN="TOP"
3316>the xmlEnumerationPtr just created or NULL in case
3317of error.</TD
3318></TR
3319></TBODY
3320></TABLE
3321><P
3322></P
3323></DIV
3324></DIV
3325><HR><DIV
3326CLASS="REFSECT2"
3327><A
3328NAME="AEN9144"
3329></A
3330><H3
3331><A
3332NAME="XMLADDATTRIBUTEDECL"
3333></A
3334>xmlAddAttributeDecl ()</H3
3335><TABLE
3336BORDER="0"
3337BGCOLOR="#D6E8FF"
3338WIDTH="100%"
3339CELLPADDING="6"
3340><TR
3341><TD
3342><PRE
3343CLASS="PROGRAMLISTING"
3344><A
3345HREF="libxml-tree.html#XMLATTRIBUTEPTR"
3346>xmlAttributePtr</A
3347> xmlAddAttributeDecl         (<A
3348HREF="libxml-valid.html#XMLVALIDCTXTPTR"
3349>xmlValidCtxtPtr</A
3350> ctxt,
3351                                             <A
3352HREF="libxml-tree.html#XMLDTDPTR"
3353>xmlDtdPtr</A
3354> dtd,
3355                                             const <A
3356HREF="libxml-tree.html#XMLCHAR"
3357>xmlChar</A
3358> *elem,
3359                                             const <A
3360HREF="libxml-tree.html#XMLCHAR"
3361>xmlChar</A
3362> *name,
3363                                             const <A
3364HREF="libxml-tree.html#XMLCHAR"
3365>xmlChar</A
3366> *ns,
3367                                             <A
3368HREF="libxml-tree.html#XMLATTRIBUTETYPE"
3369>xmlAttributeType</A
3370> type,
3371                                             <A
3372HREF="libxml-tree.html#XMLATTRIBUTEDEFAULT"
3373>xmlAttributeDefault</A
3374> def,
3375                                             const <A
3376HREF="libxml-tree.html#XMLCHAR"
3377>xmlChar</A
3378> *defaultValue,
3379                                             <A
3380HREF="libxml-tree.html#XMLENUMERATIONPTR"
3381>xmlEnumerationPtr</A
3382> tree);</PRE
3383></TD
3384></TR
3385></TABLE
3386><P
3387>Register a new attribute declaration
3388Note that <TT
3389CLASS="PARAMETER"
3390><I
3391>tree</I
3392></TT
3393> becomes the ownership of the DTD</P
3394><P
3395></P
3396><DIV
3397CLASS="INFORMALTABLE"
3398><A
3399NAME="AEN9161"
3400></A
3401><P
3402></P
3403><TABLE
3404BORDER="0"
3405WIDTH="100%"
3406BGCOLOR="#FFD0D0"
3407CELLSPACING="0"
3408CELLPADDING="4"
3409CLASS="CALSTABLE"
3410><TBODY
3411><TR
3412><TD
3413WIDTH="20%"
3414ALIGN="RIGHT"
3415VALIGN="TOP"
3416><TT
3417CLASS="PARAMETER"
3418><I
3419>ctxt</I
3420></TT
3421>&nbsp;:</TD
3422><TD
3423WIDTH="80%"
3424ALIGN="LEFT"
3425VALIGN="TOP"
3426>  the validation context</TD
3427></TR
3428><TR
3429><TD
3430WIDTH="20%"
3431ALIGN="RIGHT"
3432VALIGN="TOP"
3433><TT
3434CLASS="PARAMETER"
3435><I
3436>dtd</I
3437></TT
3438>&nbsp;:</TD
3439><TD
3440WIDTH="80%"
3441ALIGN="LEFT"
3442VALIGN="TOP"
3443>  pointer to the DTD</TD
3444></TR
3445><TR
3446><TD
3447WIDTH="20%"
3448ALIGN="RIGHT"
3449VALIGN="TOP"
3450><TT
3451CLASS="PARAMETER"
3452><I
3453>elem</I
3454></TT
3455>&nbsp;:</TD
3456><TD
3457WIDTH="80%"
3458ALIGN="LEFT"
3459VALIGN="TOP"
3460>  the element name</TD
3461></TR
3462><TR
3463><TD
3464WIDTH="20%"
3465ALIGN="RIGHT"
3466VALIGN="TOP"
3467><TT
3468CLASS="PARAMETER"
3469><I
3470>name</I
3471></TT
3472>&nbsp;:</TD
3473><TD
3474WIDTH="80%"
3475ALIGN="LEFT"
3476VALIGN="TOP"
3477>  the attribute name</TD
3478></TR
3479><TR
3480><TD
3481WIDTH="20%"
3482ALIGN="RIGHT"
3483VALIGN="TOP"
3484><TT
3485CLASS="PARAMETER"
3486><I
3487>ns</I
3488></TT
3489>&nbsp;:</TD
3490><TD
3491WIDTH="80%"
3492ALIGN="LEFT"
3493VALIGN="TOP"
3494>  the attribute namespace prefix</TD
3495></TR
3496><TR
3497><TD
3498WIDTH="20%"
3499ALIGN="RIGHT"
3500VALIGN="TOP"
3501><TT
3502CLASS="PARAMETER"
3503><I
3504>type</I
3505></TT
3506>&nbsp;:</TD
3507><TD
3508WIDTH="80%"
3509ALIGN="LEFT"
3510VALIGN="TOP"
3511>  the attribute type</TD
3512></TR
3513><TR
3514><TD
3515WIDTH="20%"
3516ALIGN="RIGHT"
3517VALIGN="TOP"
3518><TT
3519CLASS="PARAMETER"
3520><I
3521>def</I
3522></TT
3523>&nbsp;:</TD
3524><TD
3525WIDTH="80%"
3526ALIGN="LEFT"
3527VALIGN="TOP"
3528>  the attribute default type</TD
3529></TR
3530><TR
3531><TD
3532WIDTH="20%"
3533ALIGN="RIGHT"
3534VALIGN="TOP"
3535><TT
3536CLASS="PARAMETER"
3537><I
3538>defaultValue</I
3539></TT
3540>&nbsp;:</TD
3541><TD
3542WIDTH="80%"
3543ALIGN="LEFT"
3544VALIGN="TOP"
3545>  the attribute default value</TD
3546></TR
3547><TR
3548><TD
3549WIDTH="20%"
3550ALIGN="RIGHT"
3551VALIGN="TOP"
3552><TT
3553CLASS="PARAMETER"
3554><I
3555>tree</I
3556></TT
3557>&nbsp;:</TD
3558><TD
3559WIDTH="80%"
3560ALIGN="LEFT"
3561VALIGN="TOP"
3562>  if it's an enumeration, the associated list</TD
3563></TR
3564><TR
3565><TD
3566WIDTH="20%"
3567ALIGN="RIGHT"
3568VALIGN="TOP"
3569><I
3570CLASS="EMPHASIS"
3571>Returns</I
3572> :</TD
3573><TD
3574WIDTH="80%"
3575ALIGN="LEFT"
3576VALIGN="TOP"
3577>NULL if not new, otherwise the attribute decl</TD
3578></TR
3579></TBODY
3580></TABLE
3581><P
3582></P
3583></DIV
3584></DIV
3585><HR><DIV
3586CLASS="REFSECT2"
3587><A
3588NAME="AEN9206"
3589></A
3590><H3
3591><A
3592NAME="XMLCOPYATTRIBUTETABLE"
3593></A
3594>xmlCopyAttributeTable ()</H3
3595><TABLE
3596BORDER="0"
3597BGCOLOR="#D6E8FF"
3598WIDTH="100%"
3599CELLPADDING="6"
3600><TR
3601><TD
3602><PRE
3603CLASS="PROGRAMLISTING"
3604><A
3605HREF="libxml-valid.html#XMLATTRIBUTETABLEPTR"
3606>xmlAttributeTablePtr</A
3607> xmlCopyAttributeTable  (<A
3608HREF="libxml-valid.html#XMLATTRIBUTETABLEPTR"
3609>xmlAttributeTablePtr</A
3610> table);</PRE
3611></TD
3612></TR
3613></TABLE
3614><P
3615>Build a copy of an attribute table.</P
3616><P
3617></P
3618><DIV
3619CLASS="INFORMALTABLE"
3620><A
3621NAME="AEN9214"
3622></A
3623><P
3624></P
3625><TABLE
3626BORDER="0"
3627WIDTH="100%"
3628BGCOLOR="#FFD0D0"
3629CELLSPACING="0"
3630CELLPADDING="4"
3631CLASS="CALSTABLE"
3632><TBODY
3633><TR
3634><TD
3635WIDTH="20%"
3636ALIGN="RIGHT"
3637VALIGN="TOP"
3638><TT
3639CLASS="PARAMETER"
3640><I
3641>table</I
3642></TT
3643>&nbsp;:</TD
3644><TD
3645WIDTH="80%"
3646ALIGN="LEFT"
3647VALIGN="TOP"
3648>  An attribute table</TD
3649></TR
3650><TR
3651><TD
3652WIDTH="20%"
3653ALIGN="RIGHT"
3654VALIGN="TOP"
3655><I
3656CLASS="EMPHASIS"
3657>Returns</I
3658> :</TD
3659><TD
3660WIDTH="80%"
3661ALIGN="LEFT"
3662VALIGN="TOP"
3663>the new xmlAttributeTablePtr or NULL in case of error.</TD
3664></TR
3665></TBODY
3666></TABLE
3667><P
3668></P
3669></DIV
3670></DIV
3671><HR><DIV
3672CLASS="REFSECT2"
3673><A
3674NAME="AEN9227"
3675></A
3676><H3
3677><A
3678NAME="XMLFREEATTRIBUTETABLE"
3679></A
3680>xmlFreeAttributeTable ()</H3
3681><TABLE
3682BORDER="0"
3683BGCOLOR="#D6E8FF"
3684WIDTH="100%"
3685CELLPADDING="6"
3686><TR
3687><TD
3688><PRE
3689CLASS="PROGRAMLISTING"
3690>void        xmlFreeAttributeTable           (<A
3691HREF="libxml-valid.html#XMLATTRIBUTETABLEPTR"
3692>xmlAttributeTablePtr</A
3693> table);</PRE
3694></TD
3695></TR
3696></TABLE
3697><P
3698>Deallocate the memory used by an entities hash table.</P
3699><P
3700></P
3701><DIV
3702CLASS="INFORMALTABLE"
3703><A
3704NAME="AEN9234"
3705></A
3706><P
3707></P
3708><TABLE
3709BORDER="0"
3710WIDTH="100%"
3711BGCOLOR="#FFD0D0"
3712CELLSPACING="0"
3713CELLPADDING="4"
3714CLASS="CALSTABLE"
3715><TBODY
3716><TR
3717><TD
3718WIDTH="20%"
3719ALIGN="RIGHT"
3720VALIGN="TOP"
3721><TT
3722CLASS="PARAMETER"
3723><I
3724>table</I
3725></TT
3726>&nbsp;:</TD
3727><TD
3728WIDTH="80%"
3729ALIGN="LEFT"
3730VALIGN="TOP"
3731>  An attribute table</TD
3732></TR
3733></TBODY
3734></TABLE
3735><P
3736></P
3737></DIV
3738></DIV
3739><HR><DIV
3740CLASS="REFSECT2"
3741><A
3742NAME="AEN9243"
3743></A
3744><H3
3745><A
3746NAME="XMLDUMPATTRIBUTETABLE"
3747></A
3748>xmlDumpAttributeTable ()</H3
3749><TABLE
3750BORDER="0"
3751BGCOLOR="#D6E8FF"
3752WIDTH="100%"
3753CELLPADDING="6"
3754><TR
3755><TD
3756><PRE
3757CLASS="PROGRAMLISTING"
3758>void        xmlDumpAttributeTable           (<A
3759HREF="libxml-tree.html#XMLBUFFERPTR"
3760>xmlBufferPtr</A
3761> buf,
3762                                             <A
3763HREF="libxml-valid.html#XMLATTRIBUTETABLEPTR"
3764>xmlAttributeTablePtr</A
3765> table);</PRE
3766></TD
3767></TR
3768></TABLE
3769><P
3770>This will dump the content of the attribute table as an XML DTD definition</P
3771><P
3772></P
3773><DIV
3774CLASS="INFORMALTABLE"
3775><A
3776NAME="AEN9251"
3777></A
3778><P
3779></P
3780><TABLE
3781BORDER="0"
3782WIDTH="100%"
3783BGCOLOR="#FFD0D0"
3784CELLSPACING="0"
3785CELLPADDING="4"
3786CLASS="CALSTABLE"
3787><TBODY
3788><TR
3789><TD
3790WIDTH="20%"
3791ALIGN="RIGHT"
3792VALIGN="TOP"
3793><TT
3794CLASS="PARAMETER"
3795><I
3796>buf</I
3797></TT
3798>&nbsp;:</TD
3799><TD
3800WIDTH="80%"
3801ALIGN="LEFT"
3802VALIGN="TOP"
3803>  the XML buffer output</TD
3804></TR
3805><TR
3806><TD
3807WIDTH="20%"
3808ALIGN="RIGHT"
3809VALIGN="TOP"
3810><TT
3811CLASS="PARAMETER"
3812><I
3813>table</I
3814></TT
3815>&nbsp;:</TD
3816><TD
3817WIDTH="80%"
3818ALIGN="LEFT"
3819VALIGN="TOP"
3820>  An attribute table</TD
3821></TR
3822></TBODY
3823></TABLE
3824><P
3825></P
3826></DIV
3827></DIV
3828><HR><DIV
3829CLASS="REFSECT2"
3830><A
3831NAME="AEN9264"
3832></A
3833><H3
3834><A
3835NAME="XMLDUMPATTRIBUTEDECL"
3836></A
3837>xmlDumpAttributeDecl ()</H3
3838><TABLE
3839BORDER="0"
3840BGCOLOR="#D6E8FF"
3841WIDTH="100%"
3842CELLPADDING="6"
3843><TR
3844><TD
3845><PRE
3846CLASS="PROGRAMLISTING"
3847>void        xmlDumpAttributeDecl            (<A
3848HREF="libxml-tree.html#XMLBUFFERPTR"
3849>xmlBufferPtr</A
3850> buf,
3851                                             <A
3852HREF="libxml-tree.html#XMLATTRIBUTEPTR"
3853>xmlAttributePtr</A
3854> attr);</PRE
3855></TD
3856></TR
3857></TABLE
3858><P
3859>This will dump the content of the attribute declaration as an XML
3860DTD definition</P
3861><P
3862></P
3863><DIV
3864CLASS="INFORMALTABLE"
3865><A
3866NAME="AEN9272"
3867></A
3868><P
3869></P
3870><TABLE
3871BORDER="0"
3872WIDTH="100%"
3873BGCOLOR="#FFD0D0"
3874CELLSPACING="0"
3875CELLPADDING="4"
3876CLASS="CALSTABLE"
3877><TBODY
3878><TR
3879><TD
3880WIDTH="20%"
3881ALIGN="RIGHT"
3882VALIGN="TOP"
3883><TT
3884CLASS="PARAMETER"
3885><I
3886>buf</I
3887></TT
3888>&nbsp;:</TD
3889><TD
3890WIDTH="80%"
3891ALIGN="LEFT"
3892VALIGN="TOP"
3893>  the XML buffer output</TD
3894></TR
3895><TR
3896><TD
3897WIDTH="20%"
3898ALIGN="RIGHT"
3899VALIGN="TOP"
3900><TT
3901CLASS="PARAMETER"
3902><I
3903>attr</I
3904></TT
3905>&nbsp;:</TD
3906><TD
3907WIDTH="80%"
3908ALIGN="LEFT"
3909VALIGN="TOP"
3910>  An attribute declaration</TD
3911></TR
3912></TBODY
3913></TABLE
3914><P
3915></P
3916></DIV
3917></DIV
3918><HR><DIV
3919CLASS="REFSECT2"
3920><A
3921NAME="AEN9285"
3922></A
3923><H3
3924><A
3925NAME="XMLADDID"
3926></A
3927>xmlAddID ()</H3
3928><TABLE
3929BORDER="0"
3930BGCOLOR="#D6E8FF"
3931WIDTH="100%"
3932CELLPADDING="6"
3933><TR
3934><TD
3935><PRE
3936CLASS="PROGRAMLISTING"
3937><A
3938HREF="libxml-tree.html#XMLIDPTR"
3939>xmlIDPtr</A
3940>    xmlAddID                        (<A
3941HREF="libxml-valid.html#XMLVALIDCTXTPTR"
3942>xmlValidCtxtPtr</A
3943> ctxt,
3944                                             <A
3945HREF="libxml-tree.html#XMLDOCPTR"
3946>xmlDocPtr</A
3947> doc,
3948                                             const <A
3949HREF="libxml-tree.html#XMLCHAR"
3950>xmlChar</A
3951> *value,
3952                                             <A
3953HREF="libxml-tree.html#XMLATTRPTR"
3954>xmlAttrPtr</A
3955> attr);</PRE
3956></TD
3957></TR
3958></TABLE
3959><P
3960>Register a new id declaration</P
3961><P
3962></P
3963><DIV
3964CLASS="INFORMALTABLE"
3965><A
3966NAME="AEN9296"
3967></A
3968><P
3969></P
3970><TABLE
3971BORDER="0"
3972WIDTH="100%"
3973BGCOLOR="#FFD0D0"
3974CELLSPACING="0"
3975CELLPADDING="4"
3976CLASS="CALSTABLE"
3977><TBODY
3978><TR
3979><TD
3980WIDTH="20%"
3981ALIGN="RIGHT"
3982VALIGN="TOP"
3983><TT
3984CLASS="PARAMETER"
3985><I
3986>ctxt</I
3987></TT
3988>&nbsp;:</TD
3989><TD
3990WIDTH="80%"
3991ALIGN="LEFT"
3992VALIGN="TOP"
3993>  the validation context</TD
3994></TR
3995><TR
3996><TD
3997WIDTH="20%"
3998ALIGN="RIGHT"
3999VALIGN="TOP"
4000><TT
4001CLASS="PARAMETER"
4002><I
4003>doc</I
4004></TT
4005>&nbsp;:</TD
4006><TD
4007WIDTH="80%"
4008ALIGN="LEFT"
4009VALIGN="TOP"
4010>  pointer to the document</TD
4011></TR
4012><TR
4013><TD
4014WIDTH="20%"
4015ALIGN="RIGHT"
4016VALIGN="TOP"
4017><TT
4018CLASS="PARAMETER"
4019><I
4020>value</I
4021></TT
4022>&nbsp;:</TD
4023><TD
4024WIDTH="80%"
4025ALIGN="LEFT"
4026VALIGN="TOP"
4027>  the value name</TD
4028></TR
4029><TR
4030><TD
4031WIDTH="20%"
4032ALIGN="RIGHT"
4033VALIGN="TOP"
4034><TT
4035CLASS="PARAMETER"
4036><I
4037>attr</I
4038></TT
4039>&nbsp;:</TD
4040><TD
4041WIDTH="80%"
4042ALIGN="LEFT"
4043VALIGN="TOP"
4044>  the attribute holding the ID</TD
4045></TR
4046><TR
4047><TD
4048WIDTH="20%"
4049ALIGN="RIGHT"
4050VALIGN="TOP"
4051><I
4052CLASS="EMPHASIS"
4053>Returns</I
4054> :</TD
4055><TD
4056WIDTH="80%"
4057ALIGN="LEFT"
4058VALIGN="TOP"
4059>NULL if not, otherwise the new xmlIDPtr</TD
4060></TR
4061></TBODY
4062></TABLE
4063><P
4064></P
4065></DIV
4066></DIV
4067><HR><DIV
4068CLASS="REFSECT2"
4069><A
4070NAME="AEN9321"
4071></A
4072><H3
4073><A
4074NAME="XMLFREEIDTABLE"
4075></A
4076>xmlFreeIDTable ()</H3
4077><TABLE
4078BORDER="0"
4079BGCOLOR="#D6E8FF"
4080WIDTH="100%"
4081CELLPADDING="6"
4082><TR
4083><TD
4084><PRE
4085CLASS="PROGRAMLISTING"
4086>void        xmlFreeIDTable                  (<A
4087HREF="libxml-valid.html#XMLIDTABLEPTR"
4088>xmlIDTablePtr</A
4089> table);</PRE
4090></TD
4091></TR
4092></TABLE
4093><P
4094>Deallocate the memory used by an ID hash table.</P
4095><P
4096></P
4097><DIV
4098CLASS="INFORMALTABLE"
4099><A
4100NAME="AEN9328"
4101></A
4102><P
4103></P
4104><TABLE
4105BORDER="0"
4106WIDTH="100%"
4107BGCOLOR="#FFD0D0"
4108CELLSPACING="0"
4109CELLPADDING="4"
4110CLASS="CALSTABLE"
4111><TBODY
4112><TR
4113><TD
4114WIDTH="20%"
4115ALIGN="RIGHT"
4116VALIGN="TOP"
4117><TT
4118CLASS="PARAMETER"
4119><I
4120>table</I
4121></TT
4122>&nbsp;:</TD
4123><TD
4124WIDTH="80%"
4125ALIGN="LEFT"
4126VALIGN="TOP"
4127>  An id table</TD
4128></TR
4129></TBODY
4130></TABLE
4131><P
4132></P
4133></DIV
4134></DIV
4135><HR><DIV
4136CLASS="REFSECT2"
4137><A
4138NAME="AEN9337"
4139></A
4140><H3
4141><A
4142NAME="XMLGETID"
4143></A
4144>xmlGetID ()</H3
4145><TABLE
4146BORDER="0"
4147BGCOLOR="#D6E8FF"
4148WIDTH="100%"
4149CELLPADDING="6"
4150><TR
4151><TD
4152><PRE
4153CLASS="PROGRAMLISTING"
4154><A
4155HREF="libxml-tree.html#XMLATTRPTR"
4156>xmlAttrPtr</A
4157>  xmlGetID                        (<A
4158HREF="libxml-tree.html#XMLDOCPTR"
4159>xmlDocPtr</A
4160> doc,
4161                                             const <A
4162HREF="libxml-tree.html#XMLCHAR"
4163>xmlChar</A
4164> *ID);</PRE
4165></TD
4166></TR
4167></TABLE
4168><P
4169>Search the attribute declaring the given ID</P
4170><P
4171></P
4172><DIV
4173CLASS="INFORMALTABLE"
4174><A
4175NAME="AEN9346"
4176></A
4177><P
4178></P
4179><TABLE
4180BORDER="0"
4181WIDTH="100%"
4182BGCOLOR="#FFD0D0"
4183CELLSPACING="0"
4184CELLPADDING="4"
4185CLASS="CALSTABLE"
4186><TBODY
4187><TR
4188><TD
4189WIDTH="20%"
4190ALIGN="RIGHT"
4191VALIGN="TOP"
4192><TT
4193CLASS="PARAMETER"
4194><I
4195>doc</I
4196></TT
4197>&nbsp;:</TD
4198><TD
4199WIDTH="80%"
4200ALIGN="LEFT"
4201VALIGN="TOP"
4202>  pointer to the document</TD
4203></TR
4204><TR
4205><TD
4206WIDTH="20%"
4207ALIGN="RIGHT"
4208VALIGN="TOP"
4209><TT
4210CLASS="PARAMETER"
4211><I
4212>ID</I
4213></TT
4214>&nbsp;:</TD
4215><TD
4216WIDTH="80%"
4217ALIGN="LEFT"
4218VALIGN="TOP"
4219>  the ID value</TD
4220></TR
4221><TR
4222><TD
4223WIDTH="20%"
4224ALIGN="RIGHT"
4225VALIGN="TOP"
4226><I
4227CLASS="EMPHASIS"
4228>Returns</I
4229> :</TD
4230><TD
4231WIDTH="80%"
4232ALIGN="LEFT"
4233VALIGN="TOP"
4234>NULL if not found, otherwise the xmlAttrPtr defining the ID</TD
4235></TR
4236></TBODY
4237></TABLE
4238><P
4239></P
4240></DIV
4241></DIV
4242><HR><DIV
4243CLASS="REFSECT2"
4244><A
4245NAME="AEN9363"
4246></A
4247><H3
4248><A
4249NAME="XMLISID"
4250></A
4251>xmlIsID ()</H3
4252><TABLE
4253BORDER="0"
4254BGCOLOR="#D6E8FF"
4255WIDTH="100%"
4256CELLPADDING="6"
4257><TR
4258><TD
4259><PRE
4260CLASS="PROGRAMLISTING"
4261>int         xmlIsID                         (<A
4262HREF="libxml-tree.html#XMLDOCPTR"
4263>xmlDocPtr</A
4264> doc,
4265                                             <A
4266HREF="libxml-tree.html#XMLNODEPTR"
4267>xmlNodePtr</A
4268> elem,
4269                                             <A
4270HREF="libxml-tree.html#XMLATTRPTR"
4271>xmlAttrPtr</A
4272> attr);</PRE
4273></TD
4274></TR
4275></TABLE
4276><P
4277>Determine whether an attribute is of type ID. In case we have DTD(s)
4278then this is simple, otherwise we use an heuristic: name ID (upper
4279or lowercase).</P
4280><P
4281></P
4282><DIV
4283CLASS="INFORMALTABLE"
4284><A
4285NAME="AEN9372"
4286></A
4287><P
4288></P
4289><TABLE
4290BORDER="0"
4291WIDTH="100%"
4292BGCOLOR="#FFD0D0"
4293CELLSPACING="0"
4294CELLPADDING="4"
4295CLASS="CALSTABLE"
4296><TBODY
4297><TR
4298><TD
4299WIDTH="20%"
4300ALIGN="RIGHT"
4301VALIGN="TOP"
4302><TT
4303CLASS="PARAMETER"
4304><I
4305>doc</I
4306></TT
4307>&nbsp;:</TD
4308><TD
4309WIDTH="80%"
4310ALIGN="LEFT"
4311VALIGN="TOP"
4312>  the document</TD
4313></TR
4314><TR
4315><TD
4316WIDTH="20%"
4317ALIGN="RIGHT"
4318VALIGN="TOP"
4319><TT
4320CLASS="PARAMETER"
4321><I
4322>elem</I
4323></TT
4324>&nbsp;:</TD
4325><TD
4326WIDTH="80%"
4327ALIGN="LEFT"
4328VALIGN="TOP"
4329>  the element carrying the attribute</TD
4330></TR
4331><TR
4332><TD
4333WIDTH="20%"
4334ALIGN="RIGHT"
4335VALIGN="TOP"
4336><TT
4337CLASS="PARAMETER"
4338><I
4339>attr</I
4340></TT
4341>&nbsp;:</TD
4342><TD
4343WIDTH="80%"
4344ALIGN="LEFT"
4345VALIGN="TOP"
4346>  the attribute</TD
4347></TR
4348><TR
4349><TD
4350WIDTH="20%"
4351ALIGN="RIGHT"
4352VALIGN="TOP"
4353><I
4354CLASS="EMPHASIS"
4355>Returns</I
4356> :</TD
4357><TD
4358WIDTH="80%"
4359ALIGN="LEFT"
4360VALIGN="TOP"
4361>0 or 1 depending on the lookup result</TD
4362></TR
4363></TBODY
4364></TABLE
4365><P
4366></P
4367></DIV
4368></DIV
4369><HR><DIV
4370CLASS="REFSECT2"
4371><A
4372NAME="AEN9393"
4373></A
4374><H3
4375><A
4376NAME="XMLREMOVEID"
4377></A
4378>xmlRemoveID ()</H3
4379><TABLE
4380BORDER="0"
4381BGCOLOR="#D6E8FF"
4382WIDTH="100%"
4383CELLPADDING="6"
4384><TR
4385><TD
4386><PRE
4387CLASS="PROGRAMLISTING"
4388>int         xmlRemoveID                     (<A
4389HREF="libxml-tree.html#XMLDOCPTR"
4390>xmlDocPtr</A
4391> doc,
4392                                             <A
4393HREF="libxml-tree.html#XMLATTRPTR"
4394>xmlAttrPtr</A
4395> attr);</PRE
4396></TD
4397></TR
4398></TABLE
4399><P
4400>Remove the given attribute from the ID table maintained internally.</P
4401><P
4402></P
4403><DIV
4404CLASS="INFORMALTABLE"
4405><A
4406NAME="AEN9401"
4407></A
4408><P
4409></P
4410><TABLE
4411BORDER="0"
4412WIDTH="100%"
4413BGCOLOR="#FFD0D0"
4414CELLSPACING="0"
4415CELLPADDING="4"
4416CLASS="CALSTABLE"
4417><TBODY
4418><TR
4419><TD
4420WIDTH="20%"
4421ALIGN="RIGHT"
4422VALIGN="TOP"
4423><TT
4424CLASS="PARAMETER"
4425><I
4426>doc</I
4427></TT
4428>&nbsp;:</TD
4429><TD
4430WIDTH="80%"
4431ALIGN="LEFT"
4432VALIGN="TOP"
4433>  the document</TD
4434></TR
4435><TR
4436><TD
4437WIDTH="20%"
4438ALIGN="RIGHT"
4439VALIGN="TOP"
4440><TT
4441CLASS="PARAMETER"
4442><I
4443>attr</I
4444></TT
4445>&nbsp;:</TD
4446><TD
4447WIDTH="80%"
4448ALIGN="LEFT"
4449VALIGN="TOP"
4450>  the attribute</TD
4451></TR
4452><TR
4453><TD
4454WIDTH="20%"
4455ALIGN="RIGHT"
4456VALIGN="TOP"
4457><I
4458CLASS="EMPHASIS"
4459>Returns</I
4460> :</TD
4461><TD
4462WIDTH="80%"
4463ALIGN="LEFT"
4464VALIGN="TOP"
4465>-1 if the lookup failed and 0 otherwise</TD
4466></TR
4467></TBODY
4468></TABLE
4469><P
4470></P
4471></DIV
4472></DIV
4473><HR><DIV
4474CLASS="REFSECT2"
4475><A
4476NAME="AEN9418"
4477></A
4478><H3
4479><A
4480NAME="XMLADDREF"
4481></A
4482>xmlAddRef ()</H3
4483><TABLE
4484BORDER="0"
4485BGCOLOR="#D6E8FF"
4486WIDTH="100%"
4487CELLPADDING="6"
4488><TR
4489><TD
4490><PRE
4491CLASS="PROGRAMLISTING"
4492><A
4493HREF="libxml-tree.html#XMLREFPTR"
4494>xmlRefPtr</A
4495>   xmlAddRef                       (<A
4496HREF="libxml-valid.html#XMLVALIDCTXTPTR"
4497>xmlValidCtxtPtr</A
4498> ctxt,
4499                                             <A
4500HREF="libxml-tree.html#XMLDOCPTR"
4501>xmlDocPtr</A
4502> doc,
4503                                             const <A
4504HREF="libxml-tree.html#XMLCHAR"
4505>xmlChar</A
4506> *value,
4507                                             <A
4508HREF="libxml-tree.html#XMLATTRPTR"
4509>xmlAttrPtr</A
4510> attr);</PRE
4511></TD
4512></TR
4513></TABLE
4514><P
4515>Register a new ref declaration</P
4516><P
4517></P
4518><DIV
4519CLASS="INFORMALTABLE"
4520><A
4521NAME="AEN9429"
4522></A
4523><P
4524></P
4525><TABLE
4526BORDER="0"
4527WIDTH="100%"
4528BGCOLOR="#FFD0D0"
4529CELLSPACING="0"
4530CELLPADDING="4"
4531CLASS="CALSTABLE"
4532><TBODY
4533><TR
4534><TD
4535WIDTH="20%"
4536ALIGN="RIGHT"
4537VALIGN="TOP"
4538><TT
4539CLASS="PARAMETER"
4540><I
4541>ctxt</I
4542></TT
4543>&nbsp;:</TD
4544><TD
4545WIDTH="80%"
4546ALIGN="LEFT"
4547VALIGN="TOP"
4548>  the validation context</TD
4549></TR
4550><TR
4551><TD
4552WIDTH="20%"
4553ALIGN="RIGHT"
4554VALIGN="TOP"
4555><TT
4556CLASS="PARAMETER"
4557><I
4558>doc</I
4559></TT
4560>&nbsp;:</TD
4561><TD
4562WIDTH="80%"
4563ALIGN="LEFT"
4564VALIGN="TOP"
4565>  pointer to the document</TD
4566></TR
4567><TR
4568><TD
4569WIDTH="20%"
4570ALIGN="RIGHT"
4571VALIGN="TOP"
4572><TT
4573CLASS="PARAMETER"
4574><I
4575>value</I
4576></TT
4577>&nbsp;:</TD
4578><TD
4579WIDTH="80%"
4580ALIGN="LEFT"
4581VALIGN="TOP"
4582>  the value name</TD
4583></TR
4584><TR
4585><TD
4586WIDTH="20%"
4587ALIGN="RIGHT"
4588VALIGN="TOP"
4589><TT
4590CLASS="PARAMETER"
4591><I
4592>attr</I
4593></TT
4594>&nbsp;:</TD
4595><TD
4596WIDTH="80%"
4597ALIGN="LEFT"
4598VALIGN="TOP"
4599>  the attribute holding the Ref</TD
4600></TR
4601><TR
4602><TD
4603WIDTH="20%"
4604ALIGN="RIGHT"
4605VALIGN="TOP"
4606><I
4607CLASS="EMPHASIS"
4608>Returns</I
4609> :</TD
4610><TD
4611WIDTH="80%"
4612ALIGN="LEFT"
4613VALIGN="TOP"
4614>NULL if not, otherwise the new xmlRefPtr</TD
4615></TR
4616></TBODY
4617></TABLE
4618><P
4619></P
4620></DIV
4621></DIV
4622><HR><DIV
4623CLASS="REFSECT2"
4624><A
4625NAME="AEN9454"
4626></A
4627><H3
4628><A
4629NAME="XMLFREEREFTABLE"
4630></A
4631>xmlFreeRefTable ()</H3
4632><TABLE
4633BORDER="0"
4634BGCOLOR="#D6E8FF"
4635WIDTH="100%"
4636CELLPADDING="6"
4637><TR
4638><TD
4639><PRE
4640CLASS="PROGRAMLISTING"
4641>void        xmlFreeRefTable                 (<A
4642HREF="libxml-valid.html#XMLREFTABLEPTR"
4643>xmlRefTablePtr</A
4644> table);</PRE
4645></TD
4646></TR
4647></TABLE
4648><P
4649>Deallocate the memory used by an Ref hash table.</P
4650><P
4651></P
4652><DIV
4653CLASS="INFORMALTABLE"
4654><A
4655NAME="AEN9461"
4656></A
4657><P
4658></P
4659><TABLE
4660BORDER="0"
4661WIDTH="100%"
4662BGCOLOR="#FFD0D0"
4663CELLSPACING="0"
4664CELLPADDING="4"
4665CLASS="CALSTABLE"
4666><TBODY
4667><TR
4668><TD
4669WIDTH="20%"
4670ALIGN="RIGHT"
4671VALIGN="TOP"
4672><TT
4673CLASS="PARAMETER"
4674><I
4675>table</I
4676></TT
4677>&nbsp;:</TD
4678><TD
4679WIDTH="80%"
4680ALIGN="LEFT"
4681VALIGN="TOP"
4682>  An ref table</TD
4683></TR
4684></TBODY
4685></TABLE
4686><P
4687></P
4688></DIV
4689></DIV
4690><HR><DIV
4691CLASS="REFSECT2"
4692><A
4693NAME="AEN9470"
4694></A
4695><H3
4696><A
4697NAME="XMLISREF"
4698></A
4699>xmlIsRef ()</H3
4700><TABLE
4701BORDER="0"
4702BGCOLOR="#D6E8FF"
4703WIDTH="100%"
4704CELLPADDING="6"
4705><TR
4706><TD
4707><PRE
4708CLASS="PROGRAMLISTING"
4709>int         xmlIsRef                        (<A
4710HREF="libxml-tree.html#XMLDOCPTR"
4711>xmlDocPtr</A
4712> doc,
4713                                             <A
4714HREF="libxml-tree.html#XMLNODEPTR"
4715>xmlNodePtr</A
4716> elem,
4717                                             <A
4718HREF="libxml-tree.html#XMLATTRPTR"
4719>xmlAttrPtr</A
4720> attr);</PRE
4721></TD
4722></TR
4723></TABLE
4724><P
4725>Determine whether an attribute is of type Ref. In case we have DTD(s)
4726then this is simple, otherwise we use an heuristic: name Ref (upper
4727or lowercase).</P
4728><P
4729></P
4730><DIV
4731CLASS="INFORMALTABLE"
4732><A
4733NAME="AEN9479"
4734></A
4735><P
4736></P
4737><TABLE
4738BORDER="0"
4739WIDTH="100%"
4740BGCOLOR="#FFD0D0"
4741CELLSPACING="0"
4742CELLPADDING="4"
4743CLASS="CALSTABLE"
4744><TBODY
4745><TR
4746><TD
4747WIDTH="20%"
4748ALIGN="RIGHT"
4749VALIGN="TOP"
4750><TT
4751CLASS="PARAMETER"
4752><I
4753>doc</I
4754></TT
4755>&nbsp;:</TD
4756><TD
4757WIDTH="80%"
4758ALIGN="LEFT"
4759VALIGN="TOP"
4760>  the document</TD
4761></TR
4762><TR
4763><TD
4764WIDTH="20%"
4765ALIGN="RIGHT"
4766VALIGN="TOP"
4767><TT
4768CLASS="PARAMETER"
4769><I
4770>elem</I
4771></TT
4772>&nbsp;:</TD
4773><TD
4774WIDTH="80%"
4775ALIGN="LEFT"
4776VALIGN="TOP"
4777>  the element carrying the attribute</TD
4778></TR
4779><TR
4780><TD
4781WIDTH="20%"
4782ALIGN="RIGHT"
4783VALIGN="TOP"
4784><TT
4785CLASS="PARAMETER"
4786><I
4787>attr</I
4788></TT
4789>&nbsp;:</TD
4790><TD
4791WIDTH="80%"
4792ALIGN="LEFT"
4793VALIGN="TOP"
4794>  the attribute</TD
4795></TR
4796><TR
4797><TD
4798WIDTH="20%"
4799ALIGN="RIGHT"
4800VALIGN="TOP"
4801><I
4802CLASS="EMPHASIS"
4803>Returns</I
4804> :</TD
4805><TD
4806WIDTH="80%"
4807ALIGN="LEFT"
4808VALIGN="TOP"
4809>0 or 1 depending on the lookup result</TD
4810></TR
4811></TBODY
4812></TABLE
4813><P
4814></P
4815></DIV
4816></DIV
4817><HR><DIV
4818CLASS="REFSECT2"
4819><A
4820NAME="AEN9500"
4821></A
4822><H3
4823><A
4824NAME="XMLREMOVEREF"
4825></A
4826>xmlRemoveRef ()</H3
4827><TABLE
4828BORDER="0"
4829BGCOLOR="#D6E8FF"
4830WIDTH="100%"
4831CELLPADDING="6"
4832><TR
4833><TD
4834><PRE
4835CLASS="PROGRAMLISTING"
4836>int         xmlRemoveRef                    (<A
4837HREF="libxml-tree.html#XMLDOCPTR"
4838>xmlDocPtr</A
4839> doc,
4840                                             <A
4841HREF="libxml-tree.html#XMLATTRPTR"
4842>xmlAttrPtr</A
4843> attr);</PRE
4844></TD
4845></TR
4846></TABLE
4847><P
4848>Remove the given attribute from the Ref table maintained internally.</P
4849><P
4850></P
4851><DIV
4852CLASS="INFORMALTABLE"
4853><A
4854NAME="AEN9508"
4855></A
4856><P
4857></P
4858><TABLE
4859BORDER="0"
4860WIDTH="100%"
4861BGCOLOR="#FFD0D0"
4862CELLSPACING="0"
4863CELLPADDING="4"
4864CLASS="CALSTABLE"
4865><TBODY
4866><TR
4867><TD
4868WIDTH="20%"
4869ALIGN="RIGHT"
4870VALIGN="TOP"
4871><TT
4872CLASS="PARAMETER"
4873><I
4874>doc</I
4875></TT
4876>&nbsp;:</TD
4877><TD
4878WIDTH="80%"
4879ALIGN="LEFT"
4880VALIGN="TOP"
4881>  the document</TD
4882></TR
4883><TR
4884><TD
4885WIDTH="20%"
4886ALIGN="RIGHT"
4887VALIGN="TOP"
4888><TT
4889CLASS="PARAMETER"
4890><I
4891>attr</I
4892></TT
4893>&nbsp;:</TD
4894><TD
4895WIDTH="80%"
4896ALIGN="LEFT"
4897VALIGN="TOP"
4898>  the attribute</TD
4899></TR
4900><TR
4901><TD
4902WIDTH="20%"
4903ALIGN="RIGHT"
4904VALIGN="TOP"
4905><I
4906CLASS="EMPHASIS"
4907>Returns</I
4908> :</TD
4909><TD
4910WIDTH="80%"
4911ALIGN="LEFT"
4912VALIGN="TOP"
4913>-1 if the lookup failed and 0 otherwise</TD
4914></TR
4915></TBODY
4916></TABLE
4917><P
4918></P
4919></DIV
4920></DIV
4921><HR><DIV
4922CLASS="REFSECT2"
4923><A
4924NAME="AEN9525"
4925></A
4926><H3
4927><A
4928NAME="XMLGETREFS"
4929></A
4930>xmlGetRefs ()</H3
4931><TABLE
4932BORDER="0"
4933BGCOLOR="#D6E8FF"
4934WIDTH="100%"
4935CELLPADDING="6"
4936><TR
4937><TD
4938><PRE
4939CLASS="PROGRAMLISTING"
4940><GTKDOCLINK
4941HREF="XMLLISTPTR"
4942>xmlListPtr</GTKDOCLINK
4943>  xmlGetRefs                      (<A
4944HREF="libxml-tree.html#XMLDOCPTR"
4945>xmlDocPtr</A
4946> doc,
4947                                             const <A
4948HREF="libxml-tree.html#XMLCHAR"
4949>xmlChar</A
4950> *ID);</PRE
4951></TD
4952></TR
4953></TABLE
4954><P
4955>Find the set of references for the supplied ID.</P
4956><P
4957></P
4958><DIV
4959CLASS="INFORMALTABLE"
4960><A
4961NAME="AEN9534"
4962></A
4963><P
4964></P
4965><TABLE
4966BORDER="0"
4967WIDTH="100%"
4968BGCOLOR="#FFD0D0"
4969CELLSPACING="0"
4970CELLPADDING="4"
4971CLASS="CALSTABLE"
4972><TBODY
4973><TR
4974><TD
4975WIDTH="20%"
4976ALIGN="RIGHT"
4977VALIGN="TOP"
4978><TT
4979CLASS="PARAMETER"
4980><I
4981>doc</I
4982></TT
4983>&nbsp;:</TD
4984><TD
4985WIDTH="80%"
4986ALIGN="LEFT"
4987VALIGN="TOP"
4988>  pointer to the document</TD
4989></TR
4990><TR
4991><TD
4992WIDTH="20%"
4993ALIGN="RIGHT"
4994VALIGN="TOP"
4995><TT
4996CLASS="PARAMETER"
4997><I
4998>ID</I
4999></TT
5000>&nbsp;:</TD
5001><TD
5002WIDTH="80%"
5003ALIGN="LEFT"
5004VALIGN="TOP"
5005>  the ID value</TD
5006></TR
5007><TR
5008><TD
5009WIDTH="20%"
5010ALIGN="RIGHT"
5011VALIGN="TOP"
5012><I
5013CLASS="EMPHASIS"
5014>Returns</I
5015> :</TD
5016><TD
5017WIDTH="80%"
5018ALIGN="LEFT"
5019VALIGN="TOP"
5020>NULL if not found, otherwise node set for the ID.</TD
5021></TR
5022></TBODY
5023></TABLE
5024><P
5025></P
5026></DIV
5027></DIV
5028><HR><DIV
5029CLASS="REFSECT2"
5030><A
5031NAME="AEN9551"
5032></A
5033><H3
5034><A
5035NAME="XMLVALIDATEROOT"
5036></A
5037>xmlValidateRoot ()</H3
5038><TABLE
5039BORDER="0"
5040BGCOLOR="#D6E8FF"
5041WIDTH="100%"
5042CELLPADDING="6"
5043><TR
5044><TD
5045><PRE
5046CLASS="PROGRAMLISTING"
5047>int         xmlValidateRoot                 (<A
5048HREF="libxml-valid.html#XMLVALIDCTXTPTR"
5049>xmlValidCtxtPtr</A
5050> ctxt,
5051                                             <A
5052HREF="libxml-tree.html#XMLDOCPTR"
5053>xmlDocPtr</A
5054> doc);</PRE
5055></TD
5056></TR
5057></TABLE
5058><P
5059>Try to validate a the root element
5060basically it does the following check as described by the
5061XML-1.0 recommendation:
5062- [ VC: Root Element Type ]
5063it doesn't try to recurse or apply other check to the element</P
5064><P
5065></P
5066><DIV
5067CLASS="INFORMALTABLE"
5068><A
5069NAME="AEN9559"
5070></A
5071><P
5072></P
5073><TABLE
5074BORDER="0"
5075WIDTH="100%"
5076BGCOLOR="#FFD0D0"
5077CELLSPACING="0"
5078CELLPADDING="4"
5079CLASS="CALSTABLE"
5080><TBODY
5081><TR
5082><TD
5083WIDTH="20%"
5084ALIGN="RIGHT"
5085VALIGN="TOP"
5086><TT
5087CLASS="PARAMETER"
5088><I
5089>ctxt</I
5090></TT
5091>&nbsp;:</TD
5092><TD
5093WIDTH="80%"
5094ALIGN="LEFT"
5095VALIGN="TOP"
5096>  the validation context</TD
5097></TR
5098><TR
5099><TD
5100WIDTH="20%"
5101ALIGN="RIGHT"
5102VALIGN="TOP"
5103><TT
5104CLASS="PARAMETER"
5105><I
5106>doc</I
5107></TT
5108>&nbsp;:</TD
5109><TD
5110WIDTH="80%"
5111ALIGN="LEFT"
5112VALIGN="TOP"
5113>  a document instance</TD
5114></TR
5115><TR
5116><TD
5117WIDTH="20%"
5118ALIGN="RIGHT"
5119VALIGN="TOP"
5120><I
5121CLASS="EMPHASIS"
5122>Returns</I
5123> :</TD
5124><TD
5125WIDTH="80%"
5126ALIGN="LEFT"
5127VALIGN="TOP"
5128>1 if valid or 0 otherwise</TD
5129></TR
5130></TBODY
5131></TABLE
5132><P
5133></P
5134></DIV
5135></DIV
5136><HR><DIV
5137CLASS="REFSECT2"
5138><A
5139NAME="AEN9576"
5140></A
5141><H3
5142><A
5143NAME="XMLVALIDATEELEMENTDECL"
5144></A
5145>xmlValidateElementDecl ()</H3
5146><TABLE
5147BORDER="0"
5148BGCOLOR="#D6E8FF"
5149WIDTH="100%"
5150CELLPADDING="6"
5151><TR
5152><TD
5153><PRE
5154CLASS="PROGRAMLISTING"
5155>int         xmlValidateElementDecl          (<A
5156HREF="libxml-valid.html#XMLVALIDCTXTPTR"
5157>xmlValidCtxtPtr</A
5158> ctxt,
5159                                             <A
5160HREF="libxml-tree.html#XMLDOCPTR"
5161>xmlDocPtr</A
5162> doc,
5163                                             <A
5164HREF="libxml-tree.html#XMLELEMENTPTR"
5165>xmlElementPtr</A
5166> elem);</PRE
5167></TD
5168></TR
5169></TABLE
5170><P
5171>Try to validate a single element definition
5172basically it does the following checks as described by the
5173XML-1.0 recommendation:
5174- [ VC: One ID per Element Type ]
5175- [ VC: No Duplicate Types ]
5176- [ VC: Unique Element Type Declaration ]</P
5177><P
5178></P
5179><DIV
5180CLASS="INFORMALTABLE"
5181><A
5182NAME="AEN9585"
5183></A
5184><P
5185></P
5186><TABLE
5187BORDER="0"
5188WIDTH="100%"
5189BGCOLOR="#FFD0D0"
5190CELLSPACING="0"
5191CELLPADDING="4"
5192CLASS="CALSTABLE"
5193><TBODY
5194><TR
5195><TD
5196WIDTH="20%"
5197ALIGN="RIGHT"
5198VALIGN="TOP"
5199><TT
5200CLASS="PARAMETER"
5201><I
5202>ctxt</I
5203></TT
5204>&nbsp;:</TD
5205><TD
5206WIDTH="80%"
5207ALIGN="LEFT"
5208VALIGN="TOP"
5209>  the validation context</TD
5210></TR
5211><TR
5212><TD
5213WIDTH="20%"
5214ALIGN="RIGHT"
5215VALIGN="TOP"
5216><TT
5217CLASS="PARAMETER"
5218><I
5219>doc</I
5220></TT
5221>&nbsp;:</TD
5222><TD
5223WIDTH="80%"
5224ALIGN="LEFT"
5225VALIGN="TOP"
5226>  a document instance</TD
5227></TR
5228><TR
5229><TD
5230WIDTH="20%"
5231ALIGN="RIGHT"
5232VALIGN="TOP"
5233><TT
5234CLASS="PARAMETER"
5235><I
5236>elem</I
5237></TT
5238>&nbsp;:</TD
5239><TD
5240WIDTH="80%"
5241ALIGN="LEFT"
5242VALIGN="TOP"
5243>  an element definition</TD
5244></TR
5245><TR
5246><TD
5247WIDTH="20%"
5248ALIGN="RIGHT"
5249VALIGN="TOP"
5250><I
5251CLASS="EMPHASIS"
5252>Returns</I
5253> :</TD
5254><TD
5255WIDTH="80%"
5256ALIGN="LEFT"
5257VALIGN="TOP"
5258>1 if valid or 0 otherwise</TD
5259></TR
5260></TBODY
5261></TABLE
5262><P
5263></P
5264></DIV
5265></DIV
5266><HR><DIV
5267CLASS="REFSECT2"
5268><A
5269NAME="AEN9606"
5270></A
5271><H3
5272><A
5273NAME="XMLVALIDNORMALIZEATTRIBUTEVALUE"
5274></A
5275>xmlValidNormalizeAttributeValue ()</H3
5276><TABLE
5277BORDER="0"
5278BGCOLOR="#D6E8FF"
5279WIDTH="100%"
5280CELLPADDING="6"
5281><TR
5282><TD
5283><PRE
5284CLASS="PROGRAMLISTING"
5285><A
5286HREF="libxml-tree.html#XMLCHAR"
5287>xmlChar</A
5288>*    xmlValidNormalizeAttributeValue (<A
5289HREF="libxml-tree.html#XMLDOCPTR"
5290>xmlDocPtr</A
5291> doc,
5292                                             <A
5293HREF="libxml-tree.html#XMLNODEPTR"
5294>xmlNodePtr</A
5295> elem,
5296                                             const <A
5297HREF="libxml-tree.html#XMLCHAR"
5298>xmlChar</A
5299> *name,
5300                                             const <A
5301HREF="libxml-tree.html#XMLCHAR"
5302>xmlChar</A
5303> *value);</PRE
5304></TD
5305></TR
5306></TABLE
5307><P
5308>Does the validation related extra step of the normalization of attribute
5309values:</P
5310><P
5311>If the declared value is not CDATA, then the XML processor must further
5312process the normalized attribute value by discarding any leading and
5313trailing space (<GTKDOCLINK
5314HREF="X20"
5315>x20</GTKDOCLINK
5316>) characters, and by replacing sequences of space
5317(<GTKDOCLINK
5318HREF="X20"
5319>x20</GTKDOCLINK
5320>) characters by single space (<GTKDOCLINK
5321HREF="X20"
5322>x20</GTKDOCLINK
5323>) character.</P
5324><P
5325></P
5326><DIV
5327CLASS="INFORMALTABLE"
5328><A
5329NAME="AEN9621"
5330></A
5331><P
5332></P
5333><TABLE
5334BORDER="0"
5335WIDTH="100%"
5336BGCOLOR="#FFD0D0"
5337CELLSPACING="0"
5338CELLPADDING="4"
5339CLASS="CALSTABLE"
5340><TBODY
5341><TR
5342><TD
5343WIDTH="20%"
5344ALIGN="RIGHT"
5345VALIGN="TOP"
5346><TT
5347CLASS="PARAMETER"
5348><I
5349>doc</I
5350></TT
5351>&nbsp;:</TD
5352><TD
5353WIDTH="80%"
5354ALIGN="LEFT"
5355VALIGN="TOP"
5356>  the document</TD
5357></TR
5358><TR
5359><TD
5360WIDTH="20%"
5361ALIGN="RIGHT"
5362VALIGN="TOP"
5363><TT
5364CLASS="PARAMETER"
5365><I
5366>elem</I
5367></TT
5368>&nbsp;:</TD
5369><TD
5370WIDTH="80%"
5371ALIGN="LEFT"
5372VALIGN="TOP"
5373>  the parent</TD
5374></TR
5375><TR
5376><TD
5377WIDTH="20%"
5378ALIGN="RIGHT"
5379VALIGN="TOP"
5380><TT
5381CLASS="PARAMETER"
5382><I
5383>name</I
5384></TT
5385>&nbsp;:</TD
5386><TD
5387WIDTH="80%"
5388ALIGN="LEFT"
5389VALIGN="TOP"
5390>  the attribute name</TD
5391></TR
5392><TR
5393><TD
5394WIDTH="20%"
5395ALIGN="RIGHT"
5396VALIGN="TOP"
5397><TT
5398CLASS="PARAMETER"
5399><I
5400>value</I
5401></TT
5402>&nbsp;:</TD
5403><TD
5404WIDTH="80%"
5405ALIGN="LEFT"
5406VALIGN="TOP"
5407>  the attribute value</TD
5408></TR
5409><TR
5410><TD
5411WIDTH="20%"
5412ALIGN="RIGHT"
5413VALIGN="TOP"
5414><I
5415CLASS="EMPHASIS"
5416>Returns</I
5417> :</TD
5418><TD
5419WIDTH="80%"
5420ALIGN="LEFT"
5421VALIGN="TOP"
5422>a new normalized string if normalization is needed, NULL otherwise
5423the caller must free the returned value.</TD
5424></TR
5425></TBODY
5426></TABLE
5427><P
5428></P
5429></DIV
5430></DIV
5431><HR><DIV
5432CLASS="REFSECT2"
5433><A
5434NAME="AEN9646"
5435></A
5436><H3
5437><A
5438NAME="XMLVALIDCTXTNORMALIZEATTRIBUTEVALUE"
5439></A
5440>xmlValidCtxtNormalizeAttributeValue ()</H3
5441><TABLE
5442BORDER="0"
5443BGCOLOR="#D6E8FF"
5444WIDTH="100%"
5445CELLPADDING="6"
5446><TR
5447><TD
5448><PRE
5449CLASS="PROGRAMLISTING"
5450><A
5451HREF="libxml-tree.html#XMLCHAR"
5452>xmlChar</A
5453>*    xmlValidCtxtNormalizeAttributeValue
5454                                            (<A
5455HREF="libxml-valid.html#XMLVALIDCTXTPTR"
5456>xmlValidCtxtPtr</A
5457> ctxt,
5458                                             <A
5459HREF="libxml-tree.html#XMLDOCPTR"
5460>xmlDocPtr</A
5461> doc,
5462                                             <A
5463HREF="libxml-tree.html#XMLNODEPTR"
5464>xmlNodePtr</A
5465> elem,
5466                                             const <A
5467HREF="libxml-tree.html#XMLCHAR"
5468>xmlChar</A
5469> *name,
5470                                             const <A
5471HREF="libxml-tree.html#XMLCHAR"
5472>xmlChar</A
5473> *value);</PRE
5474></TD
5475></TR
5476></TABLE
5477><P
5478>Does the validation related extra step of the normalization of attribute
5479values:</P
5480><P
5481>If the declared value is not CDATA, then the XML processor must further
5482process the normalized attribute value by discarding any leading and
5483trailing space (<GTKDOCLINK
5484HREF="X20"
5485>x20</GTKDOCLINK
5486>) characters, and by replacing sequences of space
5487(<GTKDOCLINK
5488HREF="X20"
5489>x20</GTKDOCLINK
5490>) characters by single space (<GTKDOCLINK
5491HREF="X20"
5492>x20</GTKDOCLINK
5493>) character.</P
5494><P
5495>Also  check VC: Standalone Document Declaration in P32, and update
5496ctxt-&gt;valid accordingly</P
5497><P
5498></P
5499><DIV
5500CLASS="INFORMALTABLE"
5501><A
5502NAME="AEN9663"
5503></A
5504><P
5505></P
5506><TABLE
5507BORDER="0"
5508WIDTH="100%"
5509BGCOLOR="#FFD0D0"
5510CELLSPACING="0"
5511CELLPADDING="4"
5512CLASS="CALSTABLE"
5513><TBODY
5514><TR
5515><TD
5516WIDTH="20%"
5517ALIGN="RIGHT"
5518VALIGN="TOP"
5519><TT
5520CLASS="PARAMETER"
5521><I
5522>ctxt</I
5523></TT
5524>&nbsp;:</TD
5525><TD
5526WIDTH="80%"
5527ALIGN="LEFT"
5528VALIGN="TOP"
5529> the validation context</TD
5530></TR
5531><TR
5532><TD
5533WIDTH="20%"
5534ALIGN="RIGHT"
5535VALIGN="TOP"
5536><TT
5537CLASS="PARAMETER"
5538><I
5539>doc</I
5540></TT
5541>&nbsp;:</TD
5542><TD
5543WIDTH="80%"
5544ALIGN="LEFT"
5545VALIGN="TOP"
5546>  the document</TD
5547></TR
5548><TR
5549><TD
5550WIDTH="20%"
5551ALIGN="RIGHT"
5552VALIGN="TOP"
5553><TT
5554CLASS="PARAMETER"
5555><I
5556>elem</I
5557></TT
5558>&nbsp;:</TD
5559><TD
5560WIDTH="80%"
5561ALIGN="LEFT"
5562VALIGN="TOP"
5563>  the parent</TD
5564></TR
5565><TR
5566><TD
5567WIDTH="20%"
5568ALIGN="RIGHT"
5569VALIGN="TOP"
5570><TT
5571CLASS="PARAMETER"
5572><I
5573>name</I
5574></TT
5575>&nbsp;:</TD
5576><TD
5577WIDTH="80%"
5578ALIGN="LEFT"
5579VALIGN="TOP"
5580>  the attribute name</TD
5581></TR
5582><TR
5583><TD
5584WIDTH="20%"
5585ALIGN="RIGHT"
5586VALIGN="TOP"
5587><TT
5588CLASS="PARAMETER"
5589><I
5590>value</I
5591></TT
5592>&nbsp;:</TD
5593><TD
5594WIDTH="80%"
5595ALIGN="LEFT"
5596VALIGN="TOP"
5597>  the attribute value</TD
5598></TR
5599><TR
5600><TD
5601WIDTH="20%"
5602ALIGN="RIGHT"
5603VALIGN="TOP"
5604><I
5605CLASS="EMPHASIS"
5606>Returns</I
5607> :</TD
5608><TD
5609WIDTH="80%"
5610ALIGN="LEFT"
5611VALIGN="TOP"
5612>a new normalized string if normalization is needed, NULL otherwise
5613the caller must free the returned value.</TD
5614></TR
5615></TBODY
5616></TABLE
5617><P
5618></P
5619></DIV
5620></DIV
5621><HR><DIV
5622CLASS="REFSECT2"
5623><A
5624NAME="AEN9692"
5625></A
5626><H3
5627><A
5628NAME="XMLVALIDATEATTRIBUTEDECL"
5629></A
5630>xmlValidateAttributeDecl ()</H3
5631><TABLE
5632BORDER="0"
5633BGCOLOR="#D6E8FF"
5634WIDTH="100%"
5635CELLPADDING="6"
5636><TR
5637><TD
5638><PRE
5639CLASS="PROGRAMLISTING"
5640>int         xmlValidateAttributeDecl        (<A
5641HREF="libxml-valid.html#XMLVALIDCTXTPTR"
5642>xmlValidCtxtPtr</A
5643> ctxt,
5644                                             <A
5645HREF="libxml-tree.html#XMLDOCPTR"
5646>xmlDocPtr</A
5647> doc,
5648                                             <A
5649HREF="libxml-tree.html#XMLATTRIBUTEPTR"
5650>xmlAttributePtr</A
5651> attr);</PRE
5652></TD
5653></TR
5654></TABLE
5655><P
5656>Try to validate a single attribute definition
5657basically it does the following checks as described by the
5658XML-1.0 recommendation:
5659- [ VC: Attribute Default Legal ]
5660- [ VC: Enumeration ]
5661- [ VC: ID Attribute Default ]</P
5662><P
5663>The ID/IDREF uniqueness and matching are done separately</P
5664><P
5665></P
5666><DIV
5667CLASS="INFORMALTABLE"
5668><A
5669NAME="AEN9702"
5670></A
5671><P
5672></P
5673><TABLE
5674BORDER="0"
5675WIDTH="100%"
5676BGCOLOR="#FFD0D0"
5677CELLSPACING="0"
5678CELLPADDING="4"
5679CLASS="CALSTABLE"
5680><TBODY
5681><TR
5682><TD
5683WIDTH="20%"
5684ALIGN="RIGHT"
5685VALIGN="TOP"
5686><TT
5687CLASS="PARAMETER"
5688><I
5689>ctxt</I
5690></TT
5691>&nbsp;:</TD
5692><TD
5693WIDTH="80%"
5694ALIGN="LEFT"
5695VALIGN="TOP"
5696>  the validation context</TD
5697></TR
5698><TR
5699><TD
5700WIDTH="20%"
5701ALIGN="RIGHT"
5702VALIGN="TOP"
5703><TT
5704CLASS="PARAMETER"
5705><I
5706>doc</I
5707></TT
5708>&nbsp;:</TD
5709><TD
5710WIDTH="80%"
5711ALIGN="LEFT"
5712VALIGN="TOP"
5713>  a document instance</TD
5714></TR
5715><TR
5716><TD
5717WIDTH="20%"
5718ALIGN="RIGHT"
5719VALIGN="TOP"
5720><TT
5721CLASS="PARAMETER"
5722><I
5723>attr</I
5724></TT
5725>&nbsp;:</TD
5726><TD
5727WIDTH="80%"
5728ALIGN="LEFT"
5729VALIGN="TOP"
5730>  an attribute definition</TD
5731></TR
5732><TR
5733><TD
5734WIDTH="20%"
5735ALIGN="RIGHT"
5736VALIGN="TOP"
5737><I
5738CLASS="EMPHASIS"
5739>Returns</I
5740> :</TD
5741><TD
5742WIDTH="80%"
5743ALIGN="LEFT"
5744VALIGN="TOP"
5745>1 if valid or 0 otherwise</TD
5746></TR
5747></TBODY
5748></TABLE
5749><P
5750></P
5751></DIV
5752></DIV
5753><HR><DIV
5754CLASS="REFSECT2"
5755><A
5756NAME="AEN9723"
5757></A
5758><H3
5759><A
5760NAME="XMLVALIDATEATTRIBUTEVALUE"
5761></A
5762>xmlValidateAttributeValue ()</H3
5763><TABLE
5764BORDER="0"
5765BGCOLOR="#D6E8FF"
5766WIDTH="100%"
5767CELLPADDING="6"
5768><TR
5769><TD
5770><PRE
5771CLASS="PROGRAMLISTING"
5772>int         xmlValidateAttributeValue       (<A
5773HREF="libxml-tree.html#XMLATTRIBUTETYPE"
5774>xmlAttributeType</A
5775> type,
5776                                             const <A
5777HREF="libxml-tree.html#XMLCHAR"
5778>xmlChar</A
5779> *value);</PRE
5780></TD
5781></TR
5782></TABLE
5783><P
5784>Validate that the given attribute value match  the proper production</P
5785><P
5786>[ VC: ID ]
5787Values of type ID must match the Name production....</P
5788><P
5789>[ VC: IDREF ]
5790Values of type IDREF must match the Name production, and values
5791of type IDREFS must match Names ...</P
5792><P
5793>[ VC: Entity Name ]
5794Values of type ENTITY must match the Name production, values
5795of type ENTITIES must match Names ...</P
5796><P
5797>[ VC: Name Token ]
5798Values of type NMTOKEN must match the Nmtoken production; values
5799of type NMTOKENS must match Nmtokens.</P
5800><P
5801></P
5802><DIV
5803CLASS="INFORMALTABLE"
5804><A
5805NAME="AEN9735"
5806></A
5807><P
5808></P
5809><TABLE
5810BORDER="0"
5811WIDTH="100%"
5812BGCOLOR="#FFD0D0"
5813CELLSPACING="0"
5814CELLPADDING="4"
5815CLASS="CALSTABLE"
5816><TBODY
5817><TR
5818><TD
5819WIDTH="20%"
5820ALIGN="RIGHT"
5821VALIGN="TOP"
5822><TT
5823CLASS="PARAMETER"
5824><I
5825>type</I
5826></TT
5827>&nbsp;:</TD
5828><TD
5829WIDTH="80%"
5830ALIGN="LEFT"
5831VALIGN="TOP"
5832>  an attribute type</TD
5833></TR
5834><TR
5835><TD
5836WIDTH="20%"
5837ALIGN="RIGHT"
5838VALIGN="TOP"
5839><TT
5840CLASS="PARAMETER"
5841><I
5842>value</I
5843></TT
5844>&nbsp;:</TD
5845><TD
5846WIDTH="80%"
5847ALIGN="LEFT"
5848VALIGN="TOP"
5849>  an attribute value</TD
5850></TR
5851><TR
5852><TD
5853WIDTH="20%"
5854ALIGN="RIGHT"
5855VALIGN="TOP"
5856><I
5857CLASS="EMPHASIS"
5858>Returns</I
5859> :</TD
5860><TD
5861WIDTH="80%"
5862ALIGN="LEFT"
5863VALIGN="TOP"
5864>1 if valid or 0 otherwise</TD
5865></TR
5866></TBODY
5867></TABLE
5868><P
5869></P
5870></DIV
5871></DIV
5872><HR><DIV
5873CLASS="REFSECT2"
5874><A
5875NAME="AEN9752"
5876></A
5877><H3
5878><A
5879NAME="XMLVALIDATENOTATIONDECL"
5880></A
5881>xmlValidateNotationDecl ()</H3
5882><TABLE
5883BORDER="0"
5884BGCOLOR="#D6E8FF"
5885WIDTH="100%"
5886CELLPADDING="6"
5887><TR
5888><TD
5889><PRE
5890CLASS="PROGRAMLISTING"
5891>int         xmlValidateNotationDecl         (<A
5892HREF="libxml-valid.html#XMLVALIDCTXTPTR"
5893>xmlValidCtxtPtr</A
5894> ctxt,
5895                                             <A
5896HREF="libxml-tree.html#XMLDOCPTR"
5897>xmlDocPtr</A
5898> doc,
5899                                             <A
5900HREF="libxml-tree.html#XMLNOTATIONPTR"
5901>xmlNotationPtr</A
5902> nota);</PRE
5903></TD
5904></TR
5905></TABLE
5906><P
5907>Try to validate a single notation definition
5908basically it does the following checks as described by the
5909XML-1.0 recommendation:
5910- it seems that no validity constraint exists on notation declarations
5911But this function get called anyway ...</P
5912><P
5913></P
5914><DIV
5915CLASS="INFORMALTABLE"
5916><A
5917NAME="AEN9761"
5918></A
5919><P
5920></P
5921><TABLE
5922BORDER="0"
5923WIDTH="100%"
5924BGCOLOR="#FFD0D0"
5925CELLSPACING="0"
5926CELLPADDING="4"
5927CLASS="CALSTABLE"
5928><TBODY
5929><TR
5930><TD
5931WIDTH="20%"
5932ALIGN="RIGHT"
5933VALIGN="TOP"
5934><TT
5935CLASS="PARAMETER"
5936><I
5937>ctxt</I
5938></TT
5939>&nbsp;:</TD
5940><TD
5941WIDTH="80%"
5942ALIGN="LEFT"
5943VALIGN="TOP"
5944>  the validation context</TD
5945></TR
5946><TR
5947><TD
5948WIDTH="20%"
5949ALIGN="RIGHT"
5950VALIGN="TOP"
5951><TT
5952CLASS="PARAMETER"
5953><I
5954>doc</I
5955></TT
5956>&nbsp;:</TD
5957><TD
5958WIDTH="80%"
5959ALIGN="LEFT"
5960VALIGN="TOP"
5961>  a document instance</TD
5962></TR
5963><TR
5964><TD
5965WIDTH="20%"
5966ALIGN="RIGHT"
5967VALIGN="TOP"
5968><TT
5969CLASS="PARAMETER"
5970><I
5971>nota</I
5972></TT
5973>&nbsp;:</TD
5974><TD
5975WIDTH="80%"
5976ALIGN="LEFT"
5977VALIGN="TOP"
5978>  a notation definition</TD
5979></TR
5980><TR
5981><TD
5982WIDTH="20%"
5983ALIGN="RIGHT"
5984VALIGN="TOP"
5985><I
5986CLASS="EMPHASIS"
5987>Returns</I
5988> :</TD
5989><TD
5990WIDTH="80%"
5991ALIGN="LEFT"
5992VALIGN="TOP"
5993>1 if valid or 0 otherwise</TD
5994></TR
5995></TBODY
5996></TABLE
5997><P
5998></P
5999></DIV
6000></DIV
6001><HR><DIV
6002CLASS="REFSECT2"
6003><A
6004NAME="AEN9782"
6005></A
6006><H3
6007><A
6008NAME="XMLVALIDATEDTD"
6009></A
6010>xmlValidateDtd ()</H3
6011><TABLE
6012BORDER="0"
6013BGCOLOR="#D6E8FF"
6014WIDTH="100%"
6015CELLPADDING="6"
6016><TR
6017><TD
6018><PRE
6019CLASS="PROGRAMLISTING"
6020>int         xmlValidateDtd                  (<A
6021HREF="libxml-valid.html#XMLVALIDCTXTPTR"
6022>xmlValidCtxtPtr</A
6023> ctxt,
6024                                             <A
6025HREF="libxml-tree.html#XMLDOCPTR"
6026>xmlDocPtr</A
6027> doc,
6028                                             <A
6029HREF="libxml-tree.html#XMLDTDPTR"
6030>xmlDtdPtr</A
6031> dtd);</PRE
6032></TD
6033></TR
6034></TABLE
6035><P
6036>Try to validate the document against the dtd instance</P
6037><P
6038>basically it does check all the definitions in the DtD.</P
6039><P
6040></P
6041><DIV
6042CLASS="INFORMALTABLE"
6043><A
6044NAME="AEN9792"
6045></A
6046><P
6047></P
6048><TABLE
6049BORDER="0"
6050WIDTH="100%"
6051BGCOLOR="#FFD0D0"
6052CELLSPACING="0"
6053CELLPADDING="4"
6054CLASS="CALSTABLE"
6055><TBODY
6056><TR
6057><TD
6058WIDTH="20%"
6059ALIGN="RIGHT"
6060VALIGN="TOP"
6061><TT
6062CLASS="PARAMETER"
6063><I
6064>ctxt</I
6065></TT
6066>&nbsp;:</TD
6067><TD
6068WIDTH="80%"
6069ALIGN="LEFT"
6070VALIGN="TOP"
6071>  the validation context</TD
6072></TR
6073><TR
6074><TD
6075WIDTH="20%"
6076ALIGN="RIGHT"
6077VALIGN="TOP"
6078><TT
6079CLASS="PARAMETER"
6080><I
6081>doc</I
6082></TT
6083>&nbsp;:</TD
6084><TD
6085WIDTH="80%"
6086ALIGN="LEFT"
6087VALIGN="TOP"
6088>  a document instance</TD
6089></TR
6090><TR
6091><TD
6092WIDTH="20%"
6093ALIGN="RIGHT"
6094VALIGN="TOP"
6095><TT
6096CLASS="PARAMETER"
6097><I
6098>dtd</I
6099></TT
6100>&nbsp;:</TD
6101><TD
6102WIDTH="80%"
6103ALIGN="LEFT"
6104VALIGN="TOP"
6105>  a dtd instance</TD
6106></TR
6107><TR
6108><TD
6109WIDTH="20%"
6110ALIGN="RIGHT"
6111VALIGN="TOP"
6112><I
6113CLASS="EMPHASIS"
6114>Returns</I
6115> :</TD
6116><TD
6117WIDTH="80%"
6118ALIGN="LEFT"
6119VALIGN="TOP"
6120>1 if valid or 0 otherwise</TD
6121></TR
6122></TBODY
6123></TABLE
6124><P
6125></P
6126></DIV
6127></DIV
6128><HR><DIV
6129CLASS="REFSECT2"
6130><A
6131NAME="AEN9813"
6132></A
6133><H3
6134><A
6135NAME="XMLVALIDATEDTDFINAL"
6136></A
6137>xmlValidateDtdFinal ()</H3
6138><TABLE
6139BORDER="0"
6140BGCOLOR="#D6E8FF"
6141WIDTH="100%"
6142CELLPADDING="6"
6143><TR
6144><TD
6145><PRE
6146CLASS="PROGRAMLISTING"
6147>int         xmlValidateDtdFinal             (<A
6148HREF="libxml-valid.html#XMLVALIDCTXTPTR"
6149>xmlValidCtxtPtr</A
6150> ctxt,
6151                                             <A
6152HREF="libxml-tree.html#XMLDOCPTR"
6153>xmlDocPtr</A
6154> doc);</PRE
6155></TD
6156></TR
6157></TABLE
6158><P
6159>Does the final step for the dtds validation once all the
6160subsets have been parsed</P
6161><P
6162>basically it does the following checks described by the XML Rec
6163- check that ENTITY and ENTITIES type attributes default or 
6164possible values matches one of the defined entities.
6165- check that NOTATION type attributes default or 
6166possible values matches one of the defined notations.</P
6167><P
6168></P
6169><DIV
6170CLASS="INFORMALTABLE"
6171><A
6172NAME="AEN9822"
6173></A
6174><P
6175></P
6176><TABLE
6177BORDER="0"
6178WIDTH="100%"
6179BGCOLOR="#FFD0D0"
6180CELLSPACING="0"
6181CELLPADDING="4"
6182CLASS="CALSTABLE"
6183><TBODY
6184><TR
6185><TD
6186WIDTH="20%"
6187ALIGN="RIGHT"
6188VALIGN="TOP"
6189><TT
6190CLASS="PARAMETER"
6191><I
6192>ctxt</I
6193></TT
6194>&nbsp;:</TD
6195><TD
6196WIDTH="80%"
6197ALIGN="LEFT"
6198VALIGN="TOP"
6199>  the validation context</TD
6200></TR
6201><TR
6202><TD
6203WIDTH="20%"
6204ALIGN="RIGHT"
6205VALIGN="TOP"
6206><TT
6207CLASS="PARAMETER"
6208><I
6209>doc</I
6210></TT
6211>&nbsp;:</TD
6212><TD
6213WIDTH="80%"
6214ALIGN="LEFT"
6215VALIGN="TOP"
6216>  a document instance</TD
6217></TR
6218><TR
6219><TD
6220WIDTH="20%"
6221ALIGN="RIGHT"
6222VALIGN="TOP"
6223><I
6224CLASS="EMPHASIS"
6225>Returns</I
6226> :</TD
6227><TD
6228WIDTH="80%"
6229ALIGN="LEFT"
6230VALIGN="TOP"
6231>1 if valid or 0 if invalid and -1 if not well-formed</TD
6232></TR
6233></TBODY
6234></TABLE
6235><P
6236></P
6237></DIV
6238></DIV
6239><HR><DIV
6240CLASS="REFSECT2"
6241><A
6242NAME="AEN9839"
6243></A
6244><H3
6245><A
6246NAME="XMLVALIDATEDOCUMENT"
6247></A
6248>xmlValidateDocument ()</H3
6249><TABLE
6250BORDER="0"
6251BGCOLOR="#D6E8FF"
6252WIDTH="100%"
6253CELLPADDING="6"
6254><TR
6255><TD
6256><PRE
6257CLASS="PROGRAMLISTING"
6258>int         xmlValidateDocument             (<A
6259HREF="libxml-valid.html#XMLVALIDCTXTPTR"
6260>xmlValidCtxtPtr</A
6261> ctxt,
6262                                             <A
6263HREF="libxml-tree.html#XMLDOCPTR"
6264>xmlDocPtr</A
6265> doc);</PRE
6266></TD
6267></TR
6268></TABLE
6269><P
6270>Try to validate the document instance</P
6271><P
6272>basically it does the all the checks described by the XML Rec
6273i.e. validates the internal and external subset (if present)
6274and validate the document tree.</P
6275><P
6276></P
6277><DIV
6278CLASS="INFORMALTABLE"
6279><A
6280NAME="AEN9848"
6281></A
6282><P
6283></P
6284><TABLE
6285BORDER="0"
6286WIDTH="100%"
6287BGCOLOR="#FFD0D0"
6288CELLSPACING="0"
6289CELLPADDING="4"
6290CLASS="CALSTABLE"
6291><TBODY
6292><TR
6293><TD
6294WIDTH="20%"
6295ALIGN="RIGHT"
6296VALIGN="TOP"
6297><TT
6298CLASS="PARAMETER"
6299><I
6300>ctxt</I
6301></TT
6302>&nbsp;:</TD
6303><TD
6304WIDTH="80%"
6305ALIGN="LEFT"
6306VALIGN="TOP"
6307>  the validation context</TD
6308></TR
6309><TR
6310><TD
6311WIDTH="20%"
6312ALIGN="RIGHT"
6313VALIGN="TOP"
6314><TT
6315CLASS="PARAMETER"
6316><I
6317>doc</I
6318></TT
6319>&nbsp;:</TD
6320><TD
6321WIDTH="80%"
6322ALIGN="LEFT"
6323VALIGN="TOP"
6324>  a document instance</TD
6325></TR
6326><TR
6327><TD
6328WIDTH="20%"
6329ALIGN="RIGHT"
6330VALIGN="TOP"
6331><I
6332CLASS="EMPHASIS"
6333>Returns</I
6334> :</TD
6335><TD
6336WIDTH="80%"
6337ALIGN="LEFT"
6338VALIGN="TOP"
6339>1 if valid or 0 otherwise</TD
6340></TR
6341></TBODY
6342></TABLE
6343><P
6344></P
6345></DIV
6346></DIV
6347><HR><DIV
6348CLASS="REFSECT2"
6349><A
6350NAME="AEN9865"
6351></A
6352><H3
6353><A
6354NAME="XMLVALIDATEELEMENT"
6355></A
6356>xmlValidateElement ()</H3
6357><TABLE
6358BORDER="0"
6359BGCOLOR="#D6E8FF"
6360WIDTH="100%"
6361CELLPADDING="6"
6362><TR
6363><TD
6364><PRE
6365CLASS="PROGRAMLISTING"
6366>int         xmlValidateElement              (<A
6367HREF="libxml-valid.html#XMLVALIDCTXTPTR"
6368>xmlValidCtxtPtr</A
6369> ctxt,
6370                                             <A
6371HREF="libxml-tree.html#XMLDOCPTR"
6372>xmlDocPtr</A
6373> doc,
6374                                             <A
6375HREF="libxml-tree.html#XMLNODEPTR"
6376>xmlNodePtr</A
6377> elem);</PRE
6378></TD
6379></TR
6380></TABLE
6381><P
6382>Try to validate the subtree under an element</P
6383><P
6384></P
6385><DIV
6386CLASS="INFORMALTABLE"
6387><A
6388NAME="AEN9874"
6389></A
6390><P
6391></P
6392><TABLE
6393BORDER="0"
6394WIDTH="100%"
6395BGCOLOR="#FFD0D0"
6396CELLSPACING="0"
6397CELLPADDING="4"
6398CLASS="CALSTABLE"
6399><TBODY
6400><TR
6401><TD
6402WIDTH="20%"
6403ALIGN="RIGHT"
6404VALIGN="TOP"
6405><TT
6406CLASS="PARAMETER"
6407><I
6408>ctxt</I
6409></TT
6410>&nbsp;:</TD
6411><TD
6412WIDTH="80%"
6413ALIGN="LEFT"
6414VALIGN="TOP"
6415>  the validation context</TD
6416></TR
6417><TR
6418><TD
6419WIDTH="20%"
6420ALIGN="RIGHT"
6421VALIGN="TOP"
6422><TT
6423CLASS="PARAMETER"
6424><I
6425>doc</I
6426></TT
6427>&nbsp;:</TD
6428><TD
6429WIDTH="80%"
6430ALIGN="LEFT"
6431VALIGN="TOP"
6432>  a document instance</TD
6433></TR
6434><TR
6435><TD
6436WIDTH="20%"
6437ALIGN="RIGHT"
6438VALIGN="TOP"
6439><TT
6440CLASS="PARAMETER"
6441><I
6442>elem</I
6443></TT
6444>&nbsp;:</TD
6445><TD
6446WIDTH="80%"
6447ALIGN="LEFT"
6448VALIGN="TOP"
6449>  an element instance</TD
6450></TR
6451><TR
6452><TD
6453WIDTH="20%"
6454ALIGN="RIGHT"
6455VALIGN="TOP"
6456><I
6457CLASS="EMPHASIS"
6458>Returns</I
6459> :</TD
6460><TD
6461WIDTH="80%"
6462ALIGN="LEFT"
6463VALIGN="TOP"
6464>1 if valid or 0 otherwise</TD
6465></TR
6466></TBODY
6467></TABLE
6468><P
6469></P
6470></DIV
6471></DIV
6472><HR><DIV
6473CLASS="REFSECT2"
6474><A
6475NAME="AEN9895"
6476></A
6477><H3
6478><A
6479NAME="XMLVALIDATEONEELEMENT"
6480></A
6481>xmlValidateOneElement ()</H3
6482><TABLE
6483BORDER="0"
6484BGCOLOR="#D6E8FF"
6485WIDTH="100%"
6486CELLPADDING="6"
6487><TR
6488><TD
6489><PRE
6490CLASS="PROGRAMLISTING"
6491>int         xmlValidateOneElement           (<A
6492HREF="libxml-valid.html#XMLVALIDCTXTPTR"
6493>xmlValidCtxtPtr</A
6494> ctxt,
6495                                             <A
6496HREF="libxml-tree.html#XMLDOCPTR"
6497>xmlDocPtr</A
6498> doc,
6499                                             <A
6500HREF="libxml-tree.html#XMLNODEPTR"
6501>xmlNodePtr</A
6502> elem);</PRE
6503></TD
6504></TR
6505></TABLE
6506><P
6507>Try to validate a single element and it's attributes,
6508basically it does the following checks as described by the
6509XML-1.0 recommendation:
6510- [ VC: Element Valid ]
6511- [ VC: Required Attribute ]
6512Then call <A
6513HREF="libxml-valid.html#XMLVALIDATEONEATTRIBUTE"
6514>xmlValidateOneAttribute</A
6515>() for each attribute present.</P
6516><P
6517>The ID/IDREF checkings are done separately</P
6518><P
6519></P
6520><DIV
6521CLASS="INFORMALTABLE"
6522><A
6523NAME="AEN9906"
6524></A
6525><P
6526></P
6527><TABLE
6528BORDER="0"
6529WIDTH="100%"
6530BGCOLOR="#FFD0D0"
6531CELLSPACING="0"
6532CELLPADDING="4"
6533CLASS="CALSTABLE"
6534><TBODY
6535><TR
6536><TD
6537WIDTH="20%"
6538ALIGN="RIGHT"
6539VALIGN="TOP"
6540><TT
6541CLASS="PARAMETER"
6542><I
6543>ctxt</I
6544></TT
6545>&nbsp;:</TD
6546><TD
6547WIDTH="80%"
6548ALIGN="LEFT"
6549VALIGN="TOP"
6550>  the validation context</TD
6551></TR
6552><TR
6553><TD
6554WIDTH="20%"
6555ALIGN="RIGHT"
6556VALIGN="TOP"
6557><TT
6558CLASS="PARAMETER"
6559><I
6560>doc</I
6561></TT
6562>&nbsp;:</TD
6563><TD
6564WIDTH="80%"
6565ALIGN="LEFT"
6566VALIGN="TOP"
6567>  a document instance</TD
6568></TR
6569><TR
6570><TD
6571WIDTH="20%"
6572ALIGN="RIGHT"
6573VALIGN="TOP"
6574><TT
6575CLASS="PARAMETER"
6576><I
6577>elem</I
6578></TT
6579>&nbsp;:</TD
6580><TD
6581WIDTH="80%"
6582ALIGN="LEFT"
6583VALIGN="TOP"
6584>  an element instance</TD
6585></TR
6586><TR
6587><TD
6588WIDTH="20%"
6589ALIGN="RIGHT"
6590VALIGN="TOP"
6591><I
6592CLASS="EMPHASIS"
6593>Returns</I
6594> :</TD
6595><TD
6596WIDTH="80%"
6597ALIGN="LEFT"
6598VALIGN="TOP"
6599>1 if valid or 0 otherwise</TD
6600></TR
6601></TBODY
6602></TABLE
6603><P
6604></P
6605></DIV
6606></DIV
6607><HR><DIV
6608CLASS="REFSECT2"
6609><A
6610NAME="AEN9927"
6611></A
6612><H3
6613><A
6614NAME="XMLVALIDATEONEATTRIBUTE"
6615></A
6616>xmlValidateOneAttribute ()</H3
6617><TABLE
6618BORDER="0"
6619BGCOLOR="#D6E8FF"
6620WIDTH="100%"
6621CELLPADDING="6"
6622><TR
6623><TD
6624><PRE
6625CLASS="PROGRAMLISTING"
6626>int         xmlValidateOneAttribute         (<A
6627HREF="libxml-valid.html#XMLVALIDCTXTPTR"
6628>xmlValidCtxtPtr</A
6629> ctxt,
6630                                             <A
6631HREF="libxml-tree.html#XMLDOCPTR"
6632>xmlDocPtr</A
6633> doc,
6634                                             <A
6635HREF="libxml-tree.html#XMLNODEPTR"
6636>xmlNodePtr</A
6637> elem,
6638                                             <A
6639HREF="libxml-tree.html#XMLATTRPTR"
6640>xmlAttrPtr</A
6641> attr,
6642                                             const <A
6643HREF="libxml-tree.html#XMLCHAR"
6644>xmlChar</A
6645> *value);</PRE
6646></TD
6647></TR
6648></TABLE
6649><P
6650>Try to validate a single attribute for an element
6651basically it does the following checks as described by the
6652XML-1.0 recommendation:
6653- [ VC: Attribute Value Type ]
6654- [ VC: Fixed Attribute Default ]
6655- [ VC: Entity Name ]
6656- [ VC: Name Token ]
6657- [ VC: ID ]
6658- [ VC: IDREF ]
6659- [ VC: Entity Name ]
6660- [ VC: Notation Attributes ]</P
6661><P
6662>The ID/IDREF uniqueness and matching are done separately</P
6663><P
6664></P
6665><DIV
6666CLASS="INFORMALTABLE"
6667><A
6668NAME="AEN9939"
6669></A
6670><P
6671></P
6672><TABLE
6673BORDER="0"
6674WIDTH="100%"
6675BGCOLOR="#FFD0D0"
6676CELLSPACING="0"
6677CELLPADDING="4"
6678CLASS="CALSTABLE"
6679><TBODY
6680><TR
6681><TD
6682WIDTH="20%"
6683ALIGN="RIGHT"
6684VALIGN="TOP"
6685><TT
6686CLASS="PARAMETER"
6687><I
6688>ctxt</I
6689></TT
6690>&nbsp;:</TD
6691><TD
6692WIDTH="80%"
6693ALIGN="LEFT"
6694VALIGN="TOP"
6695>  the validation context</TD
6696></TR
6697><TR
6698><TD
6699WIDTH="20%"
6700ALIGN="RIGHT"
6701VALIGN="TOP"
6702><TT
6703CLASS="PARAMETER"
6704><I
6705>doc</I
6706></TT
6707>&nbsp;:</TD
6708><TD
6709WIDTH="80%"
6710ALIGN="LEFT"
6711VALIGN="TOP"
6712>  a document instance</TD
6713></TR
6714><TR
6715><TD
6716WIDTH="20%"
6717ALIGN="RIGHT"
6718VALIGN="TOP"
6719><TT
6720CLASS="PARAMETER"
6721><I
6722>elem</I
6723></TT
6724>&nbsp;:</TD
6725><TD
6726WIDTH="80%"
6727ALIGN="LEFT"
6728VALIGN="TOP"
6729>  an element instance</TD
6730></TR
6731><TR
6732><TD
6733WIDTH="20%"
6734ALIGN="RIGHT"
6735VALIGN="TOP"
6736><TT
6737CLASS="PARAMETER"
6738><I
6739>attr</I
6740></TT
6741>&nbsp;:</TD
6742><TD
6743WIDTH="80%"
6744ALIGN="LEFT"
6745VALIGN="TOP"
6746>  an attribute instance</TD
6747></TR
6748><TR
6749><TD
6750WIDTH="20%"
6751ALIGN="RIGHT"
6752VALIGN="TOP"
6753><TT
6754CLASS="PARAMETER"
6755><I
6756>value</I
6757></TT
6758>&nbsp;:</TD
6759><TD
6760WIDTH="80%"
6761ALIGN="LEFT"
6762VALIGN="TOP"
6763>  the attribute value (without entities processing)</TD
6764></TR
6765><TR
6766><TD
6767WIDTH="20%"
6768ALIGN="RIGHT"
6769VALIGN="TOP"
6770><I
6771CLASS="EMPHASIS"
6772>Returns</I
6773> :</TD
6774><TD
6775WIDTH="80%"
6776ALIGN="LEFT"
6777VALIGN="TOP"
6778>1 if valid or 0 otherwise</TD
6779></TR
6780></TBODY
6781></TABLE
6782><P
6783></P
6784></DIV
6785></DIV
6786><HR><DIV
6787CLASS="REFSECT2"
6788><A
6789NAME="AEN9968"
6790></A
6791><H3
6792><A
6793NAME="XMLVALIDATEDOCUMENTFINAL"
6794></A
6795>xmlValidateDocumentFinal ()</H3
6796><TABLE
6797BORDER="0"
6798BGCOLOR="#D6E8FF"
6799WIDTH="100%"
6800CELLPADDING="6"
6801><TR
6802><TD
6803><PRE
6804CLASS="PROGRAMLISTING"
6805>int         xmlValidateDocumentFinal        (<A
6806HREF="libxml-valid.html#XMLVALIDCTXTPTR"
6807>xmlValidCtxtPtr</A
6808> ctxt,
6809                                             <A
6810HREF="libxml-tree.html#XMLDOCPTR"
6811>xmlDocPtr</A
6812> doc);</PRE
6813></TD
6814></TR
6815></TABLE
6816><P
6817>Does the final step for the document validation once all the
6818incremental validation steps have been completed</P
6819><P
6820>basically it does the following checks described by the XML Rec</P
6821><P
6822></P
6823><DIV
6824CLASS="INFORMALTABLE"
6825><A
6826NAME="AEN9977"
6827></A
6828><P
6829></P
6830><TABLE
6831BORDER="0"
6832WIDTH="100%"
6833BGCOLOR="#FFD0D0"
6834CELLSPACING="0"
6835CELLPADDING="4"
6836CLASS="CALSTABLE"
6837><TBODY
6838><TR
6839><TD
6840WIDTH="20%"
6841ALIGN="RIGHT"
6842VALIGN="TOP"
6843><TT
6844CLASS="PARAMETER"
6845><I
6846>ctxt</I
6847></TT
6848>&nbsp;:</TD
6849><TD
6850WIDTH="80%"
6851ALIGN="LEFT"
6852VALIGN="TOP"
6853>  the validation context</TD
6854></TR
6855><TR
6856><TD
6857WIDTH="20%"
6858ALIGN="RIGHT"
6859VALIGN="TOP"
6860><TT
6861CLASS="PARAMETER"
6862><I
6863>doc</I
6864></TT
6865>&nbsp;:</TD
6866><TD
6867WIDTH="80%"
6868ALIGN="LEFT"
6869VALIGN="TOP"
6870>  a document instance</TD
6871></TR
6872><TR
6873><TD
6874WIDTH="20%"
6875ALIGN="RIGHT"
6876VALIGN="TOP"
6877><I
6878CLASS="EMPHASIS"
6879>Returns</I
6880> :</TD
6881><TD
6882WIDTH="80%"
6883ALIGN="LEFT"
6884VALIGN="TOP"
6885>1 if valid or 0 otherwise</TD
6886></TR
6887></TBODY
6888></TABLE
6889><P
6890></P
6891></DIV
6892></DIV
6893><HR><DIV
6894CLASS="REFSECT2"
6895><A
6896NAME="AEN9994"
6897></A
6898><H3
6899><A
6900NAME="XMLVALIDATENOTATIONUSE"
6901></A
6902>xmlValidateNotationUse ()</H3
6903><TABLE
6904BORDER="0"
6905BGCOLOR="#D6E8FF"
6906WIDTH="100%"
6907CELLPADDING="6"
6908><TR
6909><TD
6910><PRE
6911CLASS="PROGRAMLISTING"
6912>int         xmlValidateNotationUse          (<A
6913HREF="libxml-valid.html#XMLVALIDCTXTPTR"
6914>xmlValidCtxtPtr</A
6915> ctxt,
6916                                             <A
6917HREF="libxml-tree.html#XMLDOCPTR"
6918>xmlDocPtr</A
6919> doc,
6920                                             const <A
6921HREF="libxml-tree.html#XMLCHAR"
6922>xmlChar</A
6923> *notationName);</PRE
6924></TD
6925></TR
6926></TABLE
6927><P
6928>Validate that the given name match a notation declaration.
6929- [ VC: Notation Declared ]</P
6930><P
6931></P
6932><DIV
6933CLASS="INFORMALTABLE"
6934><A
6935NAME="AEN10003"
6936></A
6937><P
6938></P
6939><TABLE
6940BORDER="0"
6941WIDTH="100%"
6942BGCOLOR="#FFD0D0"
6943CELLSPACING="0"
6944CELLPADDING="4"
6945CLASS="CALSTABLE"
6946><TBODY
6947><TR
6948><TD
6949WIDTH="20%"
6950ALIGN="RIGHT"
6951VALIGN="TOP"
6952><TT
6953CLASS="PARAMETER"
6954><I
6955>ctxt</I
6956></TT
6957>&nbsp;:</TD
6958><TD
6959WIDTH="80%"
6960ALIGN="LEFT"
6961VALIGN="TOP"
6962>  the validation context</TD
6963></TR
6964><TR
6965><TD
6966WIDTH="20%"
6967ALIGN="RIGHT"
6968VALIGN="TOP"
6969><TT
6970CLASS="PARAMETER"
6971><I
6972>doc</I
6973></TT
6974>&nbsp;:</TD
6975><TD
6976WIDTH="80%"
6977ALIGN="LEFT"
6978VALIGN="TOP"
6979>  the document</TD
6980></TR
6981><TR
6982><TD
6983WIDTH="20%"
6984ALIGN="RIGHT"
6985VALIGN="TOP"
6986><TT
6987CLASS="PARAMETER"
6988><I
6989>notationName</I
6990></TT
6991>&nbsp;:</TD
6992><TD
6993WIDTH="80%"
6994ALIGN="LEFT"
6995VALIGN="TOP"
6996>  the notation name to check</TD
6997></TR
6998><TR
6999><TD
7000WIDTH="20%"
7001ALIGN="RIGHT"
7002VALIGN="TOP"
7003><I
7004CLASS="EMPHASIS"
7005>Returns</I
7006> :</TD
7007><TD
7008WIDTH="80%"
7009ALIGN="LEFT"
7010VALIGN="TOP"
7011>1 if valid or 0 otherwise</TD
7012></TR
7013></TBODY
7014></TABLE
7015><P
7016></P
7017></DIV
7018></DIV
7019><HR><DIV
7020CLASS="REFSECT2"
7021><A
7022NAME="AEN10024"
7023></A
7024><H3
7025><A
7026NAME="XMLISMIXEDELEMENT"
7027></A
7028>xmlIsMixedElement ()</H3
7029><TABLE
7030BORDER="0"
7031BGCOLOR="#D6E8FF"
7032WIDTH="100%"
7033CELLPADDING="6"
7034><TR
7035><TD
7036><PRE
7037CLASS="PROGRAMLISTING"
7038>int         xmlIsMixedElement               (<A
7039HREF="libxml-tree.html#XMLDOCPTR"
7040>xmlDocPtr</A
7041> doc,
7042                                             const <A
7043HREF="libxml-tree.html#XMLCHAR"
7044>xmlChar</A
7045> *name);</PRE
7046></TD
7047></TR
7048></TABLE
7049><P
7050>Search in the DtDs whether an element accept Mixed content (or ANY)
7051basically if it is supposed to accept text childs</P
7052><P
7053></P
7054><DIV
7055CLASS="INFORMALTABLE"
7056><A
7057NAME="AEN10032"
7058></A
7059><P
7060></P
7061><TABLE
7062BORDER="0"
7063WIDTH="100%"
7064BGCOLOR="#FFD0D0"
7065CELLSPACING="0"
7066CELLPADDING="4"
7067CLASS="CALSTABLE"
7068><TBODY
7069><TR
7070><TD
7071WIDTH="20%"
7072ALIGN="RIGHT"
7073VALIGN="TOP"
7074><TT
7075CLASS="PARAMETER"
7076><I
7077>doc</I
7078></TT
7079>&nbsp;:</TD
7080><TD
7081WIDTH="80%"
7082ALIGN="LEFT"
7083VALIGN="TOP"
7084>  the document</TD
7085></TR
7086><TR
7087><TD
7088WIDTH="20%"
7089ALIGN="RIGHT"
7090VALIGN="TOP"
7091><TT
7092CLASS="PARAMETER"
7093><I
7094>name</I
7095></TT
7096>&nbsp;:</TD
7097><TD
7098WIDTH="80%"
7099ALIGN="LEFT"
7100VALIGN="TOP"
7101>  the element name</TD
7102></TR
7103><TR
7104><TD
7105WIDTH="20%"
7106ALIGN="RIGHT"
7107VALIGN="TOP"
7108><I
7109CLASS="EMPHASIS"
7110>Returns</I
7111> :</TD
7112><TD
7113WIDTH="80%"
7114ALIGN="LEFT"
7115VALIGN="TOP"
7116>0 if no, 1 if yes, and -1 if no element description is available</TD
7117></TR
7118></TBODY
7119></TABLE
7120><P
7121></P
7122></DIV
7123></DIV
7124><HR><DIV
7125CLASS="REFSECT2"
7126><A
7127NAME="AEN10049"
7128></A
7129><H3
7130><A
7131NAME="XMLGETDTDATTRDESC"
7132></A
7133>xmlGetDtdAttrDesc ()</H3
7134><TABLE
7135BORDER="0"
7136BGCOLOR="#D6E8FF"
7137WIDTH="100%"
7138CELLPADDING="6"
7139><TR
7140><TD
7141><PRE
7142CLASS="PROGRAMLISTING"
7143><A
7144HREF="libxml-tree.html#XMLATTRIBUTEPTR"
7145>xmlAttributePtr</A
7146> xmlGetDtdAttrDesc           (<A
7147HREF="libxml-tree.html#XMLDTDPTR"
7148>xmlDtdPtr</A
7149> dtd,
7150                                             const <A
7151HREF="libxml-tree.html#XMLCHAR"
7152>xmlChar</A
7153> *elem,
7154                                             const <A
7155HREF="libxml-tree.html#XMLCHAR"
7156>xmlChar</A
7157> *name);</PRE
7158></TD
7159></TR
7160></TABLE
7161><P
7162>Search the DTD for the description of this attribute on
7163this element.</P
7164><P
7165></P
7166><DIV
7167CLASS="INFORMALTABLE"
7168><A
7169NAME="AEN10059"
7170></A
7171><P
7172></P
7173><TABLE
7174BORDER="0"
7175WIDTH="100%"
7176BGCOLOR="#FFD0D0"
7177CELLSPACING="0"
7178CELLPADDING="4"
7179CLASS="CALSTABLE"
7180><TBODY
7181><TR
7182><TD
7183WIDTH="20%"
7184ALIGN="RIGHT"
7185VALIGN="TOP"
7186><TT
7187CLASS="PARAMETER"
7188><I
7189>dtd</I
7190></TT
7191>&nbsp;:</TD
7192><TD
7193WIDTH="80%"
7194ALIGN="LEFT"
7195VALIGN="TOP"
7196>  a pointer to the DtD to search</TD
7197></TR
7198><TR
7199><TD
7200WIDTH="20%"
7201ALIGN="RIGHT"
7202VALIGN="TOP"
7203><TT
7204CLASS="PARAMETER"
7205><I
7206>elem</I
7207></TT
7208>&nbsp;:</TD
7209><TD
7210WIDTH="80%"
7211ALIGN="LEFT"
7212VALIGN="TOP"
7213>  the element name</TD
7214></TR
7215><TR
7216><TD
7217WIDTH="20%"
7218ALIGN="RIGHT"
7219VALIGN="TOP"
7220><TT
7221CLASS="PARAMETER"
7222><I
7223>name</I
7224></TT
7225>&nbsp;:</TD
7226><TD
7227WIDTH="80%"
7228ALIGN="LEFT"
7229VALIGN="TOP"
7230>  the attribute name</TD
7231></TR
7232><TR
7233><TD
7234WIDTH="20%"
7235ALIGN="RIGHT"
7236VALIGN="TOP"
7237><I
7238CLASS="EMPHASIS"
7239>Returns</I
7240> :</TD
7241><TD
7242WIDTH="80%"
7243ALIGN="LEFT"
7244VALIGN="TOP"
7245>the xmlAttributePtr if found or NULL</TD
7246></TR
7247></TBODY
7248></TABLE
7249><P
7250></P
7251></DIV
7252></DIV
7253><HR><DIV
7254CLASS="REFSECT2"
7255><A
7256NAME="AEN10080"
7257></A
7258><H3
7259><A
7260NAME="XMLGETDTDQATTRDESC"
7261></A
7262>xmlGetDtdQAttrDesc ()</H3
7263><TABLE
7264BORDER="0"
7265BGCOLOR="#D6E8FF"
7266WIDTH="100%"
7267CELLPADDING="6"
7268><TR
7269><TD
7270><PRE
7271CLASS="PROGRAMLISTING"
7272><A
7273HREF="libxml-tree.html#XMLATTRIBUTEPTR"
7274>xmlAttributePtr</A
7275> xmlGetDtdQAttrDesc          (<A
7276HREF="libxml-tree.html#XMLDTDPTR"
7277>xmlDtdPtr</A
7278> dtd,
7279                                             const <A
7280HREF="libxml-tree.html#XMLCHAR"
7281>xmlChar</A
7282> *elem,
7283                                             const <A
7284HREF="libxml-tree.html#XMLCHAR"
7285>xmlChar</A
7286> *name,
7287                                             const <A
7288HREF="libxml-tree.html#XMLCHAR"
7289>xmlChar</A
7290> *prefix);</PRE
7291></TD
7292></TR
7293></TABLE
7294><P
7295>Search the DTD for the description of this qualified attribute on
7296this element.</P
7297><P
7298></P
7299><DIV
7300CLASS="INFORMALTABLE"
7301><A
7302NAME="AEN10091"
7303></A
7304><P
7305></P
7306><TABLE
7307BORDER="0"
7308WIDTH="100%"
7309BGCOLOR="#FFD0D0"
7310CELLSPACING="0"
7311CELLPADDING="4"
7312CLASS="CALSTABLE"
7313><TBODY
7314><TR
7315><TD
7316WIDTH="20%"
7317ALIGN="RIGHT"
7318VALIGN="TOP"
7319><TT
7320CLASS="PARAMETER"
7321><I
7322>dtd</I
7323></TT
7324>&nbsp;:</TD
7325><TD
7326WIDTH="80%"
7327ALIGN="LEFT"
7328VALIGN="TOP"
7329>  a pointer to the DtD to search</TD
7330></TR
7331><TR
7332><TD
7333WIDTH="20%"
7334ALIGN="RIGHT"
7335VALIGN="TOP"
7336><TT
7337CLASS="PARAMETER"
7338><I
7339>elem</I
7340></TT
7341>&nbsp;:</TD
7342><TD
7343WIDTH="80%"
7344ALIGN="LEFT"
7345VALIGN="TOP"
7346>  the element name</TD
7347></TR
7348><TR
7349><TD
7350WIDTH="20%"
7351ALIGN="RIGHT"
7352VALIGN="TOP"
7353><TT
7354CLASS="PARAMETER"
7355><I
7356>name</I
7357></TT
7358>&nbsp;:</TD
7359><TD
7360WIDTH="80%"
7361ALIGN="LEFT"
7362VALIGN="TOP"
7363>  the attribute name</TD
7364></TR
7365><TR
7366><TD
7367WIDTH="20%"
7368ALIGN="RIGHT"
7369VALIGN="TOP"
7370><TT
7371CLASS="PARAMETER"
7372><I
7373>prefix</I
7374></TT
7375>&nbsp;:</TD
7376><TD
7377WIDTH="80%"
7378ALIGN="LEFT"
7379VALIGN="TOP"
7380>  the attribute namespace prefix</TD
7381></TR
7382><TR
7383><TD
7384WIDTH="20%"
7385ALIGN="RIGHT"
7386VALIGN="TOP"
7387><I
7388CLASS="EMPHASIS"
7389>Returns</I
7390> :</TD
7391><TD
7392WIDTH="80%"
7393ALIGN="LEFT"
7394VALIGN="TOP"
7395>the xmlAttributePtr if found or NULL</TD
7396></TR
7397></TBODY
7398></TABLE
7399><P
7400></P
7401></DIV
7402></DIV
7403><HR><DIV
7404CLASS="REFSECT2"
7405><A
7406NAME="AEN10116"
7407></A
7408><H3
7409><A
7410NAME="XMLGETDTDNOTATIONDESC"
7411></A
7412>xmlGetDtdNotationDesc ()</H3
7413><TABLE
7414BORDER="0"
7415BGCOLOR="#D6E8FF"
7416WIDTH="100%"
7417CELLPADDING="6"
7418><TR
7419><TD
7420><PRE
7421CLASS="PROGRAMLISTING"
7422><A
7423HREF="libxml-tree.html#XMLNOTATIONPTR"
7424>xmlNotationPtr</A
7425> xmlGetDtdNotationDesc        (<A
7426HREF="libxml-tree.html#XMLDTDPTR"
7427>xmlDtdPtr</A
7428> dtd,
7429                                             const <A
7430HREF="libxml-tree.html#XMLCHAR"
7431>xmlChar</A
7432> *name);</PRE
7433></TD
7434></TR
7435></TABLE
7436><P
7437>Search the DTD for the description of this notation</P
7438><P
7439></P
7440><DIV
7441CLASS="INFORMALTABLE"
7442><A
7443NAME="AEN10125"
7444></A
7445><P
7446></P
7447><TABLE
7448BORDER="0"
7449WIDTH="100%"
7450BGCOLOR="#FFD0D0"
7451CELLSPACING="0"
7452CELLPADDING="4"
7453CLASS="CALSTABLE"
7454><TBODY
7455><TR
7456><TD
7457WIDTH="20%"
7458ALIGN="RIGHT"
7459VALIGN="TOP"
7460><TT
7461CLASS="PARAMETER"
7462><I
7463>dtd</I
7464></TT
7465>&nbsp;:</TD
7466><TD
7467WIDTH="80%"
7468ALIGN="LEFT"
7469VALIGN="TOP"
7470>  a pointer to the DtD to search</TD
7471></TR
7472><TR
7473><TD
7474WIDTH="20%"
7475ALIGN="RIGHT"
7476VALIGN="TOP"
7477><TT
7478CLASS="PARAMETER"
7479><I
7480>name</I
7481></TT
7482>&nbsp;:</TD
7483><TD
7484WIDTH="80%"
7485ALIGN="LEFT"
7486VALIGN="TOP"
7487>  the notation name</TD
7488></TR
7489><TR
7490><TD
7491WIDTH="20%"
7492ALIGN="RIGHT"
7493VALIGN="TOP"
7494><I
7495CLASS="EMPHASIS"
7496>Returns</I
7497> :</TD
7498><TD
7499WIDTH="80%"
7500ALIGN="LEFT"
7501VALIGN="TOP"
7502>the xmlNotationPtr if found or NULL</TD
7503></TR
7504></TBODY
7505></TABLE
7506><P
7507></P
7508></DIV
7509></DIV
7510><HR><DIV
7511CLASS="REFSECT2"
7512><A
7513NAME="AEN10142"
7514></A
7515><H3
7516><A
7517NAME="XMLGETDTDQELEMENTDESC"
7518></A
7519>xmlGetDtdQElementDesc ()</H3
7520><TABLE
7521BORDER="0"
7522BGCOLOR="#D6E8FF"
7523WIDTH="100%"
7524CELLPADDING="6"
7525><TR
7526><TD
7527><PRE
7528CLASS="PROGRAMLISTING"
7529><A
7530HREF="libxml-tree.html#XMLELEMENTPTR"
7531>xmlElementPtr</A
7532> xmlGetDtdQElementDesc         (<A
7533HREF="libxml-tree.html#XMLDTDPTR"
7534>xmlDtdPtr</A
7535> dtd,
7536                                             const <A
7537HREF="libxml-tree.html#XMLCHAR"
7538>xmlChar</A
7539> *name,
7540                                             const <A
7541HREF="libxml-tree.html#XMLCHAR"
7542>xmlChar</A
7543> *prefix);</PRE
7544></TD
7545></TR
7546></TABLE
7547><P
7548>Search the DTD for the description of this element</P
7549><P
7550></P
7551><DIV
7552CLASS="INFORMALTABLE"
7553><A
7554NAME="AEN10152"
7555></A
7556><P
7557></P
7558><TABLE
7559BORDER="0"
7560WIDTH="100%"
7561BGCOLOR="#FFD0D0"
7562CELLSPACING="0"
7563CELLPADDING="4"
7564CLASS="CALSTABLE"
7565><TBODY
7566><TR
7567><TD
7568WIDTH="20%"
7569ALIGN="RIGHT"
7570VALIGN="TOP"
7571><TT
7572CLASS="PARAMETER"
7573><I
7574>dtd</I
7575></TT
7576>&nbsp;:</TD
7577><TD
7578WIDTH="80%"
7579ALIGN="LEFT"
7580VALIGN="TOP"
7581>  a pointer to the DtD to search</TD
7582></TR
7583><TR
7584><TD
7585WIDTH="20%"
7586ALIGN="RIGHT"
7587VALIGN="TOP"
7588><TT
7589CLASS="PARAMETER"
7590><I
7591>name</I
7592></TT
7593>&nbsp;:</TD
7594><TD
7595WIDTH="80%"
7596ALIGN="LEFT"
7597VALIGN="TOP"
7598>  the element name</TD
7599></TR
7600><TR
7601><TD
7602WIDTH="20%"
7603ALIGN="RIGHT"
7604VALIGN="TOP"
7605><TT
7606CLASS="PARAMETER"
7607><I
7608>prefix</I
7609></TT
7610>&nbsp;:</TD
7611><TD
7612WIDTH="80%"
7613ALIGN="LEFT"
7614VALIGN="TOP"
7615>  the element namespace prefix</TD
7616></TR
7617><TR
7618><TD
7619WIDTH="20%"
7620ALIGN="RIGHT"
7621VALIGN="TOP"
7622><I
7623CLASS="EMPHASIS"
7624>Returns</I
7625> :</TD
7626><TD
7627WIDTH="80%"
7628ALIGN="LEFT"
7629VALIGN="TOP"
7630>the xmlElementPtr if found or NULL</TD
7631></TR
7632></TBODY
7633></TABLE
7634><P
7635></P
7636></DIV
7637></DIV
7638><HR><DIV
7639CLASS="REFSECT2"
7640><A
7641NAME="AEN10173"
7642></A
7643><H3
7644><A
7645NAME="XMLGETDTDELEMENTDESC"
7646></A
7647>xmlGetDtdElementDesc ()</H3
7648><TABLE
7649BORDER="0"
7650BGCOLOR="#D6E8FF"
7651WIDTH="100%"
7652CELLPADDING="6"
7653><TR
7654><TD
7655><PRE
7656CLASS="PROGRAMLISTING"
7657><A
7658HREF="libxml-tree.html#XMLELEMENTPTR"
7659>xmlElementPtr</A
7660> xmlGetDtdElementDesc          (<A
7661HREF="libxml-tree.html#XMLDTDPTR"
7662>xmlDtdPtr</A
7663> dtd,
7664                                             const <A
7665HREF="libxml-tree.html#XMLCHAR"
7666>xmlChar</A
7667> *name);</PRE
7668></TD
7669></TR
7670></TABLE
7671><P
7672>Search the DTD for the description of this element</P
7673><P
7674></P
7675><DIV
7676CLASS="INFORMALTABLE"
7677><A
7678NAME="AEN10182"
7679></A
7680><P
7681></P
7682><TABLE
7683BORDER="0"
7684WIDTH="100%"
7685BGCOLOR="#FFD0D0"
7686CELLSPACING="0"
7687CELLPADDING="4"
7688CLASS="CALSTABLE"
7689><TBODY
7690><TR
7691><TD
7692WIDTH="20%"
7693ALIGN="RIGHT"
7694VALIGN="TOP"
7695><TT
7696CLASS="PARAMETER"
7697><I
7698>dtd</I
7699></TT
7700>&nbsp;:</TD
7701><TD
7702WIDTH="80%"
7703ALIGN="LEFT"
7704VALIGN="TOP"
7705>  a pointer to the DtD to search</TD
7706></TR
7707><TR
7708><TD
7709WIDTH="20%"
7710ALIGN="RIGHT"
7711VALIGN="TOP"
7712><TT
7713CLASS="PARAMETER"
7714><I
7715>name</I
7716></TT
7717>&nbsp;:</TD
7718><TD
7719WIDTH="80%"
7720ALIGN="LEFT"
7721VALIGN="TOP"
7722>  the element name</TD
7723></TR
7724><TR
7725><TD
7726WIDTH="20%"
7727ALIGN="RIGHT"
7728VALIGN="TOP"
7729><I
7730CLASS="EMPHASIS"
7731>Returns</I
7732> :</TD
7733><TD
7734WIDTH="80%"
7735ALIGN="LEFT"
7736VALIGN="TOP"
7737>the xmlElementPtr if found or NULL</TD
7738></TR
7739></TBODY
7740></TABLE
7741><P
7742></P
7743></DIV
7744></DIV
7745><HR><DIV
7746CLASS="REFSECT2"
7747><A
7748NAME="AEN10199"
7749></A
7750><H3
7751><A
7752NAME="XMLVALIDGETVALIDELEMENTS"
7753></A
7754>xmlValidGetValidElements ()</H3
7755><TABLE
7756BORDER="0"
7757BGCOLOR="#D6E8FF"
7758WIDTH="100%"
7759CELLPADDING="6"
7760><TR
7761><TD
7762><PRE
7763CLASS="PROGRAMLISTING"
7764>int         xmlValidGetValidElements        (<A
7765HREF="libxml-tree.html#XMLNODE"
7766>xmlNode</A
7767> *prev,
7768                                             <A
7769HREF="libxml-tree.html#XMLNODE"
7770>xmlNode</A
7771> *next,
7772                                             const <A
7773HREF="libxml-tree.html#XMLCHAR"
7774>xmlChar</A
7775> **list,
7776                                             int max);</PRE
7777></TD
7778></TR
7779></TABLE
7780><P
7781>This function returns the list of authorized children to insert
7782within an existing tree while respecting the validity constraints
7783forced by the Dtd. The insertion point is defined using <TT
7784CLASS="PARAMETER"
7785><I
7786>prev</I
7787></TT
7788> and
7789<TT
7790CLASS="PARAMETER"
7791><I
7792>next</I
7793></TT
7794> in the following ways:
7795to insert before 'node': xmlValidGetValidElements(node-&gt;prev, node, ...
7796to insert next 'node': xmlValidGetValidElements(node, node-&gt;next, ...
7797to replace 'node': xmlValidGetValidElements(node-&gt;prev, node-&gt;next, ...
7798to prepend a child to 'node': xmlValidGetValidElements(NULL, node-&gt;childs,
7799to append a child to 'node': xmlValidGetValidElements(node-&gt;last, NULL, ...</P
7800><P
7801>pointers to the element names are inserted at the beginning of the array
7802and do not need to be freed.</P
7803><P
7804></P
7805><DIV
7806CLASS="INFORMALTABLE"
7807><A
7808NAME="AEN10211"
7809></A
7810><P
7811></P
7812><TABLE
7813BORDER="0"
7814WIDTH="100%"
7815BGCOLOR="#FFD0D0"
7816CELLSPACING="0"
7817CELLPADDING="4"
7818CLASS="CALSTABLE"
7819><TBODY
7820><TR
7821><TD
7822WIDTH="20%"
7823ALIGN="RIGHT"
7824VALIGN="TOP"
7825><TT
7826CLASS="PARAMETER"
7827><I
7828>prev</I
7829></TT
7830>&nbsp;:</TD
7831><TD
7832WIDTH="80%"
7833ALIGN="LEFT"
7834VALIGN="TOP"
7835>  an element to insert after</TD
7836></TR
7837><TR
7838><TD
7839WIDTH="20%"
7840ALIGN="RIGHT"
7841VALIGN="TOP"
7842><TT
7843CLASS="PARAMETER"
7844><I
7845>next</I
7846></TT
7847>&nbsp;:</TD
7848><TD
7849WIDTH="80%"
7850ALIGN="LEFT"
7851VALIGN="TOP"
7852>  an element to insert next</TD
7853></TR
7854><TR
7855><TD
7856WIDTH="20%"
7857ALIGN="RIGHT"
7858VALIGN="TOP"
7859><TT
7860CLASS="PARAMETER"
7861><I
7862>list</I
7863></TT
7864>&nbsp;:</TD
7865><TD
7866WIDTH="80%"
7867ALIGN="LEFT"
7868VALIGN="TOP"
7869>  an array to store the list of child names</TD
7870></TR
7871><TR
7872><TD
7873WIDTH="20%"
7874ALIGN="RIGHT"
7875VALIGN="TOP"
7876><TT
7877CLASS="PARAMETER"
7878><I
7879>max</I
7880></TT
7881>&nbsp;:</TD
7882><TD
7883WIDTH="80%"
7884ALIGN="LEFT"
7885VALIGN="TOP"
7886>  the size of the array</TD
7887></TR
7888><TR
7889><TD
7890WIDTH="20%"
7891ALIGN="RIGHT"
7892VALIGN="TOP"
7893><I
7894CLASS="EMPHASIS"
7895>Returns</I
7896> :</TD
7897><TD
7898WIDTH="80%"
7899ALIGN="LEFT"
7900VALIGN="TOP"
7901>the number of element in the list, or -1 in case of error. If
7902the function returns the value <TT
7903CLASS="PARAMETER"
7904><I
7905>max</I
7906></TT
7907> the caller is invited to grow the
7908receiving array and retry.</TD
7909></TR
7910></TBODY
7911></TABLE
7912><P
7913></P
7914></DIV
7915></DIV
7916><HR><DIV
7917CLASS="REFSECT2"
7918><A
7919NAME="AEN10237"
7920></A
7921><H3
7922><A
7923NAME="XMLVALIDGETPOTENTIALCHILDREN"
7924></A
7925>xmlValidGetPotentialChildren ()</H3
7926><TABLE
7927BORDER="0"
7928BGCOLOR="#D6E8FF"
7929WIDTH="100%"
7930CELLPADDING="6"
7931><TR
7932><TD
7933><PRE
7934CLASS="PROGRAMLISTING"
7935>int         xmlValidGetPotentialChildren    (<A
7936HREF="libxml-tree.html#XMLELEMENTCONTENT"
7937>xmlElementContent</A
7938> *ctree,
7939                                             const <A
7940HREF="libxml-tree.html#XMLCHAR"
7941>xmlChar</A
7942> **list,
7943                                             int *len,
7944                                             int max);</PRE
7945></TD
7946></TR
7947></TABLE
7948><P
7949>Build/extend a list of  potential children allowed by the content tree</P
7950><P
7951></P
7952><DIV
7953CLASS="INFORMALTABLE"
7954><A
7955NAME="AEN10245"
7956></A
7957><P
7958></P
7959><TABLE
7960BORDER="0"
7961WIDTH="100%"
7962BGCOLOR="#FFD0D0"
7963CELLSPACING="0"
7964CELLPADDING="4"
7965CLASS="CALSTABLE"
7966><TBODY
7967><TR
7968><TD
7969WIDTH="20%"
7970ALIGN="RIGHT"
7971VALIGN="TOP"
7972><TT
7973CLASS="PARAMETER"
7974><I
7975>ctree</I
7976></TT
7977>&nbsp;:</TD
7978><TD
7979WIDTH="80%"
7980ALIGN="LEFT"
7981VALIGN="TOP"
7982>  an element content tree</TD
7983></TR
7984><TR
7985><TD
7986WIDTH="20%"
7987ALIGN="RIGHT"
7988VALIGN="TOP"
7989><TT
7990CLASS="PARAMETER"
7991><I
7992>list</I
7993></TT
7994>&nbsp;:</TD
7995><TD
7996WIDTH="80%"
7997ALIGN="LEFT"
7998VALIGN="TOP"
7999>  an array to store the list of child names</TD
8000></TR
8001><TR
8002><TD
8003WIDTH="20%"
8004ALIGN="RIGHT"
8005VALIGN="TOP"
8006><TT
8007CLASS="PARAMETER"
8008><I
8009>len</I
8010></TT
8011>&nbsp;:</TD
8012><TD
8013WIDTH="80%"
8014ALIGN="LEFT"
8015VALIGN="TOP"
8016>  a pointer to the number of element in the list</TD
8017></TR
8018><TR
8019><TD
8020WIDTH="20%"
8021ALIGN="RIGHT"
8022VALIGN="TOP"
8023><TT
8024CLASS="PARAMETER"
8025><I
8026>max</I
8027></TT
8028>&nbsp;:</TD
8029><TD
8030WIDTH="80%"
8031ALIGN="LEFT"
8032VALIGN="TOP"
8033>  the size of the array</TD
8034></TR
8035><TR
8036><TD
8037WIDTH="20%"
8038ALIGN="RIGHT"
8039VALIGN="TOP"
8040><I
8041CLASS="EMPHASIS"
8042>Returns</I
8043> :</TD
8044><TD
8045WIDTH="80%"
8046ALIGN="LEFT"
8047VALIGN="TOP"
8048>the number of element in the list, or -1 in case of error.</TD
8049></TR
8050></TBODY
8051></TABLE
8052><P
8053></P
8054></DIV
8055></DIV
8056></DIV
8057><DIV
8058CLASS="NAVFOOTER"
8059><BR
8060CLEAR="all"><BR><TABLE
8061WIDTH="100%"
8062BORDER="0"
8063BGCOLOR="#000000"
8064CELLPADDING="1"
8065CELLSPACING="0"
8066><TR
8067><TD
8068WIDTH="25%"
8069BGCOLOR="#C00000"
8070ALIGN="left"
8071><A
8072HREF="libxml-entities.html"
8073><FONT
8074COLOR="#FFFFFF"
8075SIZE="3"
8076><B
8077>&#60;&#60;&#60; Previous Page</B
8078></FONT
8079></A
8080></TD
8081><TD
8082WIDTH="25%"
8083BGCOLOR="#0000C0"
8084ALIGN="center"
8085><FONT
8086COLOR="#FFFFFF"
8087SIZE="3"
8088><B
8089><A
8090HREF="book1.html"
8091><FONT
8092COLOR="#FFFFFF"
8093SIZE="3"
8094><B
8095>Home</B
8096></FONT
8097></A
8098></B
8099></FONT
8100></TD
8101><TD
8102WIDTH="25%"
8103BGCOLOR="#00C000"
8104ALIGN="center"
8105><FONT
8106COLOR="#FFFFFF"
8107SIZE="3"
8108><B
8109><A
8110HREF="libxml-lib.html"
8111><FONT
8112COLOR="#FFFFFF"
8113SIZE="3"
8114><B
8115>Up</B
8116></FONT
8117></A
8118></B
8119></FONT
8120></TD
8121><TD
8122WIDTH="25%"
8123BGCOLOR="#C00000"
8124ALIGN="right"
8125><A
8126HREF="libxml-uri.html"
8127><FONT
8128COLOR="#FFFFFF"
8129SIZE="3"
8130><B
8131>Next Page &#62;&#62;&#62;</B
8132></FONT
8133></A
8134></TD
8135></TR
8136><TR
8137><TD
8138COLSPAN="2"
8139ALIGN="left"
8140><FONT
8141COLOR="#FFFFFF"
8142SIZE="3"
8143><B
8144>entities</B
8145></FONT
8146></TD
8147><TD
8148COLSPAN="2"
8149ALIGN="right"
8150><FONT
8151COLOR="#FFFFFF"
8152SIZE="3"
8153><B
8154>uri</B
8155></FONT
8156></TD
8157></TR
8158></TABLE
8159></DIV
8160></BODY
8161></HTML
8162>