| implementation of the Relax-NG validation  Table of ContentsStructure xmlRelaxNGstruct _xmlRelaxNG
The content of this structure is not made public by the API.
 Structure xmlRelaxNGParserCtxtstruct _xmlRelaxNGParserCtxt
The content of this structure is not made public by the API.
 Typedef xmlRelaxNGParserCtxt * xmlRelaxNGParserCtxtPtr
 Enum xmlRelaxNGParserFlag
 Typedef xmlRelaxNG * xmlRelaxNGPtr
 Structure xmlRelaxNGValidCtxtstruct _xmlRelaxNGValidCtxt
The content of this structure is not made public by the API.
 Typedef xmlRelaxNGValidCtxt * xmlRelaxNGValidCtxtPtr
 Enum xmlRelaxNGValidErr
 void	xmlRelaxNGCleanupTypes		(void) void	xmlRelaxNGDump			(FILE * output, xmlRelaxNGPtr schema)
 void	xmlRelaxNGDumpTree		(FILE * output, xmlRelaxNGPtr schema)
 void	xmlRelaxNGFree			(xmlRelaxNGPtr schema) void	xmlRelaxNGFreeParserCtxt	(xmlRelaxNGParserCtxtPtr ctxt) void	xmlRelaxNGFreeValidCtxt		(xmlRelaxNGValidCtxtPtr ctxt) int	xmlRelaxNGGetParserErrors	(xmlRelaxNGParserCtxtPtr ctxt, xmlRelaxNGValidityErrorFunc * err,
 xmlRelaxNGValidityWarningFunc * warn,
 void ** ctx)
 int	xmlRelaxNGGetValidErrors	(xmlRelaxNGValidCtxtPtr ctxt, xmlRelaxNGValidityErrorFunc * err,
 xmlRelaxNGValidityWarningFunc * warn,
 void ** ctx)
 int	xmlRelaxNGInitTypes		(void) xmlRelaxNGParserCtxtPtr	xmlRelaxNGNewDocParserCtxt	(xmlDocPtr doc) xmlRelaxNGParserCtxtPtr	xmlRelaxNGNewMemParserCtxt	(const char * buffer, int size)
 xmlRelaxNGParserCtxtPtr	xmlRelaxNGNewParserCtxt	(const char * URL) xmlRelaxNGValidCtxtPtr	xmlRelaxNGNewValidCtxt	(xmlRelaxNGPtr schema) xmlRelaxNGPtr	xmlRelaxNGParse		(xmlRelaxNGParserCtxtPtr ctxt) void	xmlRelaxNGSetParserErrors	(xmlRelaxNGParserCtxtPtr ctxt, xmlRelaxNGValidityErrorFunc err,
 xmlRelaxNGValidityWarningFunc warn,
 void * ctx)
 void	xmlRelaxNGSetParserStructuredErrors	(xmlRelaxNGParserCtxtPtr ctxt, xmlStructuredErrorFunc serror,
 void * ctx)
 void	xmlRelaxNGSetValidErrors	(xmlRelaxNGValidCtxtPtr ctxt, xmlRelaxNGValidityErrorFunc err,
 xmlRelaxNGValidityWarningFunc warn,
 void * ctx)
 void	xmlRelaxNGSetValidStructuredErrors	(xmlRelaxNGValidCtxtPtr ctxt, xmlStructuredErrorFunc serror,
 void * ctx)
 int	xmlRelaxNGValidateDoc		(xmlRelaxNGValidCtxtPtr ctxt, xmlDocPtr doc)
 int	xmlRelaxNGValidateFullElement	(xmlRelaxNGValidCtxtPtr ctxt, xmlDocPtr doc,
 xmlNodePtr elem)
 int	xmlRelaxNGValidatePopElement	(xmlRelaxNGValidCtxtPtr ctxt, xmlDocPtr doc,
 xmlNodePtr elem)
 int	xmlRelaxNGValidatePushCData	(xmlRelaxNGValidCtxtPtr ctxt, const xmlChar * data,
 int len)
 int	xmlRelaxNGValidatePushElement	(xmlRelaxNGValidCtxtPtr ctxt, xmlDocPtr doc,
 xmlNodePtr elem)
 Function type: xmlRelaxNGValidityErrorFunc
void	xmlRelaxNGValidityErrorFunc	(void * ctx, const char * msg,
 ... ...)
 Function type: xmlRelaxNGValidityWarningFunc
void	xmlRelaxNGValidityWarningFunc	(void * ctx, const char * msg,
 ... ...)
 int	xmlRelaxParserSetFlag		(xmlRelaxNGParserCtxtPtr ctxt, int flags)
 DescriptionStructure xmlRelaxNGstruct _xmlRelaxNG {
The content of this structure is not made public by the API.
}
 Structure xmlRelaxNGParserCtxtstruct _xmlRelaxNGParserCtxt {
The content of this structure is not made public by the API.
}
 Enum xmlRelaxNGParserFlag {
    XML_RELAXNGP_NONE = 0
    XML_RELAXNGP_FREE_DOC = 1
    XML_RELAXNGP_CRNG = 2
}
Structure xmlRelaxNGValidCtxtstruct _xmlRelaxNGValidCtxt {
The content of this structure is not made public by the API.
}
 Enum xmlRelaxNGValidErr {
    XML_RELAXNG_OK = 0
    XML_RELAXNG_ERR_MEMORY = 1
    XML_RELAXNG_ERR_TYPE = 2
    XML_RELAXNG_ERR_TYPEVAL = 3
    XML_RELAXNG_ERR_DUPID = 4
    XML_RELAXNG_ERR_TYPECMP = 5
    XML_RELAXNG_ERR_NOSTATE = 6
    XML_RELAXNG_ERR_NODEFINE = 7
     = 8
    XML_RELAXNG_ERR_LISTEMPTY = 9
    XML_RELAXNG_ERR_INTERNODATA = 10
    XML_RELAXNG_ERR_INTERSEQ = 11
     = 12
    XML_RELAXNG_ERR_ELEMNAME = 13
    XML_RELAXNG_ERR_ATTRNAME = 14
    XML_RELAXNG_ERR_ELEMNONS = 15
    XML_RELAXNG_ERR_ATTRNONS = 16
    XML_RELAXNG_ERR_ELEMWRONGNS = 17
    XML_RELAXNG_ERR_ATTRWRONGNS = 18
     = 19
     = 20
    XML_RELAXNG_ERR_ELEMNOTEMPTY = 21
    XML_RELAXNG_ERR_NOELEM = 22
    XML_RELAXNG_ERR_NOTELEM = 23
    XML_RELAXNG_ERR_ATTRVALID = 24
    XML_RELAXNG_ERR_CONTENTVALID = 25
     = 26
    XML_RELAXNG_ERR_INVALIDATTR = 27
    XML_RELAXNG_ERR_DATAELEM = 28
    XML_RELAXNG_ERR_VALELEM = 29
    XML_RELAXNG_ERR_LISTELEM = 30
    XML_RELAXNG_ERR_DATATYPE = 31
    XML_RELAXNG_ERR_VALUE = 32
    XML_RELAXNG_ERR_LIST = 33
    XML_RELAXNG_ERR_NOGRAMMAR = 34
     = 35
    XML_RELAXNG_ERR_LACKDATA = 36
    XML_RELAXNG_ERR_INTERNAL = 37
    XML_RELAXNG_ERR_ELEMWRONG = 38
    XML_RELAXNG_ERR_TEXTWRONG = 39
}
Function: xmlRelaxNGCleanupTypesvoid	xmlRelaxNGCleanupTypes		(void)
 Cleanup the default Schemas type library associated to RelaxNG Function: xmlRelaxNGDumpvoid	xmlRelaxNGDump			(FILE * output, xmlRelaxNGPtr schema)
 
 Dump a RelaxNG structure back | output: | the file output |  | schema: | a schema structure | 
Function: xmlRelaxNGDumpTreevoid	xmlRelaxNGDumpTree		(FILE * output, xmlRelaxNGPtr schema)
 
 Dump the transformed RelaxNG tree. | output: | the file output |  | schema: | a schema structure | 
Function: xmlRelaxNGFreevoid	xmlRelaxNGFree			(xmlRelaxNGPtr schema)
 Deallocate a RelaxNG structure. | schema: | a schema structure | 
Function: xmlRelaxNGFreeParserCtxtvoid	xmlRelaxNGFreeParserCtxt	(xmlRelaxNGParserCtxtPtr ctxt)
 Free the resources associated to the schema parser context | ctxt: | the schema parser context | 
Function: xmlRelaxNGFreeValidCtxtvoid	xmlRelaxNGFreeValidCtxt		(xmlRelaxNGValidCtxtPtr ctxt)
 Free the resources associated to the schema validation context | ctxt: | the schema validation context | 
Function: xmlRelaxNGGetParserErrorsint	xmlRelaxNGGetParserErrors	(xmlRelaxNGParserCtxtPtr ctxt, xmlRelaxNGValidityErrorFunc * err,
 xmlRelaxNGValidityWarningFunc * warn,
 void ** ctx)
 
 Get the callback information used to handle errors for a validation context | ctxt: | a Relax-NG validation context |  | err: | the error callback result |  | warn: | the warning callback result |  | ctx: | contextual data for the callbacks result |  | Returns: | -1 in case of failure, 0 otherwise. | 
Function: xmlRelaxNGGetValidErrorsint	xmlRelaxNGGetValidErrors	(xmlRelaxNGValidCtxtPtr ctxt, xmlRelaxNGValidityErrorFunc * err,
 xmlRelaxNGValidityWarningFunc * warn,
 void ** ctx)
 
 Get the error and warning callback informations | ctxt: | a Relax-NG validation context |  | err: | the error function result |  | warn: | the warning function result |  | ctx: | the functions context result |  | Returns: | -1 in case of error and 0 otherwise | 
Function: xmlRelaxNGInitTypesint	xmlRelaxNGInitTypes		(void)
 Initialize the default type libraries. | Returns: | 0 in case of success and -1 in case of error. | 
Function: xmlRelaxNGNewDocParserCtxtxmlRelaxNGParserCtxtPtr	xmlRelaxNGNewDocParserCtxt	(xmlDocPtr doc)
 Create an XML RelaxNGs parser context for that document. Note: since the process of compiling a RelaxNG schemas modifies the document, the @doc parameter is duplicated internally. | doc: | a preparsed document tree |  | Returns: | the parser context or NULL in case of error | 
Function: xmlRelaxNGNewMemParserCtxtxmlRelaxNGParserCtxtPtr	xmlRelaxNGNewMemParserCtxt	(const char * buffer, int size)
 
 Create an XML RelaxNGs parse context for that memory buffer expected to contain an XML RelaxNGs file. | buffer: | a pointer to a char array containing the schemas |  | size: | the size of the array |  | Returns: | the parser context or NULL in case of error | 
Function: xmlRelaxNGNewParserCtxtxmlRelaxNGParserCtxtPtr	xmlRelaxNGNewParserCtxt	(const char * URL)
 Create an XML RelaxNGs parse context for that file/resource expected to contain an XML RelaxNGs file. | URL: | the location of the schema |  | Returns: | the parser context or NULL in case of error | 
Function: xmlRelaxNGNewValidCtxtxmlRelaxNGValidCtxtPtr	xmlRelaxNGNewValidCtxt	(xmlRelaxNGPtr schema)
 Create an XML RelaxNGs validation context based on the given schema | schema: | a precompiled XML RelaxNGs |  | Returns: | the validation context or NULL in case of error | 
Function: xmlRelaxNGParsexmlRelaxNGPtr	xmlRelaxNGParse		(xmlRelaxNGParserCtxtPtr ctxt)
 parse a schema definition resource and build an internal XML Schema structure which can be used to validate instances. | ctxt: | a Relax-NG parser context |  | Returns: | the internal XML RelaxNG structure built from the resource or NULL in case of error | 
Function: xmlRelaxNGSetParserErrorsvoid	xmlRelaxNGSetParserErrors	(xmlRelaxNGParserCtxtPtr ctxt, xmlRelaxNGValidityErrorFunc err,
 xmlRelaxNGValidityWarningFunc warn,
 void * ctx)
 
 Set the callback functions used to handle errors for a validation context | ctxt: | a Relax-NG validation context |  | err: | the error callback |  | warn: | the warning callback |  | ctx: | contextual data for the callbacks | 
Function: xmlRelaxNGSetParserStructuredErrorsvoid	xmlRelaxNGSetParserStructuredErrors	(xmlRelaxNGParserCtxtPtr ctxt, xmlStructuredErrorFunc serror,
 void * ctx)
 
 Set the callback functions used to handle errors for a parsing context | ctxt: | a Relax-NG parser context |  | serror: | the error callback |  | ctx: | contextual data for the callbacks | 
Function: xmlRelaxNGSetValidErrorsvoid	xmlRelaxNGSetValidErrors	(xmlRelaxNGValidCtxtPtr ctxt, xmlRelaxNGValidityErrorFunc err,
 xmlRelaxNGValidityWarningFunc warn,
 void * ctx)
 
 Set the error and warning callback informations | ctxt: | a Relax-NG validation context |  | err: | the error function |  | warn: | the warning function |  | ctx: | the functions context | 
Function: xmlRelaxNGSetValidStructuredErrorsvoid	xmlRelaxNGSetValidStructuredErrors	(xmlRelaxNGValidCtxtPtr ctxt, xmlStructuredErrorFunc serror,
 void * ctx)
 
 Set the structured error callback | ctxt: | a Relax-NG validation context |  | serror: | the structured error function |  | ctx: | the functions context | 
Function: xmlRelaxNGValidateDocint	xmlRelaxNGValidateDoc		(xmlRelaxNGValidCtxtPtr ctxt, xmlDocPtr doc)
 
 Validate a document tree in memory. | ctxt: | a Relax-NG validation context |  | doc: | a parsed document tree |  | Returns: | 0 if the document is valid, a positive error code number otherwise and -1 in case of internal or API error. | 
Function: xmlRelaxNGValidateFullElementint	xmlRelaxNGValidateFullElement	(xmlRelaxNGValidCtxtPtr ctxt, xmlDocPtr doc,
 xmlNodePtr elem)
 
 Validate a full subtree when xmlRelaxNGValidatePushElement() returned 0 and the content of the node has been expanded. | ctxt: | the validation context |  | doc: | a document instance |  | elem: | an element instance |  | Returns: | 1 if no validation problem was found or -1 in case of error. | 
Function: xmlRelaxNGValidatePopElementint	xmlRelaxNGValidatePopElement	(xmlRelaxNGValidCtxtPtr ctxt, xmlDocPtr doc,
 xmlNodePtr elem)
 
 Pop the element end from the RelaxNG validation stack. | ctxt: | the RelaxNG validation context |  | doc: | a document instance |  | elem: | an element instance |  | Returns: | 1 if no validation problem was found or 0 otherwise | 
Function: xmlRelaxNGValidatePushCDataint	xmlRelaxNGValidatePushCData	(xmlRelaxNGValidCtxtPtr ctxt, const xmlChar * data,
 int len)
 
 check the CData parsed for validation in the current stack | ctxt: | the RelaxNG validation context |  | data: | some character data read |  | len: | the length of the data |  | Returns: | 1 if no validation problem was found or -1 otherwise | 
Function: xmlRelaxNGValidatePushElementint	xmlRelaxNGValidatePushElement	(xmlRelaxNGValidCtxtPtr ctxt, xmlDocPtr doc,
 xmlNodePtr elem)
 
 Push a new element start on the RelaxNG validation stack. | ctxt: | the validation context |  | doc: | a document instance |  | elem: | an element instance |  | Returns: | 1 if no validation problem was found or 0 if validating the element requires a full node, and -1 in case of error. | 
Function type: xmlRelaxNGValidityErrorFuncFunction type: xmlRelaxNGValidityErrorFunc
void	xmlRelaxNGValidityErrorFunc	(void * ctx, const char * msg,
 ... ...)
 Signature of an error callback from a Relax-NG validation | ctx: | the validation context |  | msg: | the message |  | ...: | extra arguments | 
 Function type: xmlRelaxNGValidityWarningFuncFunction type: xmlRelaxNGValidityWarningFunc
void	xmlRelaxNGValidityWarningFunc	(void * ctx, const char * msg,
 ... ...)
 Signature of a warning callback from a Relax-NG validation | ctx: | the validation context |  | msg: | the message |  | ...: | extra arguments | 
 Function: xmlRelaxParserSetFlagint	xmlRelaxParserSetFlag		(xmlRelaxNGParserCtxtPtr ctxt, int flags)
 
 Semi private function used to pass informations to a parser context which are a combination of xmlRelaxNGParserFlag . | ctxt: | a RelaxNG parser context |  | flags: | a set of flags values |  | Returns: | 0 if success and -1 in case of error | 
Daniel Veillard |