https://cacontology.projectvic.org/international#InformationSharingAgreementShape
Validation shape for information sharing agreement instances with gUFO integration.
Focus nodes of this shape (cacontology-international:InformationSharingAgreement) can have the following properties:
| PROPERTY | DESCRIPTION | MIN | MAX | VALUE TYPE | OTHER CONSTRAINTS |
|---|---|---|---|---|---|
cacontology-international:hasAgreementStability |
sh:message Agreement stability level must be from allowed list (gUFO quality aspect) |
0 | 1 | xsd:string |
sh:in
temporary, provisional, stable, long_term, permanent
|
cacontology-international:hasCompliance |
sh:message Compliance rate must be between 0.0 and 1.0 (gUFO quality aspect) |
0 | 1 | xsd:double |
sh:minInclusive
0.0
sh:maxInclusive
1.0
|
| cacontology-international:informationSharingLevel | Level of information sharing permitted (basic, enhanced, full). sh:message Information sharing level must be from the allowed list. |
0 | 1 | xsd:string |
sh:in
basic, enhanced, full, restricted
|
| cacontology-international:multilateralAgreement | Whether the agreement involves multiple parties. sh:message Multilateral agreement must be a boolean value. |
0 | 1 | xsd:boolean | |
gufo:hasBeginPointInXSDDateTimeStamp |
sh:message Agreement may have effective date (gUFO temporal boundary) |
0 | 1 | xsd:dateTime | |
gufo:hasEndPointInXSDDateTimeStamp |
sh:message Agreement may have expiration date (gUFO temporal boundary) |
0 | 1 | xsd:dateTime | |
uco-core:name |
sh:message Information sharing agreement must have a name (5-200 characters). |
1 | 1 | xsd:string |
sh:minLength
5
sh:maxLength
200
|
@prefix cacontology-international: <https://cacontology.projectvic.org/international#> .
@prefix gufo: <http://purl.org/nemo/gufo#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix sh: <http://www.w3.org/ns/shacl#> .
@prefix uco-core: <https://ontology.unifiedcyberontology.org/uco/core/> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
cacontology-international:InformationSharingAgreementShape a sh:NodeShape ;
rdfs:label "Information Sharing Agreement Shape"@en ;
rdfs:comment "Validation shape for information sharing agreement instances with gUFO integration."@en ;
sh:property [ sh:datatype xsd:double ;
sh:maxCount 1 ;
sh:maxInclusive 1.0 ;
sh:message "Compliance rate must be between 0.0 and 1.0 (gUFO quality aspect)"@en ;
sh:minInclusive 0.0 ;
sh:path cacontology-international:hasCompliance ],
[ sh:datatype xsd:dateTime ;
sh:maxCount 1 ;
sh:message "Agreement may have effective date (gUFO temporal boundary)"@en ;
sh:path gufo:hasBeginPointInXSDDateTimeStamp ],
[ sh:datatype xsd:dateTime ;
sh:maxCount 1 ;
sh:message "Agreement may have expiration date (gUFO temporal boundary)"@en ;
sh:path gufo:hasEndPointInXSDDateTimeStamp ],
[ sh:datatype xsd:string ;
sh:maxCount 1 ;
sh:maxLength 200 ;
sh:message "Information sharing agreement must have a name (5-200 characters)."@en ;
sh:minCount 1 ;
sh:minLength 5 ;
sh:path uco-core:name ],
[ sh:datatype xsd:boolean ;
sh:maxCount 1 ;
sh:message "Multilateral agreement must be a boolean value."@en ;
sh:minCount 0 ;
sh:path cacontology-international:multilateralAgreement ],
[ sh:datatype xsd:string ;
sh:in ( "basic" "enhanced" "full" "restricted" ) ;
sh:maxCount 1 ;
sh:message "Information sharing level must be from the allowed list."@en ;
sh:minCount 0 ;
sh:path cacontology-international:informationSharingLevel ],
[ sh:datatype xsd:string ;
sh:in ( "temporary" "provisional" "stable" "long_term" "permanent" ) ;
sh:maxCount 1 ;
sh:message "Agreement stability level must be from allowed list (gUFO quality aspect)"@en ;
sh:path cacontology-international:hasAgreementStability ] ;
sh:targetClass cacontology-international:InformationSharingAgreement .