Package uk.ac.starlink.votable
Class VODocument
java.lang.Object
uk.ac.starlink.votable.dom.DelegatingNode
uk.ac.starlink.votable.dom.DelegatingDocument
uk.ac.starlink.votable.VODocument
Document implementation which holds a VOTable-specific DOM.
The elements in it are all instances of
VOElement
,
or of VOElement subclasses according to their element names,
that is any element with a tagname of "TABLE" in this DOM will be
an instance of the class TableElement
and so on.- Since:
- 13 Sep 2004
- Author:
- Mark Taylor (Starlink)
-
Field Summary
Fields inherited from interface org.w3c.dom.Node
ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE
-
Constructor Summary
ConstructorsConstructorDescriptionConstructs a new VODocument.VODocument
(String systemId, boolean strict) Constructs a new VODocument with a specified System ID. -
Method Summary
Modifier and TypeMethodDescriptionprotected DelegatingAttr
createDelegatingAttr
(Attr baseNode) Creates a new node in this document that delegates to an object of classAttr
in the base model.protected DelegatingElement
Creates a new node in this document that delegates to an object of classElement
in the base model.getDelegator
(Node base) Returns the node in this document which delegates to (is based on) a given node in the base document.getElementById
(String elementId) int
getElementCount
(String voTagName) Returns the number of elements of a given name which have so far been added to this document.uk.ac.starlink.table.StoragePolicy
Returns the storage policy used for storing bulk table data found as elements in the DOM into a usable form.Returns the system ID associated with this document.getVOTagName
(Element el) Returns the unqualified tag name for an element in the VOTable namespace, taking care of namespacing issues.void
setElementId
(Element el, String id) Stores an element as the referent of a given ID string.void
setStoragePolicy
(uk.ac.starlink.table.StoragePolicy policy) Sets the storage policy used for storing bulk table data found as elements in the DOM into a usable form.Methods inherited from class uk.ac.starlink.votable.dom.DelegatingDocument
adoptNode, createAttribute, createAttributeNS, createCDATASection, createComment, createDelegatingAttr, createDelegatingCDATASection, createDelegatingCharacterData, createDelegatingComment, createDelegatingDocumentFragment, createDelegatingDocumentType, createDelegatingEntity, createDelegatingEntityReference, createDelegatingNamedNodeMap, createDelegatingNodeList, createDelegatingNotation, createDelegatingProcessingInstruction, createDelegatingSimpleNode, createDelegatingText, createDocumentFragment, createElement, createElementNS, createEntityReference, createProcessingInstruction, createTextNode, getBaseDocument, getDoctype, getDocumentElement, getDocumentURI, getDomConfig, getElementsByTagName, getElementsByTagNameNS, getImplementation, getInputEncoding, getStrictErrorChecking, getXmlEncoding, getXmlStandalone, getXmlVersion, importNode, normalizeDocument, renameNode, setDocumentURI, setStrictErrorChecking, setXmlStandalone, setXmlVersion
Methods inherited from class uk.ac.starlink.votable.dom.DelegatingNode
appendChild, cloneNode, compareDocumentPosition, getAttributes, getBaseURI, getChildNodes, getFeature, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, getTextContent, getUserData, hasAttributes, hasChildNodes, insertBefore, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, normalize, removeChild, replaceChild, setNodeValue, setPrefix, setTextContent, setUserData
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.w3c.dom.Node
appendChild, cloneNode, compareDocumentPosition, getAttributes, getBaseURI, getChildNodes, getFeature, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeName, getNodeType, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, getTextContent, getUserData, hasAttributes, hasChildNodes, insertBefore, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, normalize, removeChild, replaceChild, setNodeValue, setPrefix, setTextContent, setUserData
-
Constructor Details
-
VODocument
Constructs a new VODocument with a specified System ID.- Parameters:
systemId
- system ID for the VOTable document represented by this DOM (sometimes used for resolving URLs) - may be nullstrict
- whether to enforce the VOTable standard strictly or in some cases do what is probably meant (seeVOElementFactory.setStrict(boolean)
)
-
VODocument
public VODocument()Constructs a new VODocument. No system ID is registered, so that all URLs in the document will be considered as absolute ones. A default level of strictness is used.
-
-
Method Details
-
getSystemId
Returns the system ID associated with this document.- Returns:
- system ID if there is one
-
getStoragePolicy
public uk.ac.starlink.table.StoragePolicy getStoragePolicy()Returns the storage policy used for storing bulk table data found as elements in the DOM into a usable form.- Returns:
- current policy
-
setStoragePolicy
public void setStoragePolicy(uk.ac.starlink.table.StoragePolicy policy) Sets the storage policy used for storing bulk table data found as elements in the DOM into a usable form. The default value isStoragePolicy.PREFER_MEMORY
.- Parameters:
policy
- new policy
-
setElementId
Stores an element as the referent of a given ID string. This affects the return value of the DOMgetElementById(java.lang.String)
method. -
getElementById
- Specified by:
getElementById
in interfaceDocument
- Overrides:
getElementById
in classDelegatingDocument
-
getDelegator
Description copied from class:DelegatingDocument
Returns the node in this document which delegates to (is based on) a given node in the base document. If this node has not previously been encountered, it will be created here.- Overrides:
getDelegator
in classDelegatingDocument
- Parameters:
base
- node in the base document- Returns:
- corresponding node in this document
-
getElementCount
Returns the number of elements of a given name which have so far been added to this document.- Parameters:
voTagName
- VOTable-domain tag name- Returns:
- number of elements of that type
-
createDelegatingElement
Description copied from class:DelegatingDocument
Creates a new node in this document that delegates to an object of classElement
in the base model. This may be overridden to create specialised node types.- Overrides:
createDelegatingElement
in classDelegatingDocument
- Parameters:
node
- delegate node- Returns:
- new node in this model based on baseNode
-
createDelegatingAttr
Description copied from class:DelegatingDocument
Creates a new node in this document that delegates to an object of classAttr
in the base model. This may be overridden to create specialised node types.- Overrides:
createDelegatingAttr
in classDelegatingDocument
- Parameters:
baseNode
- delegate node- Returns:
- new node in this model based on baseNode
-
getVOTagName
Returns the unqualified tag name for an element in the VOTable namespace, taking care of namespacing issues.- Parameters:
el
- element- Returns:
- unqualified VOTable tag name, e.g. "TABLE"
-