source: trunk/third/jwgc/lib/libxode/include/xmlrole.h @ 22406

Revision 22406, 2.4 KB checked in by ghudson, 19 years ago (diff)
This commit was generated by cvs2svn to compensate for changes in r22405, which included commits to RCS files with non-trunk default branches.
  • Property svn:executable set to *
Line 
1/*
2Copyright (c) 1998, 1999 Thai Open Source Software Center Ltd
3See the file COPYING for copying permission.
4*/
5
6#ifndef XmlRole_INCLUDED
7#define XmlRole_INCLUDED 1
8
9#include "xmltok.h"
10
11#ifdef __cplusplus
12extern "C" {
13#endif
14
15enum {
16  XML_ROLE_ERROR = -1,
17  XML_ROLE_NONE = 0,
18  XML_ROLE_XML_DECL,
19  XML_ROLE_INSTANCE_START,
20  XML_ROLE_DOCTYPE_NAME,
21  XML_ROLE_DOCTYPE_SYSTEM_ID,
22  XML_ROLE_DOCTYPE_PUBLIC_ID,
23  XML_ROLE_DOCTYPE_INTERNAL_SUBSET,
24  XML_ROLE_DOCTYPE_CLOSE,
25  XML_ROLE_GENERAL_ENTITY_NAME,
26  XML_ROLE_PARAM_ENTITY_NAME,
27  XML_ROLE_ENTITY_VALUE,
28  XML_ROLE_ENTITY_SYSTEM_ID,
29  XML_ROLE_ENTITY_PUBLIC_ID,
30  XML_ROLE_ENTITY_COMPLETE,
31  XML_ROLE_ENTITY_NOTATION_NAME,
32  XML_ROLE_NOTATION_NAME,
33  XML_ROLE_NOTATION_SYSTEM_ID,
34  XML_ROLE_NOTATION_NO_SYSTEM_ID,
35  XML_ROLE_NOTATION_PUBLIC_ID,
36  XML_ROLE_ATTRIBUTE_NAME,
37  XML_ROLE_ATTRIBUTE_TYPE_CDATA,
38  XML_ROLE_ATTRIBUTE_TYPE_ID,
39  XML_ROLE_ATTRIBUTE_TYPE_IDREF,
40  XML_ROLE_ATTRIBUTE_TYPE_IDREFS,
41  XML_ROLE_ATTRIBUTE_TYPE_ENTITY,
42  XML_ROLE_ATTRIBUTE_TYPE_ENTITIES,
43  XML_ROLE_ATTRIBUTE_TYPE_NMTOKEN,
44  XML_ROLE_ATTRIBUTE_TYPE_NMTOKENS,
45  XML_ROLE_ATTRIBUTE_ENUM_VALUE,
46  XML_ROLE_ATTRIBUTE_NOTATION_VALUE,
47  XML_ROLE_ATTLIST_ELEMENT_NAME,
48  XML_ROLE_IMPLIED_ATTRIBUTE_VALUE,
49  XML_ROLE_REQUIRED_ATTRIBUTE_VALUE,
50  XML_ROLE_DEFAULT_ATTRIBUTE_VALUE,
51  XML_ROLE_FIXED_ATTRIBUTE_VALUE,
52  XML_ROLE_ELEMENT_NAME,
53  XML_ROLE_CONTENT_ANY,
54  XML_ROLE_CONTENT_EMPTY,
55  XML_ROLE_CONTENT_PCDATA,
56  XML_ROLE_GROUP_OPEN,
57  XML_ROLE_GROUP_CLOSE,
58  XML_ROLE_GROUP_CLOSE_REP,
59  XML_ROLE_GROUP_CLOSE_OPT,
60  XML_ROLE_GROUP_CLOSE_PLUS,
61  XML_ROLE_GROUP_CHOICE,
62  XML_ROLE_GROUP_SEQUENCE,
63  XML_ROLE_CONTENT_ELEMENT,
64  XML_ROLE_CONTENT_ELEMENT_REP,
65  XML_ROLE_CONTENT_ELEMENT_OPT,
66  XML_ROLE_CONTENT_ELEMENT_PLUS,
67#ifdef XML_DTD
68  XML_ROLE_TEXT_DECL,
69  XML_ROLE_IGNORE_SECT,
70  XML_ROLE_INNER_PARAM_ENTITY_REF,
71#endif /* XML_DTD */
72  XML_ROLE_PARAM_ENTITY_REF
73};
74
75typedef struct prolog_state {
76  int (*handler)(struct prolog_state *state,
77                 int tok,
78                 const char *ptr,
79                 const char *end,
80                 const ENCODING *enc);
81  unsigned level;
82#ifdef XML_DTD
83  unsigned includeLevel;
84  int documentEntity;
85#endif /* XML_DTD */
86} PROLOG_STATE;
87
88void XmlPrologStateInit(PROLOG_STATE *);
89#ifdef XML_DTD
90void XmlPrologStateInitExternalEntity(PROLOG_STATE *);
91#endif /* XML_DTD */
92
93#define XmlTokenRole(state, tok, ptr, end, enc) \
94 (((state)->handler)(state, tok, ptr, end, enc))
95
96#ifdef __cplusplus
97}
98#endif
99
100#endif /* not XmlRole_INCLUDED */
Note: See TracBrowser for help on using the repository browser.