org.apache.xml.serialize
Class HTMLdtd
public final
class
HTMLdtd
extends Object
Utility class for accessing information specific to HTML documents.
The HTML DTD is expressed as three utility function groups. Two methods
allow for checking whether an element requires an open tag on printing
({@link #isEmptyTag}) or on parsing ({@link #isOptionalClosing}).
Two other methods translate character references from name to value and
from value to name. A small entities resource is loaded into memory the
first time any of these methods is called for fast and efficient access.
Version: $Revision: 1.18 $ $Date: 2004/02/24 23:34:03 $
Author: Assaf Arkin
| Field Summary |
| static String | HTMLPublicId
Public identifier for HTML 4.01 (Strict) document type. |
| static String | HTMLSystemId
System identifier for HTML 4.01 (Strict) document type. |
| static String | XHTMLPublicId
Public identifier for XHTML 1.0 (Strict) document type. |
| static String | XHTMLSystemId
System identifier for XHTML 1.0 (Strict) document type. |
| Method Summary |
| static int | charFromName(String name)
Returns the value of an HTML character reference by its name. |
| static String | fromChar(int value)
Returns the name of an HTML character reference based on its character
value. |
| static boolean | isBoolean(String tagName, String attrName)
Returns true if the specified attribute is a boolean and should be
printed without the value. |
| static boolean | isClosing(String tagName, String openTag)
Returns true if the opening of one element (tagName) implies
the closing of another open element (openTag). |
| static boolean | isElementContent(String tagName)
Returns true if element is declared to have element content.
|
| static boolean | isEmptyTag(String tagName)
Returns true if element is declared to be empty. |
| static boolean | isOnlyOpening(String tagName)
Returns true if element's closing tag is generally not printed.
|
| static boolean | isOptionalClosing(String tagName)
Returns true if element's closing tag is optional and need not
exist. |
| static boolean | isPreserveSpace(String tagName)
Returns true if element's textual contents preserves spaces.
|
| static boolean | isURI(String tagName, String attrName)
Returns true if the specified attribute it a URI and should be
escaped appropriately. |
public static final String HTMLPublicId
Public identifier for HTML 4.01 (Strict) document type.
public static final String HTMLSystemId
System identifier for HTML 4.01 (Strict) document type.
public static final String XHTMLPublicId
Public identifier for XHTML 1.0 (Strict) document type.
public static final String XHTMLSystemId
System identifier for XHTML 1.0 (Strict) document type.
public static int charFromName(String name)
Returns the value of an HTML character reference by its name. If the
reference is not found or was not defined as a character reference,
returns EOF (-1).
Parameters: name Name of character reference
Returns: Character code or EOF (-1)
public static String fromChar(int value)
Returns the name of an HTML character reference based on its character
value. Only valid for entities defined from character references. If no
such character value was defined, return null.
Parameters: value Character value of entity
Returns: Entity's name or null
public static boolean isBoolean(String tagName, String attrName)
Returns true if the specified attribute is a boolean and should be
printed without the value. This applies to attributes that are true
if they exist, such as selected (OPTION/INPUT).
Parameters: tagName The element's tag name attrName The attribute's name
public static boolean isClosing(String tagName, String openTag)
Returns true if the opening of one element (
tagName) implies
the closing of another open element (
openTag). For example,
every opening
LI will close the previously open
LI,
and every opening
BODY will close the previously open
HEAD.
Parameters: tagName The newly opened element openTag The already opened element
Returns: True if closing tag closes opening tag
public static boolean isElementContent(String tagName)
Returns true if element is declared to have element content.
Whitespaces appearing inside element content will be ignored,
other text will simply report an error.
Parameters: tagName The element tag name (upper case)
Returns: True if element content
public static boolean isEmptyTag(String tagName)
Returns true if element is declared to be empty. HTML elements are
defines as empty in the DTD, not by the document syntax.
Parameters: tagName The element tag name (upper case)
Returns: True if element is empty
public static boolean isOnlyOpening(String tagName)
Returns true if element's closing tag is generally not printed.
For example,
LI should not print the closing tag.
Parameters: tagName The element tag name (upper case)
Returns: True if only opening tag should be printed
public static boolean isOptionalClosing(String tagName)
Returns true if element's closing tag is optional and need not
exist. An error will not be reported for such elements if they
are not closed. For example,
LI is most often not closed.
Parameters: tagName The element tag name (upper case)
Returns: True if closing tag implied
public static boolean isPreserveSpace(String tagName)
Returns true if element's textual contents preserves spaces.
This only applies to PRE and TEXTAREA, all other HTML elements
do not preserve space.
Parameters: tagName The element tag name (upper case)
Returns: True if element's text content preserves spaces
public static boolean isURI(String tagName, String attrName)
Returns true if the specified attribute it a URI and should be
escaped appropriately. In HTML URIs are escaped differently
than normal attributes.
Parameters: tagName The element's tag name attrName The attribute's name
Copyright B) 1999-2005 Apache XML Project. All Rights Reserved.