15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/* 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * Summary: The DTD validation 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * Description: API for the DTD handling and the validity checking 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * 55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * Copy: See Copyright for the status of this software. 65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * 75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * Author: Daniel Veillard 85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) */ 95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifndef __XML_VALID_H__ 125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define __XML_VALID_H__ 135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include <libxml/xmlversion.h> 155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include <libxml/xmlerror.h> 165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include <libxml/tree.h> 175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include <libxml/list.h> 185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include <libxml/xmlautomata.h> 195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include <libxml/xmlregexp.h> 205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifdef __cplusplus 225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)extern "C" { 235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif 245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/* 265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * Validation state added for non-determinist content model. 275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) */ 285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)typedef struct _xmlValidState xmlValidState; 295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)typedef xmlValidState *xmlValidStatePtr; 305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/** 325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * xmlValidityErrorFunc: 335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * @ctx: usually an xmlValidCtxtPtr to a validity error context, 345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * but comes from ctxt->userData (which normally contains such 355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * a pointer); ctxt->userData can be changed by the user. 365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * @msg: the string to format *printf like vararg 375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * @...: remaining arguments to the format 385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * 395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * Callback called when a validity error is found. This is a message 405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * oriented function similar to an *printf function. 415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) */ 425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)typedef void (XMLCDECL *xmlValidityErrorFunc) (void *ctx, 435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const char *msg, 445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ...) LIBXML_ATTR_FORMAT(2,3); 455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/** 475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * xmlValidityWarningFunc: 485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * @ctx: usually an xmlValidCtxtPtr to a validity error context, 495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * but comes from ctxt->userData (which normally contains such 505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * a pointer); ctxt->userData can be changed by the user. 515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * @msg: the string to format *printf like vararg 525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * @...: remaining arguments to the format 535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * 545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * Callback called when a validity warning is found. This is a message 555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * oriented function similar to an *printf function. 565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) */ 575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)typedef void (XMLCDECL *xmlValidityWarningFunc) (void *ctx, 585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const char *msg, 595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ...) LIBXML_ATTR_FORMAT(2,3); 605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifdef IN_LIBXML 625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/** 635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * XML_CTXT_FINISH_DTD_0: 645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * 655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * Special value for finishDtd field when embedded in an xmlParserCtxt 665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) */ 675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define XML_CTXT_FINISH_DTD_0 0xabcd1234 685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/** 695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * XML_CTXT_FINISH_DTD_1: 705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * 715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * Special value for finishDtd field when embedded in an xmlParserCtxt 725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) */ 735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define XML_CTXT_FINISH_DTD_1 0xabcd1235 745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif 755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/* 775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * xmlValidCtxt: 785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * An xmlValidCtxt is used for error reporting when validating. 795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) */ 805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)typedef struct _xmlValidCtxt xmlValidCtxt; 815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)typedef xmlValidCtxt *xmlValidCtxtPtr; 825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)struct _xmlValidCtxt { 835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) void *userData; /* user specific data block */ 845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidityErrorFunc error; /* the callback in case of errors */ 855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidityWarningFunc warning; /* the callback in case of warning */ 865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) /* Node analysis stack used when validating within entities */ 885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlNodePtr node; /* Current parsed Node */ 895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) int nodeNr; /* Depth of the parsing stack */ 905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) int nodeMax; /* Max depth of the parsing stack */ 915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlNodePtr *nodeTab; /* array of nodes */ 925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) unsigned int finishDtd; /* finished validating the Dtd ? */ 945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDocPtr doc; /* the document */ 955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) int valid; /* temporary validity check result */ 965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) /* state state used for non-determinist content validation */ 985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidState *vstate; /* current state */ 995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) int vstateNr; /* Depth of the validation stack */ 1005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) int vstateMax; /* Max depth of the validation stack */ 1015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidState *vstateTab; /* array of validation states */ 1025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifdef LIBXML_REGEXP_ENABLED 1045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlAutomataPtr am; /* the automata */ 1055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlAutomataStatePtr state; /* used to build the automata */ 1065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#else 1075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) void *am; 1085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) void *state; 1095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif 1105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}; 1115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/* 1135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * ALL notation declarations are stored in a table. 1145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * There is one table per DTD. 1155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) */ 1165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)typedef struct _xmlHashTable xmlNotationTable; 1185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)typedef xmlNotationTable *xmlNotationTablePtr; 1195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/* 1215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * ALL element declarations are stored in a table. 1225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * There is one table per DTD. 1235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) */ 1245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)typedef struct _xmlHashTable xmlElementTable; 1265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)typedef xmlElementTable *xmlElementTablePtr; 1275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/* 1295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * ALL attribute declarations are stored in a table. 1305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * There is one table per DTD. 1315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) */ 1325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)typedef struct _xmlHashTable xmlAttributeTable; 1345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)typedef xmlAttributeTable *xmlAttributeTablePtr; 1355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/* 1375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * ALL IDs attributes are stored in a table. 1385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * There is one table per document. 1395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) */ 1405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)typedef struct _xmlHashTable xmlIDTable; 1425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)typedef xmlIDTable *xmlIDTablePtr; 1435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/* 1455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * ALL Refs attributes are stored in a table. 1465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * There is one table per document. 1475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) */ 1485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)typedef struct _xmlHashTable xmlRefTable; 1505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)typedef xmlRefTable *xmlRefTablePtr; 1515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/* Notation */ 1535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN xmlNotationPtr XMLCALL 1545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlAddNotationDecl (xmlValidCtxtPtr ctxt, 1555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDtdPtr dtd, 1565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *name, 1575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *PublicID, 1585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *SystemID); 1595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifdef LIBXML_TREE_ENABLED 1605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN xmlNotationTablePtr XMLCALL 1615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlCopyNotationTable (xmlNotationTablePtr table); 1625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif /* LIBXML_TREE_ENABLED */ 1635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN void XMLCALL 1645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlFreeNotationTable (xmlNotationTablePtr table); 1655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifdef LIBXML_OUTPUT_ENABLED 1665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN void XMLCALL 1675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDumpNotationDecl (xmlBufferPtr buf, 1685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlNotationPtr nota); 1695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN void XMLCALL 1705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDumpNotationTable (xmlBufferPtr buf, 1715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlNotationTablePtr table); 1725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif /* LIBXML_OUTPUT_ENABLED */ 1735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 1745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/* Element Content */ 1755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/* the non Doc version are being deprecated */ 1765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN xmlElementContentPtr XMLCALL 1775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlNewElementContent (const xmlChar *name, 1785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlElementContentType type); 1795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN xmlElementContentPtr XMLCALL 1805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlCopyElementContent (xmlElementContentPtr content); 1815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN void XMLCALL 1825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlFreeElementContent (xmlElementContentPtr cur); 1835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/* the new versions with doc argument */ 1845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN xmlElementContentPtr XMLCALL 1855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlNewDocElementContent (xmlDocPtr doc, 1865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *name, 1875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlElementContentType type); 1885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN xmlElementContentPtr XMLCALL 1895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlCopyDocElementContent(xmlDocPtr doc, 1905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlElementContentPtr content); 1915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN void XMLCALL 1925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlFreeDocElementContent(xmlDocPtr doc, 1935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlElementContentPtr cur); 1945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN void XMLCALL 1955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlSnprintfElementContent(char *buf, 1965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) int size, 1975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlElementContentPtr content, 1985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) int englob); 1995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifdef LIBXML_OUTPUT_ENABLED 2005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/* DEPRECATED */ 2015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN void XMLCALL 2025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlSprintfElementContent(char *buf, 2035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlElementContentPtr content, 2045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) int englob); 2055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif /* LIBXML_OUTPUT_ENABLED */ 2065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/* DEPRECATED */ 2075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/* Element */ 2095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN xmlElementPtr XMLCALL 2105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlAddElementDecl (xmlValidCtxtPtr ctxt, 2115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDtdPtr dtd, 2125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *name, 2135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlElementTypeVal type, 2145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlElementContentPtr content); 2155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifdef LIBXML_TREE_ENABLED 2165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN xmlElementTablePtr XMLCALL 2175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlCopyElementTable (xmlElementTablePtr table); 2185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif /* LIBXML_TREE_ENABLED */ 2195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN void XMLCALL 2205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlFreeElementTable (xmlElementTablePtr table); 2215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifdef LIBXML_OUTPUT_ENABLED 2225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN void XMLCALL 2235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDumpElementTable (xmlBufferPtr buf, 2245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlElementTablePtr table); 2255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN void XMLCALL 2265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDumpElementDecl (xmlBufferPtr buf, 2275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlElementPtr elem); 2285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif /* LIBXML_OUTPUT_ENABLED */ 2295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/* Enumeration */ 2315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN xmlEnumerationPtr XMLCALL 2325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlCreateEnumeration (const xmlChar *name); 2335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN void XMLCALL 2345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlFreeEnumeration (xmlEnumerationPtr cur); 2355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifdef LIBXML_TREE_ENABLED 2365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN xmlEnumerationPtr XMLCALL 2375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlCopyEnumeration (xmlEnumerationPtr cur); 2385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif /* LIBXML_TREE_ENABLED */ 2395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/* Attribute */ 2415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN xmlAttributePtr XMLCALL 2425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlAddAttributeDecl (xmlValidCtxtPtr ctxt, 2435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDtdPtr dtd, 2445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *elem, 2455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *name, 2465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *ns, 2475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlAttributeType type, 2485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlAttributeDefault def, 2495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *defaultValue, 2505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlEnumerationPtr tree); 2515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifdef LIBXML_TREE_ENABLED 2525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN xmlAttributeTablePtr XMLCALL 2535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlCopyAttributeTable (xmlAttributeTablePtr table); 2545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif /* LIBXML_TREE_ENABLED */ 2555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN void XMLCALL 2565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlFreeAttributeTable (xmlAttributeTablePtr table); 2575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifdef LIBXML_OUTPUT_ENABLED 2585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN void XMLCALL 2595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDumpAttributeTable (xmlBufferPtr buf, 2605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlAttributeTablePtr table); 2615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN void XMLCALL 2625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDumpAttributeDecl (xmlBufferPtr buf, 2635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlAttributePtr attr); 2645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif /* LIBXML_OUTPUT_ENABLED */ 2655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/* IDs */ 2675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN xmlIDPtr XMLCALL 2685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlAddID (xmlValidCtxtPtr ctxt, 2695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDocPtr doc, 2705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *value, 2715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlAttrPtr attr); 2725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN void XMLCALL 2735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlFreeIDTable (xmlIDTablePtr table); 2745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN xmlAttrPtr XMLCALL 2755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlGetID (xmlDocPtr doc, 2765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *ID); 2775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 2785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlIsID (xmlDocPtr doc, 2795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlNodePtr elem, 2805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlAttrPtr attr); 2815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 2825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlRemoveID (xmlDocPtr doc, 2835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlAttrPtr attr); 2845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 2855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/* IDREFs */ 2865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN xmlRefPtr XMLCALL 2875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlAddRef (xmlValidCtxtPtr ctxt, 2885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDocPtr doc, 2895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *value, 2905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlAttrPtr attr); 2915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN void XMLCALL 2925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlFreeRefTable (xmlRefTablePtr table); 2935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 2945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlIsRef (xmlDocPtr doc, 2955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlNodePtr elem, 2965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlAttrPtr attr); 2975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 2985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlRemoveRef (xmlDocPtr doc, 2995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlAttrPtr attr); 3005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN xmlListPtr XMLCALL 3015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlGetRefs (xmlDocPtr doc, 3025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *ID); 3035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 3045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/** 3055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * The public function calls related to validity checking. 3065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) */ 3075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifdef LIBXML_VALID_ENABLED 3085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/* Allocate/Release Validation Contexts */ 3095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN xmlValidCtxtPtr XMLCALL 3105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlNewValidCtxt(void); 3115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN void XMLCALL 3125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlFreeValidCtxt(xmlValidCtxtPtr); 3135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 3145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 3155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidateRoot (xmlValidCtxtPtr ctxt, 3165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDocPtr doc); 3175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 3185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidateElementDecl (xmlValidCtxtPtr ctxt, 3195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDocPtr doc, 3205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlElementPtr elem); 3215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN xmlChar * XMLCALL 3225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidNormalizeAttributeValue(xmlDocPtr doc, 3235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlNodePtr elem, 3245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *name, 3255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *value); 3265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN xmlChar * XMLCALL 3275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidCtxtNormalizeAttributeValue(xmlValidCtxtPtr ctxt, 3285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDocPtr doc, 3295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlNodePtr elem, 3305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *name, 3315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *value); 3325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 3335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidateAttributeDecl(xmlValidCtxtPtr ctxt, 3345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDocPtr doc, 3355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlAttributePtr attr); 3365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 3375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidateAttributeValue(xmlAttributeType type, 3385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *value); 3395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 3405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidateNotationDecl (xmlValidCtxtPtr ctxt, 3415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDocPtr doc, 3425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlNotationPtr nota); 3435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 3445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidateDtd (xmlValidCtxtPtr ctxt, 3455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDocPtr doc, 3465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDtdPtr dtd); 3475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 3485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidateDtdFinal (xmlValidCtxtPtr ctxt, 3495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDocPtr doc); 3505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 3515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidateDocument (xmlValidCtxtPtr ctxt, 3525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDocPtr doc); 3535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 3545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidateElement (xmlValidCtxtPtr ctxt, 3555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDocPtr doc, 3565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlNodePtr elem); 3575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 3585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidateOneElement (xmlValidCtxtPtr ctxt, 3595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDocPtr doc, 3605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlNodePtr elem); 3615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 3625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidateOneAttribute (xmlValidCtxtPtr ctxt, 3635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDocPtr doc, 3645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlNodePtr elem, 3655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlAttrPtr attr, 3665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *value); 3675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 3685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidateOneNamespace (xmlValidCtxtPtr ctxt, 3695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDocPtr doc, 3705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlNodePtr elem, 3715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *prefix, 3725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlNsPtr ns, 3735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *value); 3745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 3755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidateDocumentFinal(xmlValidCtxtPtr ctxt, 3765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDocPtr doc); 3775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif /* LIBXML_VALID_ENABLED */ 3785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 3795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(LIBXML_VALID_ENABLED) || defined(LIBXML_SCHEMAS_ENABLED) 3805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 3815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidateNotationUse (xmlValidCtxtPtr ctxt, 3825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDocPtr doc, 3835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *notationName); 3845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif /* LIBXML_VALID_ENABLED or LIBXML_SCHEMAS_ENABLED */ 3855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 3865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 3875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlIsMixedElement (xmlDocPtr doc, 3885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *name); 3895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN xmlAttributePtr XMLCALL 3905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlGetDtdAttrDesc (xmlDtdPtr dtd, 3915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *elem, 3925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *name); 3935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN xmlAttributePtr XMLCALL 3945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlGetDtdQAttrDesc (xmlDtdPtr dtd, 3955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *elem, 3965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *name, 3975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *prefix); 3985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN xmlNotationPtr XMLCALL 3995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlGetDtdNotationDesc (xmlDtdPtr dtd, 4005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *name); 4015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN xmlElementPtr XMLCALL 4025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlGetDtdQElementDesc (xmlDtdPtr dtd, 4035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *name, 4045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *prefix); 4055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN xmlElementPtr XMLCALL 4065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlGetDtdElementDesc (xmlDtdPtr dtd, 4075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *name); 4085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 4095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifdef LIBXML_VALID_ENABLED 4105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 4115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 4125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidGetPotentialChildren(xmlElementContent *ctree, 4135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar **names, 4145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) int *len, 4155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) int max); 4165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 4175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 4185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidGetValidElements(xmlNode *prev, 4195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlNode *next, 4205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar **names, 4215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) int max); 4225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 4235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidateNameValue (const xmlChar *value); 4245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 4255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidateNamesValue (const xmlChar *value); 4265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 4275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidateNmtokenValue (const xmlChar *value); 4285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 4295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidateNmtokensValue(const xmlChar *value); 4305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 4315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifdef LIBXML_REGEXP_ENABLED 4325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)/* 4335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) * Validation based on the regexp support 4345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) */ 4355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 4365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidBuildContentModel(xmlValidCtxtPtr ctxt, 4375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlElementPtr elem); 4385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 4395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 4405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidatePushElement (xmlValidCtxtPtr ctxt, 4415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDocPtr doc, 4425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlNodePtr elem, 4435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *qname); 4445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 4455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidatePushCData (xmlValidCtxtPtr ctxt, 4465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *data, 4475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) int len); 4485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)XMLPUBFUN int XMLCALL 4495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlValidatePopElement (xmlValidCtxtPtr ctxt, 4505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlDocPtr doc, 4515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) xmlNodePtr elem, 4525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const xmlChar *qname); 4535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif /* LIBXML_REGEXP_ENABLED */ 4545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif /* LIBXML_VALID_ENABLED */ 4555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifdef __cplusplus 4565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} 4575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif 4585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif /* __XML_VALID_H__ */ 459