org.w3c.tidy
Class TagTable

java.lang.Object
  extended byorg.w3c.tidy.TagTable

public final class TagTable
extends java.lang.Object

Tag dictionary node hash table.

Version:
$Revision: 1.31 $ ($Author: fgiust $)
Author:
Dave Raggett dsr@w3.org , Andy Quick ac.quick@sympatico.ca (translation to Java), Fabrizio Giustina

Field Summary
protected  Anchor anchorList
          anchor/node hash.
private  Configuration configuration
          configuration.
protected  Dict tagA
          a tag.
protected  Dict tagApplet
          applet tag.
protected  Dict tagArea
          area tag.
protected  Dict tagB
          b tag.
protected  Dict tagBase
          base tag.
protected  Dict tagBig
          big tag.
protected  Dict tagBlink
          a proprietary tag added by Tidy, along with tag_nobr, tag_wbr.
protected  Dict tagBlockquote
          blockquote tag.
protected  Dict tagBody
          body tag.
protected  Dict tagBr
          br tag.
protected  Dict tagCaption
          caption tag.
protected  Dict tagCenter
          center tag.
protected  Dict tagCol
          col tag.
protected  Dict tagColgroup
          colgroup tag.
protected  Dict tagDd
          dd tag.
protected  Dict tagDir
          dir tag.
protected  Dict tagDiv
          div tag.
protected  Dict tagDl
          dl tag.
protected  Dict tagDt
          dt tag.
protected  Dict tagEm
          em tag.
protected  Dict tagFont
          font tag.
protected  Dict tagForm
          form tag.
protected  Dict tagFrame
          frame tag.
protected  Dict tagFrameset
          frameset tag.
protected  Dict tagH1
          h1 tag.
protected  Dict tagH2
          h2 tag.
private  java.util.Map tagHashtable
          hashTable containing tags.
protected  Dict tagHead
          head tag.
protected  Dict tagHr
          hr tag.
protected  Dict tagHtml
          html tag.
protected  Dict tagI
          i tag.
protected  Dict tagIframe
          iframe tag.
protected  Dict tagImg
          img tag.
protected  Dict tagInput
          input tag.
protected  Dict tagLayer
          layer tag.
protected  Dict tagLi
          li tag.
protected  Dict tagLink
          link tag.
protected  Dict tagListing
          listing tag.
protected  Dict tagMap
          map tag.
protected  Dict tagMeta
          meta tag.
protected  Dict tagNobr
          nobr tag.
protected  Dict tagNoframes
          noframes tag.
protected  Dict tagNoscript
          noscript tag.
protected  Dict tagObject
          object tag.
protected  Dict tagOl
          ol tag.
protected  Dict tagOptgroup
          optgroup tag.
protected  Dict tagOption
          option tag.
protected  Dict tagP
          p tag.
protected  Dict tagParam
          param tag.
protected  Dict tagPre
          pre tag.
protected  Dict tagQ
          tag.
private static Dict[] TAGS
          all the known tags.
protected  Dict tagScript
          script tag.
protected  Dict tagSmall
          small tag.
protected  Dict tagSpacer
          spacer tag.
protected  Dict tagSpan
          span tag.
protected  Dict tagStrong
          strong tag.
protected  Dict tagStyle
          style tag.
protected  Dict tagTable
          table tag.
protected  Dict tagTd
          td tag.
protected  Dict tagTextarea
          textarea tag.
protected  Dict tagTh
          th tag.
protected  Dict tagTitle
          title tag.
protected  Dict tagTr
          tr tag.
protected  Dict tagUl
          ul tag.
protected  Dict tagWbr
          wbr tag.
static Dict XML_TAGS
          dummy entry for all xml tags.
 
Constructor Summary
protected TagTable()
          Instantiates a new tag table with known tags.
 
Method Summary
(package private)  Anchor addAnchor(java.lang.String name, Node node)
          Adds a new anchor to namespace.
 void defineTag(short tagType, java.lang.String name)
          Defines a new tag.
(package private)  java.util.List findAllDefinedTag(short tagType)
          return a List containing all the user-defined tag names.
 Parser findParser(Node node)
          Finds a parser fo the given node.
 boolean findTag(Node node)
          Finds a tag by name.
(package private)  void freeAnchors()
          free all anchors.
 void freeAttrs(Node node)
          Free node's attributes.
(package private)  Node getNodeByAnchor(java.lang.String name)
          Return node associated with anchor.
 Dict install(Dict dict)
          Installs a new tag in the tag table, or modify an existing one.
(package private)  boolean isAnchorElement(Node node)
          May id or name serve as anchor?
 Dict lookup(java.lang.String name)
          Lookup a tag definition by its name.
(package private)  Anchor newAnchor()
          Initialize a new anchor.
(package private)  void removeAnchorByNode(Node node)
          Removes anchor for specific node.
 void setConfiguration(Configuration configuration)
          Setter for the current configuration instance.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

XML_TAGS

public static final Dict XML_TAGS
dummy entry for all xml tags.


TAGS

private static final Dict[] TAGS
all the known tags.


tagHtml

protected Dict tagHtml
html tag.


tagHead

protected Dict tagHead
head tag.


tagBody

protected Dict tagBody
body tag.


tagFrameset

protected Dict tagFrameset
frameset tag.


tagFrame

protected Dict tagFrame
frame tag.


tagIframe

protected Dict tagIframe
iframe tag.


tagNoframes

protected Dict tagNoframes
noframes tag.


tagMeta

protected Dict tagMeta
meta tag.


tagTitle

protected Dict tagTitle
title tag.


tagBase

protected Dict tagBase
base tag.


tagHr

protected Dict tagHr
hr tag.


tagPre

protected Dict tagPre
pre tag.


tagListing

protected Dict tagListing
listing tag.


tagH1

protected Dict tagH1
h1 tag.


tagH2

protected Dict tagH2
h2 tag.


tagP

protected Dict tagP
p tag.


tagUl

protected Dict tagUl
ul tag.


tagOl

protected Dict tagOl
ol tag.


tagDir

protected Dict tagDir
dir tag.


tagLi

protected Dict tagLi
li tag.


tagDt

protected Dict tagDt
dt tag.


tagDd

protected Dict tagDd
dd tag.


tagDl

protected Dict tagDl
dl tag.


tagTd

protected Dict tagTd
td tag.


tagTh

protected Dict tagTh
th tag.


tagTr

protected Dict tagTr
tr tag.


tagCol

protected Dict tagCol
col tag.


tagColgroup

protected Dict tagColgroup
colgroup tag.


tagBr

protected Dict tagBr
br tag.


tagA

protected Dict tagA
a tag.


tagLink

protected Dict tagLink
link tag.


tagB

protected Dict tagB
b tag.


tagI

protected Dict tagI
i tag.


tagStrong

protected Dict tagStrong
strong tag.


tagEm

protected Dict tagEm
em tag.


tagBig

protected Dict tagBig
big tag.


tagSmall

protected Dict tagSmall
small tag.


tagParam

protected Dict tagParam
param tag.


tagOption

protected Dict tagOption
option tag.


tagOptgroup

protected Dict tagOptgroup
optgroup tag.


tagImg

protected Dict tagImg
img tag.


tagMap

protected Dict tagMap
map tag.


tagArea

protected Dict tagArea
area tag.


tagNobr

protected Dict tagNobr
nobr tag.


tagWbr

protected Dict tagWbr
wbr tag.


tagFont

protected Dict tagFont
font tag.


tagSpacer

protected Dict tagSpacer
spacer tag.


tagLayer

protected Dict tagLayer
layer tag.


tagCenter

protected Dict tagCenter
center tag.


tagStyle

protected Dict tagStyle
style tag.


tagScript

protected Dict tagScript
script tag.


tagNoscript

protected Dict tagNoscript
noscript tag.


tagTable

protected Dict tagTable
table tag.


tagCaption

protected Dict tagCaption
caption tag.


tagForm

protected Dict tagForm
form tag.


tagTextarea

protected Dict tagTextarea
textarea tag.


tagBlockquote

protected Dict tagBlockquote
blockquote tag.


tagApplet

protected Dict tagApplet
applet tag.


tagObject

protected Dict tagObject
object tag.


tagDiv

protected Dict tagDiv
div tag.


tagSpan

protected Dict tagSpan
span tag.


tagInput

protected Dict tagInput
input tag.


tagQ

protected Dict tagQ
tag.


tagBlink

protected Dict tagBlink
a proprietary tag added by Tidy, along with tag_nobr, tag_wbr.


anchorList

protected Anchor anchorList
anchor/node hash.


configuration

private Configuration configuration
configuration.


tagHashtable

private java.util.Map tagHashtable
hashTable containing tags.

Constructor Detail

TagTable

protected TagTable()
Instantiates a new tag table with known tags.

Method Detail

setConfiguration

public void setConfiguration(Configuration configuration)
Setter for the current configuration instance.

Parameters:
configuration - configuration instance

lookup

public Dict lookup(java.lang.String name)
Lookup a tag definition by its name.

Parameters:
name - tag name
Returns:
tag definition (Dict)

install

public Dict install(Dict dict)
Installs a new tag in the tag table, or modify an existing one.

Parameters:
dict - tag definition
Returns:
installed Dict instance

findTag

public boolean findTag(Node node)
Finds a tag by name.

Parameters:
node - Node to find. If the element is found the tag property of node will be set.
Returns:
true if the tag is found, false otherwise

findParser

public Parser findParser(Node node)
Finds a parser fo the given node.

Parameters:
node - Node
Returns:
parser for the node

isAnchorElement

boolean isAnchorElement(Node node)
May id or name serve as anchor?

Parameters:
node - Node
Returns:
true if tag can serve as an anchor

defineTag

public void defineTag(short tagType,
                      java.lang.String name)
Defines a new tag.

Parameters:
tagType - tag type. Can be TAGTYPE_BLOCK | TAGTYPE_EMPTY | TAGTYPE_PRE | TAGTYPE_INLINE
name - tag name

findAllDefinedTag

java.util.List findAllDefinedTag(short tagType)
return a List containing all the user-defined tag names.

Parameters:
tagType - one of Dict.TAGTYPE_EMPTY | Dict.TAGTYPE_INLINE | Dict.TAGTYPE_BLOCK | Dict.TAGTYPE_PRE
Returns:
List containing all the user-defined tag names

freeAttrs

public void freeAttrs(Node node)
Free node's attributes.

Parameters:
node - Node

removeAnchorByNode

void removeAnchorByNode(Node node)
Removes anchor for specific node.

Parameters:
node - Node

newAnchor

Anchor newAnchor()
Initialize a new anchor.

Returns:
a new anchor element

addAnchor

Anchor addAnchor(java.lang.String name,
                 Node node)
Adds a new anchor to namespace.

Parameters:
name - anchor name
node - destination for this anchor
Returns:
Anchor

getNodeByAnchor

Node getNodeByAnchor(java.lang.String name)
Return node associated with anchor.

Parameters:
name - anchor name
Returns:
node associated with anchor

freeAnchors

void freeAnchors()
free all anchors.