#ifndef DocumentType_h
#define DocumentType_h
#include "Node.h"
namespace WebCore {
class NamedNodeMap;
class DOMImplementation;
class DocumentType : public Node
{
public:
DocumentType(DOMImplementation *, Document *, const String &name, const String &publicId, const String &systemId);
DocumentType(Document *, const String &name, const String &publicId, const String &systemId);
DocumentType(Document *, const DocumentType &);
NamedNodeMap *entities() const { return m_entities.get(); }
NamedNodeMap *notations() const { return m_notations.get(); }
String name() const { return m_name; }
String publicId() const { return m_publicId; }
String systemId() const { return m_systemId; }
String internalSubset() const { return m_subset; }
virtual String baseURI() const;
DOMImplementation *implementation() const { return m_implementation.get(); }
virtual String nodeName() const;
virtual NodeType nodeType() const;
virtual PassRefPtr<Node> cloneNode(bool deep);
virtual String toString() const;
private:
RefPtr<DOMImplementation> m_implementation;
RefPtr<NamedNodeMap> m_entities;
RefPtr<NamedNodeMap> m_notations;
String m_name;
String m_publicId;
String m_systemId;
String m_subset;
};
}
#endif