http://xml.apache.org/http://www.apache.org/http://www.w3.org/

Home

Readme
Installation
Build

API Docs
Samples
Programming
Migration
FAQs

Releases
Feedback

PDF Document

Download
Dev Snapshots
CVS Repository
Mail Archive

API Docs for SAX and DOM
 

Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

XMLUni.hpp

Go to the documentation of this file.
00001 /*
00002  * The Apache Software License, Version 1.1
00003  * 
00004  * Copyright (c) 1999-2000 The Apache Software Foundation.  All rights
00005  * reserved.
00006  * 
00007  * Redistribution and use in source and binary forms, with or without
00008  * modification, are permitted provided that the following conditions
00009  * are met:
00010  * 
00011  * 1. Redistributions of source code must retain the above copyright
00012  *    notice, this list of conditions and the following disclaimer. 
00013  * 
00014  * 2. Redistributions in binary form must reproduce the above copyright
00015  *    notice, this list of conditions and the following disclaimer in
00016  *    the documentation and/or other materials provided with the
00017  *    distribution.
00018  * 
00019  * 3. The end-user documentation included with the redistribution,
00020  *    if any, must include the following acknowledgment:  
00021  *       "This product includes software developed by the
00022  *        Apache Software Foundation (http://www.apache.org/)."
00023  *    Alternately, this acknowledgment may appear in the software itself,
00024  *    if and wherever such third-party acknowledgments normally appear.
00025  * 
00026  * 4. The names "Xerces" and "Apache Software Foundation" must
00027  *    not be used to endorse or promote products derived from this
00028  *    software without prior written permission. For written 
00029  *    permission, please contact apache\@apache.org.
00030  * 
00031  * 5. Products derived from this software may not be called "Apache",
00032  *    nor may "Apache" appear in their name, without prior written
00033  *    permission of the Apache Software Foundation.
00034  * 
00035  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
00036  * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
00037  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
00038  * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
00039  * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
00040  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
00041  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
00042  * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
00043  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
00044  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
00045  * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
00046  * SUCH DAMAGE.
00047  * ====================================================================
00048  * 
00049  * This software consists of voluntary contributions made by many
00050  * individuals on behalf of the Apache Software Foundation, and was
00051  * originally based on software copyright (c) 1999, International
00052  * Business Machines, Inc., http://www.ibm.com .  For more information
00053  * on the Apache Software Foundation, please see
00054  * <http://www.apache.org/>.
00055  */
00056 
00057 /*
00058  * $Id: XMLUni.hpp,v 1.21 2000/06/15 20:17:32 aruna1 Exp $
00059  */
00060 
00061 
00062 // ---------------------------------------------------------------------------
00063 //  This file contains the grunt work constants for Unicode characters and
00064 //  common Unicode constant strings. These cannot be created normally because
00065 //  we have to compile on systems that cannot do the L"" style prefix. So
00066 //  they must be created as constant values for Unicode code points and the
00067 //  strings built up as arrays of those constants.
00068 // ---------------------------------------------------------------------------
00069 
00070 #if !defined(XMLUNI_HPP)
00071 #define XMLUNI_HPP
00072 
00073 #include <util/XercesDefs.hpp>
00074 
00075 // ---------------------------------------------------------------------------
00076 //  Constants for the Unicode characters of interest to us in an XML parser
00077 //  We don't put these inside the class because then they could not be const
00078 //  inline values, which would have significant performance ramifications.
00079 //
00080 //  We cannot use a namespace because of the requirement to support old
00081 //  compilers.
00082 // ---------------------------------------------------------------------------
00083 const XMLCh chNull                  = 0x00;
00084 const XMLCh chHTab                  = 0x09;
00085 const XMLCh chLF                    = 0x0A;
00086 const XMLCh chCR                    = 0x0D;
00087 const XMLCh chAmpersand             = 0x26;
00088 const XMLCh chAsterisk              = 0x2A;
00089 const XMLCh chAt                    = 0x40;
00090 const XMLCh chBackSlash             = 0x5C;
00091 const XMLCh chBang                  = 0x21;
00092 const XMLCh chCloseAngle            = 0x3E;
00093 const XMLCh chCloseCurly            = 0x7D;
00094 const XMLCh chCloseParen            = 0x29;
00095 const XMLCh chCloseSquare           = 0x5D;
00096 const XMLCh chColon                 = 0x3A;
00097 const XMLCh chComma                 = 0x2C;
00098 const XMLCh chDash                  = 0x2D;
00099 const XMLCh chDollarSign            = 0x24;
00100 const XMLCh chDoubleQuote           = 0x22;
00101 const XMLCh chEqual                 = 0x3D;
00102 const XMLCh chForwardSlash          = 0x2F;
00103 const XMLCh chGrave                 = 0x60;
00104 const XMLCh chOpenAngle             = 0x3C;
00105 const XMLCh chOpenCurly             = 0x7B;
00106 const XMLCh chOpenParen             = 0x28;
00107 const XMLCh chOpenSquare            = 0x5B;
00108 const XMLCh chPercent               = 0x25;
00109 const XMLCh chPeriod                = 0x2E;
00110 const XMLCh chPipe                  = 0x7C;
00111 const XMLCh chPlus                  = 0x2B;
00112 const XMLCh chPound                 = 0x23;
00113 const XMLCh chQuestion              = 0x3F;
00114 const XMLCh chSingleQuote           = 0x27;
00115 const XMLCh chSpace                 = 0x20;
00116 const XMLCh chSemiColon             = 0x3B;
00117 const XMLCh chTilde                 = 0x7E;
00118 const XMLCh chUnderscore            = 0x5F;
00119 
00120 const XMLCh chSwappedUnicodeMarker  = XMLCh(0xFFFE);
00121 const XMLCh chUnicodeMarker         = XMLCh(0xFEFF);
00122 
00123 const XMLCh chDigit_0               = 0x30;
00124 const XMLCh chDigit_1               = 0x31;
00125 const XMLCh chDigit_2               = 0x32;
00126 const XMLCh chDigit_3               = 0x33;
00127 const XMLCh chDigit_4               = 0x34;
00128 const XMLCh chDigit_5               = 0x35;
00129 const XMLCh chDigit_6               = 0x36;
00130 const XMLCh chDigit_7               = 0x37;
00131 const XMLCh chDigit_8               = 0x38;
00132 const XMLCh chDigit_9               = 0x39;
00133 
00134 const XMLCh chLatin_A               = 0x41;
00135 const XMLCh chLatin_B               = 0x42;
00136 const XMLCh chLatin_C               = 0x43;
00137 const XMLCh chLatin_D               = 0x44;
00138 const XMLCh chLatin_E               = 0x45;
00139 const XMLCh chLatin_F               = 0x46;
00140 const XMLCh chLatin_G               = 0x47;
00141 const XMLCh chLatin_H               = 0x48;
00142 const XMLCh chLatin_I               = 0x49;
00143 const XMLCh chLatin_J               = 0x4A;
00144 const XMLCh chLatin_K               = 0x4B;
00145 const XMLCh chLatin_L               = 0x4C;
00146 const XMLCh chLatin_M               = 0x4D;
00147 const XMLCh chLatin_N               = 0x4E;
00148 const XMLCh chLatin_O               = 0x4F;
00149 const XMLCh chLatin_P               = 0x50;
00150 const XMLCh chLatin_Q               = 0x51;
00151 const XMLCh chLatin_R               = 0x52;
00152 const XMLCh chLatin_S               = 0x53;
00153 const XMLCh chLatin_T               = 0x54;
00154 const XMLCh chLatin_U               = 0x55;
00155 const XMLCh chLatin_V               = 0x56;
00156 const XMLCh chLatin_W               = 0x57;
00157 const XMLCh chLatin_X               = 0x58;
00158 const XMLCh chLatin_Y               = 0x59;
00159 const XMLCh chLatin_Z               = 0x5A;
00160 
00161 const XMLCh chLatin_a               = 0x61;
00162 const XMLCh chLatin_b               = 0x62;
00163 const XMLCh chLatin_c               = 0x63;
00164 const XMLCh chLatin_d               = 0x64;
00165 const XMLCh chLatin_e               = 0x65;
00166 const XMLCh chLatin_f               = 0x66;
00167 const XMLCh chLatin_g               = 0x67;
00168 const XMLCh chLatin_h               = 0x68;
00169 const XMLCh chLatin_i               = 0x69;
00170 const XMLCh chLatin_j               = 0x6A;
00171 const XMLCh chLatin_k               = 0x6B;
00172 const XMLCh chLatin_l               = 0x6C;
00173 const XMLCh chLatin_m               = 0x6D;
00174 const XMLCh chLatin_n               = 0x6E;
00175 const XMLCh chLatin_o               = 0x6F;
00176 const XMLCh chLatin_p               = 0x70;
00177 const XMLCh chLatin_q               = 0x71;
00178 const XMLCh chLatin_r               = 0x72;
00179 const XMLCh chLatin_s               = 0x73;
00180 const XMLCh chLatin_t               = 0x74;
00181 const XMLCh chLatin_u               = 0x75;
00182 const XMLCh chLatin_v               = 0x76;
00183 const XMLCh chLatin_w               = 0x77;
00184 const XMLCh chLatin_x               = 0x78;
00185 const XMLCh chLatin_y               = 0x79;
00186 const XMLCh chLatin_z               = 0x7A;
00187 
00188 const XMLCh chYenSign               = 0xA5;
00189 const XMLCh chWonSign               = 0x20A9;
00190 
00191 
00192 class  XMLUni
00193 {
00194 public :
00195     // -----------------------------------------------------------------------
00196     //  These are constant strings that are common in XML data. Because
00197     //  of the limitation of the compilers we have to work with, these are
00198     //  done as arrays of XMLCh characters, not as constant strings.
00199     // -----------------------------------------------------------------------
00200     static const XMLCh fgAnyString[];
00201     static const XMLCh fgAttListString[];
00202     static const XMLCh fgCommentString[];
00203     static const XMLCh fgCDATAString[];
00204     static const XMLCh fgDefaultString[];
00205     static const XMLCh fgDocTypeString[];
00206     static const XMLCh fgEBCDICEncodingString[];
00207     static const XMLCh fgElemString[];
00208     static const XMLCh fgEmptyString[];
00209     static const XMLCh fgEncodingString[];
00210     static const XMLCh fgEntitString[];
00211     static const XMLCh fgEntityString[];
00212     static const XMLCh fgEntitiesString[];
00213     static const XMLCh fgEnumerationString[];
00214     static const XMLCh fgExceptDomain[];
00215     static const XMLCh fgFixedString[];
00216     static const XMLCh fgGlobalNSURIName[];
00217     static const XMLCh fgIBM037EncodingString[];
00218     static const XMLCh fgIBM037EncodingString2[];
00219     static const XMLCh fgIBM1140EncodingString[];
00220     static const XMLCh fgIESString[];
00221     static const XMLCh fgIDString[];
00222     static const XMLCh fgIDRefString[];
00223     static const XMLCh fgIDRefsString[];
00224     static const XMLCh fgImpliedString[];
00225     static const XMLCh fgIgnoreString[];
00226     static const XMLCh fgIncludeString[];
00227     static const XMLCh fgISO88591EncodingString[];
00228     static const XMLCh fgISO88591EncodingString2[];
00229     static const XMLCh fgISO88591EncodingString3[];
00230     static const XMLCh fgISO88591EncodingString4[];
00231     static const XMLCh fgISO88591EncodingString5[];
00232     static const XMLCh fgISO88591EncodingString6[];
00233     static const XMLCh fgISO88591EncodingString7[];
00234     static const XMLCh fgISO88591EncodingString8[];
00235     static const XMLCh fgLocalHostString[];
00236     static const XMLCh fgNoString[];
00237     static const XMLCh fgNotationString[];
00238     static const XMLCh fgNDATAString[];
00239     static const XMLCh fgNmTokenString[];
00240     static const XMLCh fgNmTokensString[];
00241     static const XMLCh fgPCDATAString[];
00242     static const XMLCh fgPIString[];
00243     static const XMLCh fgPubIDString[];
00244     static const XMLCh fgRefString[];
00245     static const XMLCh fgRequiredString[];
00246     static const XMLCh fgStandaloneString[];
00247     static const XMLCh fgSupportedVersion[];
00248     static const XMLCh fgSysIDString[];
00249     static const XMLCh fgUnknownURIName[];
00250     static const XMLCh fgUCS4EncodingString[];
00251     static const XMLCh fgUCS4EncodingString2[];
00252     static const XMLCh fgUCS4EncodingString3[];
00253     static const XMLCh fgUCS4BEncodingString[];
00254     static const XMLCh fgUCS4BEncodingString2[];
00255     static const XMLCh fgUCS4LEncodingString[];
00256     static const XMLCh fgUCS4LEncodingString2[];
00257     static const XMLCh fgUSASCIIEncodingString[];
00258     static const XMLCh fgUSASCIIEncodingString2[];
00259     static const XMLCh fgUSASCIIEncodingString3[];
00260     static const XMLCh fgUSASCIIEncodingString4[];
00261     static const XMLCh fgUTF8EncodingString[];
00262     static const XMLCh fgUTF8EncodingString2[];
00263     static const XMLCh fgUTF16EncodingString[];
00264     static const XMLCh fgUTF16EncodingString2[];
00265     static const XMLCh fgUTF16EncodingString3[];
00266     static const XMLCh fgUTF16EncodingString4[];
00267     static const XMLCh fgUTF16BEncodingString[];
00268     static const XMLCh fgUTF16BEncodingString2[];
00269     static const XMLCh fgUTF16LEncodingString[];
00270     static const XMLCh fgUTF16LEncodingString2[];
00271     static const XMLCh fgVersionString[];
00272     static const XMLCh fgValidityDomain[];
00273     static const XMLCh fgWin1252EncodingString[];
00274     static const XMLCh fgXMLChEncodingString[];
00275     static const XMLCh fgXMLDeclString[];
00276     static const XMLCh fgXMLString[];
00277     static const XMLCh fgXMLStringSpace[];
00278     static const XMLCh fgXMLStringSpaceU[];
00279     static const XMLCh fgXMLDeclStringSpace[];
00280     static const XMLCh fgXMLNSString[];
00281     static const XMLCh fgXMLNSColonString[];
00282     static const XMLCh fgXMLNSURIName[];
00283     static const XMLCh fgXMLErrDomain[];
00284     static const XMLCh fgXMLURIName[];
00285     static const XMLCh fgYesString[];
00286     static const XMLCh fgZeroLenString[];
00287 
00288 
00289 
00290     static const XMLCh fgArrayIndexOutOfBoundsException_Name[];
00291     static const XMLCh fgEmptyStackException_Name[];
00292     static const XMLCh fgIllegalArgumentException_Name[];
00293     static const XMLCh fgInvalidCastException_Name[];
00294     static const XMLCh fgIOException_Name[];
00295     static const XMLCh fgNoSuchElementException_Name[];
00296     static const XMLCh fgNullPointerException_Name[];
00297     static const XMLCh fgXMLPlatformUtilsException_Name[];
00298     static const XMLCh fgRuntimeException_Name[];
00299     static const XMLCh fgTranscodingException_Name[];
00300     static const XMLCh fgUnexpectedEOFException_Name[];
00301     static const XMLCh fgUnsupportedEncodingException_Name[];
00302     static const XMLCh fgUTFDataFormatException_Name[];
00303     static const XMLCh fgNetAccessorException_Name[];
00304     static const XMLCh fgMalformedURLException_Name[];
00305 
00306 };
00307 
00308 #endif


Copyright © 2000 The Apache Software Foundation. All Rights Reserved.