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 NamespacingInterpret likely-looking elements in any namespace as VOTable ones.static final NamespacingNo namespace awareness; any namespacing will probably confuse parser.static final StringName of system property which determines namespacing policy used.static final NamespacingOnly elements in namespaces with VOTable URIs are significant. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionabstract voidPerforms any necessary configuration of the namespacing capabilities of a given parser factory for use with this namespacing policy.static NamespacingReturns the default Namespacing instance.abstract StringgetVOTagName(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.voidsetInstance(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 aNamespacingimplementation 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_PROPsystem property. If not otherwise set the default is currentlyLAX.- Returns:
- namespacing instance
-
setInstance
Sets the default instance.- Parameters:
instance- new default instance
-