📄 schemasinternals.h
字号:
* * the simpleType has a final of "union". */#define XML_SCHEMAS_TYPE_FINAL_UNION 1 << 12/** * XML_SCHEMAS_TYPE_FINAL_DEFAULT: * * the simpleType has a final of "default". */#define XML_SCHEMAS_TYPE_FINAL_DEFAULT 1 << 13/** * XML_SCHEMAS_TYPE_BUILTIN_PRIMITIVE: * * Marks the item as a builtin primitive. */#define XML_SCHEMAS_TYPE_BUILTIN_PRIMITIVE 1 << 14/** * XML_SCHEMAS_TYPE_MARKED: * * Marks the item as marked; used for circular checks. */#define XML_SCHEMAS_TYPE_MARKED 1 << 16/** * XML_SCHEMAS_TYPE_BLOCK_DEFAULT: * * the complexType did not specify 'block' so use the default of the * <schema> item. */#define XML_SCHEMAS_TYPE_BLOCK_DEFAULT 1 << 17/** * XML_SCHEMAS_TYPE_BLOCK_EXTENSION: * * the complexType has a 'block' of "extension". */#define XML_SCHEMAS_TYPE_BLOCK_EXTENSION 1 << 18/** * XML_SCHEMAS_TYPE_BLOCK_RESTRICTION: * * the complexType has a 'block' of "restriction". */#define XML_SCHEMAS_TYPE_BLOCK_RESTRICTION 1 << 19/** * XML_SCHEMAS_TYPE_ABSTRACT: * * the simple/complexType is abstract. */#define XML_SCHEMAS_TYPE_ABSTRACT 1 << 20/** * XML_SCHEMAS_TYPE_FACETSNEEDVALUE: * * indicates if the facets need a computed value */#define XML_SCHEMAS_TYPE_FACETSNEEDVALUE 1 << 21/** * XML_SCHEMAS_TYPE_INTERNAL_RESOLVED: * * indicates that the type was typefixed */#define XML_SCHEMAS_TYPE_INTERNAL_RESOLVED 1 << 22/** * XML_SCHEMAS_TYPE_INTERNAL_INVALID: * * indicates that the type is invalid */#define XML_SCHEMAS_TYPE_INTERNAL_INVALID 1 << 23/** * XML_SCHEMAS_TYPE_WHITESPACE_PRESERVE: * * a whitespace-facet value of "preserve" */#define XML_SCHEMAS_TYPE_WHITESPACE_PRESERVE 1 << 24/** * XML_SCHEMAS_TYPE_WHITESPACE_REPLACE: * * a whitespace-facet value of "replace" */#define XML_SCHEMAS_TYPE_WHITESPACE_REPLACE 1 << 25/** * XML_SCHEMAS_TYPE_WHITESPACE_COLLAPSE: * * a whitespace-facet value of "collapse" */#define XML_SCHEMAS_TYPE_WHITESPACE_COLLAPSE 1 << 26/** * XML_SCHEMAS_TYPE_HAS_FACETS: * * has facets */#define XML_SCHEMAS_TYPE_HAS_FACETS 1 << 27/** * XML_SCHEMAS_TYPE_NORMVALUENEEDED: * * indicates if the facets (pattern) need a normalized value */#define XML_SCHEMAS_TYPE_NORMVALUENEEDED 1 << 28/** * XML_SCHEMAS_TYPE_FIXUP_1: * * First stage of fixup was done. */#define XML_SCHEMAS_TYPE_FIXUP_1 1 << 29/** * XML_SCHEMAS_TYPE_REDEFINED: * * The type was redefined. */#define XML_SCHEMAS_TYPE_REDEFINED 1 << 30/** * XML_SCHEMAS_TYPE_REDEFINING: * * The type redefines an other type. *//* #define XML_SCHEMAS_TYPE_REDEFINING 1 << 31 *//** * _xmlSchemaType: * * Schemas type definition. */struct _xmlSchemaType { xmlSchemaTypeType type; /* The kind of type */ struct _xmlSchemaType *next; /* the next type if in a sequence ... */ const xmlChar *name; const xmlChar *id ; /* Deprecated; not used */ const xmlChar *ref; /* Deprecated; not used */ const xmlChar *refNs; /* Deprecated; not used */ xmlSchemaAnnotPtr annot; xmlSchemaTypePtr subtypes; xmlSchemaAttributePtr attributes; /* Deprecated; not used */ xmlNodePtr node; int minOccurs; /* Deprecated; not used */ int maxOccurs; /* Deprecated; not used */ int flags; xmlSchemaContentType contentType; const xmlChar *base; /* Base type's local name */ const xmlChar *baseNs; /* Base type's target namespace */ xmlSchemaTypePtr baseType; /* The base type component */ xmlSchemaFacetPtr facets; /* Local facets */ struct _xmlSchemaType *redef; /* Deprecated; not used */ int recurse; /* Obsolete */ xmlSchemaAttributeLinkPtr *attributeUses; /* Deprecated; not used */ xmlSchemaWildcardPtr attributeWildcard; int builtInType; /* Type of built-in types. */ xmlSchemaTypeLinkPtr memberTypes; /* member-types if a union type. */ xmlSchemaFacetLinkPtr facetSet; /* All facets (incl. inherited) */ const xmlChar *refPrefix; /* Deprecated; not used */ xmlSchemaTypePtr contentTypeDef; /* Used for the simple content of complex types. Could we use @subtypes for this? */ xmlRegexpPtr contModel; /* Holds the automaton of the content model */ const xmlChar *targetNamespace; void *attrUses;};/* * xmlSchemaElement: * An element definition. * * xmlSchemaType, xmlSchemaFacet and xmlSchemaElement start of * structures must be kept similar *//** * XML_SCHEMAS_ELEM_NILLABLE: * * the element is nillable */#define XML_SCHEMAS_ELEM_NILLABLE 1 << 0/** * XML_SCHEMAS_ELEM_GLOBAL: * * the element is global */#define XML_SCHEMAS_ELEM_GLOBAL 1 << 1/** * XML_SCHEMAS_ELEM_DEFAULT: * * the element has a default value */#define XML_SCHEMAS_ELEM_DEFAULT 1 << 2/** * XML_SCHEMAS_ELEM_FIXED: * * the element has a fixed value */#define XML_SCHEMAS_ELEM_FIXED 1 << 3/** * XML_SCHEMAS_ELEM_ABSTRACT: * * the element is abstract */#define XML_SCHEMAS_ELEM_ABSTRACT 1 << 4/** * XML_SCHEMAS_ELEM_TOPLEVEL: * * the element is top level * obsolete: use XML_SCHEMAS_ELEM_GLOBAL instead */#define XML_SCHEMAS_ELEM_TOPLEVEL 1 << 5/** * XML_SCHEMAS_ELEM_REF: * * the element is a reference to a type */#define XML_SCHEMAS_ELEM_REF 1 << 6/** * XML_SCHEMAS_ELEM_NSDEFAULT: * * allow elements in no namespace * Obsolete, not used anymore. */#define XML_SCHEMAS_ELEM_NSDEFAULT 1 << 7/** * XML_SCHEMAS_ELEM_INTERNAL_RESOLVED: * * this is set when "type", "ref", "substitutionGroup" * references have been resolved. */#define XML_SCHEMAS_ELEM_INTERNAL_RESOLVED 1 << 8 /** * XML_SCHEMAS_ELEM_CIRCULAR: * * a helper flag for the search of circular references. */#define XML_SCHEMAS_ELEM_CIRCULAR 1 << 9/** * XML_SCHEMAS_ELEM_BLOCK_ABSENT: * * the "block" attribute is absent */#define XML_SCHEMAS_ELEM_BLOCK_ABSENT 1 << 10/** * XML_SCHEMAS_ELEM_BLOCK_EXTENSION: * * disallowed substitutions are absent */#define XML_SCHEMAS_ELEM_BLOCK_EXTENSION 1 << 11/** * XML_SCHEMAS_ELEM_BLOCK_RESTRICTION: * * disallowed substitutions: "restriction" */#define XML_SCHEMAS_ELEM_BLOCK_RESTRICTION 1 << 12/** * XML_SCHEMAS_ELEM_BLOCK_SUBSTITUTION: * * disallowed substitutions: "substituion" */#define XML_SCHEMAS_ELEM_BLOCK_SUBSTITUTION 1 << 13/** * XML_SCHEMAS_ELEM_FINAL_ABSENT: * * substitution group exclusions are absent */#define XML_SCHEMAS_ELEM_FINAL_ABSENT 1 << 14/** * XML_SCHEMAS_ELEM_FINAL_EXTENSION: * * substitution group exclusions: "extension" */#define XML_SCHEMAS_ELEM_FINAL_EXTENSION 1 << 15/** * XML_SCHEMAS_ELEM_FINAL_RESTRICTION: * * substitution group exclusions: "restriction" */#define XML_SCHEMAS_ELEM_FINAL_RESTRICTION 1 << 16/** * XML_SCHEMAS_ELEM_SUBST_GROUP_HEAD: * * the declaration is a substitution group head */#define XML_SCHEMAS_ELEM_SUBST_GROUP_HEAD 1 << 17/** * XML_SCHEMAS_ELEM_INTERNAL_CHECKED: * * this is set when the elem decl has been checked against * all constraints */#define XML_SCHEMAS_ELEM_INTERNAL_CHECKED 1 << 18typedef struct _xmlSchemaElement xmlSchemaElement;typedef xmlSchemaElement *xmlSchemaElementPtr;struct _xmlSchemaElement { xmlSchemaTypeType type; /* The kind of type */ struct _xmlSchemaType *next; /* Not used? */ const xmlChar *name; const xmlChar *id; /* Deprecated; not used */ const xmlChar *ref; /* Deprecated; not used */ const xmlChar *refNs; /* Deprecated; not used */ xmlSchemaAnnotPtr annot; xmlSchemaTypePtr subtypes; /* the type definition */ xmlSchemaAttributePtr attributes; xmlNodePtr node; int minOccurs; /* Deprecated; not used */ int maxOccurs; /* Deprecated; not used */ int flags; const xmlChar *targetNamespace; const xmlChar *namedType; const xmlChar *namedTypeNs; const xmlChar *substGroup; const xmlChar *substGroupNs; const xmlChar *scope; const xmlChar *value; /* The original value of the value constraint. */ struct _xmlSchemaElement *refDecl; /* This will now be used for the substitution group affiliation */ xmlRegexpPtr contModel; /* Obsolete for WXS, maybe used for RelaxNG */ xmlSchemaContentType contentType; const xmlChar *refPrefix; /* Deprecated; not used */ xmlSchemaValPtr defVal; /* The compiled value contraint. */ void *idcs; /* The identity-constraint defs */};/* * XML_SCHEMAS_FACET_UNKNOWN: * * unknown facet handling */#define XML_SCHEMAS_FACET_UNKNOWN 0/* * XML_SCHEMAS_FACET_PRESERVE: * * preserve the type of the facet */#define XML_SCHEMAS_FACET_PRESERVE 1/* * XML_SCHEMAS_FACET_REPLACE: * * replace the type of the facet */#define XML_SCHEMAS_FACET_REPLACE 2/* * XML_SCHEMAS_FACET_COLLAPSE: * * collapse the types of the facet */#define XML_SCHEMAS_FACET_COLLAPSE 3/** * A facet definition. */struct _xmlSchemaFacet { xmlSchemaTypeType type; /* The kind of type */ struct _xmlSchemaFacet *next;/* the next type if in a sequence ... */ const xmlChar *value; /* The original value */ const xmlChar *id; /* Obsolete */ xmlSchemaAnnotPtr annot; xmlNodePtr node; int fixed; /* XML_SCHEMAS_FACET_PRESERVE, etc. */ int whitespace; xmlSchemaValPtr val; /* The compiled value */ xmlRegexpPtr regexp; /* The regex for patterns */};/** * A notation definition. */typedef struct _xmlSchemaNotation xmlSchemaNotation;typedef xmlSchemaNotation *xmlSchemaNotationPtr;struct _xmlSchemaNotation { xmlSchemaTypeType type; /* The kind of type */ const xmlChar *name; xmlSchemaAnnotPtr annot; const xmlChar *identifier; const xmlChar *targetNamespace;};/** TODO: Actually all those flags used for the schema should sit* on the schema parser context, since they are used only* during parsing an XML schema document, and not available* on the component level as per spec.*//** * XML_SCHEMAS_QUALIF_ELEM: * * Reflects elementFormDefault == qualified in * an XML schema document. */#define XML_SCHEMAS_QUALIF_ELEM 1 << 0/** * XML_SCHEMAS_QUALIF_ATTR: * * Reflects attributeFormDefault == qualified in * an XML schema document. */#define XML_SCHEMAS_QUALIF_ATTR 1 << 1/** * XML_SCHEMAS_FINAL_DEFAULT_EXTENSION: * * the schema has "extension" in the set of finalDefault. */#define XML_SCHEMAS_FINAL_DEFAULT_EXTENSION 1 << 2/** * XML_SCHEMAS_FINAL_DEFAULT_RESTRICTION: * * the schema has "restriction" in the set of finalDefault. */#define XML_SCHEMAS_FINAL_DEFAULT_RESTRICTION 1 << 3/** * XML_SCHEMAS_FINAL_DEFAULT_LIST: * * the cshema has "list" in the set of finalDefault. */#define XML_SCHEMAS_FINAL_DEFAULT_LIST 1 << 4/** * XML_SCHEMAS_FINAL_DEFAULT_UNION: * * the schema has "union" in the set of finalDefault. */#define XML_SCHEMAS_FINAL_DEFAULT_UNION 1 << 5/** * XML_SCHEMAS_BLOCK_DEFAULT_EXTENSION: * * the schema has "extension" in the set of blockDefault. */#define XML_SCHEMAS_BLOCK_DEFAULT_EXTENSION 1 << 6/** * XML_SCHEMAS_BLOCK_DEFAULT_RESTRICTION: * * the schema has "restriction" in the set of blockDefault. */#define XML_SCHEMAS_BLOCK_DEFAULT_RESTRICTION 1 << 7/** * XML_SCHEMAS_BLOCK_DEFAULT_SUBSTITUTION: * * the schema has "substitution" in the set of blockDefault. */#define XML_SCHEMAS_BLOCK_DEFAULT_SUBSTITUTION 1 << 8/** * XML_SCHEMAS_INCLUDING_CONVERT_NS: * * the schema is currently including an other schema with * no target namespace. */#define XML_SCHEMAS_INCLUDING_CONVERT_NS 1 << 9/** * _xmlSchema: * * A Schemas definition */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 */};XMLPUBFUN void XMLCALL xmlSchemaFreeType (xmlSchemaTypePtr type);XMLPUBFUN void XMLCALL xmlSchemaFreeWildcard(xmlSchemaWildcardPtr wildcard);#ifdef __cplusplus}#endif#endif /* LIBXML_SCHEMAS_ENABLED */#endif /* __XML_SCHEMA_INTERNALS_H__ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -