Data Points

Data points are placeholders for facts, in the sense that they only contain dimensional coordinates but no value. This eases the creation of new facts for the hypercube at hand, as they can be taken as the dimensional coordinates of the facts to create.

Given a component, it is possible to obtain all of its data points with the data-points-for-component endpoint.

Computation of data points

The set of data points is obtained as a the cartesian product of the value spaces of all aspects (builtin or not) in this hypercube, with the following behavior:

  • non-filtering aspects are ignored and excluded from all data points, resulting semantically in the implicit use of the default value.
  • among slicers, only those with a singleton value space, or with a value space that contains the default value, are used in the output data points. In the latter case, data points are created only with the default value.

Data points with hypercube overrides

It is possible to override the component's hypercube by, say, specifying periods or entities, or any further dimensions. In this case, the value spaces will take the override into account. This is especially convenient when creating new facts for a given component and for a given set of periods.

Data points with slicing and dicing

Data points listed with original components, that is, with no further slicing and dicing, will result in no collisions, in the sense that no two data points will collide.

If using slicing and dicing, lists of data points should not be relied on to create new facts. Indeed, collisions may then happen with respect to XBRL semantics, or data points with no XBRL significance will get created.

The only exception is the case when only new slicers are added.