IVOA Reference Value Types

Table of Contents

1.     model: ivoa
2.     Packages and Types
2.1     [root package]
2.1.1     dataType:IntegerQuantity
2.1.2     dataType:Quantity
2.1.3     dataType:RealQuantity
2.1.4     primitiveType:Unit
2.1.5     primitiveType:anyURI
2.1.6     primitiveType:boolean
2.1.7     primitiveType:complex
2.1.8     primitiveType:datetime
2.1.9     primitiveType:integer
2.1.10     primitiveType:nonnegativeInteger
2.1.11     primitiveType:rational
2.1.12     primitiveType:real
2.1.13     primitiveType:string
3.     vodml-id-s

1. Model: IVOA Reference Value Types (ivoa)

Authors :
Date : 2018-05-05T17:17:19
Version : 1.0
Abstract : This is the main reference data model containing primitive types used in other data models.
Diagram : The following diagram has been generated from the model using the GraphViz tool.
The classes and packages in the diagram can be clicked and are mapped to the descriptions of the corresponding element elsewhere in the document.

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 ivoa
Data types IntegerQuantity Quantity RealQuantity
Primitive types Unit anyURI boolean complex datetime integer nonnegativeInteger rational real string

2.1.1 dataType: IntegerQuantity

vodml-id IntegerQuantity
description An integer number with a unit. Examples of such units that can be used for attributes are bit/byte/kiloByte etc.
extends Quantity [ivoa:Quantity]
attributes
name feature value
value type integer [ivoa:integer]
vodml-id IntegerQuantity.value
multiplicity 1
description The integer value of this IntegerQuantity.

2.1.2 dataType: Quantity

vodml-id Quantity
description Meant to represent the value of a numerical physical quantity. Can be mapped in VOTables to FIELDrefs and PARAM(ref)s, in which case the @unit attribute of those VOTable elements is assumed to be mapped to the attribute on the Quantity. Ths is only allowed for these predefined ivoa types.
abstract True
Subclasses in this model IntegerQuantity RealQuantity
attributes
name feature value
unit type Unit [ivoa:Unit]
vodml-id Quantity.unit
multiplicity 0..1
description The unit of this quantity.

2.1.3 dataType: RealQuantity

vodml-id RealQuantity
description A real value with a unit.
extends Quantity [ivoa:Quantity]
attributes
name feature value
value type real [ivoa:real]
vodml-id RealQuantity.value
multiplicity 1
description The real value of this quantity

2.1.4 primitiveType: Unit

vodml-id Unit
description Must conform to definition of unit in VOUnit spec.

2.1.5 primitiveType: anyURI

vodml-id anyURI
description Represents a URI in the same way as the datatype of the same nam in XML Schema is used.

2.1.6 primitiveType: boolean

vodml-id boolean
description The standard boolean, having values true or false.

2.1.7 primitiveType: complex

vodml-id complex
description Represents a complex number, consisting of a real and imaginary component, both of which are reals. Note that in many contexts there is no native mapping for this type and it must be treated with a custom mapping.

2.1.8 primitiveType: datetime

vodml-id datetime
description Represents a moment in time using a date+timestamp.

2.1.9 primitiveType: integer

vodml-id integer
description An integer number (from Z).

2.1.10 primitiveType: nonnegativeInteger

vodml-id nonnegativeInteger
description An integer number from N, therefore greater than or equal to 0.

2.1.11 primitiveType: rational

vodml-id rational
description A rational number from Q, represented by two integers, a numerator and a denominator. A native mapping to a serialisation context does in general not exists.

2.1.12 primitiveType: real

vodml-id real
description A real number (from R).

2.1.13 primitiveType: string

vodml-id string
description A string, represented as an array of characters treated as a single, primitive value. Ala Java, a string can not be updated, that is any update leads to a different string. However in contrast to Java we assume that two strings that are identical in all their constitutent characters are the same. I.e. string has value type semantics.


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 This is the main reference data model containing primitive types used in other data models.
IntegerQuantity dataType An integer number with a unit. Examples of such units that can be used for attributes are bit/byte/kiloByte etc.
IntegerQuantity.value attribute The integer value of this IntegerQuantity.
Quantity dataType Meant to represent the value of a numerical physical quantity. Can be mapped in VOTables to FIELDrefs and PARAM(ref)s, in which case the @unit attribute of those VOTable elements is assumed to be mapped to the attribute on the Quantity. Ths is only allowed for these predefined ivoa types.
Quantity.unit attribute The unit of this quantity.
RealQuantity dataType A real value with a unit.
RealQuantity.value attribute The real value of this quantity
Unit primitiveType Must conform to definition of unit in VOUnit spec.
anyURI primitiveType Represents a URI in the same way as the datatype of the same nam in XML Schema is used.
boolean primitiveType The standard boolean, having values true or false.
complex primitiveType Represents a complex number, consisting of a real and imaginary component, both of which are reals. Note that in many contexts there is no native mapping for this type and it must be treated with a custom mapping.
datetime primitiveType Represents a moment in time using a date+timestamp.
integer primitiveType An integer number (from Z).
nonnegativeInteger primitiveType An integer number from N, therefore greater than or equal to 0.
rational primitiveType A rational number from Q, represented by two integers, a numerator and a denominator. A native mapping to a serialisation context does in general not exists.
real primitiveType A real number (from R).
string primitiveType A string, represented as an array of characters treated as a single, primitive value. Ala Java, a string can not be updated, that is any update leads to a different string. However in contrast to Java we assume that two strings that are identical in all their constitutent characters are the same. I.e. string has value type semantics.