diff --git a/scripts/packageBinaries.pl b/scripts/packageBinaries.pl
index 2d8321886eb842d63eb88e9b0748ccbd553caaac..b5663bfdc151679079e4b93fdde981e88f439e73 100644
--- a/scripts/packageBinaries.pl
+++ b/scripts/packageBinaries.pl
@@ -72,7 +72,7 @@ $platform = <PLATFORM>;
 chomp($platform);
 close (PLATFORM);
 
-# 
+#
 
 #set platform variable if on windows 64bit
 my $return_code = system( "ls" );
@@ -129,7 +129,7 @@ if ($platform eq "win64bit" )
     psystem ("mkdir $targetdir\\lib");
     if ( $opt_m =~ m/icu/i ) {
         psystem ("mkdir $targetdir\\msg");
-    }    
+    }
     psystem ("mkdir $targetdir\\etc");
     psystem ("mkdir $targetdir\\include");
     psystem ("mkdir $targetdir\\include\\xercesc");
@@ -307,17 +307,17 @@ if ($platform eq "win64bit" )
     print ("\n \nCopying binary outputs ...\n");
     psystem("copy /y $BUILDDIR\\*.dll $targetdir\\bin");
     psystem("copy /y $BUILDDIR\\*.exe $targetdir\\bin");
-   
+
     if (($opt_t =~ m/icu/i || $opt_m =~ m/icu/i) && length($ICUROOT) > 0) {
 
         # Copy the ICU dlls and libs
-        psystem("copy /y $ICUROOT\\bin\\icuuc22.dll $targetdir\\bin");
-        psystem("copy /y $ICUROOT\\bin\\icuuc22d.dll $targetdir\\bin");
+        psystem("copy /y $ICUROOT\\bin\\icuuc24.dll $targetdir\\bin");
+        psystem("copy /y $ICUROOT\\bin\\icuuc24d.dll $targetdir\\bin");
 
-        # it seems icudt22*.DLL is generated (upper case dll)
+        # it seems icudt24*.DLL is generated (upper case dll)
         # but just case, try lower case .dll as well
-        psystem("copy /y $ICUROOT\\bin\\icudt22*.DLL $targetdir\\bin");
-        psystem("copy /y $ICUROOT\\bin\\icudt22*.dll $targetdir\\bin");
+        psystem("copy /y $ICUROOT\\bin\\icudt24*.DLL $targetdir\\bin");
+        psystem("copy /y $ICUROOT\\bin\\icudt24*.dll $targetdir\\bin");
 
         psystem("copy /y $ICUROOT\\lib\\icudata.lib $targetdir\\lib");
 
@@ -338,7 +338,7 @@ if ($platform eq "win64bit" )
         psystem("copy /y $DEBUGBUILDDIR\\xerces-c_*D.lib $targetdir\\lib");
         psystem("copy /y $DEBUGBUILDDIR\\xerces*D.dll $targetdir\\bin");
     }
-   
+
     # Populate the etc output directory like config.status and the map file
     print ("\n \nCopying misc output to etc ...\n");
     psystem("copy /y $XERCESCROOT\\Build\\Win64\\VC6\\Release\\obj\\*.map $targetdir\\etc");
@@ -466,7 +466,7 @@ if ($platform =~ m/Windows/  || $platform =~ m/CYGWIN/) {
     psystem ("mkdir $targetdir/lib");
     if ( $opt_m =~ m/icu/i ) {
         psystem ("mkdir $targetdir/msg");
-    }   
+    }
     psystem ("mkdir $targetdir/etc");
     psystem ("mkdir $targetdir/include");
     psystem ("mkdir $targetdir/include/xercesc");
@@ -706,13 +706,13 @@ if ($platform =~ m/Windows/  || $platform =~ m/CYGWIN/) {
 
     if (($opt_t =~ m/icu/i || $opt_m =~ m/icu/i) && length($ICUROOT) > 0) {    	
         # Copy the ICU dlls and libs
-        psystem("cp -fv $ICUROOT/bin/icuuc22.dll $targetdir/bin");
-        psystem("cp -fv $ICUROOT/bin/icuuc22d.dll $targetdir/bin");
+        psystem("cp -fv $ICUROOT/bin/icuuc24.dll $targetdir/bin");
+        psystem("cp -fv $ICUROOT/bin/icuuc24d.dll $targetdir/bin");
 
-        # it seems icudt22*.DLL is generated (upper case dll)
+        # it seems icudt24*.DLL is generated (upper case dll)
         # but just case, try lower case .dll as well
-        psystem("cp -fv $ICUROOT/bin/icudt22*.DLL $targetdir/bin");
-        psystem("cp -fv $ICUROOT/bin/icudt22*.dll $targetdir/bin");
+        psystem("cp -fv $ICUROOT/bin/icudt24*.DLL $targetdir/bin");
+        psystem("cp -fv $ICUROOT/bin/icudt24*.dll $targetdir/bin");
 
         psystem("cp -fv $ICUROOT/lib/icudata.lib $targetdir/lib");
 
@@ -878,7 +878,7 @@ if ( ($platform =~ m/AIX/i)   || ($platform =~ m/HP-UX/i) || ($platform =~ m/BeO
         if ($opt_x eq "") {$opt_x = "g++";}
         $icuCompileFlags = 'CC=gcc CXX=g++ CXXFLAGS="-w -O" CFLAGS="-w -O"';
         psystem ("echo LIBRARY_PATH=$ENV{'LIBRARY_PATH'}");
-    }    
+    }
     if ($platform =~ m/Linux/i) {
         $platform = "linux";
         if ($opt_c eq "") {$opt_c = "gcc";}
@@ -1100,43 +1100,43 @@ if ( ($platform =~ m/AIX/i)   || ($platform =~ m/HP-UX/i) || ($platform =~ m/BeO
         #
         # copy icudata dll
         # For ICU 2.2:
-        # on AIX, it is called libicudata22.0.so
-        # on Solaris/Linux, it is called libicudata.so.22.0
-        # on HP, it is called libicudata.s1.22.0
+        # on AIX, it is called libicudata24.0.so
+        # on Solaris/Linux, it is called libicudata.so.24.0
+        # on HP, it is called libicudata.s1.24.0
         #
         psystem("rm -f libicudata*");
-        psystem("cp -f $ICUROOT/lib/libicudata22.0.so .");
-        psystem("cp -f $ICUROOT/lib/libicudata.so.22.0 .");
-        psystem("cp -f $ICUROOT/lib/libicudata.sl.22.0 .");
+        psystem("cp -f $ICUROOT/lib/libicudata24.0.so .");
+        psystem("cp -f $ICUROOT/lib/libicudata.so.24.0 .");
+        psystem("cp -f $ICUROOT/lib/libicudata.sl.24.0 .");
 
-        psystem("find . -name 'libicudata22.0.so' -exec ln -s {} libicudata.so \\;");
-        psystem("find . -name 'libicudata22.0.so' -exec ln -s {} libicudata22.so \\;");
+        psystem("find . -name 'libicudata24.0.so' -exec ln -s {} libicudata.so \\;");
+        psystem("find . -name 'libicudata24.0.so' -exec ln -s {} libicudata24.so \\;");
 
-        psystem("find . -name 'libicudata.so.22.0' -exec ln -s {} libicudata.so \\;");
-        psystem("find . -name 'libicudata.so.22.0' -exec ln -s {} libicudata.so.22 \\;");
+        psystem("find . -name 'libicudata.so.24.0' -exec ln -s {} libicudata.so \\;");
+        psystem("find . -name 'libicudata.so.24.0' -exec ln -s {} libicudata.so.24 \\;");
 
-        psystem("find . -name 'libicudata.sl.22.0' -exec ln -s {} libicudata.sl \\;");
-        psystem("find . -name 'libicudata.sl.22.0' -exec ln -s {} libicudata.sl.22 \\;");
+        psystem("find . -name 'libicudata.sl.24.0' -exec ln -s {} libicudata.sl \\;");
+        psystem("find . -name 'libicudata.sl.24.0' -exec ln -s {} libicudata.sl.24 \\;");
 
         #
         # copy icuuc dll
-        # on AIX, it is called libicuuc22.0.so
-        # on Solaris/Linux, it is called libicuuc.so.22.0
-        # on HP, it is called libicuuc.sl.22.0
+        # on AIX, it is called libicuuc24.0.so
+        # on Solaris/Linux, it is called libicuuc.so.24.0
+        # on HP, it is called libicuuc.sl.24.0
         #
         psystem("rm -f libicuuc*");
-        psystem("cp -f $ICUROOT/lib/libicuuc22.0.so .");
-        psystem("cp -f $ICUROOT/lib/libicuuc.so.22.0  .");
-        psystem("cp -f $ICUROOT/lib/libicuuc.sl.22.0  .");
+        psystem("cp -f $ICUROOT/lib/libicuuc24.0.so .");
+        psystem("cp -f $ICUROOT/lib/libicuuc.so.24.0  .");
+        psystem("cp -f $ICUROOT/lib/libicuuc.sl.24.0  .");
 
-        psystem("find . -name 'libicuuc22.0.so' -exec ln -s {} libicuuc.so \\;");
-        psystem("find . -name 'libicuuc22.0.so' -exec ln -s {} libicuuc22.so \\;");
+        psystem("find . -name 'libicuuc24.0.so' -exec ln -s {} libicuuc.so \\;");
+        psystem("find . -name 'libicuuc24.0.so' -exec ln -s {} libicuuc24.so \\;");
 
-        psystem("find . -name 'libicuuc.so.22.0' -exec ln -s {} libicuuc.so \\;");
-        psystem("find . -name 'libicuuc.so.22.0' -exec ln -s {} libicuuc.so.22 \\;");
+        psystem("find . -name 'libicuuc.so.24.0' -exec ln -s {} libicuuc.so \\;");
+        psystem("find . -name 'libicuuc.so.24.0' -exec ln -s {} libicuuc.so.24 \\;");
 
-        psystem("find . -name 'libicuuc.sl.22.0' -exec ln -s {} libicuuc.sl \\;");
-        psystem("find . -name 'libicuuc.sl.22.0' -exec ln -s {} libicuuc.sl.22 \\;");
+        psystem("find . -name 'libicuuc.sl.24.0' -exec ln -s {} libicuuc.sl \\;");
+        psystem("find . -name 'libicuuc.sl.24.0' -exec ln -s {} libicuuc.sl.24 \\;");
     }
 
     # Now build the samples
@@ -1250,9 +1250,9 @@ if ( ($platform =~ m/AIX/i)   || ($platform =~ m/HP-UX/i) || ($platform =~ m/BeO
         print ("\n\nCopying Message Catalog Files ...\n");
         pchdir ("$targetdir/msg");
         psystem("rm -f XercesMessages* ");    	
-        psystem("cp -f $XERCESCROOT/msg/XercesMessages*.cat .");        
-    }    
-           
+        psystem("cp -f $XERCESCROOT/msg/XercesMessages*.cat .");
+    }
+
     #
     # Create symbolic link for those ICU libraries
     #
@@ -1261,43 +1261,43 @@ if ( ($platform =~ m/AIX/i)   || ($platform =~ m/HP-UX/i) || ($platform =~ m/BeO
 
         #
         # copy icudata dll
-        # on AIX, it is called libicudata22.0.so
-        # on Solaris/Linux, it is called libicudata.so.22.0
-        # on HP, it is called libicudata.s1.22.0
+        # on AIX, it is called libicudata24.0.so
+        # on Solaris/Linux, it is called libicudata.so.24.0
+        # on HP, it is called libicudata.s1.24.0
         #
         psystem("rm -f libicudata*");
-        psystem("cp -f $XERCESCROOT/lib/libicudata22.0.so .");
-        psystem("cp -f $XERCESCROOT/lib/libicudata.so.22.0 .");
-        psystem("cp -f $XERCESCROOT/lib/libicudata.sl.22.0 .");
+        psystem("cp -f $XERCESCROOT/lib/libicudata24.0.so .");
+        psystem("cp -f $XERCESCROOT/lib/libicudata.so.24.0 .");
+        psystem("cp -f $XERCESCROOT/lib/libicudata.sl.24.0 .");
 
-        psystem("find . -name 'libicudata22.0.so' -exec ln -s {} libicudata.so \\;");
-        psystem("find . -name 'libicudata22.0.so' -exec ln -s {} libicudata22.so \\;");
+        psystem("find . -name 'libicudata24.0.so' -exec ln -s {} libicudata.so \\;");
+        psystem("find . -name 'libicudata24.0.so' -exec ln -s {} libicudata24.so \\;");
 
-        psystem("find . -name 'libicudata.so.22.0' -exec ln -s {} libicudata.so \\;");
-        psystem("find . -name 'libicudata.so.22.0' -exec ln -s {} libicudata.so.22 \\;");
+        psystem("find . -name 'libicudata.so.24.0' -exec ln -s {} libicudata.so \\;");
+        psystem("find . -name 'libicudata.so.24.0' -exec ln -s {} libicudata.so.24 \\;");
 
-        psystem("find . -name 'libicudata.sl.22.0' -exec ln -s {} libicudata.sl \\;");
-        psystem("find . -name 'libicudata.sl.22.0' -exec ln -s {} libicudata.sl.22 \\;");
+        psystem("find . -name 'libicudata.sl.24.0' -exec ln -s {} libicudata.sl \\;");
+        psystem("find . -name 'libicudata.sl.24.0' -exec ln -s {} libicudata.sl.24 \\;");
 
         #
         # copy icuuc dll
-        # on AIX, it is called libicuuc22.0.so
-        # on Solaris/Linux, it is called libicuuc.so.22.0
-        # on HP, it is called libicuuc.sl.22.0
+        # on AIX, it is called libicuuc24.0.so
+        # on Solaris/Linux, it is called libicuuc.so.24.0
+        # on HP, it is called libicuuc.sl.24.0
         #
         psystem("rm -f libicuuc*");
-        psystem("cp -f $XERCESCROOT/lib/libicuuc22.0.so .");
-        psystem("cp -f $XERCESCROOT/lib/libicuuc.so.22.0  .");
-        psystem("cp -f $XERCESCROOT/lib/libicuuc.sl.22.0  .");
+        psystem("cp -f $XERCESCROOT/lib/libicuuc24.0.so .");
+        psystem("cp -f $XERCESCROOT/lib/libicuuc.so.24.0  .");
+        psystem("cp -f $XERCESCROOT/lib/libicuuc.sl.24.0  .");
 
-        psystem("find . -name 'libicuuc22.0.so' -exec ln -s {} libicuuc.so \\;");
-        psystem("find . -name 'libicuuc22.0.so' -exec ln -s {} libicuuc22.so \\;");
+        psystem("find . -name 'libicuuc24.0.so' -exec ln -s {} libicuuc.so \\;");
+        psystem("find . -name 'libicuuc24.0.so' -exec ln -s {} libicuuc24.so \\;");
 
-        psystem("find . -name 'libicuuc.so.22.0' -exec ln -s {} libicuuc.so \\;");
-        psystem("find . -name 'libicuuc.so.22.0' -exec ln -s {} libicuuc.so.22 \\;");
+        psystem("find . -name 'libicuuc.so.24.0' -exec ln -s {} libicuuc.so \\;");
+        psystem("find . -name 'libicuuc.so.24.0' -exec ln -s {} libicuuc.so.24 \\;");
 
-        psystem("find . -name 'libicuuc.sl.22.0' -exec ln -s {} libicuuc.sl \\;");
-        psystem("find . -name 'libicuuc.sl.22.0' -exec ln -s {} libicuuc.sl.22 \\;");
+        psystem("find . -name 'libicuuc.sl.24.0' -exec ln -s {} libicuuc.sl \\;");
+        psystem("find . -name 'libicuuc.sl.24.0' -exec ln -s {} libicuuc.sl.24 \\;");
 
         # Copy the Resouce Bundle for ICUMsgLoader
         if ( $opt_m =~ m/icu/i) {
diff --git a/src/xercesc/NLS/EN_US/XMLErrList_EN_US.Xml b/src/xercesc/NLS/EN_US/XMLErrList_EN_US.Xml
index 74fadffdf49dd502c510b7e51e865488659cca52..804d7c5c1de5cb6414ade3e405e956650969ecf9 100644
--- a/src/xercesc/NLS/EN_US/XMLErrList_EN_US.Xml
+++ b/src/xercesc/NLS/EN_US/XMLErrList_EN_US.Xml
@@ -559,7 +559,7 @@
             <Message Id="Parser_Ope3" Text="The range end code point '{0}' is less than the start code point '{1}'"/>
             <Message Id="Parser_Descape1" Text="Invalid Unicode hex notation"/>
             <Message Id="Parser_Descape2" Text="Overflow in a hex notation"/>
-            <Message Id="Parser_Descape3" Text="'\\x{' must be closed by '}'"/>
+            <Message Id="Parser_Descape3" Text="'\ x{' must be closed by '}'"/>
             <Message Id="Parser_Descape4" Text="Invalid Unicode code point"/>
             <Message Id="Parser_Descape5" Text="An anchor must not be here"/>
             <Message Id="Parser_Process1" Text="This expression is not supported in the current option setting"/>
diff --git a/src/xercesc/util/MsgLoaders/ICU/resources/en_US.txt b/src/xercesc/util/MsgLoaders/ICU/resources/en_US.txt
index 40b14b9524d89d3f09164e45c16bb9d9d90282b2..ee515c43ded646cfd0756b2f077ee949a3ba5c78 100644
--- a/src/xercesc/util/MsgLoaders/ICU/resources/en_US.txt
+++ b/src/xercesc/util/MsgLoaders/ICU/resources/en_US.txt
@@ -560,7 +560,7 @@ en_US {
 		"The range end code point '{0}' is less than the start code point '{1}' " ,
 		"Invalid Unicode hex notation " ,
 		"Overflow in a hex notation " ,
-		"'\\x{' must be closed by '}' " ,
+		"'\ x{' must be closed by '}' " ,
 		"Invalid Unicode code point " ,
 		"An anchor must not be here " ,
 		"This expression is not supported in the current option setting " ,
diff --git a/src/xercesc/util/MsgLoaders/InMemory/XercesMessages_en_US.hpp b/src/xercesc/util/MsgLoaders/InMemory/XercesMessages_en_US.hpp
index 3598d5d538fe4eb0b3417a76923f083221df24db..24048d2c8f75c09b3ae6b1e81027a791b63b7bef 100644
--- a/src/xercesc/util/MsgLoaders/InMemory/XercesMessages_en_US.hpp
+++ b/src/xercesc/util/MsgLoaders/InMemory/XercesMessages_en_US.hpp
@@ -1114,7 +1114,7 @@ const XMLCh gXMLExceptArray[][128] =
       0x00 }
   , { 0x0049,0x006E,0x0076,0x0061,0x006C,0x0069,0x0064,0x0020,0x0055,0x006E,0x0069,0x0063,0x006F,0x0064,0x0065,0x0020,0x0068,0x0065,0x0078,0x0020,0x006E,0x006F,0x0074,0x0061,0x0074,0x0069,0x006F,0x006E,0x00 }
   , { 0x004F,0x0076,0x0065,0x0072,0x0066,0x006C,0x006F,0x0077,0x0020,0x0069,0x006E,0x0020,0x0061,0x0020,0x0068,0x0065,0x0078,0x0020,0x006E,0x006F,0x0074,0x0061,0x0074,0x0069,0x006F,0x006E,0x00 }
-  , { 0x0027,0x005C,0x005C,0x0078,0x007B,0x0027,0x0020,0x006D,0x0075,0x0073,0x0074,0x0020,0x0062,0x0065,0x0020,0x0063,0x006C,0x006F,0x0073,0x0065,0x0064,0x0020,0x0062,0x0079,0x0020,0x0027,0x007D,0x0027,0x00 }
+  , { 0x0027,0x005C,0x0020,0x0078,0x007B,0x0027,0x0020,0x006D,0x0075,0x0073,0x0074,0x0020,0x0062,0x0065,0x0020,0x0063,0x006C,0x006F,0x0073,0x0065,0x0064,0x0020,0x0062,0x0079,0x0020,0x0027,0x007D,0x0027,0x00 }
   , { 0x0049,0x006E,0x0076,0x0061,0x006C,0x0069,0x0064,0x0020,0x0055,0x006E,0x0069,0x0063,0x006F,0x0064,0x0065,0x0020,0x0063,0x006F,0x0064,0x0065,0x0020,0x0070,0x006F,0x0069,0x006E,0x0074,0x00 }
   , { 0x0041,0x006E,0x0020,0x0061,0x006E,0x0063,0x0068,0x006F,0x0072,0x0020,0x006D,0x0075,0x0073,0x0074,0x0020,0x006E,0x006F,0x0074,0x0020,0x0062,0x0065,0x0020,0x0068,0x0065,0x0072,0x0065,0x00 }
   , { 0x0054,0x0068,0x0069,0x0073,0x0020,0x0065,0x0078,0x0070,0x0072,0x0065,0x0073,0x0073,0x0069,0x006F,0x006E,0x0020,0x0069,0x0073,0x0020,0x006E,0x006F,0x0074,0x0020,0x0073,0x0075,0x0070,0x0070,0x006F,0x0072,0x0074,0x0065,0x0064,0x0020,0x0069,0x006E,
diff --git a/src/xercesc/util/MsgLoaders/MsgCatalog/XercesMessages_en_US.Msg b/src/xercesc/util/MsgLoaders/MsgCatalog/XercesMessages_en_US.Msg
index 77b4f5183158f7f60f93480226e72bfee45dd263..4542cd3f96221425acd96386aa1220c250898570 100644
--- a/src/xercesc/util/MsgLoaders/MsgCatalog/XercesMessages_en_US.Msg
+++ b/src/xercesc/util/MsgLoaders/MsgCatalog/XercesMessages_en_US.Msg
@@ -543,7 +543,7 @@ $set 3
 138  The range end code point '{0}' is less than the start code point '{1}'
 139  Invalid Unicode hex notation
 140  Overflow in a hex notation
-141  '\\x{' must be closed by '}'
+141  '\ x{' must be closed by '}'
 142  Invalid Unicode code point
 143  An anchor must not be here
 144  This expression is not supported in the current option setting
diff --git a/src/xercesc/util/Platforms/Win32/Version.rc b/src/xercesc/util/Platforms/Win32/Version.rc
index de28a301978be1c79b4809eed9fd266bd7d9c614..9b5253d0aea3640ab5663a21f98ca3206e4d1b86 100644
--- a/src/xercesc/util/Platforms/Win32/Version.rc
+++ b/src/xercesc/util/Platforms/Win32/Version.rc
@@ -95,6 +95,7 @@ END
 #endif    // APSTUDIO_INVOKED
 
 
+
 // ----------------------------------------------------------------
 //  This file was generated from the XML error message source.
 //  so do not edit this file directly!!
@@ -645,7 +646,7 @@ BEGIN
     8330              L"\x0054\x0068\x0065\x0020\x0072\x0061\x006E\x0067\x0065\x0020\x0065\x006E\x0064\x0020\x0063\x006F\x0064\x0065\x0020\x0070\x006F\x0069\x006E\x0074\x0020\x0027\x007B\x0030\x007D\x0027\x0020\x0069\x0073\x0020\x006C\x0065\x0073\x0073\x0020\x0074\x0068\x0061\x006E\x0020\x0074\x0068\x0065\x0020\x0073\x0074\x0061\x0072\x0074\x0020\x0063\x006F\x0064\x0065\x0020\x0070\x006F\x0069\x006E\x0074\x0020\x0027\x007B\x0031\x007D\x0027\x00"
     8331              L"\x0049\x006E\x0076\x0061\x006C\x0069\x0064\x0020\x0055\x006E\x0069\x0063\x006F\x0064\x0065\x0020\x0068\x0065\x0078\x0020\x006E\x006F\x0074\x0061\x0074\x0069\x006F\x006E\x00"
     8332              L"\x004F\x0076\x0065\x0072\x0066\x006C\x006F\x0077\x0020\x0069\x006E\x0020\x0061\x0020\x0068\x0065\x0078\x0020\x006E\x006F\x0074\x0061\x0074\x0069\x006F\x006E\x00"
-    8333              L"\x0027\x005C\x005C\x0078\x007B\x0027\x0020\x006D\x0075\x0073\x0074\x0020\x0062\x0065\x0020\x0063\x006C\x006F\x0073\x0065\x0064\x0020\x0062\x0079\x0020\x0027\x007D\x0027\x00"
+    8333              L"\x0027\x005C\x0020\x0078\x007B\x0027\x0020\x006D\x0075\x0073\x0074\x0020\x0062\x0065\x0020\x0063\x006C\x006F\x0073\x0065\x0064\x0020\x0062\x0079\x0020\x0027\x007D\x0027\x00"
     8334              L"\x0049\x006E\x0076\x0061\x006C\x0069\x0064\x0020\x0055\x006E\x0069\x0063\x006F\x0064\x0065\x0020\x0063\x006F\x0064\x0065\x0020\x0070\x006F\x0069\x006E\x0074\x00"
     8335              L"\x0041\x006E\x0020\x0061\x006E\x0063\x0068\x006F\x0072\x0020\x006D\x0075\x0073\x0074\x0020\x006E\x006F\x0074\x0020\x0062\x0065\x0020\x0068\x0065\x0072\x0065\x00"
     8336              L"\x0054\x0068\x0069\x0073\x0020\x0065\x0078\x0070\x0072\x0065\x0073\x0073\x0069\x006F\x006E\x0020\x0069\x0073\x0020\x006E\x006F\x0074\x0020\x0073\x0075\x0070\x0070\x006F\x0072\x0074\x0065\x0064\x0020\x0069\x006E\x0020\x0074\x0068\x0065\x0020\x0063\x0075\x0072\x0072\x0065\x006E\x0074\x0020\x006F\x0070\x0074\x0069\x006F\x006E\x0020\x0073\x0065\x0074\x0074\x0069\x006E\x0067\x00"
diff --git a/src/xercesc/util/Transcoders/ICU/ICUTransService.cpp b/src/xercesc/util/Transcoders/ICU/ICUTransService.cpp
index a52483ddeb3fbaac4645e1ab949f7935493961a4..c7b380e8fa3bbb743c73d36308ced0528912b207 100644
--- a/src/xercesc/util/Transcoders/ICU/ICUTransService.cpp
+++ b/src/xercesc/util/Transcoders/ICU/ICUTransService.cpp
@@ -69,7 +69,7 @@
 #include "ICUTransService.hpp"
 #include <string.h>
 #include <unicode/uloc.h>
-#include <unicode/unicode.h>
+#include <unicode/uchar.h>
 #include <unicode/ucnv.h>
 #include <unicode/ucnv_err.h>
 #include <unicode/ustring.h>
@@ -201,7 +201,7 @@ int ICUTransService::compareIString(const   XMLCh* const    comp1
         //  larger than 0xFFFF, so our cast here will work for both possible
         //  sizes of XMLCh.
         //
-        if (Unicode::toUpperCase(UChar(*psz1)) != Unicode::toUpperCase(UChar(*psz2)))
+        if (u_toupper(UChar(*psz1)) != u_toupper(UChar(*psz2)))
             return int(*psz1) - int(*psz2);
 
         // If either has ended, then they both ended, so equal
@@ -232,7 +232,7 @@ int ICUTransService::compareNIString(const  XMLCh* const    comp1
         //  larger than 0xFFFF, so our cast here will work for both possible
         //  sizes of XMLCh.
         //
-        if (Unicode::toUpperCase(UChar(*psz1)) != Unicode::toUpperCase(UChar(*psz2)))
+        if (u_toupper(UChar(*psz1)) != u_toupper(UChar(*psz2)))
             return int(*psz1) - int(*psz2);
 
         // If either ended, then both ended, so equal
@@ -276,7 +276,7 @@ bool ICUTransService::isSpace(const XMLCh toCheck) const
     {
         return true;
     }
-    return (Unicode::isSpaceChar(UChar(toCheck)) != 0);
+    return (u_isspace(UChar(toCheck)) != 0);
 }
 
 
@@ -309,7 +309,7 @@ void ICUTransService::upperCase(XMLCh* const toUpperCase) const
     XMLCh* outPtr = toUpperCase;
     while (*outPtr)
     {
-        *outPtr = XMLCh(Unicode::toUpperCase(UChar(*outPtr)));
+        *outPtr = XMLCh(u_toupper(UChar(*outPtr)));
         outPtr++;
     }
 }
@@ -319,7 +319,7 @@ void ICUTransService::lowerCase(XMLCh* const toLowerCase) const
     XMLCh* outPtr = toLowerCase;
     while (*outPtr)
     {
-        *outPtr = XMLCh(Unicode::toLowerCase(UChar(*outPtr)));
+        *outPtr = XMLCh(u_tolower(UChar(*outPtr)));
         outPtr++;
     }
 }
diff --git a/src/xercesc/util/regx/TokenFactory.cpp b/src/xercesc/util/regx/TokenFactory.cpp
index b6f1d41655db07e5436cad4104dcc21dfc322c39..0fa27967d6016daf1bf61062dbaad657117841d2 100644
--- a/src/xercesc/util/regx/TokenFactory.cpp
+++ b/src/xercesc/util/regx/TokenFactory.cpp
@@ -56,6 +56,9 @@
 
 /*
  * $Log$
+ * Revision 1.4  2002/12/24 17:59:07  tng
+ * Build with ICU 2.4
+ *
  * Revision 1.3  2002/11/04 15:17:00  tng
  * C++ Namespace Support.
  *
@@ -467,7 +470,7 @@ void TokenFactory::initializeRegistry() {
 
 /*
 #if defined (XML_USE_ICU_TRANSCODER)
-   #include <unicode/unicode.h>
+   #include <unicode/uchar.h>
 #endif
 
 #include <stdio.h>
@@ -485,22 +488,22 @@ void TokenFactory::printUnicode() {
     {
         fprintf(outFl
                 , "    , 0x%02X, 0x%02X, 0x%02X, 0x%02X, 0x%02X, 0x%02X, 0x%02X, 0x%02X, 0x%02X, 0x%02X, 0x%02X, 0x%02X, 0x%02X, 0x%02X, 0x%02X, 0x%02X\n"
-                , (unsigned int)Unicode::getType(index)
-                , (unsigned int)Unicode::getType(index+1)
-                , (unsigned int)Unicode::getType(index+2)
-                , (unsigned int)Unicode::getType(index+3)
-                , (unsigned int)Unicode::getType(index+4)
-                , (unsigned int)Unicode::getType(index+5)
-                , (unsigned int)Unicode::getType(index+6)
-                , (unsigned int)Unicode::getType(index+7)
-				, (unsigned int)Unicode::getType(index+8)
-                , (unsigned int)Unicode::getType(index+9)
-                , (unsigned int)Unicode::getType(index+10)
-                , (unsigned int)Unicode::getType(index+11)
-				, (unsigned int)Unicode::getType(index+12)
-                , (unsigned int)Unicode::getType(index+13)
-                , (unsigned int)Unicode::getType(index+14)
-                , (unsigned int)Unicode::getType(index+15));
+                , (unsigned int)u_charType(index)
+                , (unsigned int)u_charType(index+1)
+                , (unsigned int)u_charType(index+2)
+                , (unsigned int)u_charType(index+3)
+                , (unsigned int)u_charType(index+4)
+                , (unsigned int)u_charType(index+5)
+                , (unsigned int)u_charType(index+6)
+                , (unsigned int)u_charType(index+7)
+				, (unsigned int)u_charType(index+8)
+                , (unsigned int)u_charType(index+9)
+                , (unsigned int)u_charType(index+10)
+                , (unsigned int)u_charType(index+11)
+				, (unsigned int)u_charType(index+12)
+                , (unsigned int)u_charType(index+13)
+                , (unsigned int)u_charType(index+14)
+                , (unsigned int)u_charType(index+15));
     }
     fprintf(outFl, "};\n");
 
diff --git a/src/xercesc/util/regx/XMLUniCharacter.cpp b/src/xercesc/util/regx/XMLUniCharacter.cpp
index d28bf7edc0f5155296d0960f62c81ecfb9c10ca9..a9e48238cace95ecc46b3ffeda0e373182b7180b 100644
--- a/src/xercesc/util/regx/XMLUniCharacter.cpp
+++ b/src/xercesc/util/regx/XMLUniCharacter.cpp
@@ -56,6 +56,9 @@
 
 /*
  * $Log$
+ * Revision 1.3  2002/12/24 17:59:07  tng
+ * Build with ICU 2.4
+ *
  * Revision 1.2  2002/11/04 15:17:01  tng
  * C++ Namespace Support.
  *
@@ -77,7 +80,7 @@
 #include <xercesc/util/regx/XMLUniCharacter.hpp>
 
 #if defined (XML_USE_ICU_TRANSCODER)
-   #include <unicode/unicode.h>
+   #include <unicode/uchar.h>
 #else
    #include <xercesc/util/regx/UniCharTable.hpp>
 #endif
@@ -90,7 +93,7 @@ XERCES_CPP_NAMESPACE_BEGIN
 unsigned short XMLUniCharacter::getType(const XMLCh ch) {
 
 #if defined (XML_USE_ICU_TRANSCODER)
-	return (unsigned short) Unicode::getType(ch);
+	return (unsigned short) u_charType(ch);
 #else
 	return (unsigned short) fgUniCharsTable[ch];
 #endif