attic/src/xsd/Enums.h
Go to the documentation of this file.
1 /* Copyright (C) 2008 National Institute For Space Research (INPE) - Brazil.
2 
3  This file is part of the TerraLib - a Framework for building GIS enabled applications.
4 
5  TerraLib is free software: you can redistribute it and/or modify
6  it under the terms of the GNU Lesser General Public License as published by
7  the Free Software Foundation, either version 3 of the License,
8  or (at your option) any later version.
9 
10  TerraLib is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  GNU Lesser General Public License for more details.
14 
15  You should have received a copy of the GNU Lesser General Public License
16  along with TerraLib. See COPYING. If not, write to
17  TerraLib Team at <terralib-team@terralib.org>.
18  */
19 
20 /*!
21  \file Enums.h
22 
23  \brief Several enumerations related to XSD.
24 */
25 
26 #ifndef __TERRALIB_XSD_INTERNAL_ENUMS_H
27 #define __TERRALIB_XSD_INTERNAL_ENUMS_H
28 
29 // TerraLib
30 #include "../common/Static.h"
31 
32 namespace te
33 {
34  namespace xsd
35  {
36  //class BlockDefault : public te::common::Static
37  //{
38  // enum
39  // {
40  // EXTENSION = 1,
41  // RESTRICTION = 2,
42  // SUBSTITUTION = 4,
43  // ALL = 7
44  // };
45 
46  //};
47 
48  /*!
49  \enum DerivationType
50 
51  \brief It specifies the list of possible derivation types.
52  */
54  {
55  UNKNOWN = 0,
56  EXTENSION = 1,
59  LIST = 8,
60  UNION = 16,
61  ALL = 32
62  };
63 
64  /*!
65  \enum AttributeUse
66 
67  \brief It specifies how the attribute is used.
68  */
70  {
71  REQUIRED, //!< It indicates that the attribute use is required.
72  OPTIONAL, //!< It indicates that the attribute use is optional. This is the default.
73  PROHIBITED //!< It indicates that the attribute cannot be used.
74  };
75 
76  /*!
77  \enum BuiltInType
78 
79  \brief It enumerates the available built-in types.
80  */
82  {
83  TODO //!< TODO
84  };
85 
86  /*!
87  \enum FacetType
88 
89  \brief It enumerates the available facet types.
90  */
91  enum FacetType
92  {
93  Enumeration, //!< Defines a list of acceptable values.
94  FractionDigits, //!< Specifies the maximum number of decimal places allowed.
95  Length, //!< Specifies the exact number of characters or list items allowed.
96  MaxExclusive, //!< Specifies the upper bounds for numeric values. (<)
97  MaxInclusive, //!< Specifies the upper bounds for numeric values. (<=)
98  MaxLength, //!< Specifies the maximum number of characters or list items allowed.
99  MinExclusive, //!< Specifies the lower bounds for numeric values. (>)
100  MinInclusive, //!< Specifies the lower bounds for numeric values. (>=)
101  MinLength, //!< Specifies the minimum number of characters or list items allowed.
102  Pattern, //!< Defines the exact sequence of characters that are acceptable
103  TotalDigits, //!< Specifies the maximum number of digits allowed.
104  WhiteSpace //!< Specifies how white space (line feeds, tabs, spaces and carriage returns) is handled.
105  };
106 
107  /*!
108  \enum Form
109 
110  \brief It specifies the form for the attribute.
111  */
112  enum Form
113  {
114  Qualified, //!< It indicates that the attribute attribute must be qualified with the namespace prefix and the no-colon-name (NCName) of the attribute.
115  Unqualified //!< It indicates that the attribute attribute is not required to be qualified with the namespace prefix and is matched against the (NCName) of the attribute.
116  };
117 
118  /*!
119  \enum ProcessContents
120 
121  \brief It enumerates the possible ways that the XML processor should handle validation against the elements specified by an any element.
122  */
124  {
125  STRICT, //!< The XML processor must obtain the schema for the required namespaces and validate the elements (this is default).
126  LAX, //!< Same as strict but; if the schema cannot be obtained, no errors will occur.
127  SKIP //!< The XML processor does not attempt to validate any elements from the specified namespaces.
128  };
129 
130  } // end namespace xsd
131 } // end namespace te
132 
133 #endif // __TERRALIB_XSD_INTERNAL_ENUMS_H
134 
Specifies the lower bounds for numeric values. (>=)
AttributeUse
It specifies how the attribute is used.
Specifies the maximum number of characters or list items allowed.
Defines the exact sequence of characters that are acceptable.
Specifies the exact number of characters or list items allowed.
It indicates that the attribute use is required.
The XML processor does not attempt to validate any elements from the specified namespaces.
It indicates that the attribute attribute must be qualified with the namespace prefix and the no-colo...
Specifies the upper bounds for numeric values. (<)
Form
It specifies the form for the attribute.
ProcessContents
It enumerates the possible ways that the XML processor should handle validation against the elements ...
URI C++ Library.
Definition: Attributes.h:37
Specifies the minimum number of characters or list items allowed.
It indicates that the attribute cannot be used.
It indicates that the attribute use is optional. This is the default.
Specifies the lower bounds for numeric values. (>)
DerivationType
It specifies the list of possible derivation types.
The XML processor must obtain the schema for the required namespaces and validate the elements (this ...
Specifies how white space (line feeds, tabs, spaces and carriage returns) is handled.
BuiltInType
It enumerates the available built-in types.
Specifies the maximum number of digits allowed.
Same as strict but; if the schema cannot be obtained, no errors will occur.
Specifies the upper bounds for numeric values. (<=)
It indicates that the attribute attribute is not required to be qualified with the namespace prefix a...
FacetType
It enumerates the available facet types.
Defines a list of acceptable values.
Specifies the maximum number of decimal places allowed.