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 3 Core Specification.
Public Method Summary
abstract Document |
createDocument(String namespaceURI, String qualifiedName, DocumentType doctype)
Creates a DOM Document object of the specified type with its document
element.
|
abstract DocumentType |
createDocumentType(String qualifiedName, String publicId, String systemId)
Creates an empty
DocumentType node. |
abstract Object |
getFeature(String feature, String version)
This method returns a specialized object which implements the
specialized APIs of the specified feature and version, as specified
in .
|
abstract boolean |
hasFeature(String feature, String version)
Test if the DOM implementation implements a specific feature and
version, as specified in .
|
Public Methods
public abstract Document createDocument (String namespaceURI, String qualifiedName, DocumentType doctype)
Creates a DOM Document object of the specified type with its document
element.
Note that based on the DocumentType
given to create
the document, the implementation may instantiate specialized
Document
objects that support additional features than
the "Core", such as "HTML" [DOM Level 2 HTML]
. On the other hand, setting the DocumentType
after the
document was created makes this very unlikely to happen.
Alternatively, specialized Document
creation methods,
such as createHTMLDocument
[DOM Level 2 HTML]
, can be used to obtain specific types of Document
objects.
Parameters
namespaceURI | The namespace URI of the document element to
create or null . |
---|---|
qualifiedName | The qualified name of the document element to be
created or null . |
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 with its document element. If theNamespaceURI
,qualifiedName
, anddoctype
arenull
, the returnedDocument
is empty with no document element.
Throws
DOMException | INVALID_CHARACTER_ERR: Raised if the specified qualified name is not
an XML name according to [XML 1.0].
NAMESPACE_ERR: Raised if the qualifiedName is
malformed, if the qualifiedName has a prefix and the
namespaceURI is null , or if the
qualifiedName is null and the
namespaceURI is different from null , or
if the qualifiedName has a prefix that is "xml" and
the namespaceURI is different from "
http://www.w3.org/XML/1998/namespace" [XML Namespaces]
, 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 if the implementation does not support the feature "XML" and the language exposed through the Document does not support XML Namespaces (such as [HTML 4.01]). |
---|
public abstract DocumentType createDocumentType (String qualifiedName, String publicId, String systemId)
Creates an empty DocumentType
node. Entity declarations
and notations are not made available. Entity reference expansions and
default attribute additions do not occur..
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 withNode.ownerDocument
set tonull
.
Throws
DOMException | INVALID_CHARACTER_ERR: Raised if the specified qualified name is not
an XML name according to [XML 1.0].
NAMESPACE_ERR: Raised if the qualifiedName is
malformed.
NOT_SUPPORTED_ERR: May be raised if the implementation does not support the feature "XML" and the language exposed through the Document does not support XML Namespaces (such as [HTML 4.01]). |
---|
public abstract Object getFeature (String feature, String version)
This method returns a specialized object which implements the
specialized APIs of the specified feature and version, as specified
in . The specialized object may also be obtained by using
binding-specific casting methods but is not necessarily expected to,
as discussed in . This method also allow the implementation to
provide specialized objects which do not support the
DOMImplementation
interface.
Parameters
feature | The name of the feature requested. Note that any plus sign "+" prepended to the name of the feature will be ignored since it is not significant in the context of this method. |
---|---|
version | This is the version number of the feature to test. |
Returns
- Returns an object which implements the specialized APIs of
the specified feature and version, if any, or
null
if there is no object which implements interfaces associated with that feature. If theDOMObject
returned by this method implements theDOMImplementation
interface, it must delegate to the primary coreDOMImplementation
and not return results inconsistent with the primary coreDOMImplementation
such ashasFeature
,getFeature
, etc.
public abstract boolean hasFeature (String feature, String version)
Test if the DOM implementation implements a specific feature and version, as specified in .
Parameters
feature | The name of the feature to test. |
---|---|
version | This is the version number of the feature to test. |
Returns
true
if the feature is implemented in the specified version,false
otherwise.