uk.ac.starlink.votable
Class VOTableDOMBuilder
java.lang.Object
uk.ac.starlink.votable.VOTableDOMBuilder
- All Implemented Interfaces:
- org.xml.sax.ContentHandler
public class VOTableDOMBuilder
- extends java.lang.Object
- implements org.xml.sax.ContentHandler
Custom DOM builder for parsing VOTable documents or fragments.
For the most part it builds a DOM, but within data-heavy elements
(those which represent table data) it intercepts SAX events
directly to construct the table data
which it stores in the corresponding TableElement node,
rather than installing bulk data
as CDATA or Element nodes within the resulting DOM.
Method Summary |
void |
characters(char[] ch,
int start,
int length)
|
void |
endDocument()
|
void |
endElement(java.lang.String uri,
java.lang.String localName,
java.lang.String qName)
|
void |
endPrefixMapping(java.lang.String prefix)
|
VODocument |
getDocument()
Returns the DOM document built by this parser, following a parse. |
void |
ignorableWhitespace(char[] ch,
int start,
int length)
|
void |
processingInstruction(java.lang.String target,
java.lang.String data)
|
void |
setDocumentLocator(org.xml.sax.Locator locator)
|
void |
skippedEntity(java.lang.String name)
|
void |
startDocument()
|
void |
startElement(java.lang.String uri,
java.lang.String localName,
java.lang.String qName,
org.xml.sax.Attributes atts)
|
void |
startPrefixMapping(java.lang.String prefix,
java.lang.String uri)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
VOTableDOMBuilder
public VOTableDOMBuilder(StoragePolicy storagePolicy,
boolean strict)
- Constructor.
- Parameters:
storagePolicy
- policy for bulk data storagestrict
- true iff you want strict enforcement of VOTable standard
getDocument
public VODocument getDocument()
- Returns the DOM document built by this parser, following a parse.
Each TableElement has a TabularData object attached from which
the actual table data can be retrieved.
- Returns:
- VOTable DOM
setDocumentLocator
public void setDocumentLocator(org.xml.sax.Locator locator)
- Specified by:
setDocumentLocator
in interface org.xml.sax.ContentHandler
startDocument
public void startDocument()
throws org.xml.sax.SAXException
- Specified by:
startDocument
in interface org.xml.sax.ContentHandler
- Throws:
org.xml.sax.SAXException
endDocument
public void endDocument()
throws org.xml.sax.SAXException
- Specified by:
endDocument
in interface org.xml.sax.ContentHandler
- Throws:
org.xml.sax.SAXException
startPrefixMapping
public void startPrefixMapping(java.lang.String prefix,
java.lang.String uri)
throws org.xml.sax.SAXException
- Specified by:
startPrefixMapping
in interface org.xml.sax.ContentHandler
- Throws:
org.xml.sax.SAXException
endPrefixMapping
public void endPrefixMapping(java.lang.String prefix)
throws org.xml.sax.SAXException
- Specified by:
endPrefixMapping
in interface org.xml.sax.ContentHandler
- Throws:
org.xml.sax.SAXException
startElement
public void startElement(java.lang.String uri,
java.lang.String localName,
java.lang.String qName,
org.xml.sax.Attributes atts)
throws org.xml.sax.SAXException
- Specified by:
startElement
in interface org.xml.sax.ContentHandler
- Throws:
org.xml.sax.SAXException
endElement
public void endElement(java.lang.String uri,
java.lang.String localName,
java.lang.String qName)
throws org.xml.sax.SAXException
- Specified by:
endElement
in interface org.xml.sax.ContentHandler
- Throws:
org.xml.sax.SAXException
characters
public void characters(char[] ch,
int start,
int length)
throws org.xml.sax.SAXException
- Specified by:
characters
in interface org.xml.sax.ContentHandler
- Throws:
org.xml.sax.SAXException
ignorableWhitespace
public void ignorableWhitespace(char[] ch,
int start,
int length)
throws org.xml.sax.SAXException
- Specified by:
ignorableWhitespace
in interface org.xml.sax.ContentHandler
- Throws:
org.xml.sax.SAXException
processingInstruction
public void processingInstruction(java.lang.String target,
java.lang.String data)
throws org.xml.sax.SAXException
- Specified by:
processingInstruction
in interface org.xml.sax.ContentHandler
- Throws:
org.xml.sax.SAXException
skippedEntity
public void skippedEntity(java.lang.String name)
throws org.xml.sax.SAXException
- Specified by:
skippedEntity
in interface org.xml.sax.ContentHandler
- Throws:
org.xml.sax.SAXException