diff --git a/doc/program-dom.xml b/doc/program-dom.xml
index 3b702ecff66e6e2a8c730a4c16305bdda3266963..8226f440cf3cf4f4708d981d92a61d45bddba15d 100644
--- a/doc/program-dom.xml
+++ b/doc/program-dom.xml
@@ -568,7 +568,8 @@
            of the properties below are set using the "setter" methods (e.g. <code>setExternalSchemaLocation</code>),
            and are queried using the corresponding "getter" methods (e.g. <code>getExternalSchemaLocation</code>).
            The following only gives you a quick summary of supported features.  Please
-           refer to <jump href="api.html">API Documentation</jump> for complete detail.
+           refer to <jump href="api.html">API Documentation</jump> for
+           complete details.
            </p>
             <table>
                 <tr><th colspan="2"><em>void setExternalSchemaLocation(const XMLCh*)</em></th></tr>
@@ -624,6 +625,41 @@
             </table>
 
             <p/>
+            <table>
+                <tr><th
+                colspan="2"><em>setSecurityManager(Security Manager * const)</em></th></tr>
+                <tr><th><em>Description</em></th>
+                <td> 
+                    Certain valid XML and XML Schema constructs can force a
+                    processor to consume more system resources than an
+                    application may wish.  In fact, certain features could
+                    be exploited by malicious document writers to produce a
+                    denial-of-service attack.  This property allows
+                    applications to impose limits on the amount of
+                    resources the processor will consume while processing
+                    these constructs.  
+                </td></tr>
+                <tr><th><em>Value</em></th>
+                <td> 
+                    An instance of the SecurityManager class (see
+                    <code>xercesc/util/SecurityManager</code>.  This
+                    class's documentation describes the particular limits
+                    that may be set.  Note that, when instantiated, default
+                    values for limits that should be appropriate in most
+                    settings are provided.  The default implementation is
+                    not thread-safe; if thread-safety is required, the
+                    application should extend this class, overriding
+                    methods appropriately.  The parser will not adopt the
+                    SecurityManager instance; the application is
+                    responsible for deleting it when it is finished with
+                    it.  If no SecurityManager instance has been provided to
+                    the parser (the default) then processing strictly
+                    conforming to the relevant specifications will be
+                    performed.
+                </td></tr>
+                <tr><th><em>Value Type</em></th><td> SecurityManager* </td></tr>
+            </table>
+            <p/>
 
         </s3>
 
@@ -1234,6 +1270,40 @@
                 for more programming details. </td></tr>
             </table>
             <p/>
+            <table>
+                <tr><th colspan="2"><em>http://apache.org/xml/properties/security-manager</em></th></tr>
+                <tr><th><em>Description</em></th>
+                <td> 
+                    Certain valid XML and XML Schema constructs can force a
+                    processor to consume more system resources than an
+                    application may wish.  In fact, certain features could
+                    be exploited by malicious document writers to produce a
+                    denial-of-service attack.  This property allows
+                    applications to impose limits on the amount of
+                    resources the processor will consume while processing
+                    these constructs.  
+                </td></tr>
+                <tr><th><em>Value</em></th>
+                <td> 
+                    An instance of the SecurityManager class (see
+                    <code>xercesc/util/SecurityManager</code>.  This
+                    class's documentation describes the particular limits
+                    that may be set.  Note that, when instantiated, default
+                    values for limits that should be appropriate in most
+                    settings are provided.  The default implementation is
+                    not thread-safe; if thread-safety is required, the
+                    application should extend this class, overriding
+                    methods appropriately.  The parser will not adopt the
+                    SecurityManager instance; the application is
+                    responsible for deleting it when it is finished with
+                    it.  If no SecurityManager instance has been provided to
+                    the parser (the default) then processing strictly
+                    conforming to the relevant specifications will be
+                    performed.
+                </td></tr>
+                <tr><th><em>Value Type</em></th><td> SecurityManager* </td></tr>
+            </table>
+            <p/>
 
           </s4>
         </s3>
diff --git a/doc/program-sax.xml b/doc/program-sax.xml
index bf258ce03026453f598705d186d1c110eebc7bb6..390f3cded5a9cd09cde5cd2c04e0f76697d012d3 100644
--- a/doc/program-sax.xml
+++ b/doc/program-sax.xml
@@ -392,6 +392,41 @@ MySAXHandler::fatalError(const SAXParseException&amp; exception)
 
             <p/>
 
+            <table>
+                <tr><th
+                colspan="2"><em>setSecurityManager(Security Manager * const)</em></th></tr>
+                <tr><th><em>Description</em></th>
+                <td> 
+                    Certain valid XML and XML Schema constructs can force a
+                    processor to consume more system resources than an
+                    application may wish.  In fact, certain features could
+                    be exploited by malicious document writers to produce a
+                    denial-of-service attack.  This property allows
+                    applications to impose limits on the amount of
+                    resources the processor will consume while processing
+                    these constructs.  
+                </td></tr>
+                <tr><th><em>Value</em></th>
+                <td> 
+                    An instance of the SecurityManager class (see
+                    <code>xercesc/util/SecurityManager</code>.  This
+                    class's documentation describes the particular limits
+                    that may be set.  Note that, when instantiated, default
+                    values for limits that should be appropriate in most
+                    settings are provided.  The default implementation is
+                    not thread-safe; if thread-safety is required, the
+                    application should extend this class, overriding
+                    methods appropriately.  The parser will not adopt the
+                    SecurityManager instance; the application is
+                    responsible for deleting it when it is finished with
+                    it.  If no SecurityManager instance has been provided to
+                    the parser (the default) then processing strictly
+                    conforming to the relevant specifications will be
+                    performed.
+                </td></tr>
+                <tr><th><em>Value Type</em></th><td> SecurityManager* </td></tr>
+            </table>
+            <p/>
         </s3>
     </s2>
 
diff --git a/doc/program-sax2.xml b/doc/program-sax2.xml
index a4d20aaef89831f3995f95f0db96eb975dbbbdda..cc79ae336dd0f291e1d06310328ab39f88d4207f 100644
--- a/doc/program-sax2.xml
+++ b/doc/program-sax2.xml
@@ -430,6 +430,40 @@ MySAX2Handler::fatalError(const SAXParseException&amp; exception)
 
             <p/>
 
+            <table>
+                <tr><th colspan="2"><em>http://apache.org/xml/properties/security-manager</em></th></tr>
+                <tr><th><em>Description</em></th>
+                <td> 
+                    Certain valid XML and XML Schema constructs can force a
+                    processor to consume more system resources than an
+                    application may wish.  In fact, certain features could
+                    be exploited by malicious document writers to produce a
+                    denial-of-service attack.  This property allows
+                    applications to impose limits on the amount of
+                    resources the processor will consume while processing
+                    these constructs.  
+                </td></tr>
+                <tr><th><em>Value</em></th>
+                <td> 
+                    An instance of the SecurityManager class (see
+                    <code>xercesc/util/SecurityManager</code>.  This
+                    class's documentation describes the particular limits
+                    that may be set.  Note that, when instantiated, default
+                    values for limits that should be appropriate in most
+                    settings are provided.  The default implementation is
+                    not thread-safe; if thread-safety is required, the
+                    application should extend this class, overriding
+                    methods appropriately.  The parser will not adopt the
+                    SecurityManager instance; the application is
+                    responsible for deleting it when it is finished with
+                    it.  If no SecurityManager instance has been provided to
+                    the parser (the default) then processing strictly
+                    conforming to the relevant specifications will be
+                    performed.
+                </td></tr>
+                <tr><th><em>Value Type</em></th><td> SecurityManager* </td></tr>
+            </table>
+            <p/>
           </s4>
         </s3>
     </s2>