This repository was archived by the owner on Feb 12, 2026. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathsurvey-result-data-offering.shacl.ttl
More file actions
105 lines (96 loc) · 3.68 KB
/
Copy pathsurvey-result-data-offering.shacl.ttl
File metadata and controls
105 lines (96 loc) · 3.68 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
@prefix sh: <http://www.w3.org/ns/shacl#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix survey: <https://w3id.org/gaia-x4plcaad/ontologies/survey/v6/> .
@prefix envited-x: <https://w3id.org/ascs-ev/envited-x/envited-x/v3/> .
@prefix manifest: <https://w3id.org/ascs-ev/envited-x/manifest/v5/> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
# The Shapes Graph URI appends "/shapes/<offering-type>" to the Ontology URI
<https://w3id.org/gaia-x4plcaad/ontologies/survey/v6/shapes/result-data-offering>
a owl:Ontology ;
# The Shapes Graph must import the Domain Ontology
owl:imports <https://w3id.org/gaia-x4plcaad/ontologies/survey/v6> .
survey:SurveyResultDataOfferingShape a sh:NodeShape ;
sh:closed false ;
sh:targetClass survey:SurveyResultDataOffering ;
# 1) hasResourceDescription
sh:property [
sh:path survey:hasResourceDescription ;
sh:minCount 1 ;
sh:maxCount 1 ;
sh:or (
[ sh:node envited-x:ResourceDescriptionShape ]
[ sh:and ( manifest:LinkShape envited-x:ExtendedLinkShape ) ]
) ;
sh:message "Each SurveyResultDataOffering must have exactly one associated ResourceDescription (either inline or a valid manifest:Link)."@en ;
] ;
# 2) hasDomainSpecification
sh:property [
sh:path survey:hasDomainSpecification ;
sh:node survey:ResultDomainSpecificationShape ;
sh:minCount 1 ;
sh:maxCount 1 ;
sh:message "Each SurveyResultDataOffering must have one associated DomainSpecification with content."@en ;
] ;
# 3) hasManifest
sh:property [
sh:path survey:hasManifest ;
sh:minCount 1 ;
sh:maxCount 1 ;
sh:or (
[ sh:and ( manifest:ManifestShape envited-x:ManifestShape ) ]
[ sh:node envited-x:ManifestLinkReferenceShape ]
) ;
sh:message "Each SurveyResultDataOffering must have exactly one manifest."@en ;
] .
# DomainSpecification shape for result data
survey:ResultDomainSpecificationShape a sh:NodeShape ;
sh:closed false ;
sh:property [
sh:path survey:hasContent ;
sh:node survey:ResultContentShape ;
sh:minCount 1 ;
sh:maxCount 1 ;
sh:message "Each ResultDomainSpecification must have one Content facet."@en ;
] .
# Content shape for result data
survey:ResultContentShape a sh:NodeShape ;
sh:closed false ;
sh:property [
sh:path survey:surveyStartTime ;
sh:datatype xsd:dateTime ;
skos:example "'Date 1'" ;
sh:minCount 1 ;
sh:maxCount 1 ;
sh:message "Validation of survey start time failed." ;
sh:name "Survey start time" ;
sh:description "When the survey was started." ;
] ;
sh:property [
sh:path survey:surveyCloseTime ;
sh:datatype xsd:dateTime ;
skos:example "'Date 1'" ;
sh:minCount 1 ;
sh:maxCount 1 ;
sh:message "Validation of survey close time failed." ;
sh:name "Survey close time" ;
sh:description "When the survey was closed." ;
] ;
sh:property [
sh:path survey:belongsTo ;
sh:nodeKind sh:IRI ;
sh:class survey:SurveyServiceOffering ;
sh:minCount 1 ;
sh:maxCount 1 ;
sh:message "Validation of assigned survey service offering failed." ;
sh:name "Survey service offering" ;
sh:description "Accompanied survey service offering." ;
] ;
sh:property [
sh:path survey:dataSize ;
sh:datatype xsd:float ;
sh:minCount 0 ;
sh:maxCount 1 ;
sh:message "Validation of data size failed." ;
sh:name "Data size" ;
] .