Package org.jsoup.nodes
Class DocumentType
- java.lang.Object
-
- org.jsoup.nodes.Node
-
- org.jsoup.nodes.DocumentType
-
- All Implemented Interfaces:
java.lang.Cloneable
public class DocumentType extends Node
A<!DOCTYPE>node.
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringPUBLIC_KEYstatic java.lang.StringSYSTEM_KEY
-
Constructor Summary
Constructors Constructor Description DocumentType(java.lang.String name, java.lang.String publicId, java.lang.String systemId)Create a new doctype element.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.StringabsUrl(java.lang.String key)Get an absolute URL from a URL attribute that may be relative (such as an<a href>or<img src>).java.lang.Stringattr(java.lang.String key)Get an attribute's value by its key.Nodeattr(java.lang.String key, java.lang.String value)Set an attribute (key=value).Attributesattributes()Get all of the element's attributes.java.lang.StringbaseUri()Get the base URI that applies to this node.intchildNodeSize()Get the number of child nodes that this node holds.protected org.jsoup.nodes.LeafNodedoClone(Node parent)protected voiddoSetBaseUri(java.lang.String baseUri)Set the baseUri for just this node (not its descendants), if this Node tracks base URIs.Nodeempty()Delete all this node's children.protected java.util.List<Node>ensureChildNodes()booleanhasAttr(java.lang.String key)Test if this Node has an attribute.protected booleanhasAttributes()Check if this Node has an actual Attributes object.java.lang.Stringname()Get this doctype's name (when set, or empty string)java.lang.StringnodeName()Get the node name of this node.java.lang.StringpublicId()Get this doctype's Public ID (when set, or empty string)NoderemoveAttr(java.lang.String key)Remove an attribute from this node.voidsetPubSysKey(java.lang.String value)java.lang.StringsystemId()Get this doctype's System ID (when set, or empty string)-
Methods inherited from class org.jsoup.nodes.Node
addChildren, addChildren, after, after, attributesSize, before, before, childNode, childNodes, childNodesAsArray, childNodesCopy, clearAttributes, clone, equals, filter, hashCode, hasParent, hasSameValue, html, indent, nextSibling, outerHtml, outerHtml, ownerDocument, parent, parentNode, previousSibling, remove, removeChild, reparentChild, replaceChild, replaceWith, root, setBaseUri, setParentNode, setSiblingIndex, shallowClone, siblingIndex, siblingNodes, toString, traverse, unwrap, wrap
-
-
-
-
Field Detail
-
PUBLIC_KEY
public static final java.lang.String PUBLIC_KEY
- See Also:
- Constant Field Values
-
SYSTEM_KEY
public static final java.lang.String SYSTEM_KEY
- See Also:
- Constant Field Values
-
-
Method Detail
-
setPubSysKey
public void setPubSysKey(java.lang.String value)
-
name
public java.lang.String name()
Get this doctype's name (when set, or empty string)- Returns:
- doctype name
-
publicId
public java.lang.String publicId()
Get this doctype's Public ID (when set, or empty string)- Returns:
- doctype Public ID
-
systemId
public java.lang.String systemId()
Get this doctype's System ID (when set, or empty string)- Returns:
- doctype System ID
-
nodeName
public java.lang.String nodeName()
Description copied from class:NodeGet the node name of this node. Use for debugging purposes and not logic switching (for that, use instanceof).
-
hasAttributes
protected final boolean hasAttributes()
Description copied from class:NodeCheck if this Node has an actual Attributes object.- Specified by:
hasAttributesin classNode
-
attributes
public final Attributes attributes()
Description copied from class:NodeGet all of the element's attributes.- Specified by:
attributesin classNode- Returns:
- attributes (which implements iterable, in same order as presented in original HTML).
-
attr
public java.lang.String attr(java.lang.String key)
Description copied from class:NodeGet an attribute's value by its key. Case insensitiveTo get an absolute URL from an attribute that may be a relative URL, prefix the key with
E.g.:abs, which is a shortcut to theNode.absUrl(java.lang.String)method.String url = a.attr("abs:href");- Overrides:
attrin classNode- Parameters:
key- The attribute key.- Returns:
- The attribute, or empty string if not present (to avoid nulls).
- See Also:
Node.attributes(),Node.hasAttr(String),Node.absUrl(String)
-
attr
public Node attr(java.lang.String key, java.lang.String value)
Description copied from class:NodeSet an attribute (key=value). If the attribute already exists, it is replaced. The attribute key comparison is case insensitive. The key will be set with case sensitivity as set in the parser settings.
-
hasAttr
public boolean hasAttr(java.lang.String key)
Description copied from class:NodeTest if this Node has an attribute. Case insensitive.
-
removeAttr
public Node removeAttr(java.lang.String key)
Description copied from class:NodeRemove an attribute from this node.- Overrides:
removeAttrin classNode- Parameters:
key- The attribute to remove.- Returns:
- this (for chaining)
-
absUrl
public java.lang.String absUrl(java.lang.String key)
Description copied from class:NodeGet an absolute URL from a URL attribute that may be relative (such as an<a href>or<img src>).E.g.:
String absUrl = linkEl.absUrl("href");If the attribute value is already absolute (i.e. it starts with a protocol, like
http://orhttps://etc), and it successfully parses as a URL, the attribute is returned directly. Otherwise, it is treated as a URL relative to the element'sNode.baseUri(), and made absolute using that.As an alternate, you can use the
Node.attr(java.lang.String)method with theabs:prefix, e.g.:String absUrl = linkEl.attr("abs:href");- Overrides:
absUrlin classNode- Parameters:
key- The attribute key- Returns:
- An absolute URL if one could be made, or an empty string (not null) if the attribute was missing or could not be made successfully into a URL.
- See Also:
Node.attr(java.lang.String),URL(java.net.URL, String)
-
baseUri
public java.lang.String baseUri()
Description copied from class:NodeGet the base URI that applies to this node. Will return an empty string if not defined. Used to make relative links absolute.- Specified by:
baseUriin classNode- Returns:
- base URI
- See Also:
Node.absUrl(java.lang.String)
-
doSetBaseUri
protected void doSetBaseUri(java.lang.String baseUri)
Description copied from class:NodeSet the baseUri for just this node (not its descendants), if this Node tracks base URIs.- Specified by:
doSetBaseUriin classNode- Parameters:
baseUri- new URI
-
childNodeSize
public int childNodeSize()
Description copied from class:NodeGet the number of child nodes that this node holds.- Specified by:
childNodeSizein classNode- Returns:
- the number of child nodes that this node holds.
-
ensureChildNodes
protected java.util.List<Node> ensureChildNodes()
- Specified by:
ensureChildNodesin classNode
-
-