Class VOTableVersion

  • All Implemented Interfaces:
    java.lang.Comparable<VOTableVersion>

    public abstract class VOTableVersion
    extends java.lang.Object
    implements java.lang.Comparable<VOTableVersion>
    Provides characteristics for a given version of the VOTable standard. An instance of this class is passed to a VOTableWriter to indicate what version of the standard should be followed when generating VOTable output.
    Since:
    15 Nov 2012
    Author:
    Mark Taylor
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected VOTableVersion​(java.lang.String versionNumber)
      Constructor.
    • Method Summary

      All Methods Static Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      abstract boolean allowBinary2()
      Indicates whether the BINARY2 serialization format is defined by this version.
      abstract boolean allowEmptyTd()
      Indicates whether this version permits an empty TD element to represent a null value for all data types.
      abstract boolean allowTimesys()
      Indicates whether the TIMESYS element is supported in this version.
      abstract boolean allowXtype()
      Indicates whether the xtype attribute is permitted on FIELD elements etc in this version.
      int compareTo​(VOTableVersion other)  
      static VOTableVersion getDefaultVersion()
      Returns the version instance used by default for output in this JVM.
      abstract java.lang.String getDoctypeDeclaration()
      Returns the text of the DOCTYPE XML declaration for this version.
      abstract java.net.URL getDtdUrl()
      Returns a URL from which the DTD can be retrieved.
      static java.util.Map<java.lang.String,​VOTableVersion> getKnownVersions()
      Returns a number->version map for all known versions.
      abstract javax.xml.validation.Schema getSchema()
      Returns a schema which may be used to validate document instances of this VOTable version.
      abstract java.lang.String getSchemaLocation()
      Returns the URL of the VOTable schema corresponding to this version.
      java.lang.String getVersionNumber()
      Returns the version number for this version.
      abstract java.lang.String getXmlNamespace()
      Returns the XML namespace in which the VOTable elements reside.
      abstract boolean isVOUnitSyntax()
      Indicates whether this version of VOTable is supposed to use the VOUnit standard for the content of unit attributes.
      java.lang.String toString()
      Returns version number.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • DEFAULT_VERSION_STRING

        public static final java.lang.String DEFAULT_VERSION_STRING
        Default VOTable version number which output will conform to if not otherwise specified ("1.4").
        See Also:
        Constant Field Values
      • VOTABLE_VERSION_PROP

        public static final java.lang.String VOTABLE_VERSION_PROP
        System property name whose value gives the default VOTable version written by instances of this class if no version is given explicitly. The property is named "votable.version" and if it is not supplied the version defaults to the value of DEFAULT_VERSION_STRING (="1.4").
        See Also:
        Constant Field Values
    • Constructor Detail

      • VOTableVersion

        protected VOTableVersion​(java.lang.String versionNumber)
        Constructor.
        Parameters:
        versionNumber - the number (like "1.1") identifying this version
    • Method Detail

      • getVersionNumber

        public java.lang.String getVersionNumber()
        Returns the version number for this version.
        Returns:
        version number (like "1.1")
      • getXmlNamespace

        public abstract java.lang.String getXmlNamespace()
        Returns the XML namespace in which the VOTable elements reside.
        Returns:
        VOTable XML namespace, or null
      • getSchemaLocation

        public abstract java.lang.String getSchemaLocation()
        Returns the URL of the VOTable schema corresponding to this version.
        Returns:
        VOTable schema, or null
      • getSchema

        public abstract javax.xml.validation.Schema getSchema()
        Returns a schema which may be used to validate document instances of this VOTable version. Will return non-null iff getSchemaLocation() returns non-null.
        Returns:
        validation schema, or null
      • getDoctypeDeclaration

        public abstract java.lang.String getDoctypeDeclaration()
        Returns the text of the DOCTYPE XML declaration for this version.
        Returns:
        doctype declaration, or null
      • getDtdUrl

        public abstract java.net.URL getDtdUrl()
        Returns a URL from which the DTD can be retrieved. This is not the canonical DTD url, but a pointer to a local resource. Will return non-null iff getDoctypeDeclaration() returns non-null.
        Returns:
        local URL from which the DTD can be retrieved, or null
      • toString

        public java.lang.String toString()
        Returns version number.
        Overrides:
        toString in class java.lang.Object
      • allowEmptyTd

        public abstract boolean allowEmptyTd()
        Indicates whether this version permits an empty TD element to represent a null value for all data types.
        Returns:
        true iff empty TD elements are always permitted
      • allowBinary2

        public abstract boolean allowBinary2()
        Indicates whether the BINARY2 serialization format is defined by this version.
        Returns:
        true iff BINARY2 is allowed
      • allowXtype

        public abstract boolean allowXtype()
        Indicates whether the xtype attribute is permitted on FIELD elements etc in this version.
        Returns:
        true iff xtype attribute is allowed
      • allowTimesys

        public abstract boolean allowTimesys()
        Indicates whether the TIMESYS element is supported in this version.
        Returns:
        true iff TIMESYS is allowed
      • isVOUnitSyntax

        public abstract boolean isVOUnitSyntax()
        Indicates whether this version of VOTable is supposed to use the VOUnit standard for the content of unit attributes.
        Returns:
        true if VOUnits are supposed to be used
        See Also:
        VOUnits
      • getKnownVersions

        public static java.util.Map<java.lang.String,​VOTableVersion> getKnownVersions()
        Returns a number->version map for all known versions. The map keys are version number strings like "1.1". The order of entries in this map is in ascending order of version number.
        Returns:
        version map