![]() | ![]() | ![]() | Gnome XML Library Reference Manual |
---|
schemasInternals —
enum xmlSchemaTypeType; enum xmlSchemaContentType; struct xmlSchemaVal; typedef xmlSchemaValPtr; struct xmlSchemaType; typedef xmlSchemaTypePtr; struct xmlSchemaFacet; typedef xmlSchemaFacetPtr; struct xmlSchemaAnnot; typedef xmlSchemaAnnotPtr; #define XML_SCHEMAS_ANYATTR_SKIP #define XML_SCHEMAS_ANYATTR_LAX #define XML_SCHEMAS_ANYATTR_STRICT struct xmlSchemaAttribute; typedef xmlSchemaAttributePtr; struct xmlSchemaAttributeGroup; typedef xmlSchemaAttributeGroupPtr; #define XML_SCHEMAS_TYPE_MIXED #define XML_SCHEMAS_ELEM_NILLABLE #define XML_SCHEMAS_ELEM_GLOBAL #define XML_SCHEMAS_ELEM_DEFAULT #define XML_SCHEMAS_ELEM_FIXED #define XML_SCHEMAS_ELEM_ABSTRACT #define XML_SCHEMAS_ELEM_TOPLEVEL #define XML_SCHEMAS_ELEM_REF struct xmlSchemaElement; typedef xmlSchemaElementPtr; #define XML_SCHEMAS_FACET_UNKNOWN #define XML_SCHEMAS_FACET_PRESERVE #define XML_SCHEMAS_FACET_REPLACE #define XML_SCHEMAS_FACET_COLLAPSE struct xmlSchemaNotation; typedef xmlSchemaNotationPtr; #define XML_SCHEMAS_QUALIF_ELEM #define XML_SCHEMAS_QUALIF_ATTR struct xmlSchema; void xmlSchemaFreeType (xmlSchemaTypePtr type);
typedef enum { XML_SCHEMA_TYPE_BASIC = 1, XML_SCHEMA_TYPE_ANY, XML_SCHEMA_TYPE_FACET, XML_SCHEMA_TYPE_SIMPLE, XML_SCHEMA_TYPE_COMPLEX, XML_SCHEMA_TYPE_SEQUENCE, XML_SCHEMA_TYPE_CHOICE, XML_SCHEMA_TYPE_ALL, XML_SCHEMA_TYPE_SIMPLE_CONTENT, XML_SCHEMA_TYPE_COMPLEX_CONTENT, XML_SCHEMA_TYPE_UR, XML_SCHEMA_TYPE_RESTRICTION, XML_SCHEMA_TYPE_EXTENSION, XML_SCHEMA_TYPE_ELEMENT, XML_SCHEMA_TYPE_ATTRIBUTE, XML_SCHEMA_TYPE_ATTRIBUTEGROUP, XML_SCHEMA_TYPE_GROUP, XML_SCHEMA_TYPE_NOTATION, XML_SCHEMA_TYPE_LIST, XML_SCHEMA_TYPE_UNION, XML_SCHEMA_FACET_MININCLUSIVE = 1000, XML_SCHEMA_FACET_MINEXCLUSIVE, XML_SCHEMA_FACET_MAXINCLUSIVE, XML_SCHEMA_FACET_MAXEXCLUSIVE, XML_SCHEMA_FACET_TOTALDIGITS, XML_SCHEMA_FACET_FRACTIONDIGITS, XML_SCHEMA_FACET_PATTERN, XML_SCHEMA_FACET_ENUMERATION, XML_SCHEMA_FACET_WHITESPACE, XML_SCHEMA_FACET_LENGTH, XML_SCHEMA_FACET_MAXLENGTH, XML_SCHEMA_FACET_MINLENGTH } xmlSchemaTypeType;
typedef enum { XML_SCHEMA_CONTENT_UNKNOWN = 0, XML_SCHEMA_CONTENT_EMPTY = 1, XML_SCHEMA_CONTENT_ELEMENTS, XML_SCHEMA_CONTENT_MIXED, XML_SCHEMA_CONTENT_SIMPLE, XML_SCHEMA_CONTENT_MIXED_OR_ELEMENTS, XML_SCHEMA_CONTENT_BASIC, XML_SCHEMA_CONTENT_ANY } xmlSchemaContentType;
struct xmlSchemaType { xmlSchemaTypeType type; /* The kind of type */ struct _xmlSchemaType *next;/* the next type if in a sequence ... */ xmlChar *name; xmlChar *id; xmlChar *ref; xmlChar *refNs; xmlSchemaAnnotPtr annot; xmlSchemaTypePtr subtypes; xmlSchemaAttributePtr attributes; xmlNodePtr node; int minOccurs; int maxOccurs; int flags; xmlSchemaContentType contentType; xmlChar *base; xmlChar *baseNs; xmlSchemaTypePtr baseType; xmlSchemaFacetPtr facets; };
struct xmlSchemaFacet { xmlSchemaTypeType type; /* The kind of type */ struct _xmlSchemaFacet *next;/* the next type if in a sequence ... */ xmlChar *value; xmlChar *id; xmlSchemaAnnotPtr annot; xmlNodePtr node; int fixed; int whitespace; xmlSchemaValPtr val; xmlRegexpPtr regexp; };
struct xmlSchemaAnnot { struct _xmlSchemaAnnot *next; xmlNodePtr content; /* the annotation */ };
struct xmlSchemaAttribute { xmlSchemaTypeType type; /* The kind of type */ struct _xmlSchemaAttribute *next;/* the next attribute if in a group ... */ xmlChar *name; xmlChar *id; xmlChar *ref; xmlChar *refNs; xmlChar *typeName; xmlChar *typeNs; xmlSchemaAnnotPtr annot; xmlSchemaTypePtr base; int occurs; xmlChar *defValue; xmlSchemaTypePtr subtypes; xmlNodePtr node; };
struct xmlSchemaAttributeGroup { xmlSchemaTypeType type; /* The kind of type */ struct _xmlSchemaAttribute *next;/* the next attribute if in a group ... */ xmlChar *name; xmlChar *id; xmlChar *ref; xmlChar *refNs; xmlSchemaAnnotPtr annot; xmlSchemaAttributePtr attributes; xmlNodePtr node; };
struct xmlSchemaElement { xmlSchemaTypeType type; /* The kind of type */ struct _xmlSchemaType *next;/* the next type if in a sequence ... */ xmlChar *name; xmlChar *id; xmlChar *ref; xmlChar *refNs; xmlSchemaAnnotPtr annot; xmlSchemaTypePtr subtypes; xmlSchemaAttributePtr attributes; xmlNodePtr node; int minOccurs; int maxOccurs; int flags; xmlChar *targetNamespace; xmlChar *namedType; xmlChar *namedTypeNs; xmlChar *substGroup; xmlChar *substGroupNs; xmlChar *scope; xmlChar *value; struct _xmlSchemaElement *refDecl; xmlRegexpPtr contModel; xmlSchemaContentType contentType; };
xmlSchemaType, xmlSchemaFacet and xmlSchemaElement start of structures must be kept similar
struct xmlSchemaNotation { xmlSchemaTypeType type; /* The kind of type */ xmlChar *name; xmlSchemaAnnotPtr annot; xmlChar *identifier; };
#define XML_SCHEMAS_QUALIF_ELEM 1 << 0
the shemas requires qualified elements
#define XML_SCHEMAS_QUALIF_ATTR 1 << 1
the shemas requires qualified attributes
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 xmlSchemaFreeType (xmlSchemaTypePtr type);
Deallocate a Schema Type structure.
type : | a schema type structure |
<< xmlschemastypes |