Class | REXML::DocType
In: | temp/doctype.rb
Parent: | Parent

Represents an XML DOCTYPE declaration; that is, the contents of <!DOCTYPE … >. DOCTYPES can be used to declare the DTD of a document, as well as being used to declare entities used in the document.

### Methods

add attribute_of attributes_of clone context entity new node_type notation notations public system write

### Included Modules

XMLTokens

### Constants

START | = | "<!DOCTYPE"
STOP | = | ">"
SYSTEM | = | "SYSTEM"
PUBLIC | = | "PUBLIC"
DEFAULT_ENTITIES | = | { 'gt'=>EntityConst::GT, 'lt'=>EntityConst::LT, 'quot'=>EntityConst::QUOT, "apos"=>EntityConst::APOS

### Attributes

entities | [R] | name is the name of the doctype external_id is the referenced DTD, if given
external_id | [R] | name is the name of the doctype external_id is the referenced DTD, if given
name | [R] | name is the name of the doctype external_id is the referenced DTD, if given
namespaces | [R] | name is the name of the doctype external_id is the referenced DTD, if given

### Public Class methods

new( first, parent=nil )

Constructor

      dt = DocType.new( 'foo', '-//I/Hate/External/IDs' )
      # <!DOCTYPE foo '-//I/Hate/External/IDs'>
      dt = DocType.new( doctype_to_clone )
      # Incomplete.  Shallow clone of doctype

`Note` that the constructor:

     Doctype.new( Source.new( "<!DOCTYPE foo 'bar'>" ) )

is deprecated. Do not use it. It will probably disappear.

### Public Instance methods

add(child)
attribute_of(element, attribute)
attributes_of(element)
clone()
context()
entity( name )
node_type()
notation(name)

Retrieves a named notation. Only notations declared in the internal DTD subset can be retrieved.

Method contributed by Henrik Martensson

notations()

This method returns a list of notations that have been declared in the internal DTD subset. Notations in the external DTD subset are not listed.

Method contributed by Henrik Martensson

public()

This method retrieves the public identifier identifying the document‘s DTD.

Method contributed by Henrik Martensson

system()

This method retrieves the system identifier identifying the document‘s DTD

Method contributed by Henrik Martensson

write( output, indent=0, transitive=false, ie_hack=false )

output: | Where to write the string
indent: | An integer. If -1, no indentation will be used; otherwise, the indentation will be this number of spaces, and children will be indented an additional amount.
transitive: | Ignored
ie_hack: | Ignored

[Validate]