📄 domconfiguration.hpp
字号:
* Issue normalizationFeature-9: * How does that interact with * expand-entity-references? ALH suggests * consolidating the two to a single feature * called "entity-references" that is used both * for load and save. * Resolution: Consolidate both features into a * single feature called 'entities'. (Telcon 27 * Jan 2002). * * 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. * * "infoset" * * 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 explicity * 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. * * Issue normalizationFeature-12: * Name doesn't work well here. ALH suggests * renaming this to limit-to-infoset or * match-infoset, something like that. * Resolution: Renamed 'infoset' (Telcon 27 Jan * 2002). * * false * Setting infoset to false has no effect. * * Issue normalizationFeature-13: * Shouldn't we change this to setting the * relevant options back to their default value? * Resolution: No, this is more like a * convenience function, it's better to keep it * simple. (F2F 28 Feb 2002). * * "namespaces" * * true * [required] (default) * Perform the namespace processing as defined in * [XML Namespaces]. * * false * [optional] * Do not perform the namespace processing. * * "namespace-declarations" * * 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. * * "normalize-characters" * * true * [optional] * Perform the W3C Text Normalization of the * characters [CharModel] in the document. * * false * [required] (default) * Do not perform character normalization. * * "split-cdata-sections" * * 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. * * "validate" * * 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. * * "validate-if-schema" * * 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. * * "whitespace-in-element-content" * * true * [required] (default) * Keep all white spaces in the document. * * Issue normalizationFeature-15: * How does this feature interact with * "validate" and * Text.isWhitespaceInElementContent. * Resolution: issue no longer relevant (f2f * october 2002). * * 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. * * 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 DOMConfiguration objects attached to Document * nodes. If this parameter is set, * Document.normalizeDocument will invoke the entity * resolver instead of using Document.baseURI. */class CDOM_EXPORT DOMConfiguration{protected: //----------------------------------------------------------------------------------- // Constructor //----------------------------------------------------------------------------------- /** @name Hidden constructors */ //@{ DOMConfiguration() {}; //@}private: // ----------------------------------------------------------------------- // Unimplemented constructors and operators // ----------------------------------------------------------------------- /** @name Unimplemented constructors and operators */ //@{ DOMConfiguration(const DOMConfiguration &); DOMConfiguration & operator = (const DOMConfiguration &); //@}public: // ----------------------------------------------------------------------- // Setter methods // ----------------------------------------------------------------------- /** Set the value of a parameter. * @param name The name of the parameter to set. * @param value 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>DOMErrorHandler</code> * @exception DOMException (NOT_SUPPORTED_ERR) Raised when the * parameter name is recognized but the requested value cannot be set. * @exception DOMException (NOT_FOUND_ERR) Raised when the * parameter name is not recognized. * @since DOM level 3 **/ virtual void setParameter(const XMLCh* name, const void* value) = 0; // ----------------------------------------------------------------------- // Getter methods // ----------------------------------------------------------------------- /** Return the value of a parameter if known. * @param name The name of the parameter. * @return The current object associated with the specified parameter or * null if no object has been associated or if the parameter is not * supported. * @exception DOMException (NOT_FOUND_ERR) Raised when the i * boolean parameter * name is not recognized. * @since DOM level 3 **/ virtual const void* getParameter(const XMLCh* name) const = 0; // ----------------------------------------------------------------------- // Query methods // ----------------------------------------------------------------------- /** Check if setting a parameter to a specific value is supported. * @param name The name of the parameter to check. * @param value An object. if null, the returned value is true. * @return 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. * @since DOM level 3 **/ virtual bool canSetParameter(const XMLCh* name, const void* value) const = 0; // ----------------------------------------------------------------------- // All constructors are hidden, just the destructor is available // ----------------------------------------------------------------------- /** @name Destructor */ //@{ /** * Destructor * */ virtual ~DOMConfiguration() {}; //@}}; XERCES_CPP_NAMESPACE_END#endif /** * End of file DOMConfiguration.hpp */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -