Class DTD

All Implemented Interfaces:
DTDConstants

public class DTD
extends Object
implements DTDConstants

The representation of an SGML DTD. DTD describes a document syntax and is used in parsing of HTML documents. It contains a list of elements and their attributes as well as a list of entities defined in the DTD.

See Also:
Element, AttributeList, ContentModel, Parser

Fields

Modifier and Type Field and Description
Element applet
Element base
Element body
Hashtable<String,Element> elementHash
Vector<Element> elements
Hashtable<Object,Entity> entityHash
static int FILE_VERSION
Element head
Element html
Element isindex
Element meta
String name
Element p
Element param
Element pcdata
Element title

Fields inherited from interface javax.swing.text.html.parser.DTDConstants

ANY, CDATA, CONREF, CURRENT, DEFAULT, EMPTY, ENDTAG, ENTITIES, ENTITY, FIXED, GENERAL, ID, IDREF, IDREFS, IMPLIED, MD, MODEL, MS, NAME, NAMES, NMTOKEN, NMTOKENS, NOTATION, NUMBER, NUMBERS, NUTOKEN, NUTOKENS, PARAMETER, PI, PUBLIC, RCDATA, REQUIRED, SDATA, STARTTAG, SYSTEM

Constructors

Modifier Constructor and Description
protected DTD(String name)

Creates a new DTD with the specified name.

Methods

Modifier and Type Method and Description
protected AttributeList defAttributeList(String name, int type, int modifier, String value, String values, AttributeList atts)

Creates and returns an AttributeList.

protected ContentModel defContentModel(int type, Object obj, ContentModel next)

Creates and returns a new content model.

protected Element defElement(String name, int type, boolean omitStart, boolean omitEnd, ContentModel content, String[] exclusions, String[] inclusions, AttributeList atts)

Creates and returns an Element.

Entity defEntity(String name, int type, int ch)

Creates and returns a character Entity.

protected Entity defEntity(String name, int type, String str)

Creates and returns an Entity.

void defineAttributes(String name, AttributeList atts)

Defines attributes for an Element.

Element defineElement(String name, int type, boolean omitStart, boolean omitEnd, ContentModel content, BitSet exclusions, BitSet inclusions, AttributeList atts)

Returns the Element which matches the specified parameters.

Entity defineEntity(String name, int type, char[] data)

Defines an entity.

static DTD getDTD(String name)

Returns a DTD with the specified name.

Element getElement(int index)

Gets an element by index.

Element getElement(String name)

Gets an element by name.

Entity getEntity(int ch)

Gets a character entity.

Entity getEntity(String name)

Gets an entity by name.

String getName()

Gets the name of the DTD.

static void putDTDHash(String name, DTD dtd)
void read(DataInputStream in)

Recreates a DTD from an archived format.

String toString()

Returns a string representation of this DTD.

Methods inherited from class java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Fields

name

public String name

elements

public Vector<Element> elements

elementHash

public Hashtable<String,Element> elementHash

entityHash

public Hashtable<Object,Entity> entityHash

pcdata

public final Element pcdata

html

public final Element html

meta

public final Element meta

base

public final Element base

isindex

public final Element isindex
public final Element head

body

public final Element body

applet

public final Element applet

param

public final Element param

p

public final Element p

title

public final Element title

FILE_VERSION

public static final int FILE_VERSION
See Also:
Constant Field Values

Constructors

DTD

protected DTD(String name)

Creates a new DTD with the specified name.

Parameters:
name - the name, as a String of the new DTD

Methods

getName

public String getName()

Gets the name of the DTD.

Returns:
the name of the DTD

getEntity

public Entity getEntity(String name)

Gets an entity by name.

Returns:
the Entity corresponding to the name String

getEntity

public Entity getEntity(int ch)

Gets a character entity.

Returns:
the Entity corresponding to the ch character

getElement

public Element getElement(String name)

Gets an element by name. A new element is created if the element doesn't exist.

Parameters:
name - the requested String
Returns:
the Element corresponding to name, which may be newly created

getElement

public Element getElement(int index)

Gets an element by index.

Parameters:
index - the requested index
Returns:
the Element corresponding to index

defineEntity

public Entity defineEntity(String name,
                           int type,
                           char[] data)

Defines an entity. If the Entity specified by name, type, and data exists, it is returned; otherwise a new Entity is created and is returned.

Parameters:
name - the name of the Entity as a String
type - the type of the Entity
data - the Entity's data
Returns:
the Entity requested or a new Entity if not found

defineElement

public Element defineElement(String name,
                             int type,
                             boolean omitStart,
                             boolean omitEnd,
                             ContentModel content,
                             BitSet exclusions,
                             BitSet inclusions,
                             AttributeList atts)

Returns the Element which matches the specified parameters. If one doesn't exist, a new one is created and returned.

Parameters:
name - the name of the Element
type - the type of the Element
omitStart - true if start should be omitted
omitEnd - true if end should be omitted
content - the ContentModel
atts - the AttributeList specifying the Element
Returns:
the Element specified

defineAttributes

public void defineAttributes(String name,
                             AttributeList atts)

Defines attributes for an Element.

Parameters:
name - the name of the Element
atts - the AttributeList specifying the Element

defEntity

public Entity defEntity(String name,
                        int type,
                        int ch)

Creates and returns a character Entity.

Parameters:
name - the entity's name
Returns:
the new character Entity

defEntity

protected Entity defEntity(String name,
                           int type,
                           String str)

Creates and returns an Entity.

Parameters:
name - the entity's name
Returns:
the new Entity

defElement

protected Element defElement(String name,
                             int type,
                             boolean omitStart,
                             boolean omitEnd,
                             ContentModel content,
                             String[] exclusions,
                             String[] inclusions,
                             AttributeList atts)

Creates and returns an Element.

Parameters:
name - the element's name
Returns:
the new Element

defAttributeList

protected AttributeList defAttributeList(String name,
                                         int type,
                                         int modifier,
                                         String value,
                                         String values,
                                         AttributeList atts)

Creates and returns an AttributeList.

Parameters:
name - the attribute list's name
Returns:
the new AttributeList

defContentModel

protected ContentModel defContentModel(int type,
                                       Object obj,
                                       ContentModel next)

Creates and returns a new content model.

Parameters:
type - the type of the new content model
Returns:
the new ContentModel

toString

public String toString()

Returns a string representation of this DTD.

Overrides:
toString in class Object
Returns:
the string representation of this DTD

putDTDHash

public static void putDTDHash(String name,
                              DTD dtd)

getDTD

public static DTD getDTD(String name)
                  throws IOException

Returns a DTD with the specified name. If a DTD with that name doesn't exist, one is created and returned. Any uppercase characters in the name are converted to lowercase.

Parameters:
name - the name of the DTD
Returns:
the DTD which corresponds to name
Throws:
IOException

read

public void read(DataInputStream in)
          throws IOException

Recreates a DTD from an archived format.

Parameters:
in - the DataInputStream to read from
Throws:
IOException

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/javase/8/docs/api/javax/swing/text/html/parser/DTD.html