Document Type Definition
Document Type Definition (DTD), defined in XML and SGML specifications is slightly different. SGML is the language from which XML was derived. Document type definition is one of several SGML and XML schema languages therefore the term used to describe a document or portion is authored in the DTD language. A DTD is primarily used for the expression of a schema via a set of declarations that yield to a particular markup syntax and that describe a class, or type, of SGML or XML documents, in terms of constraints on the structure of those documents. Constructs that may not be always required by DTD, but that may affect the interpretation of some documents.
Other specification languages such as XML Schema and RELAX NG have been released with the DTD introduction having additional functionality while it is native to the SGML and XML specifications.
As an expression of a schema, a DTD specifies, in effect, the syntax of an "application" of SGML or XML, such as the derivative language HTML or XHTML. This syntax is usually a less general form of the syntax of SGML or XML.
In a DTD, element and attribute-list declarations are used to describe the structure of a class of documents. The names of the elements in the declaration allows the set of elements within the document and specify how each element contains declared elements and runs of character data. Names declared in the attribute-list have the allowable set of attributes for each declared element, including the type of each attribute value, if not an explicit set of valid value(s).