## org.w3c.dom
Interface DOMImplementation

All Known Subinterfaces:
  DOMImplementationCSS, HTMLDOMImplementation

public interface DOMImplementation

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

See also the Document Object Model (DOM) Level 2 Core Specification.

Method Summary
`Document` `createDocument(java.lang.String namespaceURI, java.lang.String qualifiedName, DocumentType doctype)` Creates a DOM Document object of the specified type with its document element.
`DocumentType` `createDocumentType(java.lang.String qualifiedName, java.lang.String publicId, java.lang.String systemId)` Creates an empty `DocumentType` node.
`boolean` `hasFeature(java.lang.String feature, java.lang.String version)` Test if the DOM implementation implements a specific feature.

Method Detail

### hasFeature

    public boolean hasFeature(java.lang.String feature,
                              java.lang.String version)

  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.

### createDocumentType

    public DocumentType createDocumentType(java.lang.String qualifiedName,
                                           java.lang.String publicId,
                                           java.lang.String systemId)
                                    throws DOMException

  Creates an empty `DocumentType` 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 `DocumentType`.
  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 `DocumentType` node with `Node.ownerDocument` set to `null`.
  Throws:
    `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

### createDocument

    public Document createDocument(java.lang.String namespaceURI,
                                   java.lang.String qualifiedName,
                                   DocumentType doctype)
                            throws DOMException

  Creates a DOM Document 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 `Node.ownerDocument` attribute is set to the document being created.
  Returns:
    A new `Document` object.
  Throws:
    `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

Copyright © 1999-2003 Apache XML Project. All Rights Reserved.