| Gnome XML Library Reference Manual |
|---|
xmlschemas —
enum xmlSchemaValidError; struct xmlSchema; typedef xmlSchemaPtr; void (*xmlSchemaValidityErrorFunc) (void *ctx, const char *msg, ...); void (*xmlSchemaValidityWarningFunc) (void *ctx, const char *msg, ...); struct xmlSchemaParserCtxt; typedef xmlSchemaParserCtxtPtr; struct xmlSchemaValidCtxt; typedef xmlSchemaValidCtxtPtr; xmlSchemaParserCtxtPtr xmlSchemaNewParserCtxt (const char *URL); xmlSchemaParserCtxtPtr xmlSchemaNewMemParserCtxt (const char *buffer, int size); xmlSchemaParserCtxtPtr xmlSchemaNewDocParserCtxt (xmlDocPtr doc); void xmlSchemaFreeParserCtxt (xmlSchemaParserCtxtPtr ctxt); void xmlSchemaSetParserErrors (xmlSchemaParserCtxtPtr ctxt, xmlSchemaValidityErrorFunc err, xmlSchemaValidityWarningFunc warn, void *ctx); xmlSchemaPtr xmlSchemaParse (xmlSchemaParserCtxtPtr ctxt); void xmlSchemaFree (xmlSchemaPtr schema); void xmlSchemaDump (FILE *output, xmlSchemaPtr schema); void xmlSchemaSetValidErrors (xmlSchemaValidCtxtPtr ctxt, xmlSchemaValidityErrorFunc err, xmlSchemaValidityWarningFunc warn, void *ctx); xmlSchemaValidCtxtPtr xmlSchemaNewValidCtxt (xmlSchemaPtr schema); void xmlSchemaFreeValidCtxt (xmlSchemaValidCtxtPtr ctxt); int xmlSchemaValidateDoc (xmlSchemaValidCtxtPtr ctxt, xmlDocPtr instance); int xmlSchemaValidateStream (xmlSchemaValidCtxtPtr ctxt, xmlParserInputBufferPtr input, xmlCharEncoding enc, xmlSAXHandlerPtr sax, void *user_data);
typedef enum {
XML_SCHEMAS_ERR_OK = 0,
XML_SCHEMAS_ERR_NOROOT = 1,
XML_SCHEMAS_ERR_UNDECLAREDELEM,
XML_SCHEMAS_ERR_NOTTOPLEVEL,
XML_SCHEMAS_ERR_MISSING,
XML_SCHEMAS_ERR_WRONGELEM,
XML_SCHEMAS_ERR_NOTYPE,
XML_SCHEMAS_ERR_NOROLLBACK,
XML_SCHEMAS_ERR_ISABSTRACT,
XML_SCHEMAS_ERR_NOTEMPTY,
XML_SCHEMAS_ERR_ELEMCONT,
XML_SCHEMAS_ERR_HAVEDEFAULT,
XML_SCHEMAS_ERR_NOTNILLABLE,
XML_SCHEMAS_ERR_EXTRACONTENT,
XML_SCHEMAS_ERR_INVALIDATTR,
XML_SCHEMAS_ERR_INVALIDELEM,
XML_SCHEMAS_ERR_NOTDETERMINIST,
XML_SCHEMAS_ERR_CONSTRUCT,
XML_SCHEMAS_ERR_INTERNAL,
XML_SCHEMAS_ERR_NOTSIMPLE,
XML_SCHEMAS_ERR_ATTRUNKNOWN,
XML_SCHEMAS_ERR_ATTRINVALID,
XML_SCHEMAS_ERR_VALUE,
XML_SCHEMAS_ERR_FACET,
XML_SCHEMAS_ERR_,
XML_SCHEMAS_ERR_XXX
} xmlSchemaValidError;
struct xmlSchema {
xmlChar *name; /* schema name */
xmlChar *targetNamespace; /* the target namespace */
xmlChar *version;
xmlChar *id;
xmlDocPtr doc;
xmlSchemaAnnotPtr annot;
int flags;
xmlHashTablePtr typeDecl;
xmlHashTablePtr attrDecl;
xmlHashTablePtr attrgrpDecl;
xmlHashTablePtr elemDecl;
xmlHashTablePtr notaDecl;
xmlHashTablePtr schemasImports;
void *_private; /* unused by the library for users or bindings */
xmlHashTablePtr groupDecl;
};
void (*xmlSchemaValidityErrorFunc) (void *ctx,
const char *msg,
...);
| ctx: | |
| msg: | |
| ...: |
void (*xmlSchemaValidityWarningFunc) (void *ctx,
const char *msg,
...);
| ctx: | |
| msg: | |
| ...: |
xmlSchemaParserCtxtPtr xmlSchemaNewParserCtxt (const char *URL);
Create an XML Schemas parse context for that file/resource expected to contain an XML Schemas file.
| URL: | the location of the schema |
| Returns : | the parser context or NULL in case of error |
xmlSchemaParserCtxtPtr xmlSchemaNewMemParserCtxt (const char *buffer, int size);
Create an XML Schemas parse context for that memory buffer expected to contain an XML Schemas 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 |
xmlSchemaParserCtxtPtr xmlSchemaNewDocParserCtxt (xmlDocPtr doc);
Create an XML Schemas 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 |
void xmlSchemaFreeParserCtxt (xmlSchemaParserCtxtPtr ctxt);
Free the resources associated to the schema parser context
| ctxt: | the schema parser context |
void xmlSchemaSetParserErrors (xmlSchemaParserCtxtPtr ctxt, xmlSchemaValidityErrorFunc err, xmlSchemaValidityWarningFunc warn, void *ctx);
Set the callback functions used to handle errors for a validation context
| ctxt: | a schema validation context |
| err: | the error callback |
| warn: | the warning callback |
| ctx: | contextual data for the callbacks |
xmlSchemaPtr xmlSchemaParse (xmlSchemaParserCtxtPtr ctxt);
parse a schema definition resource and build an internal XML Shema struture which can be used to validate instances. *WARNING* this interface is highly subject to change
| ctxt: | a schema validation context |
| Returns : | the internal XML Schema structure built from the resource or NULL in case of error |
void xmlSchemaFree (xmlSchemaPtr schema);
Deallocate a Schema structure.
| schema: | a schema structure |
void xmlSchemaDump (FILE *output, xmlSchemaPtr schema);
Dump a Schema structure.
| output: | the file output |
| schema: | a schema structure |
void xmlSchemaSetValidErrors (xmlSchemaValidCtxtPtr ctxt, xmlSchemaValidityErrorFunc err, xmlSchemaValidityWarningFunc warn, void *ctx);
Set the error and warning callback informations
| ctxt: | a schema validation context |
| err: | the error function |
| warn: | the warning function |
| ctx: | the functions context |
xmlSchemaValidCtxtPtr xmlSchemaNewValidCtxt (xmlSchemaPtr schema);
Create an XML Schemas validation context based on the given schema
| schema: | a precompiled XML Schemas |
| Returns : | the validation context or NULL in case of error |
void xmlSchemaFreeValidCtxt (xmlSchemaValidCtxtPtr ctxt);
Free the resources associated to the schema validation context
| ctxt: | the schema validation context |
int xmlSchemaValidateDoc (xmlSchemaValidCtxtPtr ctxt, xmlDocPtr instance);
Validate a document tree in memory.
| ctxt: | a schema validation context |
| instance: | |
| Returns : | 0 if the document is schemas valid, a positive error code number otherwise and -1 in case of internal or API error. |
int xmlSchemaValidateStream (xmlSchemaValidCtxtPtr ctxt, xmlParserInputBufferPtr input, xmlCharEncoding enc, xmlSAXHandlerPtr sax, void *user_data);
Validate a document tree in memory.
| ctxt: | a schema validation context |
| input: | the input to use for reading the data |
| enc: | an optional encoding information |
| sax: | a SAX handler for the resulting events |
| user_data: | the context to provide to the SAX handler. |
| Returns : | 0 if the document is schemas valid, a positive error code number otherwise and -1 in case of internal or API error. |
| << xmlwriter |