diff --git a/Projects/Win32/VC6/xerces-all/XercesLib/XercesLib.mak b/Projects/Win32/VC6/xerces-all/XercesLib/XercesLib.mak
index 58fb9b219b1f6c3385a388fa8b14d540cda279c8..cf876d6b2c54d18d4f1c1a37b04247b044210097 100644
--- a/Projects/Win32/VC6/xerces-all/XercesLib/XercesLib.mak
+++ b/Projects/Win32/VC6/xerces-all/XercesLib/XercesLib.mak
@@ -39,7 +39,7 @@ INTDIR=.\..\..\..\..\..\Build\Win32\VC6\Release\obj
 OutDir=.\..\..\..\..\..\Build\Win32\VC6\Release
 # End Custom Macros
 
-ALL : "$(OUTDIR)\xerces-c_2_4_0.dll"
+ALL : "$(OUTDIR)\xerces-c_2_5_0.dll"
 
 
 CLEAN :
@@ -390,10 +390,10 @@ CLEAN :
 	-@erase "$(INTDIR)\XUtil.obj"
 	-@erase "$(INTDIR)\YearDatatypeValidator.obj"
 	-@erase "$(INTDIR)\YearMonthDatatypeValidator.obj"
-	-@erase "$(OUTDIR)\obj\xerces-c_2_4_0.map"
+	-@erase "$(OUTDIR)\obj\xerces-c_2_5_0.map"
 	-@erase "$(OUTDIR)\xerces-c_2.exp"
 	-@erase "$(OUTDIR)\xerces-c_2.lib"
-	-@erase "$(OUTDIR)\xerces-c_2_4_0.dll"
+	-@erase "$(OUTDIR)\xerces-c_2_5_0.dll"
 
 "$(OUTDIR)" :
     if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
@@ -440,7 +440,7 @@ BSC32_FLAGS=/o"$(OUTDIR)\XercesLib.bsc"
 BSC32_SBRS= \
 	
 LINK32=link.exe
-LINK32_FLAGS=kernel32.lib user32.lib advapi32.lib ws2_32.lib /base:"0x12000000" /subsystem:windows /dll /incremental:no /pdb:"$(OUTDIR)\xerces-c_2_4_0.pdb" /map:"$(INTDIR)\xerces-c_2_4_0.map" /machine:I386 /out:"$(OUTDIR)\xerces-c_2_4_0.dll" /implib:"$(OUTDIR)\xerces-c_2.lib" /version:2.4.0 
+LINK32_FLAGS=kernel32.lib user32.lib advapi32.lib ws2_32.lib /base:"0x12000000" /subsystem:windows /dll /incremental:no /pdb:"$(OUTDIR)\xerces-c_2_5_0.pdb" /map:"$(INTDIR)\xerces-c_2_5_0.map" /machine:I386 /out:"$(OUTDIR)\xerces-c_2_5_0.dll" /implib:"$(OUTDIR)\xerces-c_2.lib" /version:2.3.0 
 LINK32_OBJS= \
 	"$(INTDIR)\Win32PlatformUtils.obj" \
 	"$(INTDIR)\Win32MsgLoader.obj" \
@@ -789,7 +789,7 @@ LINK32_OBJS= \
 	"$(INTDIR)\DOMXPathException.obj" \
 	"$(INTDIR)\Version.res"
 
-"$(OUTDIR)\xerces-c_2_4_0.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
+"$(OUTDIR)\xerces-c_2_5_0.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
     $(LINK32) @<<
   $(LINK32_FLAGS) $(LINK32_OBJS)
 <<
@@ -802,7 +802,7 @@ INTDIR=.\..\..\..\..\..\Build\Win32\VC6\Debug\obj
 OutDir=.\..\..\..\..\..\Build\Win32\VC6\Debug
 # End Custom Macros
 
-ALL : "$(OUTDIR)\xerces-c_2_4_0D.dll"
+ALL : "$(OUTDIR)\xerces-c_2_5_0D.dll"
 
 
 CLEAN :
@@ -1154,9 +1154,9 @@ CLEAN :
 	-@erase "$(INTDIR)\XUtil.obj"
 	-@erase "$(INTDIR)\YearDatatypeValidator.obj"
 	-@erase "$(INTDIR)\YearMonthDatatypeValidator.obj"
-	-@erase "$(OUTDIR)\xerces-c_2_4_0D.dll"
-	-@erase "$(OUTDIR)\xerces-c_2_4_0D.ilk"
-	-@erase "$(OUTDIR)\xerces-c_2_4_0D.pdb"
+	-@erase "$(OUTDIR)\xerces-c_2_5_0D.dll"
+	-@erase "$(OUTDIR)\xerces-c_2_5_0D.ilk"
+	-@erase "$(OUTDIR)\xerces-c_2_5_0D.pdb"
 	-@erase "$(OUTDIR)\xerces-c_2D.exp"
 	-@erase "$(OUTDIR)\xerces-c_2D.lib"
 
@@ -1205,7 +1205,7 @@ BSC32_FLAGS=/o"$(OUTDIR)\XercesLib.bsc"
 BSC32_SBRS= \
 	
 LINK32=link.exe
-LINK32_FLAGS=kernel32.lib user32.lib advapi32.lib ws2_32.lib /base:"0x12000000" /subsystem:windows /dll /incremental:yes /pdb:"$(OUTDIR)\xerces-c_2_4_0D.pdb" /debug /machine:I386 /out:"$(OUTDIR)\xerces-c_2_4_0D.dll" /implib:"$(OUTDIR)\xerces-c_2D.lib" /pdbtype:sept /version:2.4.0 
+LINK32_FLAGS=kernel32.lib user32.lib advapi32.lib ws2_32.lib /base:"0x12000000" /subsystem:windows /dll /incremental:yes /pdb:"$(OUTDIR)\xerces-c_2_5_0D.pdb" /debug /machine:I386 /out:"$(OUTDIR)\xerces-c_2_5_0D.dll" /implib:"$(OUTDIR)\xerces-c_2D.lib" /pdbtype:sept /version:2.3.0 
 LINK32_OBJS= \
 	"$(INTDIR)\Win32PlatformUtils.obj" \
 	"$(INTDIR)\Win32MsgLoader.obj" \
@@ -1554,7 +1554,7 @@ LINK32_OBJS= \
 	"$(INTDIR)\DOMXPathException.obj" \
 	"$(INTDIR)\Version.res"
 
-"$(OUTDIR)\xerces-c_2_4_0D.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
+"$(OUTDIR)\xerces-c_2_5_0D.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
     $(LINK32) @<<
   $(LINK32_FLAGS) $(LINK32_OBJS)
 <<
@@ -1567,7 +1567,7 @@ INTDIR=.\..\..\..\..\..\Build\Win64\VC6\Debug\obj
 OutDir=.\..\..\..\..\..\Build\Win64\VC6\Debug
 # End Custom Macros
 
-ALL : "$(OUTDIR)\xerces-c_2_4_0D.dll"
+ALL : "$(OUTDIR)\xerces-c_2_5_0D.dll"
 
 
 CLEAN :
@@ -1919,9 +1919,9 @@ CLEAN :
 	-@erase "$(INTDIR)\XUtil.obj"
 	-@erase "$(INTDIR)\YearDatatypeValidator.obj"
 	-@erase "$(INTDIR)\YearMonthDatatypeValidator.obj"
-	-@erase "$(OUTDIR)\xerces-c_2_4_0D.dll"
-	-@erase "$(OUTDIR)\xerces-c_2_4_0D.ilk"
-	-@erase "$(OUTDIR)\xerces-c_2_4_0D.pdb"
+	-@erase "$(OUTDIR)\xerces-c_2_5_0D.dll"
+	-@erase "$(OUTDIR)\xerces-c_2_5_0D.ilk"
+	-@erase "$(OUTDIR)\xerces-c_2_5_0D.pdb"
 	-@erase "$(OUTDIR)\xerces-c_2D.exp"
 	-@erase "$(OUTDIR)\xerces-c_2D.lib"
 
@@ -1970,7 +1970,7 @@ BSC32_FLAGS=/o"$(OUTDIR)\XercesLib.bsc"
 BSC32_SBRS= \
 	
 LINK32=link.exe
-LINK32_FLAGS=kernel32.lib user32.lib advapi32.lib ws2_32.lib /base:"0x12000000" /subsystem:windows /dll /incremental:yes /pdb:"$(OUTDIR)\xerces-c_2_4_0D.pdb" /debug /machine:IX86 /out:"$(OUTDIR)\xerces-c_2_4_0D.dll" /implib:"$(OUTDIR)\xerces-c_2D.lib" /pdbtype:sept /version:2.4.0 /machine:IA64 
+LINK32_FLAGS=kernel32.lib user32.lib advapi32.lib ws2_32.lib /base:"0x12000000" /subsystem:windows /dll /incremental:yes /pdb:"$(OUTDIR)\xerces-c_2_5_0D.pdb" /debug /machine:IX86 /out:"$(OUTDIR)\xerces-c_2_5_0D.dll" /implib:"$(OUTDIR)\xerces-c_2D.lib" /pdbtype:sept /version:2.3.0 /machine:IA64 
 LINK32_OBJS= \
 	"$(INTDIR)\Win32PlatformUtils.obj" \
 	"$(INTDIR)\Win32MsgLoader.obj" \
@@ -2319,7 +2319,7 @@ LINK32_OBJS= \
 	"$(INTDIR)\DOMXPathException.obj" \
 	"$(INTDIR)\Version.res"
 
-"$(OUTDIR)\xerces-c_2_4_0D.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
+"$(OUTDIR)\xerces-c_2_5_0D.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
     $(LINK32) @<<
   $(LINK32_FLAGS) $(LINK32_OBJS)
 <<
@@ -2332,7 +2332,7 @@ INTDIR=.\..\..\..\..\..\Build\Win64\VC6\Release\obj
 OutDir=.\..\..\..\..\..\Build\Win64\VC6\Release
 # End Custom Macros
 
-ALL : "$(OUTDIR)\xerces-c_2_4_0.dll"
+ALL : "$(OUTDIR)\xerces-c_2_5_0.dll"
 
 
 CLEAN :
@@ -2683,11 +2683,11 @@ CLEAN :
 	-@erase "$(INTDIR)\XUtil.obj"
 	-@erase "$(INTDIR)\YearDatatypeValidator.obj"
 	-@erase "$(INTDIR)\YearMonthDatatypeValidator.obj"
-	-@erase "$(OUTDIR)\obj\xerces-c_2_4_0.map"
+	-@erase "$(OUTDIR)\obj\xerces-c_2_5_0.map"
 	-@erase "$(OUTDIR)\xerces-c_2.exp"
 	-@erase "$(OUTDIR)\xerces-c_2.lib"
-	-@erase "$(OUTDIR)\xerces-c_2_4_0.dll"
-	-@erase "$(OUTDIR)\xerces-c_2_4_0.ilk"
+	-@erase "$(OUTDIR)\xerces-c_2_5_0.dll"
+	-@erase "$(OUTDIR)\xerces-c_2_5_0.ilk"
 
 "$(OUTDIR)" :
     if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
@@ -2734,7 +2734,7 @@ BSC32_FLAGS=/o"$(OUTDIR)\XercesLib.bsc"
 BSC32_SBRS= \
 	
 LINK32=link.exe
-LINK32_FLAGS=kernel32.lib user32.lib advapi32.lib ws2_32.lib /base:"0x12000000" /subsystem:windows /dll /incremental:yes /pdb:"$(OUTDIR)\xerces-c_2_4_0.pdb" /map:"$(INTDIR)\xerces-c_2_4_0.map" /machine:IX86 /out:"$(OUTDIR)\xerces-c_2_4_0.dll" /implib:"$(OUTDIR)\xerces-c_2.lib" /version:2.4.0 /machine:IA64 
+LINK32_FLAGS=kernel32.lib user32.lib advapi32.lib ws2_32.lib /base:"0x12000000" /subsystem:windows /dll /incremental:yes /pdb:"$(OUTDIR)\xerces-c_2_5_0.pdb" /map:"$(INTDIR)\xerces-c_2_5_0.map" /machine:IX86 /out:"$(OUTDIR)\xerces-c_2_5_0.dll" /implib:"$(OUTDIR)\xerces-c_2.lib" /version:2.3.0 /machine:IA64 
 LINK32_OBJS= \
 	"$(INTDIR)\Win32PlatformUtils.obj" \
 	"$(INTDIR)\Win32MsgLoader.obj" \
@@ -3083,7 +3083,7 @@ LINK32_OBJS= \
 	"$(INTDIR)\DOMXPathException.obj" \
 	"$(INTDIR)\Version.res"
 
-"$(OUTDIR)\xerces-c_2_4_0.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
+"$(OUTDIR)\xerces-c_2_5_0.dll" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
     $(LINK32) @<<
   $(LINK32_FLAGS) $(LINK32_OBJS)
 <<
diff --git a/scripts/packageBinaries.pl b/scripts/packageBinaries.pl
index 0977afbfc9ad172973bb3bd250c4b8c19f944519..561c0b3132b23ac64b4b996305672af6e2cbb128 100644
--- a/scripts/packageBinaries.pl
+++ b/scripts/packageBinaries.pl
@@ -84,11 +84,11 @@ if (!length($XERCESCROOT) || !length($targetdir) || (length($opt_h) > 0) ) {
     print ("    -j suppress building of ICU (speeds up builds when debugging)\n");
     print ("    -h to get help on these commands\n\n");
     print ("Example: Under unix's\n");
-    print ("    perl packageBinaries.pl -s \$HOME/xerces-c-src2_4_0");
-    print (" -o \$HOME/xerces-c2_4_0-linux -c gcc -x g++ -m inmem -n fileonly -t native\n\n");
+    print ("    perl packageBinaries.pl -s \$HOME/xerces-c-src2_5_0");
+    print (" -o \$HOME/xerces-c2_5_0-linux -c gcc -x g++ -m inmem -n fileonly -t native\n\n");
     print ("Example: Under Windows\n");
-    print ("    perl packageBinaries.pl -s \\xerces-c-src2_4_0");
-    print (" -o\\xerces-c2_4_0-win32 [-n fileonly] [-t icu]\n\n");
+    print ("    perl packageBinaries.pl -s \\xerces-c-src2_5_0");
+    print (" -o\\xerces-c2_5_0-win32 [-n fileonly] [-t icu]\n\n");
     print ("Note:\n");
     print ("    Under Windows, by default the XercesLib project files is\n");
     print ("    configured to use Win32 resource file based message loader,\n");
@@ -1582,7 +1582,7 @@ sub change_windows_project_for_ICU() {
        
         if ($msgloader)
         {
-            $line =~ s/user32.lib/user32.lib $icuuc.lib icudata.lib XercesMessages2_4_0.lib/g;
+            $line =~ s/user32.lib/user32.lib $icuuc.lib icudata.lib XercesMessages2_5_0.lib/g;
         }        
         elsif ($transcoder)
         {
@@ -1631,7 +1631,7 @@ sub change_windows_makefile_for_ICU() {
 
         if ($msgloader)
         {
-            $line =~ s/user32.lib/user32.lib $icuuc.lib icudata.lib XercesMessages2_4_0.lib/g;
+            $line =~ s/user32.lib/user32.lib $icuuc.lib icudata.lib XercesMessages2_5_0.lib/g;
         }        
         elsif ($transcoder)
         {
@@ -1678,7 +1678,7 @@ sub change_windows_project_for_ICU_VC7() {
         
         if ($msgloader)
         {
-            $line =~ s/AdditionalDependencies=\"([^"]*)/AdditionalDependencies=\"$icuuc.lib icudata.lib XercesMessages2_4_0.lib $1/;
+            $line =~ s/AdditionalDependencies=\"([^"]*)/AdditionalDependencies=\"$icuuc.lib icudata.lib XercesMessages2_5_0.lib $1/;
         }        
         elsif ($transcoder)
         {
diff --git a/src/xercesc/Makefile.incl b/src/xercesc/Makefile.incl
index 4fc095983ebc31c27f7ce5813fb7d580b22752ef..54f08b164441ca11631ddd0202b9a7d45e5f2fea 100644
--- a/src/xercesc/Makefile.incl
+++ b/src/xercesc/Makefile.incl
@@ -245,7 +245,7 @@ else
 endif
 
 ifeq (${MESSAGELOADER}, ICU)
-    ALLLIBS = ${LIBS} -L/usr/lpp/xlC/lib -licuuc26 -licudata26 -lXercesMessages24
+    ALLLIBS = ${LIBS} -L/usr/lpp/xlC/lib -licuuc26 -licudata26 -lXercesMessages25
 endif
 
 PLATFORM_COMPILE_OPTIONS = -qnotempinc -D_THREAD_SAFE
diff --git a/src/xercesc/configure.in b/src/xercesc/configure.in
index 49b500c9ef3eb59cec849745fefa71b87893b68a..f0fc8290097aa301544abcb1bfd508fc11fb7087 100644
--- a/src/xercesc/configure.in
+++ b/src/xercesc/configure.in
@@ -2,7 +2,7 @@ dnl Process this file with autoconf to produce a configure script
 AC_INIT(util/XercesDefs.hpp)
 dnl AC_CONFIG_HEADER(common/icucfg.h)
 
-dnl AM_INIT_AUTOMAKE(xerces-c,2.4.0)
+dnl AM_INIT_AUTOMAKE(xerces-c,2.5.0)
 dnl Checks for programs
 AC_PROG_CC
 AC_PROG_CXX
diff --git a/src/xercesc/util/MsgLoaders/ICU/ICUMsgLoader.cpp b/src/xercesc/util/MsgLoaders/ICU/ICUMsgLoader.cpp
index 91620b07e7ff89c7f8e8faa78411c9d5084497df..747b3caeae35393f0571c1afe938a65ec00349a8 100644
--- a/src/xercesc/util/MsgLoaders/ICU/ICUMsgLoader.cpp
+++ b/src/xercesc/util/MsgLoaders/ICU/ICUMsgLoader.cpp
@@ -56,6 +56,9 @@
 
 /*
  * $Log$
+ * Revision 1.21  2004/02/12 20:44:34  peiyongz
+ * XercesC2_5_0
+ *
  * Revision 1.20  2003/12/24 15:24:13  cargilld
  * More updates to memory management so that the static memory manager.
  *
@@ -180,7 +183,7 @@ XERCES_CPP_NAMESPACE_BEGIN
  */
 
 #if defined(_WIN32) || defined(WIN32)
-extern "C" void U_IMPORT *XercesMessages2_4_0_dat;
+extern "C" void U_IMPORT *XercesMessages2_5_0_dat;
 #else
 extern "C" void U_IMPORT *XercesMessages_dat;
 #endif
@@ -204,7 +207,7 @@ static void setAppData()
         setAppDataDone = true;
         UErrorCode err = U_ZERO_ERROR;
 #if defined(_WIN32) || defined(WIN32)
-        udata_setAppData("XercesMessages", &XercesMessages2_4_0_dat, &err);
+        udata_setAppData("XercesMessages", &XercesMessages2_5_0_dat, &err);
 #else
         udata_setAppData("XercesMessages", &XercesMessages_dat, &err);
 #endif