SSA V1.02 (updated in response to RFC)

Doug Tody dtody at nrao.edu
Wed Sep 19 06:37:44 PDT 2007


Hi All -

The SSA specification has been updated in response to the RFC.
The new version (V1.02) is available in the IVOA document repository
now (http://www.ivoa.net/Documents/latest/SSA.html).

A summary of changes follows below.

Thanks to everyone who participated in the RFC; the specification is
much improved as a result of these careful reviews.

	- Doug, Markus, and the SSA authors


SSA RFC Revisons
----------------

Significant Changes

    - Increased version number to 1.02.

    - Added page numbers and a document title at the top of each page.

    - Added TSAP use-case as Appendix A.  Minor formatting changes.

    - Updated example of standard metadata query response in Appendix C.

    - Reworked and expanded the description of range-lists (8.7.2)
      to clarify the semantics in response to questions from the RFC.

    - Revised 4.1 to clarify the semantics of the mandatory query
      parameters including support for theory data.

    - Added a new section 8.7.3 on "Missing or null-valued parameters".

    - Changed FLUXCALIB and WAVECALIB from boolean parameters to
      string-valued parameters, with the values "absolute", "relative",
      "normalized" (for WAVECALIB), and "any" (the default).  The
      minimum acceptable calibration is specified, hence specifying
      "relative" will also find any data with an absolute calibration.

    - Dataset.Collection specifies the IVOA identifier of the collection,
      rather than the shortname.

    - Changed the units of Access.DatasetSize from bytes to KB, to
      emphasize that this is only intended to be an approximate estimate
      of the dataset size, used for execution planning.  During the
      test implementations we have been having trouble getting people to
      return this value, as they mistakenly thought that a precise value
      was required.  Switching to KB will emphasize this.  The point was
      clarified in the text as well.

    - Added a new section 2.6 introducing the concept of dataset
      identifiers.  These are used later in the specification, but were
      never really defined.

    - Added a new section 2.9 "UTYPEs and UCDs" introducing these two 
      concepts and describing how they are used.

    - Added SpectralAxis and FluxAxis to the Dataset metadata.  Along with
      the SI scaling factors, these are optional for fully compliant
      spectra, but recommended ("should" provide) for native format spectra.

    - In 4.2.4, added some additional discussion of how to deal with
      multiple Associations, where the same query response record may
      belong to more than one Association.

    - In 4.2.2.2, when using the "@<field>" syntax to indicate an indirect
      Association.Key (e.g., "@format"), the reference was changed to use
      the VOTable ID of the table FIELD, rather than the UTYPE, to ensure
      that the reference is unique in the event of multiple instances of
      fields with the same UTYPE.

    - In 4.1, added "If a service supports a parameter but the value
      given cannot be parsed or is otherwise illegal (as opposed to merely
      not matching any data) then an error response should be returned to
      the client."

    - In 4.1.1.3 (BAND), added text to the effect that "If the service
      supports query by bandpass name but does not recognize an input
      bandpass name, it should return an error indicating that it does
      not recognize the named bandpass.  If the service does not support
      query by bandpass name but is called in this way, it should return
      an error."

    - In 8.2.1 clarified version number usage, and the relation of the SSA
      and Spectrum version numbers.

    - In 4.2.5.1, added a paragraph noting that the access reference string
      should be URL encoded if it contains any reserved URL metacharacters
      such as "#".

    - Modified the specification of MTIME and added a new metadatum
      Dataset.Deleted, to allow clients which use MTIME to track changes
      to data collections to discover when a dataset has been deleted
      (creation and modification were already supported).  Dataset.Deleted
      is only returned in a MTIME query.  After an unspecified period of
      time the service can permanently delete the reference to the deleted
      dataset.  (Note that there may be other reasons for persisting
      dataset identifiers and associated dataset metadata, once such a
      dataset identifier has been published; for now we merely support
      client notification of deletion).

    - In the description of the FORMAT parameter (4.1.1), added a note
      that the FORMAT value is case insensitive.  Also clarified that
      FORMAT=fits refers to the SSA/Spectrum DM compliant FITS format,
      and that "native" should be used to access a native project specific
      FITS format, if any.

    - In the section on the format=metadata query (6.1) added text to
      clarify that FORMAT=metadata is a special case of the queryData
      operation (this should be clear as the FORMAT parameter is part
      of the queryData operation, but implementations showed that people
      were confused about this).  All operations must be specified
      explicitly with REQUEST.

    - In the TSAP discussion (Appendix A) it appears that what was called
      a "getData" is actually a standard data query, hence the operation 
      name was changed to queryData.  Also added REQUEST parameters to
      the sample operations, as required by the protocol.

    - I considered adding a new "Terminology" section as has been
      discussed, but this would overlap too much with existing sections
      such as on Levels of Compliance and Concepts, so I ended up
      just adding some more material to the Concepts section, e.g.,
      to define "dataset", "data collection", "service", "operation",
      and so forth.

    - In Characterization accuracy and error metadata table (4.2.5.11),
      removed the "Accuracy." field from the *.Calibration UTYPEs, to
      agree with changes to the Spectrum DM.

    - The UTYPEs for the Char fill factor attributes all had to be changed
      to Char.*.SamplingPrecision.SamplingPrecisionRefVal.FillFactor to
      agree with changes in the Spectrum DM (surely a better/shorter
      name could have been chosen, but it is probably too late to do
      anything about this).

    - Further minor changes to Appendix A (Theoretical Spectra)
      were required to agree with the SSA spec, particularly in the
      VOTables.  Some of the UTYPEs and UCDs did not agree with the
      current spec (e.g., Curation.PublisherID not Curation.PubID),
      Collection is an IVOA identifier, and the like.  There are
      some "VOX:" UCDs still in this which might preferably be
      locally-defined UTYPEs.  Access.Format was changed from
      "spectrum/votable" to "application/x-votable+xml".  An xmlns:ssa
      reference was added to the top of the VOTable.

    - Added an Appendix D providing a summary of the SSA data model
      (produced from my data model spreadsheet).  This presents the whole
      data model at a glance and includes things like datatype and
      arraySize which are missing from the tables within the document.


Minor Edits

    - Modified 4.1.1.3 (BAND), where range-list syntax is first used, to
      be more explicit about redirecting the user to section 8.7.2 for
      details on the range list syntax.

    - Tried to be more consistent in the use of fonts.  The document font is
      now used for anything which is a name (UTYPE, UCD, RESOURCE, FIELD,
      PARAM, etc.), with a typewriter font used for literal examples of
      computer text (e.g., a MIME type).



More information about the dal mailing list