schematron

schematron - XML Schematron implementation

interface to the XML Schematron validity checking.

Author(s): Daniel Veillard

Synopsis

typedef struct _xmlSchematron xmlSchematron;
typedef struct _xmlSchematronParserCtxt xmlSchematronParserCtxt;
typedef xmlSchematronParserCtxt * xmlSchematronParserCtxtPtr;
typedef xmlSchematron * xmlSchematronPtr;
typedef struct _xmlSchematronValidCtxt xmlSchematronValidCtxt;
typedef xmlSchematronValidCtxt * xmlSchematronValidCtxtPtr;
typedef enum xmlSchematronValidOptions;
void	xmlSchematronFree		(xmlSchematronPtr schema);
void	xmlSchematronFreeParserCtxt	(xmlSchematronParserCtxtPtr ctxt);
void	xmlSchematronFreeValidCtxt	(xmlSchematronValidCtxtPtr ctxt);
xmlSchematronParserCtxtPtr	xmlSchematronNewDocParserCtxt	(xmlDocPtr doc);
xmlSchematronParserCtxtPtr	xmlSchematronNewMemParserCtxt	(const char * buffer, 
int size); xmlSchematronParserCtxtPtr xmlSchematronNewParserCtxt (const char * URL); xmlSchematronValidCtxtPtr xmlSchematronNewValidCtxt (xmlSchematronPtr schema,
int options); xmlSchematronPtr xmlSchematronParse (xmlSchematronParserCtxtPtr ctxt); void xmlSchematronSetValidStructuredErrors (xmlSchematronValidCtxtPtr ctxt,
xmlStructuredErrorFunc serror,
void * ctx); int xmlSchematronValidateDoc (xmlSchematronValidCtxtPtr ctxt,
xmlDocPtr instance); typedef void xmlSchematronValidityErrorFunc (void * ctx,
const char * msg,
... ...); typedef void xmlSchematronValidityWarningFunc (void * ctx,
const char * msg,
... ...);

Description

Details

Structure xmlSchematron

struct _xmlSchematron {
The content of this structure is not made public by the API.
} xmlSchematron;


Structure xmlSchematronParserCtxt

struct _xmlSchematronParserCtxt {
The content of this structure is not made public by the API.
} xmlSchematronParserCtxt;


Typedef xmlSchematronParserCtxtPtr

xmlSchematronParserCtxt * xmlSchematronParserCtxtPtr;


Typedef xmlSchematronPtr

xmlSchematron * xmlSchematronPtr;


Structure xmlSchematronValidCtxt

struct _xmlSchematronValidCtxt {
The content of this structure is not made public by the API.
} xmlSchematronValidCtxt;


Typedef xmlSchematronValidCtxtPtr

xmlSchematronValidCtxt * xmlSchematronValidCtxtPtr;


Enum xmlSchematronValidOptions

enum xmlSchematronValidOptions {
    XML_SCHEMATRON_OUT_QUIET = 1 /* quiet no report */
    XML_SCHEMATRON_OUT_TEXT = 2 /* build a textual report */
    XML_SCHEMATRON_OUT_XML = 4 /* output SVRL */
    XML_SCHEMATRON_OUT_ERROR = 8 /* output via xmlStructuredErrorFunc */
    XML_SCHEMATRON_OUT_FILE = 256 /* output to a file descriptor */
    XML_SCHEMATRON_OUT_BUFFER = 512 /* output to a buffer */
    XML_SCHEMATRON_OUT_IO = 1024 /*  output to I/O mechanism */
};


Function type xmlSchematronValidityErrorFunc

void	xmlSchematronValidityErrorFunc	(void * ctx, 
const char * msg,
... ...)

Signature of an error callback from a Schematron validation

ctx: the validation context
msg: the message
...: extra arguments

Function type xmlSchematronValidityWarningFunc

void	xmlSchematronValidityWarningFunc	(void * ctx, 
const char * msg,
... ...)

Signature of a warning callback from a Schematron validation

ctx: the validation context
msg: the message
...: extra arguments

xmlSchematronFree ()

void	xmlSchematronFree		(xmlSchematronPtr schema)

Deallocate a Schematron structure.

schema: a schema structure

xmlSchematronFreeParserCtxt ()

void	xmlSchematronFreeParserCtxt	(xmlSchematronParserCtxtPtr ctxt)

Free the resources associated to the schema parser context

ctxt: the schema parser context

xmlSchematronFreeValidCtxt ()

void	xmlSchematronFreeValidCtxt	(xmlSchematronValidCtxtPtr ctxt)

Free the resources associated to the schema validation context

ctxt: the schema validation context

xmlSchematronNewDocParserCtxt ()

xmlSchematronParserCtxtPtr	xmlSchematronNewDocParserCtxt	(xmlDocPtr doc)

Create an XML Schematrons parse context for that document. NB. The document may be modified during the parsing process.

doc: a preparsed document tree
Returns: the parser context or NULL in case of error

xmlSchematronNewMemParserCtxt ()

xmlSchematronParserCtxtPtr	xmlSchematronNewMemParserCtxt	(const char * buffer, 
int size)

Create an XML Schematrons parse context for that memory buffer expected to contain an XML Schematrons 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

xmlSchematronNewParserCtxt ()

xmlSchematronParserCtxtPtr	xmlSchematronNewParserCtxt	(const char * URL)

Create an XML Schematrons parse context for that file/resource expected to contain an XML Schematrons file.

URL: the location of the schema
Returns: the parser context or NULL in case of error

xmlSchematronNewValidCtxt ()

xmlSchematronValidCtxtPtr	xmlSchematronNewValidCtxt	(xmlSchematronPtr schema, 
int options)

Create an XML Schematrons validation context based on the given schema.

schema: a precompiled XML Schematrons
options: a set of xmlSchematronValidOptions
Returns: the validation context or NULL in case of error

xmlSchematronParse ()

xmlSchematronPtr	xmlSchematronParse	(xmlSchematronParserCtxtPtr ctxt)

parse a schema definition resource and build an internal XML Schema structure which can be used to validate instances.

ctxt: a schema validation context
Returns: the internal XML Schematron structure built from the resource or NULL in case of error

xmlSchematronSetValidStructuredErrors ()

void	xmlSchematronSetValidStructuredErrors	(xmlSchematronValidCtxtPtr ctxt, 
xmlStructuredErrorFunc serror,
void * ctx)

Set the structured error callback

ctxt: a Schematron validation context
serror: the structured error function
ctx: the functions context

xmlSchematronValidateDoc ()

int	xmlSchematronValidateDoc	(xmlSchematronValidCtxtPtr ctxt, 
xmlDocPtr instance)

Validate a tree instance against the schematron

ctxt: the schema validation context
instance: the document instance tree
Returns: 0 in case of success, -1 in case of internal error and an error count otherwise.