Ontology Version: 2.2.0

cacontology-platforms:PlatformOperatorCrossReferenceShape leaf node


URI

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

Label

Platform Operator Cross Reference Shape

Description

Validates that platforms have associated operators.

Shape Properties

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

PROPERTY

MIN COUNT

MAX COUNT

TYPE

cacontology-platforms:VideoStreamingPlatform
cacontology-platforms:ageVerificationRequired 0 1 xsd:boolean
1 1 xsd:string

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:PlatformOperatorCrossReferenceShape a sh:NodeShape ;
    rdfs:label "Platform Operator Cross Reference Shape"@en ;
    rdfs:comment "Validates that platforms have associated operators."@en ;
    sh:sparql [ sh:message "Platform should have an associated electronic service provider operator."@en ;
            sh:select """
            SELECT $this
            WHERE {
                $this a ?platformType .
                FILTER (?platformType IN (
                    cacontology-platforms:SocialMediaPlatform,
                    cacontology-platforms:MessagingService,
                    cacontology-platforms:VideoStreamingPlatform,
                    cacontology-platforms:FileHostingService,
                    cacontology-platforms:GamePlatform
                ))
                FILTER NOT EXISTS {
                    ?esp cacontology-platforms:operatedBy $this .
                }
            }
        """ ] ;
    sh:targetClass cacontology-platforms:FileHostingService,
        cacontology-platforms:GamePlatform,
        cacontology-platforms:MessagingService,
        cacontology-platforms:SocialMediaPlatform,
        cacontology-platforms:VideoStreamingPlatform .