Package uk.ac.starlink.votable
Class Namespacing
java.lang.Object
uk.ac.starlink.votable.Namespacing
Determines how namespaces are handled in VOTable documents.
The static
getInstance()
method provides an object which
encapsulates the default namespacing policy.- Since:
- 1 Sep 2009
- Author:
- Mark Taylor
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Namespacing
Interpret likely-looking elements in any namespace as VOTable ones.static final Namespacing
No namespace awareness; any namespacing will probably confuse parser.static final String
Name of system property which determines namespacing policy used.static final Namespacing
Only elements in namespaces with VOTable URIs are significant. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionabstract void
Performs any necessary configuration of the namespacing capabilities of a given parser factory for use with this namespacing policy.static Namespacing
Returns the default Namespacing instance.abstract String
getVOTagName
(String namespaceURI, String localName, String qName) Returns the VOTable tagname for an XML element as encountered by a SAX parser.getVOTagName
(Element el) Returns the VOTable tagname for an XML element as present in a DOM.void
setInstance
(Namespacing instance) Sets the default instance.toString()
Returns the name of this namespacing policy.
-
Field Details
-
POLICY_PROP
Name of system property which determines namespacing policy used. Property name is "votable.namespacing". Possible values are "none
", "lax
", "strict
" or the classname of aNamespacing
implementation which has a no-arg constructor.- See Also:
-
NONE
No namespace awareness; any namespacing will probably confuse parser. -
LAX
Interpret likely-looking elements in any namespace as VOTable ones. -
STRICT
Only elements in namespaces with VOTable URIs are significant.
-
-
Constructor Details
-
Namespacing
Constructor.- Parameters:
name
- concise human-readable name describing this policy
-
-
Method Details
-
configureSAXParserFactory
Performs any necessary configuration of the namespacing capabilities of a given parser factory for use with this namespacing policy.- Parameters:
spfact
- factory to configure
-
getVOTagName
Returns the VOTable tagname for an XML element as encountered by a SAX parser. The return value is a bare string which may be compared to one of the VOTable element names ignoring namespaces; for instance a return value of "TABLE" indicates that this is a VOTable TABLE element.The parameters have the same meanings, and may or may not be present as for, those in
ContentHandler.startElement(java.lang.String, java.lang.String, java.lang.String, org.xml.sax.Attributes)
.- Parameters:
namespaceURI
- namespace URIlocalName
- local nameqName
- qualified name- Returns:
- element name in VOTable namespace
-
getVOTagName
Returns the VOTable tagname for an XML element as present in a DOM. The return value is a bare string which may be compared to one of the VOTable element names ignoring namespaces; for instance a return value of "TABLE" indicates that this is a VOTable TABLE element.- Parameters:
el
- element- Returns:
- element name in VOTable namespace
-
toString
Returns the name of this namespacing policy. -
getInstance
Returns the default Namespacing instance. The default value is determined by examining thePOLICY_PROP
system property. If not otherwise set the default is currentlyLAX
.- Returns:
- namespacing instance
-
setInstance
Sets the default instance.- Parameters:
instance
- new default instance
-