libxml2 Reference Manual |
---|
schematron - XML Schemastron implementation
interface to the XML Schematron validity checking.
Author(s): Daniel Veillard
typedef struct _xmlSchematronValidCtxt xmlSchematronValidCtxt; typedef enum xmlSchematronValidOptions; typedef xmlSchematron * xmlSchematronPtr; typedef struct _xmlSchematronParserCtxt xmlSchematronParserCtxt; typedef struct _xmlSchematron xmlSchematron; typedef xmlSchematronValidCtxt * xmlSchematronValidCtxtPtr; typedef xmlSchematronParserCtxt * xmlSchematronParserCtxtPtr; int xmlSchematronValidateDoc (xmlSchematronValidCtxtPtr ctxt,
xmlDocPtr instance); void xmlSchematronFreeParserCtxt (xmlSchematronParserCtxtPtr ctxt); xmlSchematronParserCtxtPtr xmlSchematronNewMemParserCtxt (const char * buffer,
int size); typedef void xmlSchematronValidityErrorFunc (void * ctx,
const char * msg,
... ...); xmlSchematronParserCtxtPtr xmlSchematronNewParserCtxt (const char * URL); typedef void xmlSchematronValidityWarningFunc (void * ctx,
const char * msg,
... ...); void xmlSchematronFree (xmlSchematronPtr schema); void xmlSchematronSetValidStructuredErrors (xmlSchematronValidCtxtPtr ctxt,
xmlStructuredErrorFunc serror,
void * ctx); void xmlSchematronFreeValidCtxt (xmlSchematronValidCtxtPtr ctxt); xmlSchematronPtr xmlSchematronParse (xmlSchematronParserCtxtPtr ctxt); xmlSchematronParserCtxtPtr xmlSchematronNewDocParserCtxt (xmlDocPtr doc); xmlSchematronValidCtxtPtr xmlSchematronNewValidCtxt (xmlSchematronPtr schema,
int options);
struct _xmlSchematron { The content of this structure is not made public by the API. } xmlSchematron;
struct _xmlSchematronParserCtxt { The content of this structure is not made public by the API. } xmlSchematronParserCtxt;
xmlSchematronParserCtxt * xmlSchematronParserCtxtPtr;
xmlSchematron * xmlSchematronPtr;
struct _xmlSchematronValidCtxt { The content of this structure is not made public by the API. } xmlSchematronValidCtxt;
xmlSchematronValidCtxt * xmlSchematronValidCtxtPtr;
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 */ };
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 |
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 |
void xmlSchematronFree (xmlSchematronPtr schema)
Deallocate a Schematron structure.
schema: | a schema structure |
void xmlSchematronFreeParserCtxt (xmlSchematronParserCtxtPtr ctxt)
Free the resources associated to the schema parser context
ctxt: | the schema parser context |
void xmlSchematronFreeValidCtxt (xmlSchematronValidCtxtPtr ctxt)
Free the resources associated to the schema validation context
ctxt: | the schema validation context |
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 |
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 |
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 |
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 |
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 |
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 |
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. |