<p>The <aclass="el"href="classxercesc_1_1DOMConfiguration.html"title="The DOMConfiguration interface represents the configuration of a document and maintains a table of re...">DOMConfiguration</a> interface represents the configuration of a document and maintains a table of recognized parameters.
<trclass="memdesc:a62e7cd90090e47b0084ab872ac5ecaae"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Set the value of a parameter. <ahref="#a62e7cd90090e47b0084ab872ac5ecaae">More...</a><br/></td></tr>
<trclass="memdesc:a20a093954d089cee96a04318ace33ff2"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Return the value of a parameter if known. <ahref="#a20a093954d089cee96a04318ace33ff2">More...</a><br/></td></tr>
<trclass="memdesc:aa50d41245f94f5d5b338219f7f75c005"><tdclass="mdescLeft"> </td><tdclass="mdescRight">Check if setting a parameter to a specific value is supported. <ahref="#aa50d41245f94f5d5b338219f7f75c005">More...</a><br/></td></tr>
<trclass="memdesc:ae9f0810e765b10da0e2a9e77585c01f5"><tdclass="mdescLeft"> </td><tdclass="mdescRight">The list of the parameters supported by this <aclass="el"href="classxercesc_1_1DOMConfiguration.html"title="The DOMConfiguration interface represents the configuration of a document and maintains a table of re...">DOMConfiguration</a> object and for which at least one value can be set by the application. <ahref="#ae9f0810e765b10da0e2a9e77585c01f5">More...</a><br/></td></tr>
<divclass="textblock"><p>The <aclass="el"href="classxercesc_1_1DOMConfiguration.html"title="The DOMConfiguration interface represents the configuration of a document and maintains a table of re...">DOMConfiguration</a> interface represents the configuration of a document and maintains a table of recognized parameters. </p>
<p>Using the configuration, it is possible to change Document.normalizeDocument behavior, such as replacing CDATASection nodes with Text nodes or specifying the type of the schema that must be used when the validation of the Document is requested. <aclass="el"href="classxercesc_1_1DOMConfiguration.html"title="The DOMConfiguration interface represents the configuration of a document and maintains a table of re...">DOMConfiguration</a> objects are also used in [DOM Level 3 Load and Save] in the <aclass="el"href="classxercesc_1_1DOMLSParser.html"title="DOMLSParser provides an API for parsing XML documents and building the corresponding DOM document tre...">DOMLSParser</a> and <aclass="el"href="classxercesc_1_1DOMLSSerializer.html">DOMLSSerializer</a> interfaces.</p>
<p>The <aclass="el"href="classxercesc_1_1DOMConfiguration.html"title="The DOMConfiguration interface represents the configuration of a document and maintains a table of re...">DOMConfiguration</a> distinguish two types of parameters: boolean (boolean parameters) and DOMUserData (parameters). The names used by the <aclass="el"href="classxercesc_1_1DOMConfiguration.html"title="The DOMConfiguration interface represents the configuration of a document and maintains a table of re...">DOMConfiguration</a> object are defined throughout the DOM Level 3 specifications. Names are case-insensitive. To avoid possible conflicts, as a convention, names referring to boolean parameters and parameters defined outside the DOM specification should be made unique. Names are recommended to follow the XML name production rule but it is not enforced by the DOM implementation. DOM Level 3 Core Implementations are required to recognize all boolean parameters and parameters defined in this specification. Each boolean parameter state or parameter value may then be supported or not by the implementation. Refer to their definition to know if a state or a value must be supported or not.</p>
<p>"error-handler" [required] A <aclass="el"href="classxercesc_1_1DOMErrorHandler.html"title="Basic interface for DOM error handlers. ">DOMErrorHandler</a> object. If an error is encountered in the document, the implementation will call back the <aclass="el"href="classxercesc_1_1DOMErrorHandler.html"title="Basic interface for DOM error handlers. ">DOMErrorHandler</a> registered using this parameter. When called, DOMError.relatedData will contain the closest node to where the error occured. If the implementation is unable to determine the node where the error occurs, DOMError.relatedData will contain the Document node. Mutations to the document from within an error handler will result in implementation dependent behaviour.</p>
<p>"schema-type" [optional] A DOMString object containing an absolute URI and representing the type of the schema language used to validate a document against. Note that no lexical checking is done on the absolute URI. If this parameter is not set, a default value may be provided by the implementation, based on the schema languages supported and on the schema language used at load time.</p>
<p>Note: For XML Schema [XML Schema Part 1], applications must use the value "http://www.w3.org/2001/XMLSchema". For XML DTD [XML 1.0], applications must use the value "http://www.w3.org/TR/REC-xml". Other schema languages are outside the scope of the W3C and therefore should recommend an absolute URI in order to use this method.</p>
<p>"schema-location" [optional] A DOMString object containing a list of URIs, separated by white spaces (characters matching the nonterminal production S defined in section 2.3 [XML 1.0]), that represents the schemas against which validation should occur. The types of schemas referenced in this list must match the type specified with schema-type, otherwise the behaviour of an implementation is undefined. If the schema type is XML Schema [XML Schema Part 1], only one of the XML Schemas in the list can be with no namespace. If validation occurs against a namespace aware schema, i.e. XML Schema, and the targetNamespace of a schema (specified using this property) matches the targetNamespace of a schema occurring in the instance document, i.e in schemaLocation attribute, the schema specified by the user using this property will be used (i.e., in XML Schema the schemaLocation attribute in the instance document or on the import element will be effectively ignored).</p>
<p>Note: It is illegal to set the schema-location parameter if the schema-type parameter value is not set. It is strongly recommended that DOMInputSource.baseURI will be set, so that an implementation can successfully resolve any external entities referenced.</p>
<p>The following list of boolean parameters (features) defined in the DOM:</p>
In particular, there is no way to specify the order
of the attributes in the DOM.
false
[required] (default)
Do not canonicalize the document.
</pre><p>"cdata-sections" </p>
<preclass="fragment"> true
[required] (default)
Keep CDATASection nodes in the document.
false
[required]
Transform CDATASection nodes in the document
into Text nodes. The new Text node is
then combined with any adjacent Text node.
</pre><p>"comments" </p>
<preclass="fragment"> true
[required] (default)
Keep Comment nodes in the document.
false
[required]
Discard Comment nodes in the Document.
</pre><p>"datatype-normalization" </p>
<preclass="fragment"> true
[required]
Exposed normalized values in the tree.
false
[required] (default)
Do not perform normalization on the tree.
</pre><p>"discard-default-content" </p>
<preclass="fragment"> true
[required] (default)
Use whatever information available to the
implementation (i.e. XML schema, DTD, the specified
flag on Attr nodes, and so on) to decide what
attributes and content should be discarded or not.
Note that the specified flag on Attr nodes in
itself is not always reliable, it is only reliable
when it is set to false since the only case where
it can be set to false is if the attribute was
created by the implementation. The default content
won't be removed if an implementation does not have
any information available.
false
[required]
Keep all attributes and all content.
</pre><p>"entities" </p>
<preclass="fragment"> true
[required]
Keep EntityReference and Entity nodes
in the document.
false
[required] (default)
Remove all EntityReference and Entity
nodes from the document, putting the entity
expansions directly in their place. Text
nodes are into "normal" form. Only
EntityReference nodes to non-defined entities
are kept in the document.
</pre><p>"infoset" </p>
<preclass="fragment"> true
[required]
Only keep in the document the information defined
in the XML Information Set [XML Information
set].
This forces the following features to false:
namespace-declarations, validate-if-schema,
entities, datatype-normalization, cdata-sections.
This forces the following features to true:
whitespace-in-element-content, comments,
namespaces.
Other features are not changed unless explicitly
specified in the description of the features.
Note that querying this feature with getFeature
returns true only if the individual features
specified above are appropriately set.
false
Setting infoset to false has no effect.
</pre><p>"namespaces" </p>
<preclass="fragment"> true
[required] (default)
Perform the namespace processing as defined in
[XML Namespaces].
false
[optional]
Do not perform the namespace processing.
</pre><p>"namespace-declarations" </p>
<preclass="fragment"> true
[required] (default)
Include namespace declaration attributes, specified
or defaulted from the schema or the DTD, in the
document. See also the section Declaring
Namespaces in [XML Namespaces].
false
[required]
Discard all namespace declaration attributes. The
Namespace prefixes are retained even if this
feature is set to false.
</pre><p>"normalize-characters" </p>
<preclass="fragment"> true
[optional]
Perform the W3C Text Normalization of the
characters [CharModel] in the document.
false
[required] (default)
Do not perform character normalization.
</pre><p>"split-cdata-sections" </p>
<preclass="fragment"> true
[required] (default)
Split CDATA sections containing the CDATA section
termination marker ']]>'. When a CDATA section is
split a warning is issued.
false
[required]
Signal an error if a CDATASection contains an
unrepresentable character.
</pre><p>"validate" </p>
<preclass="fragment"> true
[optional]
Require the validation against a schema (i.e. XML
schema, DTD, any other type or representation of
schema) of the document as it is being normalized
as defined by [XML 1.0]. If validation errors
are found, or no schema was found, the error
handler is notified. Note also that normalized
values will not be exposed to the schema in used
unless the feature datatype-normalization is true.
Note: validate-if-schema and validate are mutually
exclusive, setting one of them to true will set the
other one to false.
false
[required] (default)
Only XML 1.0 non-validating processing must be
done. Note that validation might still happen if
validate-if-schema is true.
</pre><p>"validate-if-schema" </p>
<preclass="fragment"> true
[optional]
Enable validation only if a declaration for the
document element can be found (independently of
where it is found, i.e. XML schema, DTD, or any
other type or representation of schema). If
validation errors are found, the error handler is
notified. Note also that normalized values will not
be exposed to the schema in used unless the feature
datatype-normalization is true.
Note: validate-if-schema and validate are mutually
exclusive, setting one of them to true will set the
other one to false.
false
[required] (default)
No validation should be performed if the document
has a schema. Note that validation must still
happen if validate is true.
</pre><p>"element-content-whitespace" </p>
<preclass="fragment"> true
[required] (default)
Keep all white spaces in the document.
false
[optional]
Discard white space in element content while
normalizing. The implementation is expected to use
the isWhitespaceInElementContent flag on Text
nodes to determine if a text node should be written
out or not.
</pre><p>The resolutions of entities is done using Document.baseURI. However, when the features "LS-Load" or "LS-Save" defined in [DOM Level 3 Load and Save] are supported by the DOM implementation, the parameter "entity-resolver" can also be used on <aclass="el"href="classxercesc_1_1DOMConfiguration.html"title="The DOMConfiguration interface represents the configuration of a document and maintains a table of re...">DOMConfiguration</a> objects attached to Document nodes. If this parameter is set, Document.normalizeDocument will invoke the entity resolver instead of using Document.baseURI. </p>
</div><h2class="groupheader">Constructor & Destructor Documentation</h2>
<p>Check if setting a parameter to a specific value is supported. </p>
<dlclass="params"><dt>Parameters</dt><dd>
<tableclass="params">
<tr><tdclass="paramname">name</td><td>The name of the parameter to check. </td></tr>
<tr><tdclass="paramname">value</td><td>An object. if null, the returned value is true. </td></tr>
</table>
</dd>
</dl>
<dlclass="section return"><dt>Returns</dt><dd>true if the parameter could be successfully set to the specified value, or false if the parameter is not recognized or the requested value is not supported. This does not change the current value of the parameter itself. </dd></dl>
<dlclass="section return"><dt>Returns</dt><dd>The current object associated with the specified parameter or null if no object has been associated or if the parameter is not supported. </dd></dl>
<dlclass="exception"><dt>Exceptions</dt><dd>
<tableclass="exception">
<tr><tdclass="paramname"><aclass="el"href="classxercesc_1_1DOMException.html">DOMException</a></td><td>(NOT_FOUND_ERR) Raised when the i boolean parameter name is not recognized. </td></tr>
<p>The list of the parameters supported by this <aclass="el"href="classxercesc_1_1DOMConfiguration.html"title="The DOMConfiguration interface represents the configuration of a document and maintains a table of re...">DOMConfiguration</a> object and for which at least one value can be set by the application. </p>
<tr><tdclass="paramname">name</td><td>The name of the parameter to set. </td></tr>
<tr><tdclass="paramname">value</td><td>The new value or null if the user wishes to unset the parameter. While the type of the value parameter is defined as <code>DOMUserData</code>, the object type must match the type defined by the definition of the parameter. For example, if the parameter is "error-handler", the value must be of type <code><aclass="el"href="classxercesc_1_1DOMErrorHandler.html"title="Basic interface for DOM error handlers. ">DOMErrorHandler</a></code></td></tr>
</table>
</dd>
</dl>
<dlclass="exception"><dt>Exceptions</dt><dd>
<tableclass="exception">
<tr><tdclass="paramname"><aclass="el"href="classxercesc_1_1DOMException.html">DOMException</a></td><td>(NOT_SUPPORTED_ERR) Raised when the parameter name is recognized but the requested value cannot be set. </td></tr>
<tr><tdclass="paramname"><aclass="el"href="classxercesc_1_1DOMException.html">DOMException</a></td><td>(NOT_FOUND_ERR) Raised when the parameter name is not recognized. </td></tr>