From a31482ae4e9ba10e4d577d201405cf41430135f6 Mon Sep 17 00:00:00 2001 From: Tomasz Pluskiewicz Date: Mon, 30 Sep 2024 11:17:15 +0200 Subject: [PATCH] feat: require related dimension to be a cube:MeasureDimension --- .../invalid.dimensionRelation-multipleDcType.ttl | 1 + .../valid.dimensionRelation.ttl | 1 + validation/standalone-constraint-constraint.ttl | 9 +++++++++ 3 files changed, 11 insertions(+) diff --git a/test/standalone-constraint-constraint/invalid.dimensionRelation-multipleDcType.ttl b/test/standalone-constraint-constraint/invalid.dimensionRelation-multipleDcType.ttl index 2595a5b..d6ea241 100644 --- a/test/standalone-constraint-constraint/invalid.dimensionRelation-multipleDcType.ttl +++ b/test/standalone-constraint-constraint/invalid.dimensionRelation-multipleDcType.ttl @@ -40,6 +40,7 @@ PREFIX dcterms: ] ; sh:property [ + a cube:MeasureDimension ; sh:datatype xsd:decimal ; sh:path ; schema:name "dimension" ; diff --git a/test/standalone-constraint-constraint/valid.dimensionRelation.ttl b/test/standalone-constraint-constraint/valid.dimensionRelation.ttl index 823a02d..ef32bcd 100644 --- a/test/standalone-constraint-constraint/valid.dimensionRelation.ttl +++ b/test/standalone-constraint-constraint/valid.dimensionRelation.ttl @@ -41,6 +41,7 @@ PREFIX dcterms: ] ; sh:property [ + a cube:MeasureDimension ; sh:datatype xsd:decimal ; sh:path ; schema:name "dimension" ; diff --git a/validation/standalone-constraint-constraint.ttl b/validation/standalone-constraint-constraint.ttl index 3b88cac..ebd84ae 100644 --- a/validation/standalone-constraint-constraint.ttl +++ b/validation/standalone-constraint-constraint.ttl @@ -201,6 +201,15 @@ sh:minCount 1 ; sh:class cube:Constraint ; sh:message "value of meta:relatesTo must be a cube dimension" ; + ], + [ + sh:path + ( + meta:relatesTo + [ sh:inversePath sh:path ] + ) ; + sh:class cube:MeasureDimension ; + sh:message "value of meta:relatesTo must point to measure dimension " ; ] ; ] ; .