| API Docs for SAX and DOM |

Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members

# DOMImplementation Class Reference

The `DOMImplementation` interface provides a number of methods for performing operations that are independent of any particular instance of the document object model. More...

`#include <DOMImplementation.hpp>`

Inheritance diagram for DOMImplementation

[legend]
Collaboration diagram for DOMImplementation:

[legend]
List of all members.

## Public Methods

Destructor
virtual | ~DOMImplementation ()
| Destructor.
Functions introduced in DOM Level 1
virtual bool | hasFeature (const XMLCh *feature,const XMLCh *version)=0
| Test if the DOM implementation implements a specific feature. More...
Functions introduced in DOM Level 2
virtual DOMDocumentType* | createDocumentType (const XMLCh *qualifiedName,const XMLCh *publicId,const XMLCh *systemId)=0
| Creates an empty `DOMDocumentType` node. More...
virtual DOMDocument* | createDocument (const XMLCh *namespaceURI,const XMLCh *qualifiedName,DOMDocumentType *doctype)=0
| Creates a DOMDocument object of the specified type with its document element. More...
Functions introduced in DOM Level 3
virtual DOMImplementation* | getInterface (const XMLCh *feature)=0
| This method makes available a `DOMImplementation`'s specialized interface (see ). More...
Non-standard extension
virtual DOMDocument* | createDocument ()=0
| Non-standard extension. More...

## Static Public Methods

Non-standard extension
DOMImplementation* | getImplementation ()
| Non-standard extension. More...

## Protected Methods

Hidden constructors
| DOMImplementation ()
| DOMImplementation (const DOMImplementation &)
DOMImplementation& | operator= (const DOMImplementation &)

## Detailed Description

The `DOMImplementation` interface provides a number of methods for performing operations that are independent of any particular instance of the document object model.

## Constructor & Destructor Documentation

DOMImplementation::DOMImplementation ( | )`[protected]`

DOMImplementation::DOMImplementation ( | const DOMImplementation & )`[protected]`

DOMImplementation::~DOMImplementation ( | )`[virtual]`

| Destructor.

## Member Function Documentation

DOMDocument * DOMImplementation::createDocument ( | )`[pure virtual]`

| Non-standard extension. Create a completely empty document that has neither a root element or a doctype node.

DOMDocument * DOMImplementation::createDocument ( | const XMLCh * namespaceURI,
| const XMLCh * qualifiedName,
| DOMDocumentType * doctype )`[pure virtual]`

Creates a DOMDocument object of the specified type with its document element.

Parameters:

  namespaceURI | The namespace URI of the document element to create.
  qualifiedName | The qualified name of the document element to be created.
  doctype | The type of document to be created or `null`. When `doctype` is not `null`, its `ownerDocument` attribute is set to the document being created.

Returns:
  A new `DOMDocument` object.

Exceptions:

  DOMException

  INVALID_CHARACTER_ERR: Raised if the specified qualified name contains an illegal character.
  NAMESPACE_ERR: Raised if the `qualifiedName` is malformed, if the `qualifiedName` has a prefix and the `namespaceURI` is `null`, or if the `qualifiedName` has a prefix that is "xml" and the `namespaceURI` is different from " http://www.w3.org/XML/1998/namespace" , or if the DOM implementation does not support the `"XML"` feature but a non-null namespace URI was provided, since namespaces were defined by XML.
  WRONG_DOCUMENT_ERR: Raised if `doctype` has already been used with a different document or was created from a different implementation.
  NOT_SUPPORTED_ERR: May be raised by DOM implementations which do not support the "XML" feature, if they choose not to support this method. Other features introduced in the future, by the DOM WG or in extensions defined by other groups, may also demand support for this method; please consult the definition of the feature to see if it requires this method.

Since:
  DOM Level 2

DOMDocumentType * DOMImplementation::createDocumentType ( | const XMLCh * qualifiedName,
| const XMLCh * publicId,
| const XMLCh * systemId )`[pure virtual]`

Creates an empty `DOMDocumentType` node.

Entity declarations and notations are not made available. Entity reference expansions and default attribute additions do not occur. It is expected that a future version of the DOM will provide a way for populating a `DOMDocumentType`.

Parameters:

  qualifiedName | The qualified name of the document type to be created.
  publicId | The external subset public identifier.
  systemId | The external subset system identifier.

Returns:
  A new `DOMDocumentType` node with `ownerDocument` set to `null`.

Exceptions:

  DOMException

  INVALID_CHARACTER_ERR: Raised if the specified qualified name contains an illegal character.
  NAMESPACE_ERR: Raised if the `qualifiedName` is malformed.
  NOT_SUPPORTED_ERR: May be raised by DOM implementations which do not support the `"XML"` feature, if they choose not to support this method. Other features introduced in the future, by the DOM WG or in extensions defined by other groups, may also demand support for this method; please consult the definition of the feature to see if it requires this method.

Since:
  DOM Level 2

DOMImplementation * DOMImplementation::getImplementation ( | )`[static]`

| Non-standard extension. Factory method for getting a DOMImplementation object. The DOM implementation retains ownership of the returned object. Application code should NOT delete it.

DOMImplementation * DOMImplementation::getInterface ( | const XMLCh * feature )`[pure virtual]`

This method makes available a `DOMImplementation`'s specialized interface (see ).

"Experimental - subject to change"

Parameters:

  feature | The name of the feature requested (case-insensitive).

Returns:
  Returns an alternate `DOMImplementation` which implements the specialized APIs of the specified feature, if any, or `null` if there is no alternate `DOMImplementation` object which implements interfaces associated with that feature. Any alternate `DOMImplementation` returned by this method must delegate to the primary core `DOMImplementation` and not return results inconsistent with the primary `DOMImplementation`

Since:
  DOM Level 3

bool DOMImplementation::hasFeature ( | const XMLCh * feature,
| const XMLCh * version )`[pure virtual]`

Test if the DOM implementation implements a specific feature.

Parameters:

  feature | The name of the feature to test (case-insensitive). The values used by DOM features are defined throughout the DOM Level 2 specifications and listed in the section. The name must be an XML name. To avoid possible conflicts, as a convention, names referring to features defined outside the DOM specification should be made unique.
  version | This is the version number of the feature to test. In Level 2, the string can be either "2.0" or "1.0". If the version is not specified, supporting any version of the feature causes the method to return `true`.

Returns:
  `true` if the feature is implemented in the specified version, `false` otherwise.

Since:
  DOM Level 1

DOMImplementation & DOMImplementation::operator= ( | const DOMImplementation & )`[protected]`

The documentation for this class was generated from the following file:

- DOMImplementation.hpp

Copyright © 2000 The Apache Software Foundation. All Rights Reserved.