PREFIX rdf: PREFIX rdfs: PREFIX skos: PREFIX qb: PREFIX xsd: PREFIX owl: # IC-12. No duplicate observations (modified) # No two qb:Observations in the same qb:DataSet may have the same value for all dimensions. SELECT * WHERE { FILTER( ?allEqual ) { # For each pair of observations test if all the dimension values are the same SELECT (MIN(?equal) AS ?allEqual) WHERE { ?obs1 qb:dataSet ?dataset . ?obs2 qb:dataSet ?dataset . FILTER (?obs1 != ?obs2) { ?dataset qb:structure ?dsd . ?ds qb:component ?comp . ?comp qb:componentProperty ?dim. } UNION { ?dataset qb:structure ?dsd . ?dsd qb:component ?comp . ?comp qb:dimension ?dim . } ?dim a qb:DimensionProperty . ?obs1 ?dim ?value1 . ?obs2 ?dim ?value2 . BIND( ?value1 = ?value2 AS ?equal) } GROUP BY ?obs1 ?obs2 } }