Schema.h

Go to the documentation of this file.
00001 /* 
00002  * wsdlpull - A C++ parser  for WSDL  (Web services description language)
00003  * Copyright (C) 2005-2007 Vivek Krishna
00004  *
00005  * This library is free software; you can redistribute it and/or
00006  * modify it under the terms of the GNU Library General Public
00007  * License as published by the Free Software Foundation; either
00008  * version 2 of the License, or (at your option) any later version.
00009  *
00010  * This library is distributed in the hope that it will be useful,
00011  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00012  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00013  * Library General Public License for more details.
00014  *
00015  * You should have received a copy of the GNU Library General Public
00016  * License along with this library; if not, write to the Free
00017  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
00018  *
00019  */
00020 
00021 #ifndef SCHEMA_H
00022 
00023 #define SCHEMA_H
00024 // *********************************************************************
00025 // Include files:
00026 // *********************************************************************
00027 #include <string>
00028 
00029 namespace Schema {
00030   
00031   // enums ,compositors
00032   typedef enum { 
00033     Sequence, 
00034     Choice, 
00035     All 
00036   } Compositor;
00037 
00038   typedef enum {
00039     Restriction,
00040     Extension
00041   } Derivation;
00042   
00043   //Content Model
00044   typedef enum{
00045       None,
00046       Simple,
00047       Complex,
00048       Mixed
00049       } ContentModelType;
00050   
00051   typedef enum {
00052     NoConstraint,
00053     Key,
00054     Keyref,
00055     Unique
00056   } ConstraintType;
00057   
00058   //List of primitive types
00059   typedef enum
00060     {
00061       XSD_INVALID,
00062       XSD_SCHEMA,
00063       XSD_STRING,
00064       XSD_INTEGER,
00065       XSD_INT,
00066       XSD_BYTE,
00067       XSD_POSINT,
00068       XSD_UINT,
00069       XSD_LONG,
00070       XSD_ULONG,
00071       XSD_SHORT,
00072       XSD_USHORT,
00073       XSD_DECIMAL,
00074       XSD_FLOAT,
00075       XSD_DOUBLE,
00076       XSD_BOOLEAN,
00077       XSD_TIME,
00078       XSD_DATETIME,
00079       XSD_DATE,
00080       XSD_TOKEN,
00081       XSD_QNAME,
00082       XSD_NCNAME,
00083       XSD_NMTOKEN,
00084       XSD_NMTOKENS,
00085       XSD_BASE64BIN,
00086       XSD_HEXBIN,
00087       XSD_ANY,
00088       XSD_ANYTYPE,
00089       XSD_ANYURI
00090     }Type;
00091   
00092   const std::string SchemaUri = "http://www.w3.org/2001/XMLSchema";
00093   const std::string SchemaInstaceUri = "http://www.w3.org/2001/XMLSchema-instance";
00094 }
00095 #endif // SCHEMA_H
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated by  doxygen 1.6.2