This is the beta version of CAOM documentation generated from the VO-DML description of the data model. It is currently missing some classes and descriptions and does not perfectly match the existing implementations.



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     objectType: Part
2.2.17     objectType: Plane
2.2.18     objectType: Polarization
2.2.19     enumeration: PolarizationState
2.2.20     objectType: Position
2.2.21     dataType: ProductType
2.2.22     objectType: Proposal
2.2.23     objectType: Provenance
2.2.24     enumeration: Quality
2.2.25     enumeration: ReleaseType
2.2.26     objectType: Requirements
2.2.27     enumeration: SegmentType
2.2.28     objectType: SimpleObservation
2.2.29     enumeration: Status
2.2.30     objectType: Target
2.2.31     objectType: TargetPosition
2.2.32     enumeration: TargetType
2.2.33     objectType: Telescope
2.2.34     objectType: Time
2.2.35     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

1. Model: Common Archive Observation Model (caom2)

Authors : Patrick Dowler, Canadian Astronomy Data Centre
Date : 2017-08-14T15:00:00
Version : 2.3
Abstract : 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
child package(s) types wcs

2.2.1 objectType: Algorithm

vodml-id Algorithm
description TODO: describe this
package caom2
attributes
name feature value
name type ivoa:string
vodml-id Algorithm.name
multiplicity 1
description TBD

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 TODO: define this
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..666
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
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 TODO: define this
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 ivoa:anyURI
vodml-id CompositeObservation.members
multiplicity 0..666
description members are the observations grouped together by the algorithm that defines the composite

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 point source)
humidity type ivoa:real
vodml-id Environment.humidity
multiplicity 0..1
description humidity [0,1]
elevation type ivoa:real
vodml-id Environment.elevation
multiplicity 0..1
description angular elevation (alt in alt-azimuth?) above horizon
tau type ivoa:real
vodml-id Environment.tau
multiplicity 0..1
description TODO
wavelengthTau type ivoa:real
vodml-id Environment.wavelengthTau
multiplicity 0..1
description TODO
ambientTemp type ivoa:real
vodml-id Environment.ambientTemp
multiplicity 0..1
description ambient temperature (outside or inside the telescope?)
photometric type ivoa:boolean
vodml-id Environment.photometric
multiplicity 0..1
description indicator that flux and/or color calibration is stable/feasible?

2.2.12 objectType: Instrument

vodml-id Instrument
description description of the instrument used to acquire the 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..666
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]
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 TODO: define this
intent type ObservationIntentType [caom2:ObservationIntentType]
vodml-id Observation.intent
multiplicity 1
description the intent of the original observer in acquiring this data
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..666
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 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 TODO: define this
compositions
name feature value
chunks type Chunk [caom2:Chunk]
vodml-id Part.chunks
multiplicity 0..666
isOrdered false
description component chunks that belong to this part

2.2.17 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
compositions
name feature value
artifacts type Artifact [caom2:Artifact]
vodml-id Plane.artifacts
multiplicity 0..666
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.18 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..666
description standard polarization states included
dimension type ivoa:integer
vodml-id Polarization.dimension
multiplicity 0..1
description number of polarization states included

2.2.19 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 TODO
Q vodml-id PolarizationState.Q
description TODO
U vodml-id PolarizationState.U
description TODO
V vodml-id PolarizationState.V
description TODO
RR vodml-id PolarizationState.RR
description TODO
LL vodml-id PolarizationState.LL
description TODO
RL vodml-id PolarizationState.RL
description TODO
LR vodml-id PolarizationState.LR
description TODO
XX vodml-id PolarizationState.XX
description TODO
YY vodml-id PolarizationState.YY
description TODO
XY vodml-id PolarizationState.XY
description TODO
YX vodml-id PolarizationState.YX
description TODO
POLI vodml-id PolarizationState.POLI
description TODO
FPOLI vodml-id PolarizationState.FPOLI
description TODO
POLA vodml-id PolarizationState.POLA
description TODO
EPOLI vodml-id PolarizationState.EPOLI
description TODO
CPOLI vodml-id PolarizationState.CPOLI
description TODO
NPOLI vodml-id PolarizationState.NPOLI
description TODO

2.2.20 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.21 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.22 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..666
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.23 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..1
description addituional 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 ivoa:anyURI
vodml-id Provenance.inputs
multiplicity 0..666
description version of the software or process that produced the data

2.2.24 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.25 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.26 objectType: Requirements

vodml-id Requirements
description description of 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

2.2.27 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.28 objectType: SimpleObservation

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

2.2.29 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 TBD

2.2.30 objectType: Target

vodml-id Target
description description of 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..666
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.31 objectType: TargetPosition

vodml-id TargetPosition
description description of 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.32 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.33 objectType: Telescope

vodml-id Telescope
description description of the telescope where an observation was created
package caom2
attributes
name feature value
name type ivoa:string
vodml-id Telescope.name
multiplicity 1
description common name of the telescope
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..666
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.34 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.35 dataType: VocabularyTerm

vodml-id VocabularyTerm
description base class of a single term (word) in a vocabulary (NEW in CAOM-2.3)
package caom2
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 [TODO add description!]
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 [TODO add description!]
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 TBD

2.3.3 dataType: MultiPolygon

vodml-id MultiPolygon
description [TODO add description!]
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 [TODO add description!]
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
Subclasses in this model Circle Polygon

2.3.7 dataType: SubInterval

vodml-id SubInterval
description [TODO add description!]
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 [TODO add 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 [TODO add description!]
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 [TODO add description!]
package wcs
attributes
name feature value
axis type Axis [caom2:Axis]
vodml-id CoordAxis1D.axis
multiplicity 1
description TBD
error type CoordError [caom2:CoordError]
vodml-id CoordAxis2D.error
multiplicity 0..1
description TBD
range type CoordRange1D [caom2:CoordRange1D]
vodml-id CoordAxis1D.range
multiplicity 0..1
description TBD
bounds type CoordBounds1D [caom2:CoordBounds1D]
vodml-id CoordAxis1D.bounds
multiplicity 0..1
description TBD
function type CoordFunction1D [caom2:CoordFunction1D]
vodml-id CoordAxis1D.function
multiplicity 0..1
description TBD

2.4.4 dataType: CoordAxis2D

vodml-id CoordAxis2D
description [TODO add description!]
package wcs
attributes
name feature value
axis1 type Axis [caom2:Axis]
vodml-id CoordAxis2D.axis1
multiplicity 1
description TBD
axis2 type Axis [caom2:Axis]
vodml-id CoordAxis2D.axis2
multiplicity 1
description TBD
error1 type CoordError [caom2:CoordError]
vodml-id CoordAxis2D.error1
multiplicity 0..1
description TBD
error2 type CoordError [caom2:CoordError]
vodml-id CoordAxis2D.error2
multiplicity 0..1
description TBD
range type CoordRange2D [caom2:CoordRange2D]
vodml-id CoordAxis2D.range
multiplicity 0..1
description TBD
bounds type CoordBounds2D [caom2:CoordBounds2D]
vodml-id CoordAxis2D.bounds
multiplicity 0..1
description TBD
function type CoordFunction2D [caom2:CoordFunction2D]
vodml-id CoordAxis2D.function
multiplicity 0..1
description TBD

2.4.5 dataType: CoordBounds1D

vodml-id CoordBounds1D
description [TODO add description!]
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 [TODO add description!]
package wcs
attributes
name feature value
vertices type Coord2D [caom2:Coord2D]
vodml-id CoordBounds2D.vertices
multiplicity 1..*
description TBD

2.4.7 dataType: CoordError

vodml-id CoordError
description [TODO add description!]
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 [TODO add description!]
package wcs
attributes
name feature value
dimension type ivoa:integer
vodml-id CoordFunction1D.dimension
multiplicity 1
description TBD
refCoord type RefCoord [caom2:RefCoord]
vodml-id CoordFunction1D.refCoord
multiplicity 1
description TBD
cd11 type ivoa:real
vodml-id CoordFunction1D.delta
multiplicity 1
description TBD

2.4.9 dataType: CoordFunction2D

vodml-id CoordFunction2D
description [TODO add description!]
package wcs
attributes
name feature value
dimension type Dimension2D [caom2:Dimension2D]
vodml-id CoordFunction2D.dimension
multiplicity 1
description TBD
refCoord type Coord2D [caom2:Coord2D]
vodml-id CoordFunction2D.refCoord
multiplicity 1
description TBD
cd11 type ivoa:real
vodml-id CoordFunction2D.cd11
multiplicity 1
description TBD
cd12 type ivoa:real
vodml-id CoordFunction2D.cd12
multiplicity 1
description TBD
cd21 type ivoa:real
vodml-id CoordFunction2D.cd21
multiplicity 1
description TBD
cd22 type ivoa:real
vodml-id CoordFunction2D.cd22
multiplicity 1
description TBD

2.4.10 dataType: CoordRange1D

vodml-id CoordRange1D
description [TODO add description!]
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 [TODO add description!]
package wcs
attributes
name feature value
start type Coord2D [caom2:Coord2D]
vodml-id CoordRange2D.start
multiplicity 1
description TBD
end type Coord2D [caom2:Coord2D]
vodml-id CoordRange2D.end
multiplicity 1
description TBD

2.4.12 dataType: Dimension2D

vodml-id Dimension2D
description [TODO add description!]
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 TBD
transition type ivoa:string
vodml-id EnergyTransition.transition
multiplicity 1
description TBD

2.4.14 objectType: ObservableAxis

vodml-id ObservableAxis
description [TODO add description!]
package wcs
attributes
name feature value
dependent type Slice [caom2:Slice]
vodml-id ObservableAxis.dependent
multiplicity 1
description TBD
independent type Slice [caom2:Slice]
vodml-id ObservableAxis.independent
multiplicity 0..1
description TBD

2.4.15 objectType: PolarizationWCS

vodml-id PolarizationWCS
description [TODO add description!]
package wcs
attributes
name feature value
axis type CoordAxis1D [caom2:CoordAxis1D]
vodml-id PolarizationWCS.axis
multiplicity 1
description TBD

2.4.16 dataType: RefCoord

vodml-id RefCoord
description [TODO add description!]
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 [TODO add description!]
package wcs
attributes
name feature value
axis type Axis [caom2:Axis]
vodml-id Slice.axis
multiplicity 1
description TBD
bin type ivoa:integer
vodml-id Slice.bin
multiplicity 1
description TBD

2.4.18 objectType: SpatialWCS

vodml-id SpatialWCS
description [TODO add description!]
package wcs
attributes
name feature value
axis type CoordAxis2D [caom2:CoordAxis2D]
vodml-id SpatialWCS.axis
multiplicity 1
description TBD
coordsys type ivoa:string
vodml-id SpatialWCS.coordsys
multiplicity 0..1
description TBD
equinox type ivoa:real
vodml-id SpatialWCS.equinox
multiplicity 0..1
description TBD
resolution type ivoa:real
vodml-id SpatialWCS.resolution
multiplicity 0..1
description TBD

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 TBD
specsys type ivoa:string
vodml-id SpectralWCS.specsys
multiplicity 1
description TBD
ssysobs type ivoa:string
vodml-id SpectralWCS.ssysobs
multiplicity 0..1
description TBD
ssyssrc type ivoa:string
vodml-id SpectralWCS.ssyssrc
multiplicity 0..1
description TBD
restfrq type ivoa:real
vodml-id SpectralWCS.restfrq
multiplicity 0..1
description TBD
restwav type ivoa:real
vodml-id SpectralWCS.restwav
multiplicity 0..1
description TBD
velosys type ivoa:real
vodml-id SpectralWCS.velosys
multiplicity 0..1
description TBD
zsource type ivoa:real
vodml-id SpectralWCS.zsource
multiplicity 0..1
description TBD
velang type ivoa:real
vodml-id SpectralWCS.velang
multiplicity 0..1
description TBD
bandpassName type ivoa:string
vodml-id SpectralWCS.bandpassName
multiplicity 0..1
description TBD
transition type EnergyTransition [caom2:EnergyTransition]
vodml-id SpectralWCS.transition
multiplicity 0..1
description TBD
resolvingPower type ivoa:real
vodml-id SpectralWCS.resolvingPower
multiplicity 0..1
description TBD

2.4.20 objectType: TemporalWCS

vodml-id TemporalWCS
description [TODO add description!]
package wcs
attributes
name feature value
axis type CoordAxis1D [caom2:CoordAxis1D]
vodml-id TemporalWCS.axis
multiplicity 1
description TBD
timesys type ivoa:string
vodml-id TemporalWCS.timesys
multiplicity 0..1
description TBD
trefpos type ivoa:string
vodml-id TemporalWCS.trefpos
multiplicity 0..1
description TBD
mjdref type ivoa:real
vodml-id TemporalWCS.mjdref
multiplicity 0..1
description TBD
exposure type ivoa:real
vodml-id TemporalWCS.exposure
multiplicity 0..1
description TBD
resolution type ivoa:real
vodml-id TemporalWCS.resolution
multiplicity 0..1
description TBD


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 TODO: describe this
Algorithm.name attribute
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 TODO: define this
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 TODO: define this
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
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 (outside or inside the telescope?)
Environment.elevation attribute angular elevation (alt in alt-azimuth?) above horizon
Environment.humidity attribute humidity [0,1]
Environment.seeing attribute typical atmospheric distortion (full-width-half-max of point source)
Environment.photometric attribute indicator that flux and/or color calibration is stable/feasible?
Environment.tau attribute TODO
Environment.wavelengthTau attribute TODO
Instrument objectType description of the instrument used to acquire the 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.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 TODO: define this
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
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 TODO: define this
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.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.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
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 TODO
PolarizationState.EPOLI literal TODO
PolarizationState.FPOLI literal TODO
PolarizationState.I literal TODO
PolarizationState.LL literal TODO
PolarizationState.LR literal TODO
PolarizationState.NPOLI literal TODO
PolarizationState.POLA literal TODO
PolarizationState.POLI literal TODO
PolarizationState.Q literal TODO
PolarizationState.RL literal TODO
PolarizationState.RR literal TODO
PolarizationState.U literal TODO
PolarizationState.V literal TODO
PolarizationState.XX literal TODO
PolarizationState.XY literal TODO
PolarizationState.YX literal TODO
PolarizationState.YY literal TODO
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 version of the software or process that produced the data
Provenance.keywords attribute addituional 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 description of the observational requirements specified by the proposal
Requirements.flag attribute flag indicating degree to which requirements were satisfied
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
Target objectType description of 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 description of 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 description of the telescope where an observation was created
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
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
Shape.center attribute
Circle.radius attribute
Interval dataType
Interval.lower attribute
Interval.samples attribute
Interval.upper attribute
MultiPolygon dataType
MultiPolygon.vertices attribute
Point dataType
Point.cval1 attribute
Point.cval2 attribute
Polygon dataType
Polygon.points attribute
Polygon.samples attribute
Shape dataType
SubInterval dataType
SubInterval.lower attribute
SubInterval.upper attribute
Vertex dataType
Vertex.type attribute
wcs package World Coordinate System (WCS) data types
Axis dataType
Axis.ctype attribute
Axis.cunit attribute
Coord2D dataType
Coord2D.coord1 attribute
Coord2D.coord2 attribute
CoordAxis1D dataType
CoordAxis1D.axis attribute
CoordAxis1D.bounds attribute
CoordAxis2D.error attribute
CoordAxis1D.function attribute
CoordAxis1D.range attribute
CoordAxis2D dataType
CoordAxis2D.axis1 attribute
CoordAxis2D.axis2 attribute
CoordAxis2D.bounds attribute
CoordAxis2D.error1 attribute
CoordAxis2D.error2 attribute
CoordAxis2D.function attribute
CoordAxis2D.range attribute
CoordBounds1D dataType
CoordBounds1D.samples attribute
CoordBounds2D dataType
CoordBounds2D.vertices attribute
CoordError dataType
CoordError.rnder attribute
CoordError.syser attribute
CoordFunction1D dataType
CoordFunction1D.delta attribute
CoordFunction1D.dimension attribute
CoordFunction1D.refCoord attribute
CoordFunction2D dataType
CoordFunction2D.cd11 attribute
CoordFunction2D.cd12 attribute
CoordFunction2D.cd21 attribute
CoordFunction2D.cd22 attribute
CoordFunction2D.dimension attribute
CoordFunction2D.refCoord attribute
CoordRange1D dataType
CoordRange1D.end attribute
CoordRange1D.start attribute
CoordRange2D dataType
CoordRange2D.end attribute
CoordRange2D.start attribute
Dimension2D dataType
Dimension2D.naxis1 attribute
Dimension2D.naxis2 attribute
EnergyTransition dataType
EnergyTransition.species attribute
EnergyTransition.transition attribute
ObservableAxis objectType
ObservableAxis.dependent attribute
ObservableAxis.independent attribute
PolarizationWCS objectType
PolarizationWCS.axis attribute
RefCoord dataType
RefCoord.pix attribute
RefCoord.val attribute
Slice dataType
Slice.axis attribute
Slice.bin attribute
SpatialWCS objectType
SpatialWCS.axis attribute
SpatialWCS.coordsys attribute
SpatialWCS.equinox attribute
SpatialWCS.resolution attribute
SpectralWCS objectType
SpectralWCS.axis attribute
SpectralWCS.bandpassName attribute
SpectralWCS.resolvingPower attribute
SpectralWCS.restfrq attribute
SpectralWCS.restwav attribute
SpectralWCS.specsys attribute
SpectralWCS.ssysobs attribute
SpectralWCS.ssyssrc attribute
SpectralWCS.transition attribute
SpectralWCS.velang attribute
SpectralWCS.velosys attribute
SpectralWCS.zsource attribute
TemporalWCS objectType
TemporalWCS.axis attribute
TemporalWCS.exposure attribute
TemporalWCS.mjdref attribute
TemporalWCS.resolution attribute
TemporalWCS.timesys attribute
TemporalWCS.trefpos attribute

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 https://volute.g-vo.org/svn/trunk/projects/dm/vo-dml/models/ivoa/vo-dml/xml/IVOA-v1.0.vo-dml.xml
documentation url https://volute.g-vo.org/svn/trunk/projects/dm/vo-dml/models/ivoa/vo-dml/IVOA.html