Package org.jsoup.parser

## Class Tag

- java.lang.Object
- - org.jsoup.parser.Tag

All Implemented Interfaces:
  `java.lang.Cloneable`

    public class Tag
    extends java.lang.Object
    implements java.lang.Cloneable

HTML Tag capabilities.

Author:
  Jonathan Hedley, jonathan@hedley.net

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`protected Tag` `clone()`
`boolean` `equals​(java.lang.Object o)`
`boolean` `formatAsBlock()` Gets if this tag should be formatted as a block (or as inline)
`java.lang.String` `getName()` Get this tag's name.
`int` `hashCode()`
`boolean` `isBlock()` Gets if this is a block tag.
`boolean` `isEmpty()` Get if this is an empty tag
`boolean` `isFormListed()` Get if this tag represents a control associated with a form.
`boolean` `isFormSubmittable()` Get if this tag represents an element that should be submitted with a form.
`boolean` `isInline()` Gets if this tag is an inline tag.
`boolean` `isKnownTag()` Get if this is a pre-defined tag, or was auto created on parsing.
`static boolean` `isKnownTag​(java.lang.String tagName)` Check if this tagname is a known tag.
`boolean` `isSelfClosing()` Get if this tag is self closing.
`java.lang.String` `normalName()` Get this tag's normalized (lowercased) name.
`boolean` `preserveWhitespace()` Get if this tag should preserve whitespace within child text nodes.
`java.lang.String` `toString()`
`static Tag` `valueOf​(java.lang.String tagName)` Get a Tag by name.
`static Tag` `valueOf​(java.lang.String tagName, ParseSettings settings)` Get a Tag by name.

### Methods inherited from class java.lang.Object

`finalize, getClass, notify, notifyAll, wait, wait, wait`

### Method Detail

#### getName

    public java.lang.String getName()

Get this tag's name.

Returns:
  the tag's name

#### normalName

    public java.lang.String normalName()

Get this tag's normalized (lowercased) name.

Returns:
  the tag's normal name.

#### valueOf

    public static Tag valueOf​(java.lang.String tagName,
                              ParseSettings settings)

Get a Tag by name. If not previously defined (unknown), returns a new generic tag, that can do anything.

Pre-defined tags (P, DIV etc) will be ==, but unknown tags are not registered and will only .equals().

Parameters:
  `tagName` - Name of tag, e.g. "p". Case insensitive.
  `settings` - used to control tag name sensitivity
Returns:
  The tag, either defined or new generic.

#### valueOf

    public static Tag valueOf​(java.lang.String tagName)

Get a Tag by name. If not previously defined (unknown), returns a new generic tag, that can do anything.

Pre-defined tags (P, DIV etc) will be ==, but unknown tags are not registered and will only .equals().

Parameters:
  `tagName` - Name of tag, e.g. "p". Case sensitive.
Returns:
  The tag, either defined or new generic.

#### isBlock

    public boolean isBlock()

Gets if this is a block tag.

Returns:
  if block tag

#### formatAsBlock

    public boolean formatAsBlock()

Gets if this tag should be formatted as a block (or as inline)

Returns:
  if should be formatted as block or inline

#### isInline

    public boolean isInline()

Gets if this tag is an inline tag.

Returns:
  if this tag is an inline tag.

#### isEmpty

    public boolean isEmpty()

Get if this is an empty tag

Returns:
  if this is an empty tag

#### isSelfClosing

    public boolean isSelfClosing()

Get if this tag is self closing.

Returns:
  if this tag should be output as self closing.

#### isKnownTag

    public boolean isKnownTag()

Get if this is a pre-defined tag, or was auto created on parsing.

Returns:
  if a known tag

#### isKnownTag

    public static boolean isKnownTag​(java.lang.String tagName)

Check if this tagname is a known tag.

Parameters:
  `tagName` - name of tag
Returns:
  if known HTML tag

#### preserveWhitespace

    public boolean preserveWhitespace()

Get if this tag should preserve whitespace within child text nodes.

Returns:
  if preserve whitespace

#### isFormListed

    public boolean isFormListed()

Get if this tag represents a control associated with a form. E.g. input, textarea, output

Returns:
  if associated with a form

#### isFormSubmittable

    public boolean isFormSubmittable()

Get if this tag represents an element that should be submitted with a form. E.g. input, option

Returns:
  if submittable with a form

#### equals

    public boolean equals​(java.lang.Object o)

Overrides:
  `equals` in class `java.lang.Object`

#### hashCode

    public int hashCode()

Overrides:
  `hashCode` in class `java.lang.Object`

#### toString

    public java.lang.String toString()

Overrides:
  `toString` in class `java.lang.Object`

#### clone

    protected Tag clone()

Overrides:
  `clone` in class `java.lang.Object`