# The DOMDocumentType class

(PHP 5, PHP 7)

## Introduction

Each DOMDocument has a `doctype` attribute whose value is either `NULL` or a DOMDocumentType object.

## Class synopsis

DOMDocumentType extends DOMNode {
/* Properties */
public readonly string $publicId ;
public readonly string $systemId ;
public readonly string $name ;
public readonly DOMNamedNodeMap $entities ;
public readonly DOMNamedNodeMap $notations ;
public readonly string $internalSubset ;
/* Inherited properties */
public readonly string $nodeName ;
public string $nodeValue ;
public readonly int $nodeType ;
public readonly DOMNode|null $parentNode ;
public readonly DOMNodeList $childNodes ;
public readonly DOMNode|null $firstChild ;
public readonly DOMNode|null $lastChild ;
public readonly DOMNode|null $previousSibling ;
public readonly DOMNode|null $nextSibling ;
public readonly DOMNamedNodeMap|null $attributes ;
public readonly DOMDocument|null $ownerDocument ;
public readonly string|null $namespaceURI ;
public string $prefix ;
public readonly string $localName ;
public readonly string|null $baseURI ;
public string $textContent ;
/* Inherited methods */
public DOMNode::appendChild ( DOMNode `$newnode` ) : DOMNode
public DOMNode::C14N ([ bool `$exclusive` [, bool `$with_comments` [, array `$xpath` [, array `$ns_prefixes` ]]]] ) : string|false
public DOMNode::C14NFile ( string `$uri` [, bool `$exclusive` = `FALSE` [, bool `$with_comments` = `FALSE` [, array `$xpath` [, array `$ns_prefixes` ]]]] ) : int|false
public DOMNode::cloneNode ([ bool `$deep` ] ) : DOMNode
public DOMNode::getLineNo ( ) : int
public DOMNode::getNodePath ( ) : string
public DOMNode::hasAttributes ( ) : bool
public DOMNode::hasChildNodes ( ) : bool
public DOMNode::insertBefore ( DOMNode `$newnode` [, DOMNode `$refnode` ] ) : DOMNode
public DOMNode::isDefaultNamespace ( string `$namespaceURI` ) : bool
public DOMNode::isSameNode ( DOMNode `$node` ) : bool
public DOMNode::isSupported ( string `$feature` , string `$version` ) : bool
public DOMNode::lookupNamespaceUri ( string `$prefix` ) : string
public DOMNode::lookupPrefix ( string `$namespaceURI` ) : string
public DOMNode::normalize ( ) : void
public DOMNode::removeChild ( DOMNode `$oldnode` ) : DOMNode
public DOMNode::replaceChild ( DOMNode `$newnode` , DOMNode `$oldnode` ) : DOMNode
}

## Properties

publicId

  The public identifier of the external subset.

systemId

  The system identifier of the external subset. This may be an absolute URI or not.

name

  The name of DTD; i.e., the name immediately following the `DOCTYPE` keyword.

entities

  A DOMNamedNodeMap containing the general entities, both external and internal, declared in the DTD.

notations

  A DOMNamedNodeMap containing the notations declared in the DTD.

internalSubset

  The internal subset as a string, or null if there is none. This does not contain the delimiting square brackets.