SchemaSymbols.hpp
上传用户:huihehuasu
上传日期:2007-01-10
资源大小:6948k
文件大小:11k
源码类别:

xml/soap/webservice

开发平台:

C/C++

  1. /*
  2.  * The Apache Software License, Version 1.1
  3.  *
  4.  * Copyright (c) 2001 The Apache Software Foundation.  All rights
  5.  * reserved.
  6.  *
  7.  * Redistribution and use in source and binary forms, with or without
  8.  * modification, are permitted provided that the following conditions
  9.  * are met:
  10.  *
  11.  * 1. Redistributions of source code must retain the above copyright
  12.  *    notice, this list of conditions and the following disclaimer.
  13.  *
  14.  * 2. Redistributions in binary form must reproduce the above copyright
  15.  *    notice, this list of conditions and the following disclaimer in
  16.  *    the documentation and/or other materials provided with the
  17.  *    distribution.
  18.  *
  19.  * 3. The end-user documentation included with the redistribution,
  20.  *    if any, must include the following acknowledgment:
  21.  *       "This product includes software developed by the
  22.  *        Apache Software Foundation (http://www.apache.org/)."
  23.  *    Alternately, this acknowledgment may appear in the software itself,
  24.  *    if and wherever such third-party acknowledgments normally appear.
  25.  *
  26.  * 4. The names "Xerces" and "Apache Software Foundation" must
  27.  *    not be used to endorse or promote products derived from this
  28.  *    software without prior written permission. For written
  29.  *    permission, please contact apache@apache.org.
  30.  *
  31.  * 5. Products derived from this software may not be called "Apache",
  32.  *    nor may "Apache" appear in their name, without prior written
  33.  *    permission of the Apache Software Foundation.
  34.  *
  35.  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  36.  * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  37.  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  38.  * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
  39.  * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  40.  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  41.  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  42.  * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  43.  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  44.  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  45.  * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  46.  * SUCH DAMAGE.
  47.  * ====================================================================
  48.  *
  49.  * This software consists of voluntary contributions made by many
  50.  * individuals on behalf of the Apache Software Foundation, and was
  51.  * originally based on software copyright (c) 2001, International
  52.  * Business Machines, Inc., http://www.ibm.com .  For more information
  53.  * on the Apache Software Foundation, please see
  54.  * <http://www.apache.org/>.
  55.  */
  56. /*
  57.  * $Id: SchemaSymbols.hpp,v 1.14 2001/11/07 19:20:01 peiyongz Exp $
  58.  */
  59. #if !defined(SCHEMASYMBOLS_HPP)
  60. #define SCHEMASYMBOLS_HPP
  61. #include <util/XercesDefs.hpp>
  62. /*
  63.  * Collection of symbols used to parse a Schema Grammar
  64.  */
  65. class VALIDATORS_EXPORT SchemaSymbols
  66. {
  67. public :
  68.     // -----------------------------------------------------------------------
  69.     // Constant data
  70.     // -----------------------------------------------------------------------
  71.     static const XMLCh fgURI_XSI[];
  72.     static const XMLCh fgURI_SCHEMAFORSCHEMA[];
  73.     static const XMLCh fgXSI_SCHEMALOCACTION[];
  74.     static const XMLCh fgXSI_NONAMESPACESCHEMALOCACTION[];
  75.     static const XMLCh fgXSI_TYPE[];
  76.     static const XMLCh fgELT_ALL[];
  77.     static const XMLCh fgELT_ANNOTATION[];
  78.     static const XMLCh fgELT_ANY[];
  79.     static const XMLCh fgELT_WILDCARD[];
  80.     static const XMLCh fgELT_ANYATTRIBUTE[];
  81.     static const XMLCh fgELT_APPINFO[];
  82.     static const XMLCh fgELT_ATTRIBUTE[];
  83.     static const XMLCh fgELT_ATTRIBUTEGROUP[];
  84.     static const XMLCh fgELT_CHOICE[];
  85.     static const XMLCh fgELT_COMPLEXTYPE[];
  86.     static const XMLCh fgELT_CONTENT[];
  87.     static const XMLCh fgELT_DOCUMENTATION[];
  88.     static const XMLCh fgELT_DURATION[];
  89.     static const XMLCh fgELT_ELEMENT[];
  90.     static const XMLCh fgELT_ENCODING[];
  91.     static const XMLCh fgELT_ENUMERATION[];
  92.     static const XMLCh fgELT_FIELD[];
  93.     static const XMLCh fgELT_WHITESPACE[];
  94.     static const XMLCh fgELT_GROUP[];
  95.     static const XMLCh fgELT_IMPORT[];
  96.     static const XMLCh fgELT_INCLUDE[];
  97.     static const XMLCh fgELT_REDEFINE[];
  98.     static const XMLCh fgELT_KEY[];
  99.     static const XMLCh fgELT_KEYREF[];
  100.     static const XMLCh fgELT_LENGTH[];
  101.     static const XMLCh fgELT_MAXEXCLUSIVE[];
  102.     static const XMLCh fgELT_MAXINCLUSIVE[];
  103.     static const XMLCh fgELT_MAXLENGTH[];
  104.     static const XMLCh fgELT_MINEXCLUSIVE[];
  105.     static const XMLCh fgELT_MININCLUSIVE[];
  106.     static const XMLCh fgELT_MINLENGTH[];
  107.     static const XMLCh fgELT_NOTATION[];
  108.     static const XMLCh fgELT_PATTERN[];
  109.     static const XMLCh fgELT_PERIOD[];
  110.     static const XMLCh fgELT_TOTALDIGITS[];
  111.     static const XMLCh fgELT_FRACTIONDIGITS[];
  112.     static const XMLCh fgELT_SCHEMA[];
  113.     static const XMLCh fgELT_SELECTOR[];
  114.     static const XMLCh fgELT_SEQUENCE[];
  115.     static const XMLCh fgELT_SIMPLETYPE[];
  116.     static const XMLCh fgELT_UNION[];
  117.     static const XMLCh fgELT_LIST[];
  118.     static const XMLCh fgELT_UNIQUE[];
  119.     static const XMLCh fgELT_COMPLEXCONTENT[];
  120.     static const XMLCh fgELT_SIMPLECONTENT[];
  121.     static const XMLCh fgELT_RESTRICTION[];
  122.     static const XMLCh fgELT_EXTENSION[];
  123.     static const XMLCh fgATT_ABSTRACT[];
  124.     static const XMLCh fgATT_ATTRIBUTEFORMDEFAULT[];
  125.     static const XMLCh fgATT_BASE[];
  126.     static const XMLCh fgATT_ITEMTYPE[];
  127.     static const XMLCh fgATT_MEMBERTYPES[];
  128.     static const XMLCh fgATT_BLOCK[];
  129.     static const XMLCh fgATT_BLOCKDEFAULT[];
  130.     static const XMLCh fgATT_CONTENT[];
  131.     static const XMLCh fgATT_DEFAULT[];
  132.     static const XMLCh fgATT_DERIVEDBY[];
  133.     static const XMLCh fgATT_ELEMENTFORMDEFAULT[];
  134.     static const XMLCh fgATT_SUBSTITUTIONGROUP[];
  135.     static const XMLCh fgATT_FINAL[];
  136.     static const XMLCh fgATT_FINALDEFAULT[];
  137.     static const XMLCh fgATT_FIXED[];
  138.     static const XMLCh fgATT_FORM[];
  139.     static const XMLCh fgATT_ID[];
  140.     static const XMLCh fgATT_MAXOCCURS[];
  141.     static const XMLCh fgATT_MINOCCURS[];
  142.     static const XMLCh fgATT_NAME[];
  143.     static const XMLCh fgATT_NAMESPACE[];
  144.     static const XMLCh fgATT_NILL[];
  145.     static const XMLCh fgATT_NILLABLE[];
  146.     static const XMLCh fgATT_PROCESSCONTENTS[];
  147.     static const XMLCh fgATT_REF[];
  148.     static const XMLCh fgATT_REFER[];
  149.     static const XMLCh fgATT_SCHEMALOCATION[];
  150.     static const XMLCh fgATT_SOURCE[];
  151.     static const XMLCh fgATT_SYSTEM[];
  152.     static const XMLCh fgATT_PUBLIC[];
  153.     static const XMLCh fgATT_TARGETNAMESPACE[];
  154.     static const XMLCh fgATT_TYPE[];
  155.     static const XMLCh fgATT_USE[];
  156.     static const XMLCh fgATT_VALUE[];
  157.     static const XMLCh fgATT_MIXED[];
  158.     static const XMLCh fgATT_VERSION[];
  159.     static const XMLCh fgATT_XPATH[];
  160.     static const XMLCh fgATTVAL_TWOPOUNDANY[];
  161.     static const XMLCh fgATTVAL_TWOPOUNDLOCAL[];
  162.     static const XMLCh fgATTVAL_TWOPOUNDOTHER[];
  163.     static const XMLCh fgATTVAL_TWOPOUNDTRAGETNAMESPACE[];
  164.     static const XMLCh fgATTVAL_POUNDALL[];
  165.     static const XMLCh fgATTVAL_BASE64[];
  166.     static const XMLCh fgATTVAL_BOOLEAN[];
  167.     static const XMLCh fgATTVAL_DEFAULT[];
  168.     static const XMLCh fgATTVAL_ELEMENTONLY[];
  169.     static const XMLCh fgATTVAL_EMPTY[];
  170.     static const XMLCh fgATTVAL_EXTENSION[];
  171.     static const XMLCh fgATTVAL_FALSE[];
  172.     static const XMLCh fgATTVAL_FIXED[];
  173.     static const XMLCh fgATTVAL_HEX[];
  174.     static const XMLCh fgATTVAL_ID[];
  175.     static const XMLCh fgATTVAL_LAX[];
  176.     static const XMLCh fgATTVAL_MAXLENGTH[];
  177.     static const XMLCh fgATTVAL_MINLENGTH[];
  178.     static const XMLCh fgATTVAL_MIXED[];
  179.     static const XMLCh fgATTVAL_NCNAME[];
  180.     static const XMLCh fgATTVAL_OPTIONAL[];
  181.     static const XMLCh fgATTVAL_PROHIBITED[];
  182.     static const XMLCh fgATTVAL_QNAME[];
  183.     static const XMLCh fgATTVAL_QUALIFIED[];
  184.     static const XMLCh fgATTVAL_REQUIRED[];
  185.     static const XMLCh fgATTVAL_RESTRICTION[];
  186.     static const XMLCh fgATTVAL_SKIP[];
  187.     static const XMLCh fgATTVAL_STRICT[];
  188.     static const XMLCh fgATTVAL_STRING[];
  189.     static const XMLCh fgATTVAL_TEXTONLY[];
  190.     static const XMLCh fgATTVAL_TIMEDURATION[];
  191.     static const XMLCh fgATTVAL_TRUE[];
  192.     static const XMLCh fgATTVAL_UNQUALIFIED[];
  193.     static const XMLCh fgATTVAL_URI[];
  194.     static const XMLCh fgATTVAL_URIREFERENCE[];
  195.     static const XMLCh fgATTVAL_SUBSTITUTIONGROUP[];
  196.     static const XMLCh fgATTVAL_SUBSTITUTION[];
  197.     static const XMLCh fgATTVAL_ANYTYPE[];
  198.     static const XMLCh fgWS_PRESERVE[];
  199.     static const XMLCh fgWS_COLLAPSE[];
  200.     static const XMLCh fgWS_REPLACE[];
  201.     static const XMLCh fgDT_STRING[];
  202.     static const XMLCh fgDT_TOKEN[];
  203.     static const XMLCh fgDT_LANGUAGE[];
  204.     static const XMLCh fgDT_NAME[];
  205.     static const XMLCh fgDT_NCNAME[];
  206.     static const XMLCh fgDT_INTEGER[];
  207.     static const XMLCh fgDT_DECIMAL[];
  208.     static const XMLCh fgDT_BOOLEAN[];
  209.     static const XMLCh fgDT_NONPOSITIVEINTEGER[];
  210.     static const XMLCh fgDT_NEGATIVEINTEGER[];
  211.     static const XMLCh fgDT_LONG[];
  212.     static const XMLCh fgDT_INT[];
  213.     static const XMLCh fgDT_SHORT[];
  214.     static const XMLCh fgDT_BYTE[];
  215. static const XMLCh fgDT_NONNEGATIVEINTEGER[];
  216.     static const XMLCh fgDT_ULONG[];
  217.     static const XMLCh fgDT_UINT[];
  218. static const XMLCh fgDT_USHORT[];
  219. static const XMLCh fgDT_UBYTE[];
  220.     static const XMLCh fgDT_POSITIVEINTEGER[];
  221. //datetime   
  222.     static const XMLCh fgDT_DATETIME[];
  223.     static const XMLCh fgDT_DATE[];
  224. static const XMLCh fgDT_TIME[];
  225.     static const XMLCh fgDT_DURATION[];
  226.     static const XMLCh fgDT_DAY[];
  227.     static const XMLCh fgDT_MONTH[];
  228.     static const XMLCh fgDT_MONTHDAY[];
  229.     static const XMLCh fgDT_YEAR[];
  230.     static const XMLCh fgDT_YEARMONTH[];
  231.     static const XMLCh fgDT_BASE64BINARY[];
  232.     static const XMLCh fgDT_HEXBINARY[];
  233.     static const XMLCh fgDT_FLOAT[];
  234.     static const XMLCh fgDT_DOUBLE[];
  235.     static const XMLCh fgDT_URIREFERENCE[];
  236.     static const XMLCh fgDT_ANYURI[];
  237.     static const XMLCh fgDT_QNAME[];
  238.     static const XMLCh fgDT_NORMALIZEDSTRING[];
  239.     static const XMLCh fgDT_ANYSIMPLETYPE[];
  240.     static const XMLCh fgRegEx_XOption[];
  241.     static const XMLCh fgRedefIdentifier[];
  242.     static const int   fgINT_MIN_VALUE;
  243.     static const int   fgINT_MAX_VALUE;
  244.     enum {
  245.         EMPTY_SET = 0,
  246.         SUBSTITUTION = 1,
  247.         EXTENSION = 2,
  248.         RESTRICTION = 4,
  249.         LIST = 8,
  250.         UNION = 16,
  251.         ENUMERATION = 32
  252.     };
  253.     // group orders
  254.     enum {
  255.         CHOICE = 0,
  256.         SEQUENCE= 1,
  257.         ALL = 2
  258.     };
  259.     enum {
  260.         INFINITY = -2,
  261.         UNBOUNDED = -1,
  262.         NILLABLE = 1,
  263.         ABSTRACT = 2,
  264.         FIXED = 4
  265.     };
  266. };
  267. #endif
  268. /**
  269.   * End of file SchemaSymbols.hpp
  270.   */