Cube Schema - Meta vocabulary

Zazuko Document

More details about this document
Latest editor's draft:
Commit history
Bart van Leeuwen (Zazuko)
Thomas Bergwinkl (Zazuko)
Adrian Gschwend (Zazuko)
Bart van Leeuwen (Zazuko)
Michael Luggen (Zazuko)
GitHub zazuko/cube-link (pull requests, new issue, open issues)
Related Vocabularies
Cube Schema
Cube Schema - Relation vocabulary


This vocubulary is intended as a companion vocabulary to the Cube Schema vocabulary.

Status of This Document

This section describes the status of this document at the time of its publication. Other documents may supersede this document.

This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.

1. Meta vocabulary

1.1 Classes

1.1.1 meta:Hierarchy

A hierarchy is defined and can be named schema:name. This can help user interfaces to allow a selection in case of multiple hierarchies.

1.1.2 meta:Relation

A meta:Relation resource is used to express the relation or hierarchy between different dimensions, the nature of the relationship is determined by the properties used. A meta:Relation is linked to an observation through a meta:relatesTo property.

1.1.3 meta:SharedDimension

To be able to distinguish Dimensions that are defined inside a Cube from Dimensions that are used in multiple cubes, we have the type of meta:SharedDimension. Every dimension except the ones typed as a cube:MeasureDimension can also be a meta:SharedDimension.

1.2 Properties

1.2.1 meta:dataKind (temporal / spatial)

To express that the dimension provides a specific kind of data which is necessary to select the correct visual representation you can add a meta:dataKind resource with the following possible structures:

  • schema:GeoCoordinates: To hint that the dimension does provide Resources with latitude and longitude which can be shown on a map.
  • schema:GeoShape: To hint that the dimension does provide Resources that have a shape that can be shown on a map.

  • time:GeneralDateTimeDescription: To hint that the dimension does provide Resources that can be shown on a timeline.

    It is further possible to add time:unitType to hint about the precision in which the dimension should be presented. A time:TemporalUnit is expected: time:unitYear, time:unitMonth, time:unitWeek, time:unitDay, time:unitHour, time:unitMinute and time:unitSecond.

1.2.2 meta:dimensionRelation

A meta:dimensionRelation property is used to express the relation of this dimension in related to other dimension, examples are Deviation and StandardError

1.2.3 meta:hierarchyRoot

This property is mandatory and defines one or multiple root concepts. It is the starting point of the hierarchy which is then defined through a cascade of levels where the use of sh:path is connecting the concepts. The simplest case is only two levels, the root level and how they are connected to the observations in the dimension. If there are multiple levels they are nested with 'meta:nextInHierarchy'.

1.2.4 meta:inHierarchy

This property is used on a Dimension Constraint to express a hierarchy implemented. It points to a meta:Hierarchy which is the root level of the defined hierarchy. It is possible to add multiple different hierarchies on one dimension.

A hierarchy must have at least one meta:hierarchyRoot.

1.2.5 meta:nextInHierarchy

With meta:nextInHierarchy the next lower level is attached to the higher level or the root level of a hierarchy.

1.2.6 meta:relatesTo

This property is used on a Dimension Constraint to express a relation with other properties through a meta:Relation instance, the nature of this relationship is determined by the properties used on the instance. See this example.