|
|
|
|
|
libxml2 Reference Manual |
|---|
xmlschemas - incomplete XML Schemas structure implementation
interface to the XML Schemas handling and schema validity checking, it is incomplete right now.
Author(s): Daniel Veillard
typedef xmlSchema * xmlSchemaPtr; typedef struct _xmlSchemaParserCtxt xmlSchemaParserCtxt; typedef enum xmlSchemaValidOption; typedef xmlSchemaSAXPlugStruct * xmlSchemaSAXPlugPtr; typedef struct _xmlSchemaSAXPlug xmlSchemaSAXPlugStruct; typedef xmlSchemaValidCtxt * xmlSchemaValidCtxtPtr; typedef xmlSchemaParserCtxt * xmlSchemaParserCtxtPtr; typedef struct _xmlSchema xmlSchema; typedef enum xmlSchemaValidError; typedef struct _xmlSchemaValidCtxt xmlSchemaValidCtxt; xmlSchemaParserCtxtPtr xmlSchemaNewDocParserCtxt (xmlDocPtr doc); int xmlSchemaSAXUnplug (xmlSchemaSAXPlugPtr plug); xmlSchemaPtr xmlSchemaParse (xmlSchemaParserCtxtPtr ctxt); void xmlSchemaFreeParserCtxt (xmlSchemaParserCtxtPtr ctxt); xmlSchemaParserCtxtPtr xmlSchemaNewParserCtxt (const char * URL); int xmlSchemaIsValid (xmlSchemaValidCtxtPtr ctxt); typedef void xmlSchemaValidityErrorFunc (void * ctx,
const char * msg,
... ...); xmlSchemaSAXPlugPtr xmlSchemaSAXPlug (xmlSchemaValidCtxtPtr ctxt,
xmlSAXHandlerPtr * sax,
void ** user_data); int xmlSchemaValidateStream (xmlSchemaValidCtxtPtr ctxt,
xmlParserInputBufferPtr input,
xmlCharEncoding enc,
xmlSAXHandlerPtr sax,
void * user_data); int xmlSchemaGetParserErrors (xmlSchemaParserCtxtPtr ctxt,
xmlSchemaValidityErrorFunc * err,
xmlSchemaValidityWarningFunc * warn,
void ** ctx); int xmlSchemaValidateOneElement (xmlSchemaValidCtxtPtr ctxt,
xmlNodePtr elem); void xmlSchemaSetValidStructuredErrors (xmlSchemaValidCtxtPtr ctxt,
xmlStructuredErrorFunc serror,
void * ctx); void xmlSchemaSetValidErrors (xmlSchemaValidCtxtPtr ctxt,
xmlSchemaValidityErrorFunc err,
xmlSchemaValidityWarningFunc warn,
void * ctx); int xmlSchemaValidCtxtGetOptions (xmlSchemaValidCtxtPtr ctxt); int xmlSchemaValidateFile (xmlSchemaValidCtxtPtr ctxt,
const char * filename,
int options); int xmlSchemaValidateDoc (xmlSchemaValidCtxtPtr ctxt,
xmlDocPtr instance); void xmlSchemaFree (xmlSchemaPtr schema); xmlSchemaParserCtxtPtr xmlSchemaNewMemParserCtxt (const char * buffer,
int size); int xmlSchemaGetValidErrors (xmlSchemaValidCtxtPtr ctxt,
xmlSchemaValidityErrorFunc * err,
xmlSchemaValidityWarningFunc * warn,
void ** ctx); int xmlSchemaSetValidOptions (xmlSchemaValidCtxtPtr ctxt,
int options); void xmlSchemaSetParserErrors (xmlSchemaParserCtxtPtr ctxt,
xmlSchemaValidityErrorFunc err,
xmlSchemaValidityWarningFunc warn,
void * ctx); typedef void xmlSchemaValidityWarningFunc (void * ctx,
const char * msg,
... ...); void xmlSchemaDump (FILE * output,
xmlSchemaPtr schema); void xmlSchemaFreeValidCtxt (xmlSchemaValidCtxtPtr ctxt); void xmlSchemaSetParserStructuredErrors (xmlSchemaParserCtxtPtr ctxt,
xmlStructuredErrorFunc serror,
void * ctx); xmlSchemaValidCtxtPtr xmlSchemaNewValidCtxt (xmlSchemaPtr schema);
struct _xmlSchema {
const xmlChar * name : schema name
const xmlChar * targetNamespace : the target namespace
const xmlChar * version
const xmlChar * id : Obsolete
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
xmlDictPtr dict
void * includes : the includes, this is opaque for now
int preserve : whether to free the document
int counter : used to give ononymous components unique names
xmlHashTablePtr idcDef : All identity-constraint defs.
void * volatiles : Obsolete
} xmlSchema;
struct _xmlSchemaParserCtxt {
The content of this structure is not made public by the API.
} xmlSchemaParserCtxt;
xmlSchemaParserCtxt * xmlSchemaParserCtxtPtr;
xmlSchemaSAXPlugStruct * xmlSchemaSAXPlugPtr;
struct _xmlSchemaSAXPlug {
The content of this structure is not made public by the API.
} xmlSchemaSAXPlugStruct;
struct _xmlSchemaValidCtxt {
The content of this structure is not made public by the API.
} xmlSchemaValidCtxt;
xmlSchemaValidCtxt * xmlSchemaValidCtxtPtr;
enum xmlSchemaValidError { XML_SCHEMAS_ERR_OK = 0 XML_SCHEMAS_ERR_NOROOT = 1 XML_SCHEMAS_ERR_UNDECLAREDELEM = 2 XML_SCHEMAS_ERR_NOTTOPLEVEL = 3 XML_SCHEMAS_ERR_MISSING = 4 XML_SCHEMAS_ERR_WRONGELEM = 5 XML_SCHEMAS_ERR_NOTYPE = 6 XML_SCHEMAS_ERR_NOROLLBACK = 7 XML_SCHEMAS_ERR_ISABSTRACT = 8 XML_SCHEMAS_ERR_NOTEMPTY = 9 XML_SCHEMAS_ERR_ELEMCONT = 10 XML_SCHEMAS_ERR_HAVEDEFAULT = 11 XML_SCHEMAS_ERR_NOTNILLABLE = 12 XML_SCHEMAS_ERR_EXTRACONTENT = 13 XML_SCHEMAS_ERR_INVALIDATTR = 14 XML_SCHEMAS_ERR_INVALIDELEM = 15 XML_SCHEMAS_ERR_NOTDETERMINIST = 16 XML_SCHEMAS_ERR_CONSTRUCT = 17 XML_SCHEMAS_ERR_INTERNAL = 18 XML_SCHEMAS_ERR_NOTSIMPLE = 19 XML_SCHEMAS_ERR_ATTRUNKNOWN = 20 XML_SCHEMAS_ERR_ATTRINVALID = 21 XML_SCHEMAS_ERR_VALUE = 22 XML_SCHEMAS_ERR_FACET = 23 XML_SCHEMAS_ERR_ = 24 XML_SCHEMAS_ERR_XXX = 25 };
enum xmlSchemaValidOption { XML_SCHEMA_VAL_VC_I_CREATE = 1 /* Default/fixed: create an attribute node * or an element's text node on the instance. * */ };
void xmlSchemaValidityErrorFunc (void * ctx,
const char * msg,
... ...)
| ctx: | |
| msg: | |
| ...: |
void xmlSchemaValidityWarningFunc (void * ctx,
const char * msg,
... ...)
| ctx: | |
| msg: | |
| ...: |
void xmlSchemaDump (FILE * output,
xmlSchemaPtr schema)
Dump a Schema structure.
| output: | the file output |
| schema: | a schema structure |
void xmlSchemaFree (xmlSchemaPtr schema)
Deallocate a Schema structure.
| schema: | a schema structure |
void xmlSchemaFreeParserCtxt (xmlSchemaParserCtxtPtr ctxt)
Free the resources associated to the schema parser context
| ctxt: | the schema parser context |
int xmlSchemaGetParserErrors (xmlSchemaParserCtxtPtr ctxt,
xmlSchemaValidityErrorFunc * err,
xmlSchemaValidityWarningFunc * warn,
void ** ctx)
Get the callback information used to handle errors for a parser context
| ctxt: | a XMl-Schema parser 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 |
int xmlSchemaGetValidErrors (xmlSchemaValidCtxtPtr ctxt,
xmlSchemaValidityErrorFunc * err,
xmlSchemaValidityWarningFunc * warn,
void ** ctx)
| ctxt: | |
| err: | |
| warn: | |
| ctx: | |
| Returns: |
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 |
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 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 |
xmlSchemaValidCtxtPtr xmlSchemaNewValidCtxt (xmlSchemaPtr schema)
| schema: | |
| Returns: |
xmlSchemaPtr xmlSchemaParse (xmlSchemaParserCtxtPtr ctxt)
parse a schema definition resource and build an internal XML Shema struture which can be used to validate instances.
| ctxt: | a schema validation context |
| Returns: | the internal XML Schema structure built from the resource or NULL in case of error |
xmlSchemaSAXPlugPtr xmlSchemaSAXPlug (xmlSchemaValidCtxtPtr ctxt,
xmlSAXHandlerPtr * sax,
void ** user_data)
| ctxt: | |
| sax: | |
| user_data: | |
| Returns: |
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 |
void xmlSchemaSetParserStructuredErrors (xmlSchemaParserCtxtPtr ctxt,
xmlStructuredErrorFunc serror,
void * ctx)
Set the structured error callback
| ctxt: | a schema parser context |
| serror: | the structured error function |
| ctx: | the functions context |
void xmlSchemaSetValidErrors (xmlSchemaValidCtxtPtr ctxt,
xmlSchemaValidityErrorFunc err,
xmlSchemaValidityWarningFunc warn,
void * ctx)
| ctxt: | |
| err: | |
| warn: | |
| ctx: |
int xmlSchemaSetValidOptions (xmlSchemaValidCtxtPtr ctxt,
int options)
| ctxt: | |
| options: | |
| Returns: |
void xmlSchemaSetValidStructuredErrors (xmlSchemaValidCtxtPtr ctxt,
xmlStructuredErrorFunc serror,
void * ctx)
| ctxt: | |
| serror: | |
| ctx: |
int xmlSchemaValidCtxtGetOptions (xmlSchemaValidCtxtPtr ctxt)
| ctxt: | |
| Returns: |
int xmlSchemaValidateDoc (xmlSchemaValidCtxtPtr ctxt,
xmlDocPtr instance)
| ctxt: | |
| instance: | |
| Returns: |
int xmlSchemaValidateFile (xmlSchemaValidCtxtPtr ctxt,
const char * filename,
int options)
| ctxt: | |
| filename: | |
| options: | |
| Returns: |
int xmlSchemaValidateOneElement (xmlSchemaValidCtxtPtr ctxt,
xmlNodePtr elem)
| ctxt: | |
| elem: | |
| Returns: |
int xmlSchemaValidateStream (xmlSchemaValidCtxtPtr ctxt,
xmlParserInputBufferPtr input,
xmlCharEncoding enc,
xmlSAXHandlerPtr sax,
void * user_data)
| ctxt: | |
| input: | |
| enc: | |
| sax: | |
| user_data: | |
| Returns: |