# Poco::XML

# class DOMImplementation

Library: XML
Package: DOM
Header: Poco/DOM/DOMImplementation.h

## Description

The DOMImplementation interface provides a number of methods for performing operations that are independent of any particular instance of the document object model. In this implementation, DOMImplementation is implemented as a singleton.

## Member Summary

Member Functions: createDocument, createDocumentType, hasFeature, instance

## Constructors

### DOMImplementation

DOMImplementation();

Creates the DOMImplementation.

## Destructor

### ~DOMImplementation

~DOMImplementation();

Destroys the DOMImplementation.

## Member Functions

### createDocument

Document * createDocument(
const XMLString & namespaceURI,
const XMLString & qualifiedName,
DocumentType * doctype
) const;

Creates an XML Document object of the specified type with its document element.

Note: You can also create a Document directly using the new operator.

### createDocumentType

DocumentType * createDocumentType(
const XMLString & name,
const XMLString & publicId,
const XMLString & systemId
) const;

Creates an empty DocumentType node. Entity declarations and notations are not made available. Entity reference expansions and default attribute additions do not occur.

### hasFeature

bool hasFeature(
const XMLString & feature,
const XMLString & version
) const;

Tests if the DOM implementation implements a specific feature.

The only supported features are "XML", version "1.0" and "Core", "Events", "MutationEvents" and "Traversal", version "2.0".

### instance

static const DOMImplementation & instance();

Returns a reference to the default DOMImplementation object.