diff --git a/doc/faq-build.xml b/doc/faq-build.xml
index 1f451d8d133e540674477d9ba15944d0fb22c01c..ffd95398abc14d3a9b274bb96eeb17bdc03cc9ab 100644
--- a/doc/faq-build.xml
+++ b/doc/faq-build.xml
@@ -378,10 +378,20 @@ catch (const XMLException& toCatch) {
   <faq title="Cannot load message domain, Xerces Panic Error">
     <q>"Cannot load message domain, Xerces Panic Error"?</q>
     <a>
-      <p>If the parser is built with icu message loader (like IBM XML4C binaries), or message
-         catalog loader, you need an environment variable, XERCESC_NLS_HOME to point to
-         the directory, $XERCESCROOT/msg, where the message files reside.
+      <p>If the parser is built with icu message loader (like IBM XML4C binaries), 
+         you need to make sure that the message library, (for exact name
+         see <jump href="faq-distrib.html#faq-3">FAQ: Which DLL's do I need to distribute with my application?</jump>)
+         is located in a directory which is on the library search path.
+         Or the message resource file, XercesMessages_en_US.res, is in the directory given at the call to        
+         XMLPlatformUtils::Initialize(), or is located in the directory pointed to by the environment variable 
+         XERCESC_NLS_HOME, or at $XERCESCROOT/msg.
       </p>
+      <p>If the parser is built with message catalog loader, you need to make sure that the message
+         catalog file, XercesMessages_en_US.cat, is in the directory given at the call to XMLPlatformUtils::Initialize(),
+         or is located in the directory pointed to by the environment variable XERCESC_NLS_HOME, or  
+         at $XERCESCROOT/msg.
+      </p>      
+
     </a>
   </faq>
 
diff --git a/doc/faq-distrib.xml b/doc/faq-distrib.xml
index 3008dcb1d1ea582e27b8cab52318fc3ae79467d5..c5e472d8c6aa411af338a96e8a84f284df398542 100644
--- a/doc/faq-distrib.xml
+++ b/doc/faq-distrib.xml
@@ -150,7 +150,10 @@
                     libicudt*.sl for HP-UX.</li>
 
                 <li><em>The &XercesCName; Message file:</em><br></br>
-                    XercesMessages_en_US.res.</li>
+                    XercesMessages*.dll for Windows NT/2000, or<br></br>
+                    libXercesMessages*.a for AIX, or<br></br>
+                    libXercesMessages*.so for Solaris/Linux, or<br></br>
+                    libXercesMessages*.sl for HP-UX.</li>
 
             </ol>
         </a>
diff --git a/doc/program-others.xml b/doc/program-others.xml
index c88af184a369f5c3ee2cc4d95a6f8b496a30e18d..fe596d1dea43a23299363d9e12dda271c3ec40bd 100644
--- a/doc/program-others.xml
+++ b/doc/program-others.xml
@@ -539,6 +539,34 @@ new XERCES_CPP_NAMESPACE_QUALIFIER SAXParser();
 ..
 </source>
 
+
+    <anchor name="SpecifyLocationForMessageLoader"/>
+    <s2 title="Specify location for message loader">
+
+        <p>The &XercesCName; searches for message files at the default message directory, $XERCESCROOT/msg.
+        </p>
+
+        <p>Application can specify an alternative location for the message files in their
+        very first invocation to XMLPlatformUtils::Initialize() by supplying
+        a parameter for the alternative location intended.
+        </p>
+    </s2>
+
+<source>
+
+...
+    // Initialize the parser system
+    try
+    {
+         XMLPlatformUtils::Initialize("en_US", "/usr/application_root/msg_home");
+    }
+
+    catch ()
+    {
+    }
+..
+</source>
+
 <anchor name="UseSpecificScanner"/>
     <s2 title="Use Specific Scanner">