Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members

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     Key,
00053     Keyref,
00054     Unique
00055   } Constraints;
00056   
00057   //List of primitive types
00058   typedef enum
00059     {
00060       INVALID , 
00061       SCHEMA,
00062       STRING , 
00063       INTEGER,
00064       INT,
00065       BYTE,
00066       POSINT,
00067       UINT,
00068       LONG,
00069       ULONG,
00070       SHORT,
00071       USHORT,
00072       DECIMAL,
00073       FLOAT,
00074       DOUBLE,
00075       BOOLEAN,
00076       TIME,
00077       DATETIME,
00078       DATE,
00079       TOKEN,
00080       QNAME,
00081       NCNAME,
00082       NMTOKEN,
00083       NMTOKENS,
00084       BASE64BIN,
00085       HEXBIN,
00086       ANY,
00087       ANYTYPE,
00088       ANYURI
00089     }Type;
00090   
00091   const std::string SchemaUri = "http://www.w3.org/2001/XMLSchema";
00092   const std::string SchemaInstaceUri = "http://www.w3.org/2001/XMLSchema-instance";
00093 };
00094 #endif // SCHEMA_H

Generated on Sun Oct 16 10:11:52 2005 for wsdlpull by  doxygen 1.3.9.1