wsdlpull 1.23
|
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