class Poco::XML::DocumentType
Overview
Each Document has a doctype attribute whose value is either null or a DocumentType object. More…
#include <DocumentType.h> class DocumentType: public Poco::XML::AbstractContainerNode { public: // methods const XMLString& name() const; NamedNodeMap* entities() const; NamedNodeMap* notations() const; const XMLString& publicId() const; const XMLString& systemId() const; const XMLString& internalSubset() const; virtual const XMLString& nodeName() const; virtual unsigned short nodeType() const; protected: // construction DocumentType( Document* pOwner, const XMLString& name, const XMLString& publicId, const XMLString& systemId ); DocumentType( Document* pOwner, const DocumentType& dt ); // methods virtual Node* copyNode( bool deep, Document* pOwnerDocument ) const; };
Inherited Members
public: // typedefs typedef Poco::XML::NamespaceSupport NSMap; // enums enum { ELEMENT_NODE = 1, ATTRIBUTE_NODE, TEXT_NODE, CDATA_SECTION_NODE, ENTITY_REFERENCE_NODE, ENTITY_NODE, PROCESSING_INSTRUCTION_NODE, COMMENT_NODE, DOCUMENT_NODE, DOCUMENT_TYPE_NODE, DOCUMENT_FRAGMENT_NODE, NOTATION_NODE, }; // methods void duplicate() const; void release() const; virtual void autoRelease() = 0; virtual void addEventListener( const XMLString& type, EventListener* listener, bool useCapture ) = 0; virtual void removeEventListener( const XMLString& type, EventListener* listener, bool useCapture ) = 0; virtual bool dispatchEvent(Event* evt) = 0; virtual const XMLString& nodeName() const = 0; const XMLString& nodeValue() const; virtual const XMLString& getNodeValue() const = 0; virtual void setNodeValue(const XMLString& value) = 0; virtual unsigned short nodeType() const = 0; virtual Node* parentNode() const = 0; virtual NodeList* childNodes() const = 0; virtual Node* firstChild() const = 0; virtual Node* lastChild() const = 0; virtual Node* previousSibling() const = 0; virtual Node* nextSibling() const = 0; virtual NamedNodeMap* attributes() const = 0; virtual Document* ownerDocument() const = 0; virtual Node* insertBefore( Node* newChild, Node* refChild ) = 0; virtual Node* replaceChild( Node* newChild, Node* oldChild ) = 0; virtual Node* removeChild(Node* oldChild) = 0; virtual Node* appendChild(Node* newChild) = 0; virtual bool hasChildNodes() const = 0; virtual Node* cloneNode(bool deep) const = 0; virtual void normalize() = 0; virtual bool isSupported( const XMLString& feature, const XMLString& version ) const = 0; virtual const XMLString& namespaceURI() const = 0; virtual XMLString prefix() const = 0; virtual const XMLString& localName() const = 0; virtual bool hasAttributes() const = 0; virtual XMLString innerText() const = 0; virtual Node* getNodeByPath(const XMLString& path) const = 0; virtual Node* getNodeByPathNS( const XMLString& path, const NSMap& nsMap ) const = 0; virtual const XMLString& nodeName() const; virtual const XMLString& getNodeValue() const; virtual void setNodeValue(const XMLString& value); virtual Node* parentNode() const; virtual NodeList* childNodes() const; virtual Node* firstChild() const; virtual Node* lastChild() const; virtual Node* previousSibling() const; virtual Node* nextSibling() const; virtual NamedNodeMap* attributes() const; virtual Document* ownerDocument() const; virtual Node* insertBefore( Node* newChild, Node* refChild ); virtual Node* replaceChild( Node* newChild, Node* oldChild ); virtual Node* removeChild(Node* oldChild); virtual Node* appendChild(Node* newChild); virtual bool hasChildNodes() const; virtual Node* cloneNode(bool deep) const; virtual void normalize(); virtual bool isSupported( const XMLString& feature, const XMLString& version ) const; virtual const XMLString& namespaceURI() const; virtual XMLString prefix() const; virtual const XMLString& localName() const; virtual bool hasAttributes() const; virtual void addEventListener( const XMLString& type, EventListener* listener, bool useCapture ); virtual void removeEventListener( const XMLString& type, EventListener* listener, bool useCapture ); virtual bool dispatchEvent(Event* evt); virtual XMLString innerText() const; virtual Node* getNodeByPath(const XMLString& path) const; virtual Node* getNodeByPathNS( const XMLString& path, const NSMap& nsMap ) const; virtual void autoRelease(); virtual Node* firstChild() const; virtual Node* lastChild() const; virtual Node* insertBefore( Node* newChild, Node* refChild ); virtual Node* replaceChild( Node* newChild, Node* oldChild ); virtual Node* removeChild(Node* oldChild); virtual Node* appendChild(Node* newChild); virtual bool hasChildNodes() const; virtual bool hasAttributes() const; virtual Node* getNodeByPath(const XMLString& path) const; virtual Node* getNodeByPathNS( const XMLString& path, const NSMap& nsMap ) const; protected: // fields static const XMLString EMPTY_STRING; // methods virtual Node* copyNode( bool deep, Document* pOwnerDocument ) const = 0; virtual bool events() const; virtual bool eventsSuspended() const; void captureEvent(Event* evt); void bubbleEvent(Event* evt); void dispatchSubtreeModified(); void dispatchNodeInserted(); void dispatchNodeRemoved(); virtual void dispatchNodeRemovedFromDocument(); virtual void dispatchNodeInsertedIntoDocument(); void dispatchAttrModified( Attr* pAttr, MutationEvent::AttrChangeType changeType, const XMLString& prevValue, const XMLString& newValue ); void dispatchCharacterDataModified( const XMLString& prevValue, const XMLString& newValue ); void setOwnerDocument(Document* pOwnerDocument); virtual void dispatchNodeRemovedFromDocument(); virtual void dispatchNodeInsertedIntoDocument(); bool hasAttributeValue( const XMLString& name, const XMLString& value, const NSMap* pNSMap ) const; static const Node* findNode( XMLString::const_iterator& it, const XMLString::const_iterator& end, const Node* pNode, const NSMap* pNSMap ); static const Node* findElement( const XMLString& name, const Node* pNode, const NSMap* pNSMap ); static const Node* findElement( int index, const Node* pNode, const NSMap* pNSMap ); static const Node* findElement( const XMLString& attr, const XMLString& value, const Node* pNode, const NSMap* pNSMap ); static const Attr* findAttribute( const XMLString& name, const Node* pNode, const NSMap* pNSMap ); static bool namesAreEqual( const Node* pNode1, const Node* pNode2, const NSMap* pNSMap ); static bool namesAreEqual( const Node* pNode, const XMLString& name, const NSMap* pNSMap );
Detailed Documentation
Each Document has a doctype attribute whose value is either null or a DocumentType object.
The DocumentType interface in the DOM Level 1 Core provides an interface to the list of entities that are defined for the document, and little else because the effect of namespaces and the various XML scheme efforts on DTD representation are not clearly understood as of this writing.
The DOM Level 1 doesn’t support editing DocumentType nodes.
Methods
const XMLString& name() const
The name of the DTD; i.e., the name immediately following the DOCTYPE keyword.
NamedNodeMap* entities() const
A NamedNodeMap containing the general entities, both external and internal, declared in the DTD.
Duplicates are discarded.
Note: In this implementation, only the external entities are reported. Every node in this map also implements the Entity interface.
The returned NamedNodeMap must be released with a call to release() when no longer needed.
NamedNodeMap* notations() const
A NamedNodeMap containing the notations declared in the DTD.
Duplicates are discarded. Every node in this map also implements the Notation interface. The DOM Level 1 does not support editing notations, therefore notations cannot be altered in any way.
The returned NamedNodeMap must be released with a call to release() when no longer needed.
const XMLString& publicId() const
Returns the public identifier of the external DTD subset.
const XMLString& systemId() const
Returns the system identifier of the external DTD subset.
const XMLString& internalSubset() const
Returns the internal DTD subset.
This implementation returns an empty string.
virtual const XMLString& nodeName() const
Returns the name of this node, depending on its type.
virtual unsigned short nodeType() const
Returns a code representing the type of the underlying object.