This document contains the Experimental Apache Recommended C++ Language
binding for the Document
Object Model Level 3.0 Core, and for the subset of Document
Object Model Level 3.0 Abstract Schemas and Load and Save. Both
are W3C Working Draft of 09 April 2002.
The definitions are divided into Core, and Load and Save. The headers are also available in Xerces-C++ distribution.
Note:
Date | Description |
Xerces-C++ 2.0: July 23, 2002 | Created |
Xerces-C++ 2.1: August 26, 2002 | Modified
- add const modifier to DOMNode::lookupNamespacePrefix - add const modifier to DOMNode::lookupNamespaceURI - add const modifier to DOMNode::isDefaultNamespace |
Xerces-C++ 2.2: February 7, 2003 | Modified
- add DOMElement::getTypeInfo and DOMAttr::getTypeInfo and DOMTypeInfo.hpp - add const modifier to DOMNode::compareTreePosition, and add DOMTreePosition - add const modifier to DOMNode::isSameNode - add const modifier to DOMNode::isEqualNode - add const modifier to DOMImplementation::hasFeature - fix typo: "Mode:" -> "Model" - added DOMAttr::isID - added DOMElement::setIdAttribute, DOMElement::setIdAttributeNS, DOMElement::setIdAttributeNode |
Xerces-C++ 2.3 | Modified
- added DOMError::getRelatedData, DOMError::setRelatedData, DOMError::SetType, DOMError::getType - removed DOMDocument::setFeature, DOMDocument::getFeature, DOMDocument::canSetFeature - added DOMDocument::getDOMConfiguration |
{ | |||
public: | |||
static | DOMImplementation* | getDOMImplementation(const XMLCh* features); | |
static | void | addSource(DOMImplementationSource* source); | |
}; |
{ | |||
public: | |||
enum | ExceptionCode { | ||
INDEX_SIZE_ERR | = 1, | ||
DOMSTRING_SIZE_ERR | = 2, | ||
HIERARCHY_REQUEST_ERR | = 3, | ||
WRONG_DOCUMENT_ERR | = 4, | ||
INVALID_CHARACTER_ERR | = 5, | ||
NO_DATA_ALLOWED_ERR | = 6, | ||
NO_MODIFICATION_ALLOWED_ERR | = 7, | ||
NOT_FOUND_ERR | = 8, | ||
NOT_SUPPORTED_ERR | = 9, | ||
INUSE_ATTRIBUTE_ERR | = 10, | ||
INVALID_STATE_ERR | = 11, | ||
SYNTAX_ERR | = 12, | ||
INVALID_MODIFICATION_ERR | = 13, | ||
NAMESPACE_ERR | = 14, | ||
INVALID_ACCESS_ERR | = 15 | ||
VALIDATION_ERR | = 16 | ||
}; | |||
ExceptionCode | code; | ||
const XMLCh* | msg; | ||
}; |
{ | |||
public: | |||
virtual | DOMImplementation* | getDOMImplementation(const XMLCh* features) const = 0; | |
}; |
{ | |||
public: | |||
virtual | bool | hasFeature(const XMLCh*
feature,
const XMLCh* version) const = 0; |
|
virtual | DOMDocumentType* | createDocumentType(const
XMLCh* qualifiedName,
const XMLCh* publicId, const XMLCh* systemId) = 0; |
|
virtual | DOMDocument* | createDocument(const
XMLCh* namespaceURI,
const XMLCh* qualifiedName, DOMDocumentType* doctype) = 0; |
|
virtual | DOMImplementation* | getInterface(const XMLCh* feature) = 0; | |
}; |
{ | |||
}; |
{ | |||
public: | |||
virtual | DOMElement* | createElement(const XMLCh* tagName) = 0; | |
virtual | DOMDocumentFragment* | createDocumentFragment() = 0; | |
virtual | DOMText* | createTextNode(const XMLCh* data) = 0; | |
virtual | DOMComment* | createComment(const XMLCh* data) = 0; | |
virtual | DOMCDATASection* | createCDATASection(const XMLCh* data) = 0; | |
virtual | DOMProcessingInstruction* | createProcessingInstruction(const
XMLCh* target,
const XMLCh* data) = 0; |
|
virtual | DOMAttr* | createAttribute(const XMLCh* name) = 0; | |
virtual | DOMEntityReference* | createEntityReference(const XMLCh* name) = 0; | |
virtual | DOMDocumentType* | getDoctype() const = 0; | |
virtual | DOMImplementation* | getImplementation() const = 0; | |
virtual | DOMElement* | getDocumentElement() const = 0; | |
virtual | DOMNodeList* | getElementsByTagName(const XMLCh* tagname) const = 0; | |
virtual | DOMNode* | importNode(DOMNode* importedNode, bool deep) = 0; | |
virtual | DOMElement* | createElementNS(const
XMLCh* namespaceURI,
const XMLCh* qualifiedName) = 0; |
|
virtual | DOMAttr* | createAttributeNS(const
XMLCh* namespaceURI,
const XMLCh* qualifiedName) = 0; |
|
virtual | DOMNodeList* | getElementsByTagNameNS(const
XMLCh* namespaceURI,
const XMLCh* localName) const = 0; |
|
virtual | DOMElement* | getElementById(const XMLCh* elementId) const = 0; | |
virtual | const XMLCh* | getActualEncoding() const = 0; | |
virtual | void | setActualEncoding(const XMLCh* actualEncoding) = 0; | |
virtual | const XMLCh* | getEncoding() const = 0; | |
virtual | void | setEncoding(const XMLCh* encoding) = 0; | |
virtual | bool | getStandalone() const = 0; | |
virtual | void | setStandalone(bool standalone) = 0; | |
virtual | const XMLCh* | getVersion() const = 0; | |
virtual | void | setVersion((const XMLCh* version) = 0; | |
virtual | const XMLCh* | getDocumentURI() const = 0; | |
virtual | void | setDocumentURI(const XMLCh* documentURI) = 0; | |
virtual | bool | getStrictErrorChecking() const = 0; | |
virtual | void | setStrictErrorChecking(bool strictErrorChecking) = 0; | |
virtual | DOMNode* | renameNode(DOMNode* n, const XMLCh* namespaceURI, const XMLCh* name) = 0; | |
virtual | DOMNode* | adoptNode(DOMNode* source) = 0; | |
virtual | void | normalizeDocument() = 0; | |
virtual | DOMConfiguration* | getDOMConfiguration(const XMLCh* const name, bool state) const = 0; | |
}; |
{ | |||
public: | |||
enum | NodeType { | ||
ELEMENT_NODE | = 1, | ||
ATTRIBUTE_NODE | = 2, | ||
TEXT_NODE | = 3, | ||
CDATA_SECTION_NODE | = 4, | ||
ENTITY_REFERENCE_NODE | = 5, | ||
ENTITY_NODE | = 6, | ||
PROCESSING_INSTRUCTION_NODE | = 7, | ||
COMMENT_NODE | = 8, | ||
DOCUMENT_NODE | = 9, | ||
DOCUMENT_TYPE_NODE | = 10, | ||
DOCUMENT_FRAGMENT_NODE | = 11, | ||
NOTATION_NODE | = 12, | ||
}; | |||
enum | DOMTreePosition { | ||
TREE_POSITION_PRECEDING | = 0x01, | ||
TREE_POSITION_FOLLOWING | = 0x02, | ||
TREE_POSITION_ANCESTOR | = 0x04, | ||
TREE_POSITION_DESCENDANT | = 0x08, | ||
TREE_POSITION_EQUIVALENT | = 0x10, | ||
TREE_POSITION_SAME_NODE | = 0x20, | ||
TREE_POSITION_DISCONNECTED | = 0x00, | ||
}; | |||
virtual | const XMLCh* | getNodeName() const = 0; | |
virtual | const XMLCh* | getNodeValue() const = 0; | |
virtual | short | getNodeType() const = 0; | |
virtual | DOMNode* | getParentNode() const = 0; | |
virtual | DOMNodeList* | getChildNodes() const = 0; | |
virtual | DOMNode* | getFirstChild() const = 0; | |
virtual | DOMNode* | getLastChild() const = 0; | |
virtual | DOMNode* | getPreviousSibling() const = 0; | |
virtual | DOMNode* | getNextSibling() const = 0; | |
virtual | DOMNamedNodeMap* | getAttributes() const = 0; | |
virtual | DOMDocument* | getOwnerDocument() const = 0; | |
virtual | DOMNode* | cloneNode(bool deep) const = 0; | |
virtual | DOMNode* | insertBefore(DOMNode* newChild, DOMNode* refChild) = 0; | |
virtual | DOMNode* | replaceChild(DOMNode* newChild, DOMNode* oldChild) = 0; | |
virtual | DOMNode* | removeChild(DOMNode* oldChild) = 0; | |
virtual | DOMNode* | appendChild(DOMNode* newChild) = 0; | |
virtual | bool | hasChildNodes() const = 0; | |
virtual | void | setNodeValue(const XMLCh *nodeValue) = 0; | |
virtual | void | normalize() = 0; | |
virtual | bool | isSupported(const XMLCh* feature, const XMLCh* version) const = 0; | |
virtual | const XMLCh* | getNamespaceURI() const = 0; | |
virtual | const XMLCh* | getPrefix() const = 0; | |
virtual | const XMLCh* | getLocalName() const = 0; | |
virtual | void | setPrefix(const XMLCh* prefix) = 0; | |
virtual | bool | hasAttributes() const = 0; | |
virtual | bool | isSameNode(const DOMNode* other) const = 0; | |
virtual | bool | isEqualNode(const DOMNode* arg) const = 0; | |
virtual | void* | setUserData(const XMLCh*
key, void* data,
DOMUserDataHandler* handler) = 0; |
|
virtual | void* | getUserData(const XMLCh* key) const = 0; | |
virtual | const XMLCh* | getBaseURI() const = 0; | |
virtual | short | compareTreePosition(const DOMNode* other) const = 0; | |
virtual | const XMLCh* | getTextContent() const = 0; | |
virtual | void | setTextContent(const XMLCh* textContent) = 0; | |
virtual | const XMLCh* | lookupNamespacePrefix(const XMLCh* namespaceURI, bool useDefault) const = 0; | |
virtual | bool | isDefaultNamespace(const XMLCh* namespaceURI) const = 0; | |
virtual | const XMLCh* | lookupNamespaceURI(const XMLCh* prefix) const = 0; | |
virtual | DOMNode* | getInterface(const XMLCh* feature) = 0; | |
}; |
//
// Called to
indicate that this Node (and its associated children) is no longer in use
// and
that the implementation may relinquish any resources associated with it
and
// its
associated children.
//
// If this is
a document, any nodes it owns (created by DOMDocument::createXXXX())
// are
also released.
//
// Access to
a released object will lead to unexpected result.
//
// @exception
DOMException
//
INVALID_ACCESS_ERR: Raised if this Node has a parent and thus should not
be released yet.
//
virtual void
release() = 0;
};
{ | |||
public: | |||
virtual | DOMNode* | item(XMLSize_t index) const = 0; | |
virtual | XMLSize_t | getLength() const = 0; | |
}; |
{ | |||
public: | |||
virtual | DOMNode* | setNamedItem(DOMNode* arg) = 0; | |
virtual | DOMNode* | item(XMLSize_t index) const = 0; | |
virtual | DOMNode* | getNamedItem(const XMLCh* name) const = 0; | |
virtual | XMLSize_t | getLength() const = 0; | |
virtual | DOMNode* | removeNamedItem(const XMLCh* name) = 0; | |
virtual | DOMNode* | getNamedItemNS(const XMLCh* namespaceURI, const XMLCh* localName) const = 0; | |
virtual | DOMNode* | setNamedItemNS(DOMNode* arg) = 0; | |
virtual | DOMNode* | removeNamedItemNS(const XMLCh* namespaceURI, const XMLCh* localName) = 0; | |
}; |
{ | |||
public: | |||
virtual | const XMLCh* | getData() const = 0; | |
virtual | XMLSize_t | getLength() const = 0; | |
virtual | const XMLCh* | substringData(XMLSize_t offset, XMLSize_t count) const = 0; | |
virtual | void | appendData(const XMLCh* arg) = 0; | |
virtual | void | insertData(XMLSize_t offset, const XMLCh* arg) = 0; | |
virtual | void | deleteData(XMLSize_t offset, XMLSize_t count) = 0; | |
virtual | void | replaceData(XMLSize_t offset, XMLSize_t count, const XMLCh* arg) = 0; | |
virtual | void | setData(const XMLCh* data) = 0; | |
}; |
{ | |||
public: | |||
virtual | const XMLCh* | getName() const = 0; | |
virtual | bool | getSpecified() const = 0; | |
virtual | const XMLCh* | getValue() const = 0; | |
virtual | void | setValue(const XMLCh* value) = 0; | |
virtual | DOMElement* | getOwnerElement() const = 0; | |
virtual | bool | isId() const = 0; | |
virtual | const DOMTypeInfo* | getTypeInfo() = 0; | |
}; |
{ | |||
public: | |||
virtual | const XMLCh* | getTagName() const = 0; | |
virtual | const XMLCh* | getAttribute(const XMLCh* name) const = 0; | |
virtual | DOMAttr* | getAttributeNode(const XMLCh* name) const = 0; | |
virtual | DOMNodeList* | getElementsByTagName(const XMLCh* name) const = 0; | |
virtual | void | setAttribute(const XMLCh* name, const XMLCh* value) = 0; | |
virtual | DOMAttr* | setAttributeNode(DOMAttr *newAttr) = 0; | |
virtual | DOMAttr* | removeAttributeNode(DOMAttr* oldAttr) = 0; | |
virtual | void | removeAttribute(const XMLCh* name) = 0; | |
virtual | const XMLCh* | getAttributeNS(const
XMLCh* namespaceURI,
const XMLCh* localName) const = 0; |
|
virtual | void | setAttributeNS(const
XMLCh* namespaceURI,
const XMLCh* qualifiedName, const XMLCh* value) = 0; |
|
virtual | void | removeAttributeNS(const
XMLCh* namespaceURI,
const XMLCh* localName) = 0; |
|
virtual | DOMAttr* | getAttributeNodeNS(const
XMLCh* namespaceURI,
const XMLCh* localName) const = 0; |
|
virtual | DOMAttr* | setAttributeNodeNS(DOMAttr* newAttr) = 0; | |
virtual | DOMNodeList* | getElementsByTagNameNS(const
XMLCh* namespaceURI,
const XMLCh* localName) const = 0; |
|
virtual | bool | hasAttribute(const XMLCh* name) const = 0; | |
virtual | bool | hasAttributeNS(const
XMLCh* namespaceURI,
const XMLCh* localName) const = 0; |
|
virtual | void | setIdAttribute(const XMLCh* name) = 0; | |
virtual | void | setIdAttributeNS(const XMLCh* namespaceURI, const XMLCh* localName) = 0; | |
virtual | void | setIdAttributeNode(DOMAttr *newAttr) = 0; | |
virtual | const DOMTypeInfo* | getTypeInfo() = 0; | |
}; |
{ | |||
public: | |||
virtual | DOMText* | splitText(XMLSize_t offset) = 0; | |
virtual | bool | getIsWhitespaceInElementContent() const = 0; | |
virtual | const XMLCh* | getWholeText() = 0; | |
virtual | DOMText* | replaceWholeText(const XMLCh* content) = 0; | |
}; |
{ | |||
}; |
{ | |||
public: | |||
enum | DOMOperationType { | ||
NODE_CLONED | = 1, | ||
NODE_IMPORTED | = 2, | ||
NODE_DELETED | = 3, | ||
NODE_RENAMED | = 4 | ||
}; | |||
virtual | void | handle(DOMOperationType
operation,
const XMLCh* const key, void* data, const DOMNode* src, const DOMNode* dst) = 0; |
|
}; |
{ | |||
public: | |||
enum | ErrorSeverity { | ||
DOM_SEVERITY_WARNING | = 0, | ||
DOM_SEVERITY_ERROR | = 1, | ||
DOM_SEVERITY_FATAL_ERROR | = 2 | ||
}; | |||
virtual | short | getSeverity() const = 0; | |
virtual | const XMLCh* | getMessage() const = 0; | |
virtual | DOMLocator* | getLocation() const = 0; | |
virtual | void* | getRelatedException() const = 0; | |
virtual | const XMLCh* | getType() const = 0; | |
virtual | void* | getRelatedData() const = 0; | |
virtual | void | setSeverity(const short severity) = 0; | |
virtual | void | setMessage(const XMLCh* const message) = 0; | |
virtual | void | setLocation(DOMLocator* const location) = 0 | |
virtual | void | setRelatedException(void* exception) const = 0; | |
virtual | void | setRelatedData(void* relatedData) const = 0; | |
virtual | void | setType(const XMLCh* type) const = 0; | |
}; |
{ | |||
public: | |||
virtual | bool | handleError(const DOMError& domError) = 0; | |
}; |
{ | |||
public: | |||
virtual | XMLSSize_t | getLineNumber() const = 0; | |
virtual | XMLSSize_t | getColumnNumber() const = 0; | |
virtual | XMLSSize_t | getOffset() const = 0; | |
virtual | DOMNode* | getErrorNode() const = 0; | |
virtual | const XMLCh* | getURI() const = 0; | |
virtual | void | setLineNumber(const XMLSSize_t lineNumber) = 0; | |
virtual | void | setColumnNumber(const XMLSSize_t columnNumber) = 0; | |
virtual | void | setOffset(const XMLSSize_t offset) = 0; | |
virtual | void | setErrorNode(DOMNode* const errorNode) = 0; | |
virtual | void | setURI(const XMLCh* const uri) = 0 | |
}; |
{ | |||
}; |
{ | |||
public: | |||
virtual | const XMLCh* | getName() const = 0; | |
virtual | DOMNamedNodeMap* | getEntities() const = 0; | |
virtual | DOMNamedNodeMap* | getNotations() const = 0; | |
virtual | const XMLCh* | getPublicId() const = 0; | |
virtual | const XMLCh* | getSystemId() const = 0; | |
virtual | const XMLCh* | getInternalSubset() const = 0; | |
}; |
{ | |||
public: | |||
virtual | const XMLCh* | getPublicId() const = 0; | |
virtual | const XMLCh* | getSystemId() const = 0; | |
}; |
{ | |||
public: | |||
virtual | const XMLCh* | getPublicId() const = 0; | |
virtual | const XMLCh* | getSystemId() const = 0; | |
virtual | const XMLCh* | getNotationName() const = 0; | |
virtual | const XMLCh* | getActualEncoding() const = 0; | |
virtual | void | setActualEncoding(const XMLCh* actualEncoding) = 0; | |
virtual | const XMLCh* | getEncoding() const = 0; | |
virtual | void | setEncoding(const XMLCh* encoding) = 0; | |
virtual | const XMLCh* | getVersion() const = 0; | |
virtual | void | setVersion((const XMLCh* version) = 0; | |
}; |
{ | |||
}; |
{ | |||
public: | |||
virtual | const XMLCh* | getTarget() const = 0; | |
virtual | const XMLCh* | getData() const = 0; | |
virtual | void* | setData(const XMLCh* data) = 0; | |
}; |
{ | |||
virtual | const XMLCh* | getName() = 0; | |
virtual | const XMLCh* | getNamespace() = 0; | |
}; |
{ | |||
virtual | void | setParameter(const XMLCh* name, const void* value) = 0; | |
virtual | const void* | getParameter(const XMLCh* name) const = 0; | |
virtual | bool | canSetParameter(const XMLCh* name, const void* value) const = 0; | |
}; |
{ | |||
public: | |||
enum | { | ||
MODE_SYNCHRONOUS | =1, | ||
MODE_SYNCHRONOUS | =2 | ||
}; | |||
virtual | DOMBuilder* | createDOMBuilder(const short mode, const XMLCh* const schemaType) = 0; | |
virtual | DOMWriter* | createDOMWriter() = 0; | |
virtual | DOMInputSource* | createDOMInputSource() = 0; | |
}; |
{ | |||
public: | |||
virtual | const XMLCh* | getEncoding() const = 0; | |
virtual | const XMLCh* | getPublicId() const = 0; | |
virtual | const XMLCh* | getSystemId() const = 0; | |
virtual | const XMLCh* | getBaseURI() const = 0; | |
virtual | const XMLCh* | setEncoding() const = 0; | |
virtual | const XMLCh* | setPublicId() const = 0; | |
virtual | const XMLCh* | setSystemId() const = 0; | |
virtual | const XMLCh* | setBaseURI() const = 0; |
{ | |||
public: | |||
virtual | DOMInputSource* | resolverEntity(const
XMLCh* const publicId,
const XMLCh* const systemId const XMLCh* const baseURI) = 0; |
|
}; |
{ | |||
public: | |||
enum | ActionType { | ||
ACTION_REPLACE | = 1, | ||
ACTION_APPEND_AS_CHILDREN | = 2, | ||
ACTION_INSERT_AFTER | = 3, | ||
ACTION_INSERT_BEFORE | =4 | ||
}; | |||
virtual | DOMErrorHandler* | getErrorHandler() = 0; | |
virtual | const DOMErrorHandler* | getErrorHandler() const = 0; | |
virtual | DOMEntityResolver* | getEntityResolver() = 0; | |
virtual | const DOMEntityResolver* | getEntityResolver() const = 0; | |
virtual | DOMBuilderFilter* | getFilter() = 0; | |
virtual | const DOMBuilderFilter* | getFilter() const = 0; | |
virtual | void | setErrorHandler(DOMErrorHandler* const handler) = 0; | |
virtual | void | setEntityResolver(DOMEntityResolver* const handler) = 0; | |
virtual | void | setFilter(DOMBuilderFilter* const filter) = 0; | |
virtual | void | setFeature(const XMLCh* const name, const bool state) = 0; | |
virtual | bool | getFeature(const XMLCh* const name) const = 0; | |
virtual | bool | canSetFeature(const XMLCh* const name, const bool state) const = 0; | |
virtual | DOMDocument* | parse(const DOMInputSource& source) = 0; | |
virtual | DOMDocument* | parseURI(const XMLCh* const systemId) = 0; | |
virtual | void | parseWithContext(const
DOMInputSource& source,
DOMNode* const contextNode, const short action) = 0; |
{ | |||
public: | |||
virtual | bool | canSetFeature(const XMLCh* const featName, bool state) const = 0; | |
virtual | void | setFeature(const XMLCh* const featName, bool state) = 0; | |
virtual | bool | getFeature(const XMLCh* const featName) const = 0; | |
virtual | void | setEncoding(const XMLCh* const encoding) = 0; | |
virtual | void | setNewLine(const XMLCh* const newLine) = 0; | |
virtual | void | setErrorHandler(DOMErrorHandler* errorHandler) = 0; | |
virtual | void | setFilter(DOMWriterFilter* filter) = 0; | |
virtual | const XMLCh* | getEncoding() const = 0; | |
virtual | const XMLCh* | getNewLine() const = 0; | |
virtual | DOMErrorHandler* | getErrorHandler() const = 0; | |
virtual | DOMWriterFilter* | getFilter() const = 0; | |
virtual | bool | writeToNode(XMLFormatTarget* const destination, const DOMNode& nodeToWrite) = 0; | |
virtual | XMLCh* | writeToString(const DOMNode& nodeToWrite) = 0; |
{ | |||
public: | |||
virtual | unsigned long | getWhatToShow() const = 0; | |
virtual | void | setWhatToShow(unsigned long toShow) = 0; | |
}; |
Copyright © 2001 The Apache Software Foundation. All Rights Reserved. |