Ontology Version: 3.1.0

cacontology-recruitment-shapes:PeerRecruitmentNetworkShape leaf node


URI

https://cacontology.projectvic.org/recruitment-networks/shapes#PeerRecruitmentNetworkShape

Label

Peer Recruitment Network Shape

Description

Validation shape for peer recruitment network instances.

Property Constraints (3)

Focus nodes of this shape (cacontology-recruitment:PeerRecruitmentNetwork) can have the following properties:

PROPERTY DESCRIPTION MIN MAX VALUE TYPE OTHER CONSTRAINTS
cacontology-recruitment:includesRecruitingVictim Links recruitment network to victim being used as recruiter.
sh:message Recruitment network must include at least one recruiting victim.
1 * uco-identity:Person
cacontology-recruitment:networkSize Number of participants in the recruitment network.
sh:message Peer recruitment network must have 2-50 participants.
1 1 xsd:nonNegativeInteger
sh:minInclusive 2
sh:maxInclusive 50
cacontology-recruitment:victimRecruitersCount Number of existing victims being used as recruiters.
sh:message Network must have 1-20 victim recruiters.
1 1 xsd:nonNegativeInteger
sh:minInclusive 1
sh:maxInclusive 20

Implementation

@prefix cacontology-recruitment: <https://cacontology.projectvic.org/recruitment-networks#> .
@prefix cacontology-recruitment-shapes: <https://cacontology.projectvic.org/recruitment-networks/shapes#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix sh: <http://www.w3.org/ns/shacl#> .
@prefix uco-identity: <https://ontology.unifiedcyberontology.org/uco/identity/> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
cacontology-recruitment-shapes:PeerRecruitmentNetworkShape a sh:NodeShape ;
    rdfs:label "Peer Recruitment Network Shape"@en ;
    rdfs:comment "Validation shape for peer recruitment network instances."@en ;
    sh:property [ sh:datatype xsd:nonNegativeInteger ;
            sh:maxCount 1 ;
            sh:maxInclusive 50 ;
            sh:message "Peer recruitment network must have 2-50 participants."@en ;
            sh:minCount 1 ;
            sh:minInclusive 2 ;
            sh:path cacontology-recruitment:networkSize ],
        [ sh:datatype xsd:nonNegativeInteger ;
            sh:maxCount 1 ;
            sh:maxInclusive 20 ;
            sh:message "Network must have 1-20 victim recruiters."@en ;
            sh:minCount 1 ;
            sh:minInclusive 1 ;
            sh:path cacontology-recruitment:victimRecruitersCount ],
        [ sh:class uco-identity:Person ;
            sh:message "Recruitment network must include at least one recruiting victim."@en ;
            sh:minCount 1 ;
            sh:path cacontology-recruitment:includesRecruitingVictim ] ;
    sh:targetClass cacontology-recruitment:PeerRecruitmentNetwork .