Ontology Version: 2.2.0

cacontology-platforms:RetentionPeriodValidationShape leaf node


URI

https://cacontology.projectvic.org/platforms#RetentionPeriodValidationShape

Label

Retention Period Validation Shape

Description

Validates logical consistency of retention periods.

Shape Properties

Instances of cacontology-platforms:DataRetentionPolicy can have the following properties:

PROPERTY

MIN COUNT

MAX COUNT

TYPE

cacontology-platforms:DataRetentionPolicy
cacontology-platforms:anonymousUserDataRetention 0 1 xsd:integer
cacontology-platforms:contentRetentionPeriod 0 1 xsd:integer
cacontology-platforms:logRetentionPeriod 0 1 xsd:integer
cacontology-platforms:userDataRetentionPeriod 0 1 xsd:integer

Implementation

@prefix cacontology-platforms: <https://cacontology.projectvic.org/platforms#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix sh: <http://www.w3.org/ns/shacl#> .
cacontology-platforms:RetentionPeriodValidationShape a sh:NodeShape ;
    rdfs:label "Retention Period Validation Shape"@en ;
    rdfs:comment "Validates logical consistency of retention periods."@en ;
    sh:sparql [ sh:message "Anonymous user data retention should not exceed general user data retention."@en ;
            sh:select """
            SELECT $this
            WHERE {
                $this cacontology-platforms:userDataRetentionPeriod ?userRetention ;
                      cacontology-platforms:anonymousUserDataRetention ?anonRetention .
                FILTER (?anonRetention > ?userRetention)
            }
        """ ] ;
    sh:targetClass cacontology-platforms:DataRetentionPolicy .