aboutsummaryrefslogtreecommitdiff
Module relaxng from libxml2
Action against software patentsGnome2 LogoW3C LogoRed Hat Logo
Made with Libxml2 Logo

Module relaxng from libxml2

API Menu
API Indexes
Related links

implementation of the Relax-NG validation

Table of Contents

Structure xmlRelaxNG
struct _xmlRelaxNG The content of this structure is not made public by the API.
Structure xmlRelaxNGParserCtxt
struct _xmlRelaxNGParserCtxt The content of this structure is not made public by the API.
Typedef xmlRelaxNGParserCtxt * xmlRelaxNGParserCtxtPtr
Enum xmlRelaxNGParserFlag
Typedef xmlRelaxNG * xmlRelaxNGPtr
Structure xmlRelaxNGValidCtxt
struct _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)

Description

Structure xmlRelaxNG

Structure xmlRelaxNG
struct _xmlRelaxNG { The content of this structure is not made public by the API. }

Structure xmlRelaxNGParserCtxt

Structure xmlRelaxNGParserCtxt
struct _xmlRelaxNGParserCtxt { The content of this structure is not made public by the API. }

Enum xmlRelaxNGParserFlag

Enum xmlRelaxNGParserFlag {
    XML_RELAXNGP_NONE = 0
    XML_RELAXNGP_FREE_DOC = 1
    XML_RELAXNGP_CRNG = 2
}

Structure xmlRelaxNGValidCtxt

Structure xmlRelaxNGValidCtxt
struct _xmlRelaxNGValidCtxt { The content of this structure is not made public by the API. }

Enum xmlRelaxNGValidErr

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
    XML_RELAXNG_ERR_LISTEXTRA = 8
    XML_RELAXNG_ERR_LISTEMPTY = 9
    XML_RELAXNG_ERR_INTERNODATA = 10
    XML_RELAXNG_ERR_INTERSEQ = 11
    XML_RELAXNG_ERR_INTEREXTRA = 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
    XML_RELAXNG_ERR_ELEMEXTRANS = 19
    XML_RELAXNG_ERR_ATTREXTRANS = 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
    XML_RELAXNG_ERR_EXTRACONTENT = 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
    XML_RELAXNG_ERR_EXTRADATA = 35
    XML_RELAXNG_ERR_LACKDATA = 36
    XML_RELAXNG_ERR_INTERNAL = 37
    XML_RELAXNG_ERR_ELEMWRONG = 38
    XML_RELAXNG_ERR_TEXTWRONG = 39
}

Function: xmlRelaxNGCleanupTypes

void	xmlRelaxNGCleanupTypes		(void)

Cleanup the default Schemas type library associated to RelaxNG

Function: xmlRelaxNGDump

void	xmlRelaxNGDump			(FILE * output, 
xmlRelaxNGPtr schema)

Dump a RelaxNG structure back

output:the file output
schema:a schema structure

Function: xmlRelaxNGDumpTree

void	xmlRelaxNGDumpTree		(FILE * output, 
xmlRelaxNGPtr schema)

Dump the transformed RelaxNG tree.

output:the file output
schema:a schema structure

Function: xmlRelaxNGFree

void	xmlRelaxNGFree			(xmlRelaxNGPtr schema)

Deallocate a RelaxNG structure.

schema:a schema structure

Function: xmlRelaxNGFreeParserCtxt

void	xmlRelaxNGFreeParserCtxt	(xmlRelaxNGParserCtxtPtr ctxt)

Free the resources associated to the schema parser context

ctxt:the schema parser context

Function: xmlRelaxNGFreeValidCtxt

void	xmlRelaxNGFreeValidCtxt		(xmlRelaxNGValidCtxtPtr ctxt)

Free the resources associated to the schema validation context

ctxt:the schema validation context

Function: xmlRelaxNGGetParserErrors

int	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: xmlRelaxNGGetValidErrors

int	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: xmlRelaxNGInitTypes

int	xmlRelaxNGInitTypes		(void)

Initialize the default type libraries.

Returns:0 in case of success and -1 in case of error.

Function: xmlRelaxNGNewDocParserCtxt

xmlRelaxNGParserCtxtPtr	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: xmlRelaxNGNewMemParserCtxt

xmlRelaxNGParserCtxtPtr	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: xmlRelaxNGNewParserCtxt

xmlRelaxNGParserCtxtPtr	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: xmlRelaxNGNewValidCtxt

xmlRelaxNGValidCtxtPtr	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: xmlRelaxNGParse

xmlRelaxNGPtr	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: xmlRelaxNGSetParserErrors

void	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: xmlRelaxNGSetParserStructuredErrors

void	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: xmlRelaxNGSetValidErrors

void	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: xmlRelaxNGSetValidStructuredErrors

void	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: xmlRelaxNGValidateDoc

int	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: xmlRelaxNGValidateFullElement

int	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: xmlRelaxNGValidatePopElement

int	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: xmlRelaxNGValidatePushCData

int	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: xmlRelaxNGValidatePushElement

int	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: xmlRelaxNGValidityErrorFunc

Function 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: xmlRelaxNGValidityWarningFunc

Function 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: xmlRelaxParserSetFlag

int	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