File indexing completed on 2025-02-22 10:41:52
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012 #ifndef __XML_SCHEMA_TYPES_H__
0013 #define __XML_SCHEMA_TYPES_H__
0014
0015 #include <libxml/xmlversion.h>
0016
0017 #ifdef LIBXML_SCHEMAS_ENABLED
0018
0019 #include <libxml/schemasInternals.h>
0020 #include <libxml/xmlschemas.h>
0021
0022 #ifdef __cplusplus
0023 extern "C" {
0024 #endif
0025
0026 typedef enum {
0027 XML_SCHEMA_WHITESPACE_UNKNOWN = 0,
0028 XML_SCHEMA_WHITESPACE_PRESERVE = 1,
0029 XML_SCHEMA_WHITESPACE_REPLACE = 2,
0030 XML_SCHEMA_WHITESPACE_COLLAPSE = 3
0031 } xmlSchemaWhitespaceValueType;
0032
0033 XMLPUBFUN int
0034 xmlSchemaInitTypes (void);
0035 XML_DEPRECATED
0036 XMLPUBFUN void
0037 xmlSchemaCleanupTypes (void);
0038 XMLPUBFUN xmlSchemaTypePtr
0039 xmlSchemaGetPredefinedType (const xmlChar *name,
0040 const xmlChar *ns);
0041 XMLPUBFUN int
0042 xmlSchemaValidatePredefinedType (xmlSchemaTypePtr type,
0043 const xmlChar *value,
0044 xmlSchemaValPtr *val);
0045 XMLPUBFUN int
0046 xmlSchemaValPredefTypeNode (xmlSchemaTypePtr type,
0047 const xmlChar *value,
0048 xmlSchemaValPtr *val,
0049 xmlNodePtr node);
0050 XMLPUBFUN int
0051 xmlSchemaValidateFacet (xmlSchemaTypePtr base,
0052 xmlSchemaFacetPtr facet,
0053 const xmlChar *value,
0054 xmlSchemaValPtr val);
0055 XMLPUBFUN int
0056 xmlSchemaValidateFacetWhtsp (xmlSchemaFacetPtr facet,
0057 xmlSchemaWhitespaceValueType fws,
0058 xmlSchemaValType valType,
0059 const xmlChar *value,
0060 xmlSchemaValPtr val,
0061 xmlSchemaWhitespaceValueType ws);
0062 XMLPUBFUN void
0063 xmlSchemaFreeValue (xmlSchemaValPtr val);
0064 XMLPUBFUN xmlSchemaFacetPtr
0065 xmlSchemaNewFacet (void);
0066 XMLPUBFUN int
0067 xmlSchemaCheckFacet (xmlSchemaFacetPtr facet,
0068 xmlSchemaTypePtr typeDecl,
0069 xmlSchemaParserCtxtPtr ctxt,
0070 const xmlChar *name);
0071 XMLPUBFUN void
0072 xmlSchemaFreeFacet (xmlSchemaFacetPtr facet);
0073 XMLPUBFUN int
0074 xmlSchemaCompareValues (xmlSchemaValPtr x,
0075 xmlSchemaValPtr y);
0076 XMLPUBFUN xmlSchemaTypePtr
0077 xmlSchemaGetBuiltInListSimpleTypeItemType (xmlSchemaTypePtr type);
0078 XMLPUBFUN int
0079 xmlSchemaValidateListSimpleTypeFacet (xmlSchemaFacetPtr facet,
0080 const xmlChar *value,
0081 unsigned long actualLen,
0082 unsigned long *expectedLen);
0083 XMLPUBFUN xmlSchemaTypePtr
0084 xmlSchemaGetBuiltInType (xmlSchemaValType type);
0085 XMLPUBFUN int
0086 xmlSchemaIsBuiltInTypeFacet (xmlSchemaTypePtr type,
0087 int facetType);
0088 XMLPUBFUN xmlChar *
0089 xmlSchemaCollapseString (const xmlChar *value);
0090 XMLPUBFUN xmlChar *
0091 xmlSchemaWhiteSpaceReplace (const xmlChar *value);
0092 XMLPUBFUN unsigned long
0093 xmlSchemaGetFacetValueAsULong (xmlSchemaFacetPtr facet);
0094 XMLPUBFUN int
0095 xmlSchemaValidateLengthFacet (xmlSchemaTypePtr type,
0096 xmlSchemaFacetPtr facet,
0097 const xmlChar *value,
0098 xmlSchemaValPtr val,
0099 unsigned long *length);
0100 XMLPUBFUN int
0101 xmlSchemaValidateLengthFacetWhtsp(xmlSchemaFacetPtr facet,
0102 xmlSchemaValType valType,
0103 const xmlChar *value,
0104 xmlSchemaValPtr val,
0105 unsigned long *length,
0106 xmlSchemaWhitespaceValueType ws);
0107 XMLPUBFUN int
0108 xmlSchemaValPredefTypeNodeNoNorm(xmlSchemaTypePtr type,
0109 const xmlChar *value,
0110 xmlSchemaValPtr *val,
0111 xmlNodePtr node);
0112 XMLPUBFUN int
0113 xmlSchemaGetCanonValue (xmlSchemaValPtr val,
0114 const xmlChar **retValue);
0115 XMLPUBFUN int
0116 xmlSchemaGetCanonValueWhtsp (xmlSchemaValPtr val,
0117 const xmlChar **retValue,
0118 xmlSchemaWhitespaceValueType ws);
0119 XMLPUBFUN int
0120 xmlSchemaValueAppend (xmlSchemaValPtr prev,
0121 xmlSchemaValPtr cur);
0122 XMLPUBFUN xmlSchemaValPtr
0123 xmlSchemaValueGetNext (xmlSchemaValPtr cur);
0124 XMLPUBFUN const xmlChar *
0125 xmlSchemaValueGetAsString (xmlSchemaValPtr val);
0126 XMLPUBFUN int
0127 xmlSchemaValueGetAsBoolean (xmlSchemaValPtr val);
0128 XMLPUBFUN xmlSchemaValPtr
0129 xmlSchemaNewStringValue (xmlSchemaValType type,
0130 const xmlChar *value);
0131 XMLPUBFUN xmlSchemaValPtr
0132 xmlSchemaNewNOTATIONValue (const xmlChar *name,
0133 const xmlChar *ns);
0134 XMLPUBFUN xmlSchemaValPtr
0135 xmlSchemaNewQNameValue (const xmlChar *namespaceName,
0136 const xmlChar *localName);
0137 XMLPUBFUN int
0138 xmlSchemaCompareValuesWhtsp (xmlSchemaValPtr x,
0139 xmlSchemaWhitespaceValueType xws,
0140 xmlSchemaValPtr y,
0141 xmlSchemaWhitespaceValueType yws);
0142 XMLPUBFUN xmlSchemaValPtr
0143 xmlSchemaCopyValue (xmlSchemaValPtr val);
0144 XMLPUBFUN xmlSchemaValType
0145 xmlSchemaGetValType (xmlSchemaValPtr val);
0146
0147 #ifdef __cplusplus
0148 }
0149 #endif
0150
0151 #endif
0152 #endif