1ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/*
2ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * Summary: The DTD validation
3ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * Description: API for the DTD handling and the validity checking
4ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project *
5ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * Copy: See Copyright for the status of this software.
6ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project *
7ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * Author: Daniel Veillard
8ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project */
9ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
10ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
11ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#ifndef __XML_VALID_H__
12ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#define __XML_VALID_H__
13ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
14ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#include <libxml/xmlversion.h>
15ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#include <libxml/xmlerror.h>
16ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#include <libxml/tree.h>
17ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#include <libxml/list.h>
18ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#include <libxml/xmlautomata.h>
19ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#include <libxml/xmlregexp.h>
20ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
21ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#ifdef __cplusplus
22ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Projectextern "C" {
23ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#endif
24ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
25ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/*
26ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * Validation state added for non-determinist content model.
27ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project */
28ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Projecttypedef struct _xmlValidState xmlValidState;
29ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Projecttypedef xmlValidState *xmlValidStatePtr;
30ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
31ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/**
32ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * xmlValidityErrorFunc:
33ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * @ctx:  usually an xmlValidCtxtPtr to a validity error context,
34ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project *        but comes from ctxt->userData (which normally contains such
35ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project *        a pointer); ctxt->userData can be changed by the user.
36ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * @msg:  the string to format *printf like vararg
37ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * @...:  remaining arguments to the format
38ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project *
39ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * Callback called when a validity error is found. This is a message
40ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * oriented function similar to an *printf function.
41ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project */
42ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Projecttypedef void (XMLCDECL *xmlValidityErrorFunc) (void *ctx,
43ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project			     const char *msg,
44df143a5041f03a22808b59c76698770b74692815Selim Gurun			     ...) LIBXML_ATTR_FORMAT(2,3);
45ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
46ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/**
47ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * xmlValidityWarningFunc:
48ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * @ctx:  usually an xmlValidCtxtPtr to a validity error context,
49ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project *        but comes from ctxt->userData (which normally contains such
50ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project *        a pointer); ctxt->userData can be changed by the user.
51ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * @msg:  the string to format *printf like vararg
52ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * @...:  remaining arguments to the format
53ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project *
54ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * Callback called when a validity warning is found. This is a message
55ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * oriented function similar to an *printf function.
56ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project */
57ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Projecttypedef void (XMLCDECL *xmlValidityWarningFunc) (void *ctx,
58ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project			       const char *msg,
59df143a5041f03a22808b59c76698770b74692815Selim Gurun			       ...) LIBXML_ATTR_FORMAT(2,3);
60ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
61ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#ifdef IN_LIBXML
62ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/**
63ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * XML_CTXT_FINISH_DTD_0:
64ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project *
65ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * Special value for finishDtd field when embedded in an xmlParserCtxt
66ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project */
67ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#define XML_CTXT_FINISH_DTD_0 0xabcd1234
68ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/**
69ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * XML_CTXT_FINISH_DTD_1:
70ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project *
71ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * Special value for finishDtd field when embedded in an xmlParserCtxt
72ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project */
73ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#define XML_CTXT_FINISH_DTD_1 0xabcd1235
74ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#endif
75ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
76ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/*
77ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * xmlValidCtxt:
78ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * An xmlValidCtxt is used for error reporting when validating.
79ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project */
80ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Projecttypedef struct _xmlValidCtxt xmlValidCtxt;
81ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Projecttypedef xmlValidCtxt *xmlValidCtxtPtr;
82ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Projectstruct _xmlValidCtxt {
83ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project    void *userData;			/* user specific data block */
84ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project    xmlValidityErrorFunc error;		/* the callback in case of errors */
85ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project    xmlValidityWarningFunc warning;	/* the callback in case of warning */
86ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
87ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project    /* Node analysis stack used when validating within entities */
88ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project    xmlNodePtr         node;          /* Current parsed Node */
89ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project    int                nodeNr;        /* Depth of the parsing stack */
90ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project    int                nodeMax;       /* Max depth of the parsing stack */
91ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project    xmlNodePtr        *nodeTab;       /* array of nodes */
92ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
93ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project    unsigned int     finishDtd;       /* finished validating the Dtd ? */
94ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project    xmlDocPtr              doc;       /* the document */
95ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project    int                  valid;       /* temporary validity check result */
96ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
97ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project    /* state state used for non-determinist content validation */
98ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project    xmlValidState     *vstate;        /* current state */
99ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project    int                vstateNr;      /* Depth of the validation stack */
100ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project    int                vstateMax;     /* Max depth of the validation stack */
101ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project    xmlValidState     *vstateTab;     /* array of validation states */
102ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
103ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#ifdef LIBXML_REGEXP_ENABLED
104ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project    xmlAutomataPtr            am;     /* the automata */
105ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project    xmlAutomataStatePtr    state;     /* used to build the automata */
106ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#else
107ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project    void                     *am;
108ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project    void                  *state;
109ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#endif
110ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project};
111ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
112ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/*
113ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * ALL notation declarations are stored in a table.
114ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * There is one table per DTD.
115ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project */
116ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
117ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Projecttypedef struct _xmlHashTable xmlNotationTable;
118ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Projecttypedef xmlNotationTable *xmlNotationTablePtr;
119ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
120ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/*
121ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * ALL element declarations are stored in a table.
122ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * There is one table per DTD.
123ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project */
124ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
125ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Projecttypedef struct _xmlHashTable xmlElementTable;
126ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Projecttypedef xmlElementTable *xmlElementTablePtr;
127ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
128ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/*
129ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * ALL attribute declarations are stored in a table.
130ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * There is one table per DTD.
131ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project */
132ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
133ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Projecttypedef struct _xmlHashTable xmlAttributeTable;
134ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Projecttypedef xmlAttributeTable *xmlAttributeTablePtr;
135ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
136ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/*
137ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * ALL IDs attributes are stored in a table.
138ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * There is one table per document.
139ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project */
140ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
141ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Projecttypedef struct _xmlHashTable xmlIDTable;
142ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Projecttypedef xmlIDTable *xmlIDTablePtr;
143ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
144ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/*
145ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * ALL Refs attributes are stored in a table.
146ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * There is one table per document.
147ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project */
148ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
149ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Projecttypedef struct _xmlHashTable xmlRefTable;
150ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Projecttypedef xmlRefTable *xmlRefTablePtr;
151ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
152ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/* Notation */
15394442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN xmlNotationPtr XMLCALL
154ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlAddNotationDecl	(xmlValidCtxtPtr ctxt,
155ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlDtdPtr dtd,
156ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *name,
157ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *PublicID,
158ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *SystemID);
159ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#ifdef LIBXML_TREE_ENABLED
16094442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN xmlNotationTablePtr XMLCALL
161ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlCopyNotationTable	(xmlNotationTablePtr table);
162ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#endif /* LIBXML_TREE_ENABLED */
16394442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN void XMLCALL
164ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlFreeNotationTable	(xmlNotationTablePtr table);
165ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#ifdef LIBXML_OUTPUT_ENABLED
16694442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN void XMLCALL
167ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlDumpNotationDecl	(xmlBufferPtr buf,
168ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlNotationPtr nota);
16994442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN void XMLCALL
170ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlDumpNotationTable	(xmlBufferPtr buf,
171ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlNotationTablePtr table);
172ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#endif /* LIBXML_OUTPUT_ENABLED */
173ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
174ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/* Element Content */
175ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/* the non Doc version are being deprecated */
17694442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN xmlElementContentPtr XMLCALL
177ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlNewElementContent	(const xmlChar *name,
178ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlElementContentType type);
17994442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN xmlElementContentPtr XMLCALL
180ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlCopyElementContent	(xmlElementContentPtr content);
18194442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN void XMLCALL
182ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlFreeElementContent	(xmlElementContentPtr cur);
183ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/* the new versions with doc argument */
18494442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN xmlElementContentPtr XMLCALL
185ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlNewDocElementContent	(xmlDocPtr doc,
186ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *name,
187ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlElementContentType type);
18894442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN xmlElementContentPtr XMLCALL
189ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlCopyDocElementContent(xmlDocPtr doc,
190ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlElementContentPtr content);
19194442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN void XMLCALL
192ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlFreeDocElementContent(xmlDocPtr doc,
193ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlElementContentPtr cur);
19494442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN void XMLCALL
195ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlSnprintfElementContent(char *buf,
196ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 int size,
197ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project	                                 xmlElementContentPtr content,
198ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 int englob);
199ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#ifdef LIBXML_OUTPUT_ENABLED
200ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/* DEPRECATED */
20194442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN void XMLCALL
202ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlSprintfElementContent(char *buf,
203ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project	                                 xmlElementContentPtr content,
204ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 int englob);
205ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#endif /* LIBXML_OUTPUT_ENABLED */
206ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/* DEPRECATED */
207ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
208ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/* Element */
20994442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN xmlElementPtr XMLCALL
210ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlAddElementDecl	(xmlValidCtxtPtr ctxt,
211ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlDtdPtr dtd,
212ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *name,
213ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlElementTypeVal type,
214ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlElementContentPtr content);
215ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#ifdef LIBXML_TREE_ENABLED
21694442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN xmlElementTablePtr XMLCALL
217ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlCopyElementTable	(xmlElementTablePtr table);
218ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#endif /* LIBXML_TREE_ENABLED */
21994442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN void XMLCALL
220ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlFreeElementTable	(xmlElementTablePtr table);
221ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#ifdef LIBXML_OUTPUT_ENABLED
22294442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN void XMLCALL
223ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlDumpElementTable	(xmlBufferPtr buf,
224ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlElementTablePtr table);
22594442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN void XMLCALL
226ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlDumpElementDecl	(xmlBufferPtr buf,
227ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlElementPtr elem);
228ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#endif /* LIBXML_OUTPUT_ENABLED */
229ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
230ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/* Enumeration */
23194442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN xmlEnumerationPtr XMLCALL
232ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlCreateEnumeration	(const xmlChar *name);
23394442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN void XMLCALL
234ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlFreeEnumeration	(xmlEnumerationPtr cur);
235ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#ifdef LIBXML_TREE_ENABLED
23694442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN xmlEnumerationPtr XMLCALL
237ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlCopyEnumeration	(xmlEnumerationPtr cur);
238ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#endif /* LIBXML_TREE_ENABLED */
239ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
240ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/* Attribute */
24194442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN xmlAttributePtr XMLCALL
242ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlAddAttributeDecl	(xmlValidCtxtPtr ctxt,
243ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlDtdPtr dtd,
244ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *elem,
245ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *name,
246ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *ns,
247ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlAttributeType type,
248ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlAttributeDefault def,
249ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *defaultValue,
250ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlEnumerationPtr tree);
251ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#ifdef LIBXML_TREE_ENABLED
25294442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN xmlAttributeTablePtr XMLCALL
253ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlCopyAttributeTable  (xmlAttributeTablePtr table);
254ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#endif /* LIBXML_TREE_ENABLED */
25594442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN void XMLCALL
256ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlFreeAttributeTable  (xmlAttributeTablePtr table);
257ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#ifdef LIBXML_OUTPUT_ENABLED
25894442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN void XMLCALL
259ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlDumpAttributeTable  (xmlBufferPtr buf,
260ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					xmlAttributeTablePtr table);
26194442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN void XMLCALL
262ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlDumpAttributeDecl   (xmlBufferPtr buf,
263ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					xmlAttributePtr attr);
264ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#endif /* LIBXML_OUTPUT_ENABLED */
265ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
266ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/* IDs */
26794442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN xmlIDPtr XMLCALL
268ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlAddID	       (xmlValidCtxtPtr ctxt,
269ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					xmlDocPtr doc,
270ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					const xmlChar *value,
271ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					xmlAttrPtr attr);
27294442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN void XMLCALL
273ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlFreeIDTable	       (xmlIDTablePtr table);
27494442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN xmlAttrPtr XMLCALL
275ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlGetID	       (xmlDocPtr doc,
276ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					const xmlChar *ID);
27794442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
278ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlIsID		       (xmlDocPtr doc,
279ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					xmlNodePtr elem,
280ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					xmlAttrPtr attr);
28194442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
28294442ad4107000e6d49f9b85a46a591495a57632Selim Gurun		xmlRemoveID	       (xmlDocPtr doc,
283ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					xmlAttrPtr attr);
284ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
285ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/* IDREFs */
28694442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN xmlRefPtr XMLCALL
287ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlAddRef	       (xmlValidCtxtPtr ctxt,
288ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					xmlDocPtr doc,
289ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					const xmlChar *value,
290ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					xmlAttrPtr attr);
29194442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN void XMLCALL
292ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlFreeRefTable	       (xmlRefTablePtr table);
29394442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
294ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlIsRef	       (xmlDocPtr doc,
295ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					xmlNodePtr elem,
296ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					xmlAttrPtr attr);
29794442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
29894442ad4107000e6d49f9b85a46a591495a57632Selim Gurun		xmlRemoveRef	       (xmlDocPtr doc,
299ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					xmlAttrPtr attr);
30094442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN xmlListPtr XMLCALL
301ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlGetRefs	       (xmlDocPtr doc,
302ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					const xmlChar *ID);
303ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
304ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/**
305ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * The public function calls related to validity checking.
306ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project */
307ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#ifdef LIBXML_VALID_ENABLED
308ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/* Allocate/Release Validation Contexts */
30994442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN xmlValidCtxtPtr XMLCALL
310ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlNewValidCtxt(void);
31194442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN void XMLCALL
312ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlFreeValidCtxt(xmlValidCtxtPtr);
313ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
31494442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
315ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlValidateRoot		(xmlValidCtxtPtr ctxt,
316ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlDocPtr doc);
31794442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
318ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlValidateElementDecl	(xmlValidCtxtPtr ctxt,
319ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlDocPtr doc,
320ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		                         xmlElementPtr elem);
32194442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN xmlChar * XMLCALL
322ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlValidNormalizeAttributeValue(xmlDocPtr doc,
323ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlNodePtr elem,
324ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *name,
325ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *value);
32694442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN xmlChar * XMLCALL
327ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlValidCtxtNormalizeAttributeValue(xmlValidCtxtPtr ctxt,
328ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlDocPtr doc,
329ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlNodePtr elem,
330ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *name,
331ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *value);
33294442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
333ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlValidateAttributeDecl(xmlValidCtxtPtr ctxt,
334ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlDocPtr doc,
335ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		                         xmlAttributePtr attr);
33694442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
337ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlValidateAttributeValue(xmlAttributeType type,
338ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *value);
33994442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
340ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlValidateNotationDecl	(xmlValidCtxtPtr ctxt,
341ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlDocPtr doc,
342ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		                         xmlNotationPtr nota);
34394442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
344ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlValidateDtd		(xmlValidCtxtPtr ctxt,
345ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlDocPtr doc,
346ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlDtdPtr dtd);
34794442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
348ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlValidateDtdFinal	(xmlValidCtxtPtr ctxt,
349ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlDocPtr doc);
35094442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
351ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlValidateDocument	(xmlValidCtxtPtr ctxt,
352ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlDocPtr doc);
35394442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
354ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlValidateElement	(xmlValidCtxtPtr ctxt,
355ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlDocPtr doc,
356ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlNodePtr elem);
35794442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
358ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlValidateOneElement	(xmlValidCtxtPtr ctxt,
359ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlDocPtr doc,
360ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		                         xmlNodePtr elem);
36194442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
362ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlValidateOneAttribute	(xmlValidCtxtPtr ctxt,
363ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlDocPtr doc,
364ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlNodePtr	elem,
365ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlAttrPtr attr,
366ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *value);
36794442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
368ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlValidateOneNamespace	(xmlValidCtxtPtr ctxt,
369ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlDocPtr doc,
370ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlNodePtr elem,
371ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *prefix,
372ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlNsPtr ns,
373ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *value);
37494442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
375ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlValidateDocumentFinal(xmlValidCtxtPtr ctxt,
376ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlDocPtr doc);
377ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#endif /* LIBXML_VALID_ENABLED */
378ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
379ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#if defined(LIBXML_VALID_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED)
38094442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
381ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlValidateNotationUse	(xmlValidCtxtPtr ctxt,
382ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlDocPtr doc,
383ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *notationName);
384ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#endif /* LIBXML_VALID_ENABLED or LIBXML_SCHEMAS_ENABLED */
385ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
38694442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
387ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlIsMixedElement	(xmlDocPtr doc,
388ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *name);
38994442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN xmlAttributePtr XMLCALL
390ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlGetDtdAttrDesc	(xmlDtdPtr dtd,
391ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *elem,
392ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *name);
39394442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN xmlAttributePtr XMLCALL
394ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlGetDtdQAttrDesc	(xmlDtdPtr dtd,
395ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *elem,
396ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *name,
397ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *prefix);
39894442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN xmlNotationPtr XMLCALL
399ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlGetDtdNotationDesc	(xmlDtdPtr dtd,
400ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *name);
40194442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN xmlElementPtr XMLCALL
402ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlGetDtdQElementDesc	(xmlDtdPtr dtd,
403ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *name,
404ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *prefix);
40594442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN xmlElementPtr XMLCALL
406ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlGetDtdElementDesc	(xmlDtdPtr dtd,
407ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *name);
408ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
409ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#ifdef LIBXML_VALID_ENABLED
410ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
41194442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
412ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlValidGetPotentialChildren(xmlElementContent *ctree,
413ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar **names,
414ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 int *len,
415ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 int max);
416ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
41794442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
418ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlValidGetValidElements(xmlNode *prev,
419ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlNode *next,
420ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar **names,
421ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 int max);
42294442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
423ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlValidateNameValue	(const xmlChar *value);
42494442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
425ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlValidateNamesValue	(const xmlChar *value);
42694442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
427ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlValidateNmtokenValue	(const xmlChar *value);
42894442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
429ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlValidateNmtokensValue(const xmlChar *value);
430ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
431ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#ifdef LIBXML_REGEXP_ENABLED
432ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project/*
433ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project * Validation based on the regexp support
434ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project */
43594442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
436ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlValidBuildContentModel(xmlValidCtxtPtr ctxt,
437ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlElementPtr elem);
438ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project
43994442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
440ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlValidatePushElement	(xmlValidCtxtPtr ctxt,
441ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlDocPtr doc,
442ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlNodePtr elem,
443ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *qname);
44494442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
445ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlValidatePushCData	(xmlValidCtxtPtr ctxt,
446ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *data,
447ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 int len);
44894442ad4107000e6d49f9b85a46a591495a57632Selim GurunXMLPUBFUN int XMLCALL
449ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project		xmlValidatePopElement	(xmlValidCtxtPtr ctxt,
450ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlDocPtr doc,
451ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 xmlNodePtr elem,
452ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project					 const xmlChar *qname);
453ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#endif /* LIBXML_REGEXP_ENABLED */
454ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#endif /* LIBXML_VALID_ENABLED */
455ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#ifdef __cplusplus
456ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project}
457ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#endif
458ab4e2e90f63db6b1cd8bb2e453cac899ef43d42bThe Android Open Source Project#endif /* __XML_VALID_H__ */
459