This is the primary Common Archive Observation Model (CAOM) documentation. This documentation is generated from the VO-DML description of the data model.

Previous versions:

External vocabularies:

There are a number of fields in the data model that store numeric values that must be qualified with a unit of measure and, in the case of astronomical coordinates, coordinate system information. This set of qualifiers is not part of the data model; in principle one could define multiple "profiles" for use by different communities or for different purposes.



Common Archive Observation Model

Table of Contents

    Abstract
    Status
    Acknowledgements
1.     model: caom2
2.     Packages and Types
2.1     [root package]
2.1.1     primitiveType:uuid
2.2     package: caom2
2.2.1     objectType: Algorithm
2.2.2     objectType: Artifact
2.2.3     enumeration: CalibrationLevel
2.2.4     objectType: CaomEntity
2.2.5     objectType: Chunk
2.2.6     objectType: CompositeObservation
2.2.7     dataType: DataProductType
2.2.8     objectType: DataQuality
2.2.9     objectType: Energy
2.2.10     enumeration: EnergyBand
2.2.11     objectType: Environment
2.2.12     objectType: Instrument
2.2.13     objectType: Metrics
2.2.14     objectType: Observation
2.2.15     enumeration: ObservationIntentType
2.2.16     primitiveType: ObservationURI
2.2.17     objectType: Part
2.2.18     objectType: Plane
2.2.19     primitiveType: PlaneURI
2.2.20     objectType: Polarization
2.2.21     enumeration: PolarizationState
2.2.22     objectType: Position
2.2.23     dataType: ProductType
2.2.24     objectType: Proposal
2.2.25     objectType: Provenance
2.2.26     enumeration: Quality
2.2.27     enumeration: ReleaseType
2.2.28     objectType: Requirements
2.2.29     enumeration: SegmentType
2.2.30     objectType: SimpleObservation
2.2.31     enumeration: Status
2.2.32     objectType: Target
2.2.33     objectType: TargetPosition
2.2.34     enumeration: TargetType
2.2.35     objectType: Telescope
2.2.36     objectType: Time
2.2.37     dataType: VocabularyTerm
2.3     package: types
2.3.1     dataType: Circle
2.3.2     dataType: Interval
2.3.3     dataType: MultiPolygon
2.3.4     dataType: Point
2.3.5     dataType: Polygon
2.3.6     dataType: Shape
2.3.7     dataType: SubInterval
2.3.8     dataType: Vertex
2.4     package: wcs
2.4.1     dataType: Axis
2.4.2     dataType: Coord2D
2.4.3     dataType: CoordAxis1D
2.4.4     dataType: CoordAxis2D
2.4.5     dataType: CoordBounds1D
2.4.6     dataType: CoordBounds2D
2.4.7     dataType: CoordError
2.4.8     dataType: CoordFunction1D
2.4.9     dataType: CoordFunction2D
2.4.10     dataType: CoordRange1D
2.4.11     dataType: CoordRange2D
2.4.12     dataType: Dimension2D
2.4.13     dataType: EnergyTransition
2.4.14     objectType: ObservableAxis
2.4.15     objectType: PolarizationWCS
2.4.16     dataType: RefCoord
2.4.17     dataType: Slice
2.4.18     objectType: SpatialWCS
2.4.19     objectType: SpectralWCS
2.4.20     objectType: TemporalWCS
3.     vodml-id-s
4.     Imported Models
4.1     ivoa

Abstract

The Common Archive Observation Model (CAOM) is was originally developed by CADC to support unified data discovery and access to a wide range to data collections.

Data Discovery

Data discovery is supported by the Observation and Plane classes. Together, instances of these classes describe data products in terms of how data was acquired (telescope, instrument, etc) and what data was acquired (position, energy, time, and polarization).

The data discovery parts of the model are designed to work with IVOA data discovery protocols (e.g. TAP, SIA, and SSA) that are applicable to observational data and to support providing support for IVOA data models (e.g. ObsCore) with minimal extra effort.

Data Access

Data access is supported by the Artifact class and, for more specialised cases, the Part and Chunk classes. Artifacts are stored data objects (usually files). The structure of an artifact is described by it part(s) and the data content of the a part is described by one or more chunk(s). The current model allows for a linear sequence of named parts within an artifact; this works for some aggregations (e.g. flat tar or zip files) and linear data file formats (e.g. FITS) but is not well-suited to hierarchical structures (e.g. directory structures, HDF). A chunk is able to describe astronomical data arrays (e.g. spectra, images, cubes), but cannot describe arbitrary data structures like lists of data objects or tabular data.

The data access parts of the model can be queried via discovery protocols (TAP specifically), but the normal use would be to use specialised services that make use of this metadata to orchestrate the data access. Specifically, Artifact-Part-Chunk metadata is designed to support the implementation of IVOA DataLink and SODA services. The Plane-Artifact relation maps directly to the one or more download links provided by the standard DataLink output; you invoke DataLink with a plane identifier and get back URLs for all the artifacts. Addtional metadata in the parts and chunks can be used to implement SODA cutout by using the WCS metadata in the chunks to compute the sky-to-pixel transformations necessary to extract a subset of the pixels from a larger data array.

The WCS metadata in the chunks can also be used to compute most of the Plane metadata (position, energy, time, and polarization) in a consistent/uniform way. This strategy supports the option to shift some responsibility from the data provider to the metadata service provider.



Status

The CAOM-2.3 model is the stable model used by CADC and various partners.

The CAOM-2.4 model is under development to add new optional details and improve the ability to describe new kinds of data (radio, hierarchical artifacts, etc).

The red outlines around attributes or classes in the UML diagrams below indicate changes relative to the previous version.



1. Model: Common Archive Observation Model (caom2)

Authors : Patrick Dowler, Canadian Astronomy Data Centre
Date : 2019-04-03T16:00:00
Version : 2.4-pr1
Description : a general purpose data model for use as the core data model of an astronomical data centre

2.Model contents: Packages and Types

The following sub-sections present all packages in the model with their types. The packages are listed here in alphabetical order. Each sub-section contains a description of the package and a table containing its various features.

2.1 [root package]

Model caom2
child package(s) caom2
Primitive types uuid

2.1.1 primitiveType: uuid

vodml-id uuid
description represents a 128-bit binary ID in the canonical ascii UUID format

2.2 package: caom2

vodml-id caom2
description this package contains the CAOM object types and enumerations
parent caom2
Object types Algorithm Artifact CaomEntity Chunk CompositeObservation DataQuality Energy Environment Instrument Metrics Observation Part Plane Polarization Position Proposal Provenance Requirements SimpleObservation Target TargetPosition Telescope Time
Data types DataProductType ProductType VocabularyTerm
Enumerations CalibrationLevel EnergyBand ObservationIntentType PolarizationState Quality ReleaseType SegmentType Status TargetType
Primitive types ObservationURI PlaneURI
child package(s) types wcs

2.2.1 objectType: Algorithm

vodml-id Algorithm
description the algorithm that was responsible for creating the observation; for a CompositeObservation this is the algorithm that defines the intended set of members to include
package caom2
attributes
name feature value
name type ivoa:string
vodml-id Algorithm.name
multiplicity 1
description common name of the algorithm; for SimpleObservation: exposure; TBD: publish a list of acceptable values as a machine-readable vocabulary?

2.2.2 objectType: Artifact

vodml-id Artifact
description a physical product (typically a file)
package caom2
extends CaomEntity [caom2:CaomEntity]
attributes
name feature value
uri type ivoa:anyURI
vodml-id Artifact.uri
multiplicity 1
description an identifier that resolves to the storage location of the artifact
productType type ProductType [caom2:ProductType]
vodml-id Artifact.productType
multiplicity 1
description the primary product type of the artifact; for multi-part artifacts where the parts have different types, this is the primary type; for example, if an artifact has a science part and an auxiliary part, the artifact should have type science
releaseType type ReleaseType [caom2:ReleaseType]
vodml-id Artifact.releaseType
multiplicity 1
description field indicating how access permissions for this artifact are determined
contentType type ivoa:string
vodml-id Artifact.contentType
multiplicity 0..1
description label specifying the format of the resolved artifact; typically a MIME-type
contentLength type ivoa:integer
vodml-id Artifact.contentLength
multiplicity 0..1
description the size of the resolved artifact; typically file size in bytes
contentChecksum type ivoa:anyURI
vodml-id Artifact.contentChecksum
multiplicity 0..1
description the checksum of the artifact data; the URI must conform to the pattern {algorithm}:{value}, for example: md5:4be91751541fd804e7207663a0822f56 (NEW in CAOM-2.3)
compositions
name feature value
parts type Part [caom2:Part]
vodml-id Artifact.parts
multiplicity 0..*
isOrdered false
description the component parts of this artifact

2.2.3 enumeration: CalibrationLevel

vodml-id CalibrationLevel
description the degree to which data has been calibrated to remove instrumental effects; issue: there is no way to convey the integer serialised values here so it is in the description of each value
package caom2
literals
name feature value
PLANNED vodml-id CalibrationLevel.PLANNED
description (-1) planned data product that does not yet exist
RAW_INSTRUMENTAL vodml-id CalibrationLevel.RAW_INSTRUMENTAL
description (0) raw data in some opaque instrument-specific format
RAW_STANDARD vodml-id CalibrationLevel.RAW_STANDARD
description (1) raw data in a common format
CALIBRATED vodml-id CalibrationLevel.CALIBRATED
description (2) standard calibration steps have been applied
PRODUCT vodml-id CalibrationLevel.PRODUCT
description (3) additional non-standard calibration steps have been applied
ANALYSIS_PRODUCT vodml-id CalibrationLevel.ANALYSIS_PRODUCT
description (4) : data product from scientific analysis

2.2.4 objectType: CaomEntity

vodml-id CaomEntity
description base entity class to support persistence; entity attributes are generally set or updated by persistence implementations
package caom2
abstract True
Subclasses in this model Artifact Chunk Observation Part Plane
attributes
name feature value
id type uuid [caom2:uuid]
vodml-id CaomEntity.id
multiplicity 1
description globally unique identifier (primary key)
lastModified type ivoa:datetime
vodml-id CaomEntity.lastModified
multiplicity 0..1
description timestamp of last modification of this entity; the timestamp is intended to be applied or updated when the entity is stored (e.g. in a database)
maxLastModified type ivoa:datetime
vodml-id CaomEntity.maxLastModified
multiplicity 0..1
description maximum timestamp of last modification of this entity and all child entities; the timestamp is intended to be applied or updated when the entity is stored (e.g. in a database)
metaChecksum type ivoa:anyURI
vodml-id CaomEntity.metaChecksum
multiplicity 0..1
description checksum of this entity; (NEW in CAOM-2.3) The URI must conform to the pattern {algorithm}:{value}, for example: md5:4be91751541fd804e7207663a0822f56. The checksum of an entity is computed by accumulating byte representation of individual metadata values in the following order: (1) CaomEntity.id for entities, (2) state fields in alphabetic order (foo.a comes before foo.b) and using depth-first recursion (foo.abc.x comes before foo.def). Null values are ignored so that the addition of new fields in future versions will not change/invalidate existing checksums until values are assigned. Non-null values are converted to bytes as follows. string: UTF-8 encoded bytes URI: UTF-8 encoded bytes of string representation float: IEEE754 single (4 bytes) double: IEEE754 double (8 bytes) boolean: convert to single byte, false=0, true=1 (1 bytes) byte: as-is (1 byte) short: (2 bytes, network byte order == big endian)) integer: (4 bytes, network byte order == big endian) long: (8 bytes, network byte order == big endian) date: truncate time to whole number of seconds and treat as a long (seconds since 1970-01-01 00:00:00 UTC)
accMetaChecksum type ivoa:anyURI
vodml-id CaomEntity.accMetaChecksum
multiplicity 0..1
description accumulated checksum of the metadata of this entity and all child entities; (NEW in CAOM-2.3) The URI must conform to the pattern {algorithm}:{value}, for example: md5:4be91751541fd804e7207663a0822f56. The accumulated checksum of an entity is computed by accumulating the byte representation of entity checksums in the following order: (1) the metaChecksum of the current entity, (2) the accMetaChecksum of all child entities accumulated in order of the child's CaomEntity.id. For an entity with no children, the accMetaChecksum is derived only from the metaChecksum but it is not equal to it because it is a checksum of that checksum and not a checksum of the same metadata directly.

2.2.5 objectType: Chunk

vodml-id Chunk
description a quantitatively defined subsection of a data array; the part contains the whole array
package caom2
extends CaomEntity [caom2:CaomEntity]
attributes
name feature value
productType type ProductType [caom2:ProductType]
vodml-id Chunk.productType
multiplicity 0..1
description the type of content in this chunk, sometimes relative to the type of the artifact
naxis type ivoa:integer
vodml-id Chunk.naxis
multiplicity 0..1
description number of axes in the data array
positionAxis1 type ivoa:integer
vodml-id Chunk.positionAxis1
multiplicity 0..1
description index of the first position axis
positionAxis2 type ivoa:integer
vodml-id Chunk.positionAxis2
multiplicity 0..1
description index of the second position axis
energyAxis type ivoa:integer
vodml-id Chunk.energyAxis
multiplicity 0..1
description index of the energy axis
timeAxis type ivoa:integer
vodml-id Chunk.timeAxis
multiplicity 0..1
description index of the time axis
polarizationAxis type ivoa:integer
vodml-id Chunk.polarizationAxis
multiplicity 0..1
description index of the polarization axis
observableAxis type ivoa:integer
vodml-id Chunk.observableAxis
multiplicity 0..1
description index of the observable axis
compositions
name feature value
energy type SpectralWCS [caom2:SpectralWCS]
vodml-id Chunk.energy
multiplicity 0..1
isOrdered false
description spectral WCS description of the data array or subsection thereof
observable type ObservableAxis [caom2:ObservableAxis]
vodml-id Chunk.observable
multiplicity 0..1
isOrdered false
description observable description of the data array or subsection thereof
polarization type PolarizationWCS [caom2:PolarizationWCS]
vodml-id Chunk.poslarization
multiplicity 0..1
isOrdered false
description polarization WCS description of the data array or subsection thereof
position type SpatialWCS [caom2:SpatialWCS]
vodml-id Chunk.position
multiplicity 0..1
isOrdered false
description spatial WCS description of the data array or subsection thereof
time type TemporalWCS [caom2:TemporalWCS]
vodml-id Chunk.time
multiplicity 0..1
isOrdered false
description temporal WCS description of the data array or subsection thereof

2.2.6 objectType: CompositeObservation

vodml-id CompositeObservation
description an observation made by combining other observations
package caom2
extends Observation [caom2:Observation]
attributes
name feature value
members type ObservationURI [caom2:ObservationURI]
vodml-id CompositeObservation.members
multiplicity 0..*
description members are the observations grouped together by the algorithm that defines the composite; these are the intended components of the composite product -- actual inputs are described by the provenance

2.2.7 dataType: DataProductType

vodml-id DataProductType
description vocabulary term used in CAOM; this class defines constants for the CAOM DataProductType vocabulary which includes all the terms from the IVOA ObsCore data model plus additional terms used in CAOM and not in ObsCore (CHANGED in CAOM-2.3)
package caom2
extends VocabularyTerm [caom2:VocabularyTerm]

2.2.8 objectType: DataQuality

vodml-id DataQuality
description description of the data quality
package caom2
attributes
name feature value
flag type Quality [caom2:Quality]
vodml-id DataQuality.flag
multiplicity 1
description flag indicating the data quality

2.2.9 objectType: Energy

vodml-id Energy
description description of the energy coverage and sampling of the data
package caom2
attributes
name feature value
bounds type Interval [caom2:Interval]
vodml-id Energy.bounds
multiplicity 0..1
description energy bounds that include the data (barycentric vacuum wavelength)
emBand type EnergyBand [caom2:EnergyBand]
vodml-id Energy.emBand
multiplicity 0..1
description standard name of the energy regime included in the data
dimension type ivoa:integer
vodml-id Energy.dimension
multiplicity 0..1
description number of measurements (pixels) on the energy axis
resolvingPower type ivoa:real
vodml-id Energy.resolvingPower
multiplicity 0..1
description median spectral resolving power per pixel
sampleSize type ivoa:real
vodml-id Energy.sampleSize
multiplicity 0..1
description median pixel size
bandpassName type ivoa:string
vodml-id Energy.bandpassName
multiplicity 0..1
description telescope- and instrument-specific name for the energy band included
transition type EnergyTransition [caom2:EnergyTransition]
vodml-id Energy.transition
multiplicity 0..1
description target energy transition for this data
restwav type ivoa:real
vodml-id Energy.restwav
multiplicity 0..1
description rest wavelength of the target energy transition

2.2.10 enumeration: EnergyBand

vodml-id EnergyBand
description a general set of energy regions that span the electromagnetic spectrum; work-around: using the name of the literal to convey the serialised value
package caom2
literals
name feature value
Radio vodml-id EnergyBand.RADIO
description wavelength greater than ~10mm
Millimeter vodml-id EnergyBand.MILLIMETER
description wavelength from 0.1 to 10mm
Infrared vodml-id EnergyBand.INFRARED
description wavelength from 1um to 0.1mm
Optical vodml-id EnergyBand.OPTICAL
description wavelength from 300nm to 1um
UV vodml-id EnergyBand.UV
description wavelength from 100 to 300nm
EUV vodml-id EnergyBand.EUV
description wavelength from 10 to 100nm
Xray vodml-id EnergyBand.XRAY
description energy from 0.12 to 120keV
Gammaray vodml-id EnergyBand.GAMMARAY
description energy greater than ~120keV

2.2.11 objectType: Environment

vodml-id Environment
description collection of measured quantities that characterise the environment at the time of observation
package caom2
attributes
name feature value
name type ivoa:real
vodml-id Environment.seeing
multiplicity 0..1
description typical atmospheric distortion (full-width-half-max of a point source)
humidity type ivoa:real
vodml-id Environment.humidity
multiplicity 0..1
description fractional relative humidity [0,1]
elevation type ivoa:real
vodml-id Environment.elevation
multiplicity 0..1
description angular elevation above horizon [0,90]
tau type ivoa:real
vodml-id Environment.tau
multiplicity 0..1
description the opacity of the atmosphere [0,1]
wavelengthTau type ivoa:real
vodml-id Environment.wavelengthTau
multiplicity 0..1
description wavelength at which opacity was measured
ambientTemp type ivoa:real
vodml-id Environment.ambientTemp
multiplicity 0..1
description ambient temperature at the telescope
photometric type ivoa:boolean
vodml-id Environment.photometric
multiplicity 0..1
description indicator that flux and/or color calibration is stable

2.2.12 objectType: Instrument

vodml-id Instrument
description the instrument used to acquire or create the observation; this could be used for both physical instruments that acquire data or software that generates it (e.g. simulated data)
package caom2
attributes
name feature value
name type ivoa:string
vodml-id Instrument.name
multiplicity 1
description common name for the instrument
keywords type ivoa:string
vodml-id Instrument.keywords
multiplicity 0..*
description additional keywords that describe the instrument or instrument configuration at the time of observation; keywords cannot contain the pipe (|) character - it is reserved for use in persistence systems (e.g. to store all keywords in a single column in a table)

2.2.13 objectType: Metrics

vodml-id Metrics
description collection of measured quantities that describe the content of the data
package caom2
attributes
name feature value
sourceNumberDensity type ivoa:real
vodml-id Metrics.sourceNumberDensity
multiplicity 0..1
description number of sources detected per unit area
background type ivoa:real
vodml-id Metrics.background
multiplicity 0..1
description background level
backgroundStddev type ivoa:real
vodml-id Metrics.backgroundStddev
multiplicity 0..1
description standard deviation in the background level
fluxDensityLimit type ivoa:real
vodml-id Metrics.fluxDensityLimit
multiplicity 0..1
description flux density with a signal:noise ratio of 10
magLimit type ivoa:real
vodml-id Metrics.magLimit
multiplicity 0..1
description magnitude with a signal:noise ratio of 10

2.2.14 objectType: Observation

vodml-id Observation
description an observation is a single top-level entry in an astronomy data centre
package caom2
extends CaomEntity [caom2:CaomEntity]
abstract True
Subclasses in this model CompositeObservation SimpleObservation
attributes
name feature value
collection type ivoa:string
vodml-id Observation.collection
multiplicity 1
description the name of the data collection this observation belongs to
observationID type ivoa:string
vodml-id Observation.observationID
multiplicity 1
description the collection-specific identifier for this observation
metaRelease type ivoa:datetime
vodml-id Observation.metaRelease
multiplicity 0..1
description timestamp after which metadata for the observation instance is public
sequenceNumber type ivoa:integer
vodml-id Observation.sequenceNumber
multiplicity 0..1
description a collection-specific sequence number for observations; re-use or reset is collection specific
type type ivoa:string
vodml-id Observation.type
multiplicity 0..1
description the type of observation (FITS OBSTYPE keyword); usually OBJECT for intent = science
intent type ObservationIntentType [caom2:ObservationIntentType]
vodml-id Observation.intent
multiplicity 1
description the intent of the original observer in acquiring this data
metaReadGroups type ivoa:anyURI
vodml-id Observation.metaReadGroups
multiplicity 0..*
description set of groups with read permission on observation metadata (new in 2.4)
compositions
name feature value
algorithm type Algorithm [caom2:Algorithm]
vodml-id Observation.algorithm
multiplicity 1
isOrdered false
description the algorithm or process that created this observation
environment type Environment [caom2:Environment]
vodml-id Observation.environment
multiplicity 0..1
isOrdered false
description the environmental conditions at the time of observation
instrument type Instrument [caom2:Instrument]
vodml-id Observation.instrument
multiplicity 0..1
isOrdered false
description the instrument or detector used to acquire the data
planes type Plane [caom2:Plane]
vodml-id Observation.planes
multiplicity 0..*
isOrdered false
description the component planes belonging to this observation
proposal type Proposal [caom2:Proposal]
vodml-id Observation.Proposal
multiplicity 0..1
isOrdered false
description the science proposal underwhich this observation was created
requirements type Requirements [caom2:Requirements]
vodml-id Observation.requirements
multiplicity 0..1
isOrdered false
description the observational requirements specified by the observer or proposal
target type Target [caom2:Target]
vodml-id Observation.target
multiplicity 0..1
isOrdered false
description the intended target of the observation
targetPosition type TargetPosition [caom2:TargetPosition]
vodml-id Observation.targetPosition
multiplicity 0..1
isOrdered false
description the intended target position for this observation
telescope type Telescope [caom2:Telescope]
vodml-id Observation.telescope
multiplicity 0..1
isOrdered false
description the telescope or facility where this observation was created

2.2.15 enumeration: ObservationIntentType

vodml-id ObservationIntentType
description the intent of the original observer in acquiring this observation; work-around: using the name of the literal to convey the serialised value
package caom2
literals
name feature value
science vodml-id ObservationIntentType.SCIENCE
description the intent of this observation was to create science data
calibration vodml-id ObservationIntentType.CALIBRATION
description the intent of this observation was to create calibration data

2.2.16 primitiveType: ObservationURI

vodml-id ObservationURI
description Observation identifier of the form caom:{Observation.collection}/{Observation.observationID}
package caom2

2.2.17 objectType: Part

vodml-id Part
description format-specific name of this part; this is typically something like a FITS extension or a file within a container
package caom2
extends CaomEntity [caom2:CaomEntity]
attributes
name feature value
name type ivoa:string
vodml-id Part.name
multiplicity 1
description the name of this part of the artifact; this is typically something like a FITS extension name or number or a filename
productType type ProductType [caom2:ProductType]
vodml-id Part.productType
multiplicity 0..1
description the type of content in this part, sometimes relative to the type of the artifact
compositions
name feature value
chunks type Chunk [caom2:Chunk]
vodml-id Part.chunks
multiplicity 0..*
isOrdered false
description component chunks that belong to this part

2.2.18 objectType: Plane

vodml-id Plane
description a component of an observation that describes one product of the observation
package caom2
extends CaomEntity [caom2:CaomEntity]
attributes
name feature value
creatorID type ivoa:anyURI
vodml-id Plane.creatorID
multiplicity 0..1
description identifier for this product assigned by the creator; typically made up of the Observation.collection, Observation.observationID, and Plane.productID and in the form of an IVOA dataset identifier (NEW in CAOM-2.3)
productID type ivoa:string
vodml-id Plane.productID
multiplicity 1
description collection- and observationID-specific identifier for this product
metaRelease type ivoa:datetime
vodml-id Plane.metaRelease
multiplicity 0..1
description timestamp after which metadata for the plane is public; this metaRelease timestamp applies to all children of the plane and to artifacts with releaseType=meta
dataRelease type ivoa:datetime
vodml-id Plane.dataRelease
multiplicity 0..1
description timestamp after which data for the plane is public; this dataRelease timestamp applies to all children of the plane and to artifacts with releaseType=data
calibrationLevel type CalibrationLevel [caom2:CalibrationLevel]
vodml-id Plane.calibrationLevel
multiplicity 0..1
description standard classification of the degree to which the data is calibrated
dataProductType type DataProductType [caom2:DataProductType]
vodml-id Plane.dataProductType
multiplicity 0..1
description standard classification of the type of data product; describes the logical data type for the main artifacts
metaReadGroups type ivoa:anyURI
vodml-id Plane.metaReadGroups
multiplicity 0..*
description set of groups with read permission on plane (and child) metadata (new in 2.4)
dataReadGroups type ivoa:anyURI
vodml-id Plane.dataReadGroups
multiplicity 0..*
description set of groups with read permission on plane data (new in 2.4)
compositions
name feature value
artifacts type Artifact [caom2:Artifact]
vodml-id Plane.artifacts
multiplicity 0..*
isOrdered false
description the component artifacts belonging to this plane
energy type Energy [caom2:Energy]
vodml-id Plane.energy
multiplicity 0..1
isOrdered false
description descritpion of the energy(ies) included in the data
metrics type Metrics [caom2:Metrics]
vodml-id Plane.metrics
multiplicity 0..1
isOrdered false
description collection of measured quantities that describe the content of the data
polarization type Polarization [caom2:Polarization]
vodml-id Plane.polarization
multiplicity 0..1
isOrdered false
description description of the polarization(s) included in the data
position type Position [caom2:Position]
vodml-id Plane.position
multiplicity 0..1
isOrdered false
description description of the position(s) included in the data
provenance type Provenance [caom2:Provenance]
vodml-id Plane.provenance
multiplicity 0..1
isOrdered false
description description of the provenance of the data
quality type DataQuality [caom2:DataQuality]
vodml-id Plane.quality
multiplicity 0..1
isOrdered false
description flag indicating the quality of the data
time type Time [caom2:Time]
vodml-id Plane.time
multiplicity 0..1
isOrdered false
description description of the time(s) included in the data

2.2.19 primitiveType: PlaneURI

vodml-id PlaneURI
description Plane identifier of the form caom:{Observation.collection}/{Observation.observationID}/{Plane.productID} aka {observationURI}/{Plane.productID}
package caom2

2.2.20 objectType: Polarization

vodml-id Polarization
description description of polarization measurements included in the data
package caom2
attributes
name feature value
states type PolarizationState [caom2:PolarizationState]
vodml-id Polarization.states
multiplicity 0..*
description standard polarization states included
dimension type ivoa:integer
vodml-id Polarization.dimension
multiplicity 0..1
description number of polarization states included

2.2.21 enumeration: PolarizationState

vodml-id PolarizationState
description a classification of polarization (Stokes states plus other related quantities); work-around: using the name of the literal to convey the serialised value
package caom2
literals
name feature value
I vodml-id PolarizationState.I
description unpolarized
Q vodml-id PolarizationState.Q
description Stokes linear Q
U vodml-id PolarizationState.U
description Stokes linear U
V vodml-id PolarizationState.V
description Stokes circular V
RR vodml-id PolarizationState.RR
description right-right circular
LL vodml-id PolarizationState.LL
description left-left circular
RL vodml-id PolarizationState.RL
description right-left cross-circular
LR vodml-id PolarizationState.LR
description left-right cross-circular
XX vodml-id PolarizationState.XX
description X parallel linear
YY vodml-id PolarizationState.YY
description Y parallel linear
XY vodml-id PolarizationState.XY
description XY cross-linear
YX vodml-id PolarizationState.YX
description YX cross-linear
POLI vodml-id PolarizationState.POLI
description linear polarized intensity: sqrt(Q^2 + U^2)
FPOLI vodml-id PolarizationState.FPOLI
description fractional linear polarization: POLI/I
POLA vodml-id PolarizationState.POLA
description linear polarization angle: 1/2 arctan(U,Q)
EPOLI vodml-id PolarizationState.EPOLI
description elliptical polarization intensity: sqrt(Q^2 + U^2 + V^2)
CPOLI vodml-id PolarizationState.CPOLI
description circular polarization intensity: |V|
NPOLI vodml-id PolarizationState.NPOLI
description unpolarized intensity: I - EPOLI

2.2.22 objectType: Position

vodml-id Position
description description of the position coverage and sampling of the data
package caom2
attributes
name feature value
bounds type Shape [caom2:Shape]
vodml-id Position.bounds
multiplicity 0..1
description spatial boundary that includes the data
dimension type Dimension2D [caom2:Dimension2D]
vodml-id Position.dimension
multiplicity 0..1
description number of separate measurements (pixels) along each axis
resolution type ivoa:real
vodml-id Position.resolution
multiplicity 0..1
description median spatial resolution (full-width-half-max) per pixel
sampleSize type ivoa:real
vodml-id Position.sampleSize
multiplicity 0..1
description median pixel size
timeDependent type ivoa:boolean
vodml-id Position.timeDependent
multiplicity 0..1
description indicates that the observation was taken with non-siderial tracking so the resulting position is time-dependent; this usually explains why no bounds is available

2.2.23 dataType: ProductType

vodml-id ProductType
description this class defines constants for the CAOM ProductType vocabulary (CHANGED in CAOM-2.3)
package caom2
extends VocabularyTerm [caom2:VocabularyTerm]

2.2.24 objectType: Proposal

vodml-id Proposal
description description of the science proposal or programme that initiated the observation
package caom2
attributes
name feature value
proposalID type ivoa:string
vodml-id Proposal.proposalID
multiplicity 1
description collection-specific identifier for the proposal
pi type ivoa:string
vodml-id Proposal.pi
multiplicity 0..1
description proper name of the principal investigator
project type ivoa:string
vodml-id Proposal.project
multiplicity 0..1
description common name of the project this proposal belongs to; typically used for larger or long-running projects that include mutliple proposals
title type ivoa:string
vodml-id Proposal.title
multiplicity 0..1
description title of the proposal
keywords type ivoa:string
vodml-id Proposal.keywords
multiplicity 0..*
description additional keywords that describe the science goals of the proposal; keywords cannot contain the pipe (|) character - it is reserved for use in persistence systems (e.g. to store all keywords in a single column in a table)

2.2.25 objectType: Provenance

vodml-id Provenance
description description of how this data was produced
package caom2
attributes
name feature value
name type ivoa:string
vodml-id Provenance.name
multiplicity 1
description collection-specific common name of the process
reference type ivoa:anyURI
vodml-id Provenance.reference
multiplicity 0..1
description collection-specific common name of the process
version type ivoa:string
vodml-id Provenance.version
multiplicity 0..1
description version of the software or process that produced the data
project type ivoa:string
vodml-id Provenance.project
multiplicity 0..1
description name of the project that produced the data; data produced in a uniform way are typically labelled with the same project name
producer type ivoa:string
vodml-id Provenance.producer
multiplicity 0..1
description common name of the entity (person, institute, etc) responsible for producing the data
runID type ivoa:string
vodml-id Provenance.runID
multiplicity 0..1
description collection-specific identifier for the processing instance that produced the data; this identifier can typcially be traced in log files or logging systems
lastExecuted type ivoa:string
vodml-id Provenance.lastExecuted
multiplicity 0..1
description timestamp describing when this process last ran and produced data
keywords type ivoa:string
vodml-id Provenance.keywords
multiplicity 0..*
description additional keywords that describe the processing; this may include both general descriptive words and those specific to this particular execution of the processing; keywords cannot contain the pipe (|) character - it is reserved for use in persistence systems (e.g. to store all keywords in a single column in a table)
inputs type PlaneURI [caom2:PlaneURI]
vodml-id Provenance.inputs
multiplicity 0..*
description local identifier for input planes; these are the actual inputs that went into the product

2.2.26 enumeration: Quality

vodml-id Quality
description a general indicator of data quality; work-around: using the name of the literal to convey the serialised value
package caom2
literals
name feature value
junk vodml-id Quality.JUNK
description this data cannot be used for anything

2.2.27 enumeration: ReleaseType

vodml-id ReleaseType
description a flag indicating how an artifact is classified to determine access permissions; work-around: using the name of the literal to convey the serialised value
package caom2
literals
name feature value
data vodml-id ReleaseType.DATA
description access permission checks assume the protected item is data
meta vodml-id ReleaseType.META
description access permission checks assume the protected item is metadata

2.2.28 objectType: Requirements

vodml-id Requirements
description the observational requirements specified by the proposal
package caom2
attributes
name feature value
flag type Status [caom2:Status]
vodml-id Requirements.flag
multiplicity 1
description flag indicating degree to which requirements were satisfied by the observation

2.2.29 enumeration: SegmentType

vodml-id SegmentType
description code used in CAG description of polygons
package caom2
literals
name feature value
LINE vodml-id SegmentType.LINE
description (0) line from previous to this vertex
MOVE vodml-id SegmentType.MOVE
description (1) move from previous to this vertex
CLOSE vodml-id SegmentType.CLOSE
description (2) line from previous vertex to last vertex with type MOVE

2.2.30 objectType: SimpleObservation

vodml-id SimpleObservation
description an observation created directly by operating an instrument or process
package caom2
extends Observation [caom2:Observation]

2.2.31 enumeration: Status

vodml-id Status
description a status flag indicating degree of success; work-around: using the name of the literal to convey the serialised value
package caom2
literals
name feature value
fail vodml-id Status.FAIL
description the observation failed to meet the requirements of the proposal

2.2.32 objectType: Target

vodml-id Target
description the target of an observation
package caom2
attributes
name feature value
name type ivoa:string
vodml-id Target.name
multiplicity 1
description proper name of the target
type type TargetType [caom2:TargetType]
vodml-id Target.type
multiplicity 0..1
description type of target; typically used to figure out what the target name means and where to look for additional information about it
redshift type ivoa:real
vodml-id Target.redshift
multiplicity 0..1
description cosmological redshift of the target
standard type ivoa:boolean
vodml-id Target.standard
multiplicity 0..1
description indicates that the target is typically used as a standard (astrometric, photometric, etc)
moving type ivoa:boolean
vodml-id Target.moving
multiplicity 0..1
description indicates that the target is a moving object; used for solar system objects but not high proper motion stars
keywords type ivoa:string
vodml-id Target.keywords
multiplicity 0..*
description additional keywords that describe the target; keywords cannot contain the pipe (|) character - it is reserved for use in persistence systems (e.g. to store all keywords in a single column in a table)

2.2.33 objectType: TargetPosition

vodml-id TargetPosition
description the intended position of the observation (not the position of the intended or actual target)
package caom2
attributes
name feature value
coordsys type ivoa:string
vodml-id TargetPosition.coordsys
multiplicity 1
description the coordinate system of the coordinates
equinox type ivoa:real
vodml-id TargetPosition.equinox
multiplicity 0..1
description the equinox of the coordinates
coordinates type Point [caom2:Point]
vodml-id TargetPosition.coordinates
multiplicity 1
description the coordinates

2.2.34 enumeration: TargetType

vodml-id TargetType
description the type of target being observed; qualifies target name; work-around: using the name of the literal to convey the serialised value
package caom2
literals
name feature value
object vodml-id TargetType.OBJECT
description the target of the observation is an astronomical object
field vodml-id TargetType.FIELD
description the target of the observation is a defined region on the sky

2.2.35 objectType: Telescope

vodml-id Telescope
description the telescope used to acquire the data for an observation
package caom2
attributes
name feature value
name type ivoa:string
vodml-id Telescope.name
multiplicity 1
description common name of the telescope; TBD: reference to a standard list of names?
geoLocationX type ivoa:real
vodml-id Telescope.geoLocationX
multiplicity 0..1
description x-coordinate of the geocentric location of the telescope at the time of observation (see FITS WCS Paper III)
geoLocationY type ivoa:real
vodml-id Telescope.geoLocationY
multiplicity 0..1
description y-coordinate of the geocentric location of the telescope at the time of observation (see FITS WCS Paper III)
geoLocationZ type ivoa:real
vodml-id Telescope.geoLocationZ
multiplicity 0..1
description z-coordinate of the geocentric location of the telescope at the time of observation (see FITS WCS Paper III)
keywords type ivoa:string
vodml-id Telescope.keywords
multiplicity 0..*
description additional keywords that describe the telescope or telscope configuration at the time of observation; keywords cannot contain the pipe (|) character - it is reserved for use in persistence systems (e.g. to store all keywords in a single column in a table)

2.2.36 objectType: Time

vodml-id Time
description description of the time coverage and sampling of the data
package caom2
attributes
name feature value
bounds type Interval [caom2:Interval]
vodml-id Time.bounds
multiplicity 0..1
description time bounds that include the data
dimension type ivoa:integer
vodml-id Time.dimension
multiplicity 0..1
description number of measurements (pixels) on the time axis
resolution type ivoa:real
vodml-id Time.resolution
multiplicity 0..1
description median temporal resolution per pixel
sampleSize type ivoa:real
vodml-id Time.sampleSize
multiplicity 0..1
description median pixel size
exposure type ivoa:real
vodml-id Time.exposure
multiplicity 0..1
description median exposure time per pixel

2.2.37 dataType: VocabularyTerm

vodml-id VocabularyTerm
description base class of a single term (word) in a vocabulary (NEW in CAOM-2.3)
package caom2
abstract True
Subclasses in this model DataProductType ProductType
attributes
name feature value
namespace type ivoa:anyURI
vodml-id VocabularyTerm.namespace
multiplicity 1
description globally unique namespace for the vocabulary
term type ivoa:string
vodml-id VocabularyTerm.term
multiplicity 1
description the word from the vocabulary
term type ivoa:boolean
vodml-id VocabularyTerm.base
multiplicity 1
description flag indicating of the vocabulary namespace is a base vocabulary

2.3 package: types

vodml-id types
description data types
parent caom2
Data types Circle Interval MultiPolygon Point Polygon Shape SubInterval Vertex
Parent package caom2

2.3.1 dataType: Circle

vodml-id Circle
description a circular region on the sky
package types
extends Shape [caom2:Shape]
attributes
name feature value
center type Point [caom2:Point]
vodml-id Shape.center
multiplicity 1
description TBD
radius type ivoa:real
vodml-id Circle.radius
multiplicity 1
description TBD

2.3.2 dataType: Interval

vodml-id Interval
description a set of numeric values defined by a lower and upper bound (bounds included: [a,b])
package types
attributes
name feature value
lower type ivoa:real
vodml-id Interval.lower
multiplicity 1
description TBD
upper type ivoa:real
vodml-id Interval.upper
multiplicity 1
description TBD
samples type SubInterval [caom2:SubInterval]
vodml-id Interval.samples
multiplicity 1..*
description the samples within an interval describe possible holes in the interval; in the simple case there is one sample that is identical to the outer interval; samples within an interval are not allowed to overlap (TBD: the bounds of adjacent samples may be equal?)

2.3.3 dataType: MultiPolygon

vodml-id MultiPolygon
description a region on the sky defined a sequence of points connected by great-circle segments; each simple polygon is is terminated by a special type of vertex and multiple simple polygons are permitted to describe disconnected regions as a single value
package types
attributes
name feature value
vertices type Vertex [caom2:Vertex]
vodml-id MultiPolygon.vertices
multiplicity 3..*
description TBD

2.3.4 dataType: Point

vodml-id Point
description [TODO add description!]
package types
Subclasses in this model Vertex
attributes
name feature value
cval1 type ivoa:real
vodml-id Point.cval1
multiplicity 1
description TBD
cval1 type ivoa:real
vodml-id Point.cval2
multiplicity 1
description TBD

2.3.5 dataType: Polygon

vodml-id Polygon
description a simple polygon region on the sky defined a sequence of points connected by great-circle segments
package types
extends Shape [caom2:Shape]
attributes
name feature value
points type Point [caom2:Point]
vodml-id Polygon.points
multiplicity 3..*
description TBD
samples type MultiPolygon [caom2:MultiPolygon]
vodml-id Polygon.samples
multiplicity 1
description TBD

2.3.6 dataType: Shape

vodml-id Shape
description [TODO add description!]
package types
abstract True
Subclasses in this model Circle Polygon

2.3.7 dataType: SubInterval

vodml-id SubInterval
description a sub-sample of an interval
package types
attributes
name feature value
lower type ivoa:real
vodml-id SubInterval.lower
multiplicity 1
description TBD
upper type ivoa:real
vodml-id SubInterval.upper
multiplicity 1
description TBD

2.3.8 dataType: Vertex

vodml-id Vertex
description [TODO add description!]
package types
extends Point [caom2:Point]
attributes
name feature value
type type SegmentType [caom2:SegmentType]
vodml-id Vertex.type
multiplicity 1
description TBD

2.4 package: wcs

vodml-id wcs
description World Coordinate System (WCS) data types
parent caom2
Object types ObservableAxis PolarizationWCS SpatialWCS SpectralWCS TemporalWCS
Data types Axis Coord2D CoordAxis1D CoordAxis2D CoordBounds1D CoordBounds2D CoordError CoordFunction1D CoordFunction2D CoordRange1D CoordRange2D Dimension2D EnergyTransition RefCoord Slice
Parent package caom2

2.4.1 dataType: Axis

vodml-id Axis
description one-dimensional coordinate axis description
package wcs
attributes
name feature value
ctype type ivoa:string
vodml-id Axis.ctype
multiplicity 1
description TBD
ctype type ivoa:string
vodml-id Axis.cunit
multiplicity 0..1
description TBD

2.4.2 dataType: Coord2D

vodml-id Coord2D
description a two-dimensional (pair) of reference coordinates
package wcs
attributes
name feature value
coord1 type RefCoord [caom2:RefCoord]
vodml-id Coord2D.coord1
multiplicity 1
description TBD
coord2 type RefCoord [caom2:RefCoord]
vodml-id Coord2D.coord2
multiplicity 1
description TBD

2.4.3 dataType: CoordAxis1D

vodml-id CoordAxis1D
description a one-dimensional coordinate axis: quantity, values, errors; it is usually only necessary to specify one of the range, bounds, or function as they describe the world and pixel coordinate coverage at different levels of detail and the less detailed description is redundant (exception: when the range or bounds and function are both specified, the range/bounds is a subset of the pixels described by the function and denotes the valid pixels
package wcs
attributes
name feature value
axis type Axis [caom2:Axis]
vodml-id CoordAxis1D.axis
multiplicity 1
description description of the quantity
error type CoordError [caom2:CoordError]
vodml-id CoordAxis1D.error
multiplicity 0..1
description errors
range type CoordRange1D [caom2:CoordRange1D]
vodml-id CoordAxis1D.range
multiplicity 0..1
description pixel and world coordinate values covered by this axis (min,max)
bounds type CoordBounds1D [caom2:CoordBounds1D]
vodml-id CoordAxis1D.bounds
multiplicity 0..1
description pixel and world coordinate values covered by this axis (min,max of tiles)
function type CoordFunction1D [caom2:CoordFunction1D]
vodml-id CoordAxis1D.function
multiplicity 0..1
description pixel and world coordinate values covered by this axis (coordinates of every pixel)

2.4.4 dataType: CoordAxis2D

vodml-id CoordAxis2D
description a two-dimensional coordinate axis pair: quantity, values, errors; it is usually only necessary to specify one of the range, bounds, or function as they describe the world and pixel coordinate coverage at different levels of detail and the less detailed description is redundant (exception: when the range or bounds and function are both specified, the range/bounds is a subset of the pixels described by the function and denotes the valid pixels
package wcs
attributes
name feature value
axis1 type Axis [caom2:Axis]
vodml-id CoordAxis2D.axis1
multiplicity 1
description first axis of the spatial coordinate system; usually longitude
axis2 type Axis [caom2:Axis]
vodml-id CoordAxis2D.axis2
multiplicity 1
description second axis of the spatial coordinate system; usually latitude
error1 type CoordError [caom2:CoordError]
vodml-id CoordAxis2D.error1
multiplicity 0..1
description position errors on the first axis
error2 type CoordError [caom2:CoordError]
vodml-id CoordAxis2D.error2
multiplicity 0..1
description position errors on the second axis
range type CoordRange2D [caom2:CoordRange2D]
vodml-id CoordAxis2D.range
multiplicity 0..1
description pixel and world coordinate values covered by this axis (min,max)
bounds type CoordBounds2D [caom2:CoordBounds2D]
vodml-id CoordAxis2D.bounds
multiplicity 0..1
description pixel and world coordinate values covered by this axis (boundary)
function type CoordFunction2D [caom2:CoordFunction2D]
vodml-id CoordAxis2D.function
multiplicity 0..1
description pixel and world coordinate values covered by this axis (coordinates of every pixel

2.4.5 dataType: CoordBounds1D

vodml-id CoordBounds1D
description a one-dimensional sequence of reference coordinate ranges
package wcs
attributes
name feature value
vertices type CoordRange1D [caom2:CoordRange1D]
vodml-id CoordBounds1D.samples
multiplicity 1..*
description TBD

2.4.6 dataType: CoordBounds2D

vodml-id CoordBounds2D
description a two-dimensional region in pixel and world coordinates; this can be used to specify a simple polygon boundary in pixel and world coordinates
package wcs
attributes
name feature value
vertices type Coord2D [caom2:Coord2D]
vodml-id CoordBounds2D.vertices
multiplicity 1..*
description the vertices of the polygon with implicit segment from the last vertex back to the first

2.4.7 dataType: CoordError

vodml-id CoordError
description coordinate error from FITS WCS
package wcs
attributes
name feature value
crder type ivoa:real
vodml-id CoordError.rnder
multiplicity 0..1
description TBD
csyer type ivoa:real
vodml-id CoordError.syser
multiplicity 0..1
description TBD

2.4.8 dataType: CoordFunction1D

vodml-id CoordFunction1D
description a one-dimensional (linear) WCS coordinate transformation function
package wcs
attributes
name feature value
dimension type ivoa:integer
vodml-id CoordFunction1D.dimension
multiplicity 1
description number of pixels along the axis
refCoord type RefCoord [caom2:RefCoord]
vodml-id CoordFunction1D.refCoord
multiplicity 1
description the reference pixel and world coordinate values
delta type ivoa:real
vodml-id CoordFunction1D.delta
multiplicity 1
description delta in world coordinate value (size of one pixel)

2.4.9 dataType: CoordFunction2D

vodml-id CoordFunction2D
description a two-dimensional (linear) WCS coordinate transformation function; this can be used to compute the world coordinates of every pixel
package wcs
attributes
name feature value
dimension type Dimension2D [caom2:Dimension2D]
vodml-id CoordFunction2D.dimension
multiplicity 1
description number of pixels along each axis of the two-dimensional space (FITS: NAXISi)
refCoord type Coord2D [caom2:Coord2D]
vodml-id CoordFunction2D.refCoord
multiplicity 1
description two-dimensional reference pixel and world coordinate values (FITS: CRPIXi, CRVALi)
cd11 type ivoa:real
vodml-id CoordFunction2D.cd11
multiplicity 1
description two-dimensional scale and rotation (CD) matrix (FITS: CD1_1)
cd12 type ivoa:real
vodml-id CoordFunction2D.cd12
multiplicity 1
description two-dimensional scale and rotation (CD) matrix (FITS: CD1_2)
cd21 type ivoa:real
vodml-id CoordFunction2D.cd21
multiplicity 1
description two-dimensional scale and rotation (CD) matrix (FITS: CD2_1)
cd22 type ivoa:real
vodml-id CoordFunction2D.cd22
multiplicity 1
description two-dimensional scale and rotation (CD) matrix (FITS: CD2_2)

2.4.10 dataType: CoordRange1D

vodml-id CoordRange1D
description a one-dimensional range of reference coordinates
package wcs
attributes
name feature value
start type RefCoord [caom2:RefCoord]
vodml-id CoordRange1D.start
multiplicity 1
description TBD
end type RefCoord [caom2:RefCoord]
vodml-id CoordRange1D.end
multiplicity 1
description TBD

2.4.11 dataType: CoordRange2D

vodml-id CoordRange2D
description a two-dimensional range of reference coordinates; this can be used to specify an axis-aligned bounding box in pixel and world coordinates
package wcs
attributes
name feature value
start type Coord2D [caom2:Coord2D]
vodml-id CoordRange2D.start
multiplicity 1
description the two-dimensional reference coordinates with minimum longitude and latitude
end type Coord2D [caom2:Coord2D]
vodml-id CoordRange2D.end
multiplicity 1
description the two-dimensional reference coordinates with maximum longitude and latitude

2.4.12 dataType: Dimension2D

vodml-id Dimension2D
description dimension (number of pixels) for a two-dimensional axis
package wcs
attributes
name feature value
naxis1 type ivoa:integer
vodml-id Dimension2D.naxis1
multiplicity 1
description TBD
naxis2 type ivoa:integer
vodml-id Dimension2D.naxis2
multiplicity 1
description TBD

2.4.13 dataType: EnergyTransition

vodml-id EnergyTransition
description [TODO add description!]
package wcs
attributes
name feature value
species type ivoa:string
vodml-id EnergyTransition.species
multiplicity 1
description TODO
transition type ivoa:string
vodml-id EnergyTransition.transition
multiplicity 1
description TODO

2.4.14 objectType: ObservableAxis

vodml-id ObservableAxis
description an axis in the data (array) that varies by observable rather than coordinate; this axis is used when the data array containts values with different meaning in different subsets of the array (e.g. a row of pixels with wavelength values and a second row with flux values)
package wcs
attributes
name feature value
dependent type Slice [caom2:Slice]
vodml-id ObservableAxis.dependent
multiplicity 1
description the part of the array containing the observable values
independent type Slice [caom2:Slice]
vodml-id ObservableAxis.independent
multiplicity 0..1
description the part of the array containing coordinate values

2.4.15 objectType: PolarizationWCS

vodml-id PolarizationWCS
description one-dimensional pixel and world coordinates describing the polarization states
package wcs
attributes
name feature value
axis type CoordAxis1D [caom2:CoordAxis1D]
vodml-id PolarizationWCS.axis
multiplicity 1
description description of the polarization axis

2.4.16 dataType: RefCoord

vodml-id RefCoord
description a reference coordinate with a pixel and cooresponding world coordinate value
package wcs
attributes
name feature value
pix type ivoa:real
vodml-id RefCoord.pix
multiplicity 1
description TBD
val type ivoa:real
vodml-id RefCoord.val
multiplicity 1
description TBD

2.4.17 dataType: Slice

vodml-id Slice
description a one-dimensional subset of a two-dimensional array
package wcs
attributes
name feature value
axis type Axis [caom2:Axis]
vodml-id Slice.axis
multiplicity 1
description description of the values within a the slice
bin type ivoa:integer
vodml-id Slice.bin
multiplicity 1
description a constant-pixel value in the two-dimensional array that specifies the pixels in the slice

2.4.18 objectType: SpatialWCS

vodml-id SpatialWCS
description World Coordinate System (WCS) metadata for the position axes
package wcs
attributes
name feature value
axis type CoordAxis2D [caom2:CoordAxis2D]
vodml-id SpatialWCS.axis
multiplicity 1
description description of the two-dimensional position axes
coordsys type ivoa:string
vodml-id SpatialWCS.coordsys
multiplicity 0..1
description name of the coordinate system
equinox type ivoa:real
vodml-id SpatialWCS.equinox
multiplicity 0..1
description equinox of the coordinate system
resolution type ivoa:real
vodml-id SpatialWCS.resolution
multiplicity 0..1
description effective resolution of the data (FWHM of a point source); this is usually the value measured at the time of data acquisition

2.4.19 objectType: SpectralWCS

vodml-id SpectralWCS
description [TODO add description!]
package wcs
attributes
name feature value
axis type CoordAxis1D [caom2:CoordAxis1D]
vodml-id SpectralWCS.axis
multiplicity 1
description description of the one-dimensional energy axis
specsys type ivoa:string
vodml-id SpectralWCS.specsys
multiplicity 1
description reference frame for the spectral coordinate
ssysobs type ivoa:string
vodml-id SpectralWCS.ssysobs
multiplicity 0..1
description reference frame that is constant over the range of the non-spectral world coordinates
ssyssrc type ivoa:string
vodml-id SpectralWCS.ssyssrc
multiplicity 0..1
description reference frame for the velocity of the source (zsource)
restfrq type ivoa:real
vodml-id SpectralWCS.restfrq
multiplicity 0..1
description rest frequency of the spectral feature of interest
restwav type ivoa:real
vodml-id SpectralWCS.restwav
multiplicity 0..1
description rest wavelength of the spectral feature of interest
velosys type ivoa:real
vodml-id SpectralWCS.velosys
multiplicity 0..1
description correction for the observatory's motion with respect to the barycenter
zsource type ivoa:real
vodml-id SpectralWCS.zsource
multiplicity 0..1
description redshift of the source (relative to ssyssrc)
velang type ivoa:real
vodml-id SpectralWCS.velang
multiplicity 0..1
description angle of true velocity from tangent to line of sight
bandpassName type ivoa:string
vodml-id SpectralWCS.bandpassName
multiplicity 0..1
description telescope- or instrument-specific name for the energy band covered by the data; this is usually a filter name
transition type EnergyTransition [caom2:EnergyTransition]
vodml-id SpectralWCS.transition
multiplicity 0..1
description description of the energy transition observed
resolvingPower type ivoa:real
vodml-id SpectralWCS.resolvingPower
multiplicity 0..1
description ratio of wavelength to resolution (lambda/delta-lambda)

2.4.20 objectType: TemporalWCS

vodml-id TemporalWCS
description one-dimensional pixel and world coordinates describing the time axis
package wcs
attributes
name feature value
axis type CoordAxis1D [caom2:CoordAxis1D]
vodml-id TemporalWCS.axis
multiplicity 1
description description of the time axis
timesys type ivoa:string
vodml-id TemporalWCS.timesys
multiplicity 0..1
description time scale for the time coordinates
trefpos type ivoa:string
vodml-id TemporalWCS.trefpos
multiplicity 0..1
description reference position for the time coordinates
mjdref type ivoa:real
vodml-id TemporalWCS.mjdref
multiplicity 0..1
description base time offset; time coordinate values are relative to this
exposure type ivoa:real
vodml-id TemporalWCS.exposure
multiplicity 0..1
description duration in time that the instrument was collecting data
resolution type ivoa:real
vodml-id TemporalWCS.resolution
multiplicity 0..1
description smallest separation in time that can be distinguished


3.Element Identifiers/VO-DMLrefs

The following table shows all fully qualified vodml-ids for this data model. It is ordered alphabetically and the identifiers are hyper-linked to the location in the document where the actual element is fully defined.
vodml-id feature type description
vo-dml:model a general purpose data model for use as the core data model of an astronomical data centre
uuid primitiveType represents a 128-bit binary ID in the canonical ascii UUID format
caom2 package this package contains the CAOM object types and enumerations
Algorithm objectType the algorithm that was responsible for creating the observation; for a CompositeObservation this is the algorithm that defines the intended set of members to include
Algorithm.name attribute common name of the algorithm; for SimpleObservation: exposure; TBD: publish a list of acceptable values as a machine-readable vocabulary?
Artifact objectType a physical product (typically a file)
Artifact.contentChecksum attribute the checksum of the artifact data; the URI must conform to the pattern {algorithm}:{value}, for example: md5:4be91751541fd804e7207663a0822f56 (NEW in CAOM-2.3)
Artifact.contentLength attribute the size of the resolved artifact; typically file size in bytes
Artifact.contentType attribute label specifying the format of the resolved artifact; typically a MIME-type
Artifact.parts composition the component parts of this artifact
Artifact.productType attribute the primary product type of the artifact; for multi-part artifacts where the parts have different types, this is the primary type; for example, if an artifact has a science part and an auxiliary part, the artifact should have type science
Artifact.releaseType attribute field indicating how access permissions for this artifact are determined
Artifact.uri attribute an identifier that resolves to the storage location of the artifact
CalibrationLevel enumeration the degree to which data has been calibrated to remove instrumental effects; issue: there is no way to convey the integer serialised values here so it is in the description of each value
CalibrationLevel.ANALYSIS_PRODUCT literal (4) : data product from scientific analysis
CalibrationLevel.CALIBRATED literal (2) standard calibration steps have been applied
CalibrationLevel.PLANNED literal (-1) planned data product that does not yet exist
CalibrationLevel.PRODUCT literal (3) additional non-standard calibration steps have been applied
CalibrationLevel.RAW_INSTRUMENTAL literal (0) raw data in some opaque instrument-specific format
CalibrationLevel.RAW_STANDARD literal (1) raw data in a common format
CaomEntity objectType base entity class to support persistence; entity attributes are generally set or updated by persistence implementations
CaomEntity.accMetaChecksum attribute accumulated checksum of the metadata of this entity and all child entities; (NEW in CAOM-2.3) The URI must conform to the pattern {algorithm}:{value}, for example: md5:4be91751541fd804e7207663a0822f56. The accumulated checksum of an entity is computed by accumulating the byte representation of entity checksums in the following order: (1) the metaChecksum of the current entity, (2) the accMetaChecksum of all child entities accumulated in order of the child's CaomEntity.id. For an entity with no children, the accMetaChecksum is derived only from the metaChecksum but it is not equal to it because it is a checksum of that checksum and not a checksum of the same metadata directly.
CaomEntity.id attribute globally unique identifier (primary key)
CaomEntity.lastModified attribute timestamp of last modification of this entity; the timestamp is intended to be applied or updated when the entity is stored (e.g. in a database)
CaomEntity.maxLastModified attribute maximum timestamp of last modification of this entity and all child entities; the timestamp is intended to be applied or updated when the entity is stored (e.g. in a database)
CaomEntity.metaChecksum attribute checksum of this entity; (NEW in CAOM-2.3) The URI must conform to the pattern {algorithm}:{value}, for example: md5:4be91751541fd804e7207663a0822f56. The checksum of an entity is computed by accumulating byte representation of individual metadata values in the following order: (1) CaomEntity.id for entities, (2) state fields in alphabetic order (foo.a comes before foo.b) and using depth-first recursion (foo.abc.x comes before foo.def). Null values are ignored so that the addition of new fields in future versions will not change/invalidate existing checksums until values are assigned. Non-null values are converted to bytes as follows. string: UTF-8 encoded bytes URI: UTF-8 encoded bytes of string representation float: IEEE754 single (4 bytes) double: IEEE754 double (8 bytes) boolean: convert to single byte, false=0, true=1 (1 bytes) byte: as-is (1 byte) short: (2 bytes, network byte order == big endian)) integer: (4 bytes, network byte order == big endian) long: (8 bytes, network byte order == big endian) date: truncate time to whole number of seconds and treat as a long (seconds since 1970-01-01 00:00:00 UTC)
Chunk objectType a quantitatively defined subsection of a data array; the part contains the whole array
Chunk.energy composition spectral WCS description of the data array or subsection thereof
Chunk.energyAxis attribute index of the energy axis
Chunk.naxis attribute number of axes in the data array
Chunk.observable composition observable description of the data array or subsection thereof
Chunk.observableAxis attribute index of the observable axis
Chunk.poslarization composition polarization WCS description of the data array or subsection thereof
Chunk.polarizationAxis attribute index of the polarization axis
Chunk.position composition spatial WCS description of the data array or subsection thereof
Chunk.positionAxis1 attribute index of the first position axis
Chunk.positionAxis2 attribute index of the second position axis
Chunk.productType attribute the type of content in this chunk, sometimes relative to the type of the artifact
Chunk.time composition temporal WCS description of the data array or subsection thereof
Chunk.timeAxis attribute index of the time axis
CompositeObservation objectType an observation made by combining other observations
CompositeObservation.members attribute members are the observations grouped together by the algorithm that defines the composite; these are the intended components of the composite product -- actual inputs are described by the provenance
DataProductType dataType vocabulary term used in CAOM; this class defines constants for the CAOM DataProductType vocabulary which includes all the terms from the IVOA ObsCore data model plus additional terms used in CAOM and not in ObsCore (CHANGED in CAOM-2.3)
DataQuality objectType description of the data quality
DataQuality.flag attribute flag indicating the data quality
Energy objectType description of the energy coverage and sampling of the data
Energy.bandpassName attribute telescope- and instrument-specific name for the energy band included
Energy.bounds attribute energy bounds that include the data (barycentric vacuum wavelength)
Energy.dimension attribute number of measurements (pixels) on the energy axis
Energy.emBand attribute standard name of the energy regime included in the data
Energy.resolvingPower attribute median spectral resolving power per pixel
Energy.restwav attribute rest wavelength of the target energy transition
Energy.sampleSize attribute median pixel size
Energy.transition attribute target energy transition for this data
EnergyBand enumeration a general set of energy regions that span the electromagnetic spectrum; work-around: using the name of the literal to convey the serialised value
EnergyBand.EUV literal wavelength from 10 to 100nm
EnergyBand.GAMMARAY literal energy greater than ~120keV
EnergyBand.INFRARED literal wavelength from 1um to 0.1mm
EnergyBand.MILLIMETER literal wavelength from 0.1 to 10mm
EnergyBand.OPTICAL literal wavelength from 300nm to 1um
EnergyBand.RADIO literal wavelength greater than ~10mm
EnergyBand.UV literal wavelength from 100 to 300nm
EnergyBand.XRAY literal energy from 0.12 to 120keV
Environment objectType collection of measured quantities that characterise the environment at the time of observation
Environment.ambientTemp attribute ambient temperature at the telescope
Environment.elevation attribute angular elevation above horizon [0,90]
Environment.humidity attribute fractional relative humidity [0,1]
Environment.seeing attribute typical atmospheric distortion (full-width-half-max of a point source)
Environment.photometric attribute indicator that flux and/or color calibration is stable
Environment.tau attribute the opacity of the atmosphere [0,1]
Environment.wavelengthTau attribute wavelength at which opacity was measured
Instrument objectType the instrument used to acquire or create the observation; this could be used for both physical instruments that acquire data or software that generates it (e.g. simulated data)
Instrument.keywords attribute additional keywords that describe the instrument or instrument configuration at the time of observation; keywords cannot contain the pipe (|) character - it is reserved for use in persistence systems (e.g. to store all keywords in a single column in a table)
Instrument.name attribute common name for the instrument
Metrics objectType collection of measured quantities that describe the content of the data
Metrics.background attribute background level
Metrics.backgroundStddev attribute standard deviation in the background level
Metrics.fluxDensityLimit attribute flux density with a signal:noise ratio of 10
Metrics.magLimit attribute magnitude with a signal:noise ratio of 10
Metrics.sourceNumberDensity attribute number of sources detected per unit area
Observation objectType an observation is a single top-level entry in an astronomy data centre
Observation.algorithm composition the algorithm or process that created this observation
Observation.collection attribute the name of the data collection this observation belongs to
Observation.environment composition the environmental conditions at the time of observation
Observation.instrument composition the instrument or detector used to acquire the data
Observation.intent attribute the intent of the original observer in acquiring this data
Observation.metaReadGroups attribute set of groups with read permission on observation metadata (new in 2.4)
Observation.metaRelease attribute timestamp after which metadata for the observation instance is public
Observation.observationID attribute the collection-specific identifier for this observation
Observation.planes composition the component planes belonging to this observation
Observation.Proposal composition the science proposal underwhich this observation was created
Observation.requirements composition the observational requirements specified by the observer or proposal
Observation.sequenceNumber attribute a collection-specific sequence number for observations; re-use or reset is collection specific
Observation.target composition the intended target of the observation
Observation.targetPosition composition the intended target position for this observation
Observation.telescope composition the telescope or facility where this observation was created
Observation.type attribute the type of observation (FITS OBSTYPE keyword); usually OBJECT for intent = science
ObservationIntentType enumeration the intent of the original observer in acquiring this observation; work-around: using the name of the literal to convey the serialised value
ObservationIntentType.CALIBRATION literal the intent of this observation was to create calibration data
ObservationIntentType.SCIENCE literal the intent of this observation was to create science data
ObservationURI primitiveType Observation identifier of the form caom:{Observation.collection}/{Observation.observationID}
Part objectType format-specific name of this part; this is typically something like a FITS extension or a file within a container
Part.chunks composition component chunks that belong to this part
Part.name attribute the name of this part of the artifact; this is typically something like a FITS extension name or number or a filename
Part.productType attribute the type of content in this part, sometimes relative to the type of the artifact
Plane objectType a component of an observation that describes one product of the observation
Plane.artifacts composition the component artifacts belonging to this plane
Plane.calibrationLevel attribute standard classification of the degree to which the data is calibrated
Plane.creatorID attribute identifier for this product assigned by the creator; typically made up of the Observation.collection, Observation.observationID, and Plane.productID and in the form of an IVOA dataset identifier (NEW in CAOM-2.3)
Plane.dataProductType attribute standard classification of the type of data product; describes the logical data type for the main artifacts
Plane.dataReadGroups attribute set of groups with read permission on plane data (new in 2.4)
Plane.dataRelease attribute timestamp after which data for the plane is public; this dataRelease timestamp applies to all children of the plane and to artifacts with releaseType=data
Plane.energy composition descritpion of the energy(ies) included in the data
Plane.metaReadGroups attribute set of groups with read permission on plane (and child) metadata (new in 2.4)
Plane.metaRelease attribute timestamp after which metadata for the plane is public; this metaRelease timestamp applies to all children of the plane and to artifacts with releaseType=meta
Plane.metrics composition collection of measured quantities that describe the content of the data
Plane.polarization composition description of the polarization(s) included in the data
Plane.position composition description of the position(s) included in the data
Plane.productID attribute collection- and observationID-specific identifier for this product
Plane.provenance composition description of the provenance of the data
Plane.quality composition flag indicating the quality of the data
Plane.time composition description of the time(s) included in the data
PlaneURI primitiveType Plane identifier of the form caom:{Observation.collection}/{Observation.observationID}/{Plane.productID} aka {observationURI}/{Plane.productID}
Polarization objectType description of polarization measurements included in the data
Polarization.dimension attribute number of polarization states included
Polarization.states attribute standard polarization states included
PolarizationState enumeration a classification of polarization (Stokes states plus other related quantities); work-around: using the name of the literal to convey the serialised value
PolarizationState.CPOLI literal circular polarization intensity: |V|
PolarizationState.EPOLI literal elliptical polarization intensity: sqrt(Q^2 + U^2 + V^2)
PolarizationState.FPOLI literal fractional linear polarization: POLI/I
PolarizationState.I literal unpolarized
PolarizationState.LL literal left-left circular
PolarizationState.LR literal left-right cross-circular
PolarizationState.NPOLI literal unpolarized intensity: I - EPOLI
PolarizationState.POLA literal linear polarization angle: 1/2 arctan(U,Q)
PolarizationState.POLI literal linear polarized intensity: sqrt(Q^2 + U^2)
PolarizationState.Q literal Stokes linear Q
PolarizationState.RL literal right-left cross-circular
PolarizationState.RR literal right-right circular
PolarizationState.U literal Stokes linear U
PolarizationState.V literal Stokes circular V
PolarizationState.XX literal X parallel linear
PolarizationState.XY literal XY cross-linear
PolarizationState.YX literal YX cross-linear
PolarizationState.YY literal Y parallel linear
Position objectType description of the position coverage and sampling of the data
Position.bounds attribute spatial boundary that includes the data
Position.dimension attribute number of separate measurements (pixels) along each axis
Position.resolution attribute median spatial resolution (full-width-half-max) per pixel
Position.sampleSize attribute median pixel size
Position.timeDependent attribute indicates that the observation was taken with non-siderial tracking so the resulting position is time-dependent; this usually explains why no bounds is available
ProductType dataType this class defines constants for the CAOM ProductType vocabulary (CHANGED in CAOM-2.3)
Proposal objectType description of the science proposal or programme that initiated the observation
Proposal.keywords attribute additional keywords that describe the science goals of the proposal; keywords cannot contain the pipe (|) character - it is reserved for use in persistence systems (e.g. to store all keywords in a single column in a table)
Proposal.pi attribute proper name of the principal investigator
Proposal.project attribute common name of the project this proposal belongs to; typically used for larger or long-running projects that include mutliple proposals
Proposal.proposalID attribute collection-specific identifier for the proposal
Proposal.title attribute title of the proposal
Provenance objectType description of how this data was produced
Provenance.inputs attribute local identifier for input planes; these are the actual inputs that went into the product
Provenance.keywords attribute additional keywords that describe the processing; this may include both general descriptive words and those specific to this particular execution of the processing; keywords cannot contain the pipe (|) character - it is reserved for use in persistence systems (e.g. to store all keywords in a single column in a table)
Provenance.lastExecuted attribute timestamp describing when this process last ran and produced data
Provenance.name attribute collection-specific common name of the process
Provenance.producer attribute common name of the entity (person, institute, etc) responsible for producing the data
Provenance.project attribute name of the project that produced the data; data produced in a uniform way are typically labelled with the same project name
Provenance.reference attribute collection-specific common name of the process
Provenance.runID attribute collection-specific identifier for the processing instance that produced the data; this identifier can typcially be traced in log files or logging systems
Provenance.version attribute version of the software or process that produced the data
Quality enumeration a general indicator of data quality; work-around: using the name of the literal to convey the serialised value
Quality.JUNK literal this data cannot be used for anything
ReleaseType enumeration a flag indicating how an artifact is classified to determine access permissions; work-around: using the name of the literal to convey the serialised value
ReleaseType.DATA literal access permission checks assume the protected item is data
ReleaseType.META literal access permission checks assume the protected item is metadata
Requirements objectType the observational requirements specified by the proposal
Requirements.flag attribute flag indicating degree to which requirements were satisfied by the observation
SegmentType enumeration code used in CAG description of polygons
SegmentType.CLOSE literal (2) line from previous vertex to last vertex with type MOVE
SegmentType.LINE literal (0) line from previous to this vertex
SegmentType.MOVE literal (1) move from previous to this vertex
SimpleObservation objectType an observation created directly by operating an instrument or process
Status enumeration a status flag indicating degree of success; work-around: using the name of the literal to convey the serialised value
Status.FAIL literal the observation failed to meet the requirements of the proposal
Target objectType the target of an observation
Target.keywords attribute additional keywords that describe the target; keywords cannot contain the pipe (|) character - it is reserved for use in persistence systems (e.g. to store all keywords in a single column in a table)
Target.moving attribute indicates that the target is a moving object; used for solar system objects but not high proper motion stars
Target.name attribute proper name of the target
Target.redshift attribute cosmological redshift of the target
Target.standard attribute indicates that the target is typically used as a standard (astrometric, photometric, etc)
Target.type attribute type of target; typically used to figure out what the target name means and where to look for additional information about it
TargetPosition objectType the intended position of the observation (not the position of the intended or actual target)
TargetPosition.coordinates attribute the coordinates
TargetPosition.coordsys attribute the coordinate system of the coordinates
TargetPosition.equinox attribute the equinox of the coordinates
TargetType enumeration the type of target being observed; qualifies target name; work-around: using the name of the literal to convey the serialised value
TargetType.FIELD literal the target of the observation is a defined region on the sky
TargetType.OBJECT literal the target of the observation is an astronomical object
Telescope objectType the telescope used to acquire the data for an observation
Telescope.geoLocationX attribute x-coordinate of the geocentric location of the telescope at the time of observation (see FITS WCS Paper III)
Telescope.geoLocationY attribute y-coordinate of the geocentric location of the telescope at the time of observation (see FITS WCS Paper III)
Telescope.geoLocationZ attribute z-coordinate of the geocentric location of the telescope at the time of observation (see FITS WCS Paper III)
Telescope.keywords attribute additional keywords that describe the telescope or telscope configuration at the time of observation; keywords cannot contain the pipe (|) character - it is reserved for use in persistence systems (e.g. to store all keywords in a single column in a table)
Telescope.name attribute common name of the telescope; TBD: reference to a standard list of names?
Time objectType description of the time coverage and sampling of the data
Time.bounds attribute time bounds that include the data
Time.dimension attribute number of measurements (pixels) on the time axis
Time.exposure attribute median exposure time per pixel
Time.resolution attribute median temporal resolution per pixel
Time.sampleSize attribute median pixel size
VocabularyTerm dataType base class of a single term (word) in a vocabulary (NEW in CAOM-2.3)
VocabularyTerm.namespace attribute globally unique namespace for the vocabulary
VocabularyTerm.term attribute the word from the vocabulary
VocabularyTerm.base attribute flag indicating of the vocabulary namespace is a base vocabulary
types package data types
Circle dataType a circular region on the sky
Shape.center attribute
Circle.radius attribute
Interval dataType a set of numeric values defined by a lower and upper bound (bounds included: [a,b])
Interval.lower attribute
Interval.samples attribute the samples within an interval describe possible holes in the interval; in the simple case there is one sample that is identical to the outer interval; samples within an interval are not allowed to overlap (TBD: the bounds of adjacent samples may be equal?)
Interval.upper attribute
MultiPolygon dataType a region on the sky defined a sequence of points connected by great-circle segments; each simple polygon is is terminated by a special type of vertex and multiple simple polygons are permitted to describe disconnected regions as a single value
MultiPolygon.vertices attribute
Point dataType
Point.cval1 attribute
Point.cval2 attribute
Polygon dataType a simple polygon region on the sky defined a sequence of points connected by great-circle segments
Polygon.points attribute
Polygon.samples attribute
Shape dataType
SubInterval dataType a sub-sample of an interval
SubInterval.lower attribute
SubInterval.upper attribute
Vertex dataType
Vertex.type attribute
wcs package World Coordinate System (WCS) data types
Axis dataType one-dimensional coordinate axis description
Axis.ctype attribute
Axis.cunit attribute
Coord2D dataType a two-dimensional (pair) of reference coordinates
Coord2D.coord1 attribute
Coord2D.coord2 attribute
CoordAxis1D dataType a one-dimensional coordinate axis: quantity, values, errors; it is usually only necessary to specify one of the range, bounds, or function as they describe the world and pixel coordinate coverage at different levels of detail and the less detailed description is redundant (exception: when the range or bounds and function are both specified, the range/bounds is a subset of the pixels described by the function and denotes the valid pixels
CoordAxis1D.axis attribute description of the quantity
CoordAxis1D.bounds attribute pixel and world coordinate values covered by this axis (min,max of tiles)
CoordAxis1D.error attribute errors
CoordAxis1D.function attribute pixel and world coordinate values covered by this axis (coordinates of every pixel)
CoordAxis1D.range attribute pixel and world coordinate values covered by this axis (min,max)
CoordAxis2D dataType a two-dimensional coordinate axis pair: quantity, values, errors; it is usually only necessary to specify one of the range, bounds, or function as they describe the world and pixel coordinate coverage at different levels of detail and the less detailed description is redundant (exception: when the range or bounds and function are both specified, the range/bounds is a subset of the pixels described by the function and denotes the valid pixels
CoordAxis2D.axis1 attribute first axis of the spatial coordinate system; usually longitude
CoordAxis2D.axis2 attribute second axis of the spatial coordinate system; usually latitude
CoordAxis2D.bounds attribute pixel and world coordinate values covered by this axis (boundary)
CoordAxis2D.error1 attribute position errors on the first axis
CoordAxis2D.error2 attribute position errors on the second axis
CoordAxis2D.function attribute pixel and world coordinate values covered by this axis (coordinates of every pixel
CoordAxis2D.range attribute pixel and world coordinate values covered by this axis (min,max)
CoordBounds1D dataType a one-dimensional sequence of reference coordinate ranges
CoordBounds1D.samples attribute
CoordBounds2D dataType a two-dimensional region in pixel and world coordinates; this can be used to specify a simple polygon boundary in pixel and world coordinates
CoordBounds2D.vertices attribute the vertices of the polygon with implicit segment from the last vertex back to the first
CoordError dataType coordinate error from FITS WCS
CoordError.rnder attribute
CoordError.syser attribute
CoordFunction1D dataType a one-dimensional (linear) WCS coordinate transformation function
CoordFunction1D.delta attribute delta in world coordinate value (size of one pixel)
CoordFunction1D.dimension attribute number of pixels along the axis
CoordFunction1D.refCoord attribute the reference pixel and world coordinate values
CoordFunction2D dataType a two-dimensional (linear) WCS coordinate transformation function; this can be used to compute the world coordinates of every pixel
CoordFunction2D.cd11 attribute two-dimensional scale and rotation (CD) matrix (FITS: CD1_1)
CoordFunction2D.cd12 attribute two-dimensional scale and rotation (CD) matrix (FITS: CD1_2)
CoordFunction2D.cd21 attribute two-dimensional scale and rotation (CD) matrix (FITS: CD2_1)
CoordFunction2D.cd22 attribute two-dimensional scale and rotation (CD) matrix (FITS: CD2_2)
CoordFunction2D.dimension attribute number of pixels along each axis of the two-dimensional space (FITS: NAXISi)
CoordFunction2D.refCoord attribute two-dimensional reference pixel and world coordinate values (FITS: CRPIXi, CRVALi)
CoordRange1D dataType a one-dimensional range of reference coordinates
CoordRange1D.end attribute
CoordRange1D.start attribute
CoordRange2D dataType a two-dimensional range of reference coordinates; this can be used to specify an axis-aligned bounding box in pixel and world coordinates
CoordRange2D.end attribute the two-dimensional reference coordinates with maximum longitude and latitude
CoordRange2D.start attribute the two-dimensional reference coordinates with minimum longitude and latitude
Dimension2D dataType dimension (number of pixels) for a two-dimensional axis
Dimension2D.naxis1 attribute
Dimension2D.naxis2 attribute
EnergyTransition dataType
EnergyTransition.species attribute TODO
EnergyTransition.transition attribute TODO
ObservableAxis objectType an axis in the data (array) that varies by observable rather than coordinate; this axis is used when the data array containts values with different meaning in different subsets of the array (e.g. a row of pixels with wavelength values and a second row with flux values)
ObservableAxis.dependent attribute the part of the array containing the observable values
ObservableAxis.independent attribute the part of the array containing coordinate values
PolarizationWCS objectType one-dimensional pixel and world coordinates describing the polarization states
PolarizationWCS.axis attribute description of the polarization axis
RefCoord dataType a reference coordinate with a pixel and cooresponding world coordinate value
RefCoord.pix attribute
RefCoord.val attribute
Slice dataType a one-dimensional subset of a two-dimensional array
Slice.axis attribute description of the values within a the slice
Slice.bin attribute a constant-pixel value in the two-dimensional array that specifies the pixels in the slice
SpatialWCS objectType World Coordinate System (WCS) metadata for the position axes
SpatialWCS.axis attribute description of the two-dimensional position axes
SpatialWCS.coordsys attribute name of the coordinate system
SpatialWCS.equinox attribute equinox of the coordinate system
SpatialWCS.resolution attribute effective resolution of the data (FWHM of a point source); this is usually the value measured at the time of data acquisition
SpectralWCS objectType
SpectralWCS.axis attribute description of the one-dimensional energy axis
SpectralWCS.bandpassName attribute telescope- or instrument-specific name for the energy band covered by the data; this is usually a filter name
SpectralWCS.resolvingPower attribute ratio of wavelength to resolution (lambda/delta-lambda)
SpectralWCS.restfrq attribute rest frequency of the spectral feature of interest
SpectralWCS.restwav attribute rest wavelength of the spectral feature of interest
SpectralWCS.specsys attribute reference frame for the spectral coordinate
SpectralWCS.ssysobs attribute reference frame that is constant over the range of the non-spectral world coordinates
SpectralWCS.ssyssrc attribute reference frame for the velocity of the source (zsource)
SpectralWCS.transition attribute description of the energy transition observed
SpectralWCS.velang attribute angle of true velocity from tangent to line of sight
SpectralWCS.velosys attribute correction for the observatory's motion with respect to the barycenter
SpectralWCS.zsource attribute redshift of the source (relative to ssyssrc)
TemporalWCS objectType one-dimensional pixel and world coordinates describing the time axis
TemporalWCS.axis attribute description of the time axis
TemporalWCS.exposure attribute duration in time that the instrument was collecting data
TemporalWCS.mjdref attribute base time offset; time coordinate values are relative to this
TemporalWCS.resolution attribute smallest separation in time that can be distinguished
TemporalWCS.timesys attribute time scale for the time coordinates
TemporalWCS.trefpos attribute reference position for the time coordinates

4.Imported Models

This section lists the external models imported by the current data model. For each imported model we list URLs to the VO-DML and HTML representations and the prefix used for vodml-ids from inside the model.

4.1 ivoa

Model vodml-id ivoa
url http://www.ivoa.net/xml/VODML/IVOA-v1.vo-dml.xml
documentation url https://volute.g-vo.org/svn/trunk/projects/dm/vo-dml/models/ivoa/IVOA.html