1 // Copyright (c) 1994 James Clark
2 // See the file COPYING for copying permission.
3 
4 #ifndef Mode_INCLUDED
5 #define Mode_INCLUDED 1
6 
7 #ifdef SP_NAMESPACE
8 namespace SP_NAMESPACE {
9 #endif
10 
11 enum Mode {
12   grpMode,			// group
13   alitMode,			// attribute value literals starting with LIT
14   alitaMode,			// attribute value literals starting with LITA
15   aliteMode,			// attribute value literals inside entity
16   talitMode,			// tokenized attribute value literal
17   talitaMode,
18   taliteMode,
19   mdMode,			// markup declaration
20   mdMinusMode,			// markup declaration, also recognize minus
21   mdPeroMode,			// markup declaration, also recognize pero
22   sdMode,
23   comMode,			// comment
24   sdcomMode,			// comment in an SGML declaration
25   piMode,			// processing instruction
26   refMode,			// reference
27   imsMode,			// ignored marked section
28   cmsMode,			// cdata marked section
29   rcmsMode,			// rcdata marked section
30   // These modes are needed only for the prologue.
31   proMode,			// prologue
32   dsMode,			// declaration subset not in marked section
33 				// nor in entity
34   dsiMode,			// declaration subset in marked section or
35 				// in entity
36   plitMode,			// parameter literal starting with LIT
37   plitaMode,			// paramater literal starting with LITA
38   pliteMode,			// parameter literal inside entity
39   sdplitMode,			// parameter literal starting with LIT
40                                 // in an SGML declaration
41   sdplitaMode,			// parameter literal starting with LIT
42                                 // in an SGML declaration
43   grpsufMode,			// group suffix
44   mlitMode,			// minimum literal starting with LIT
45   mlitaMode,			// minimum literal starting with LITA
46   asMode,			// data/link/result attribute specification
47   slitMode,			// system id literal starting with LIT
48   slitaMode,			// system id literal starting with LITA
49   sdslitMode,			// system id literal starting with LIT
50                                 // in an SGML declaration
51   sdslitaMode,			// system id literal starting with LITA
52                                 // in an SGML declaration
53   // These modes are needed only for the instance.
54   cconMode,			// CDATA content
55   rcconMode,			// RCDATA content
56   cconnetMode,			// CDATA content, recognize NET
57   rcconnetMode,			// RCDATA content, recognize NET
58   rcconeMode,			// RCDATA content inside entity
59   tagMode,			// start- or end-tag
60   econMode,			// element content
61   mconMode,			// mixed content
62   econnetMode,			// element content, recognize NET
63   mconnetMode			// mixed content, recognize NET
64   };
65 
66 const int nModes = mconnetMode + 1;
67 
68 const int minShortrefMode = econMode;
69 
70 #ifdef SP_NAMESPACE
71 }
72 #endif
73 
74 #endif /* not Mode_INCLUDED */
75