xmlrole.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
#ifndef XmlRole_INCLUDED
00007 #define XmlRole_INCLUDED 1
00008
00009
#include "xmltok.h"
00010
00011
#ifdef __cplusplus
00012
extern "C" {
00013
#endif
00014
00015
enum {
00016
XML_ROLE_ERROR = -1,
00017
XML_ROLE_NONE = 0,
00018
XML_ROLE_XML_DECL,
00019
XML_ROLE_INSTANCE_START,
00020
XML_ROLE_DOCTYPE_NAME,
00021
XML_ROLE_DOCTYPE_SYSTEM_ID,
00022
XML_ROLE_DOCTYPE_PUBLIC_ID,
00023
XML_ROLE_DOCTYPE_INTERNAL_SUBSET,
00024
XML_ROLE_DOCTYPE_CLOSE,
00025
XML_ROLE_GENERAL_ENTITY_NAME,
00026
XML_ROLE_PARAM_ENTITY_NAME,
00027
XML_ROLE_ENTITY_VALUE,
00028
XML_ROLE_ENTITY_SYSTEM_ID,
00029
XML_ROLE_ENTITY_PUBLIC_ID,
00030
XML_ROLE_ENTITY_COMPLETE,
00031
XML_ROLE_ENTITY_NOTATION_NAME,
00032
XML_ROLE_NOTATION_NAME,
00033
XML_ROLE_NOTATION_SYSTEM_ID,
00034
XML_ROLE_NOTATION_NO_SYSTEM_ID,
00035
XML_ROLE_NOTATION_PUBLIC_ID,
00036
XML_ROLE_ATTRIBUTE_NAME,
00037
XML_ROLE_ATTRIBUTE_TYPE_CDATA,
00038
XML_ROLE_ATTRIBUTE_TYPE_ID,
00039
XML_ROLE_ATTRIBUTE_TYPE_IDREF,
00040
XML_ROLE_ATTRIBUTE_TYPE_IDREFS,
00041
XML_ROLE_ATTRIBUTE_TYPE_ENTITY,
00042
XML_ROLE_ATTRIBUTE_TYPE_ENTITIES,
00043
XML_ROLE_ATTRIBUTE_TYPE_NMTOKEN,
00044
XML_ROLE_ATTRIBUTE_TYPE_NMTOKENS,
00045
XML_ROLE_ATTRIBUTE_ENUM_VALUE,
00046
XML_ROLE_ATTRIBUTE_NOTATION_VALUE,
00047
XML_ROLE_ATTLIST_ELEMENT_NAME,
00048
XML_ROLE_IMPLIED_ATTRIBUTE_VALUE,
00049
XML_ROLE_REQUIRED_ATTRIBUTE_VALUE,
00050
XML_ROLE_DEFAULT_ATTRIBUTE_VALUE,
00051
XML_ROLE_FIXED_ATTRIBUTE_VALUE,
00052
XML_ROLE_ELEMENT_NAME,
00053
XML_ROLE_CONTENT_ANY,
00054
XML_ROLE_CONTENT_EMPTY,
00055
XML_ROLE_CONTENT_PCDATA,
00056
XML_ROLE_GROUP_OPEN,
00057
XML_ROLE_GROUP_CLOSE,
00058
XML_ROLE_GROUP_CLOSE_REP,
00059
XML_ROLE_GROUP_CLOSE_OPT,
00060
XML_ROLE_GROUP_CLOSE_PLUS,
00061
XML_ROLE_GROUP_CHOICE,
00062
XML_ROLE_GROUP_SEQUENCE,
00063
XML_ROLE_CONTENT_ELEMENT,
00064
XML_ROLE_CONTENT_ELEMENT_REP,
00065
XML_ROLE_CONTENT_ELEMENT_OPT,
00066
XML_ROLE_CONTENT_ELEMENT_PLUS,
00067
#ifdef XML_DTD
00068
XML_ROLE_TEXT_DECL,
00069 XML_ROLE_IGNORE_SECT,
00070 XML_ROLE_INNER_PARAM_ENTITY_REF,
00071
#endif
00072
XML_ROLE_PARAM_ENTITY_REF
00073 };
00074
00075 typedef struct prolog_state {
00076 int (*
handler)(
struct prolog_state *state,
00077
int tok,
00078
const char *ptr,
00079
const char *end,
00080
const ENCODING *enc);
00081 unsigned level;
00082
#ifdef XML_DTD
00083
unsigned includeLevel;
00084
int documentEntity;
00085
int inEntityValue;
00086
#endif
00087 }
PROLOG_STATE;
00088
00089
void XmlPrologStateInit(
PROLOG_STATE *);
00090
#ifdef XML_DTD
00091
void XmlPrologStateInitExternalEntity(
PROLOG_STATE *);
00092
#endif
00093
00094 #define XmlTokenRole(state, tok, ptr, end, enc) \
00095
(((state)->handler)(state, tok, ptr, end, enc))
00096
00097
#ifdef __cplusplus
00098
}
00099
#endif
00100
00101
#endif
Generated on Thu Apr 30 02:30:52 2009 for ACS C++ API by
1.3.8