Skip to content

Commit d17575d

Browse files
authored
Merge pull request #95 from eScienceLab/78-flatten-11_workflow_execution_phasettl-files
Merged `11_workflow_execution_phase.tll` files.
2 parents 5fdc5a4 + 725ed50 commit d17575d

4 files changed

Lines changed: 145 additions & 184 deletions

File tree

Lines changed: 145 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,145 @@
1+
# Copyright (c) 2025 eScience Lab, The University of Manchester
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# http://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
@prefix ro: <./> .
16+
@prefix ro-crate: <https://github.com/crs4/rocrate-validator/profiles/ro-crate/> .
17+
@prefix five-safes-crate: <https://github.com/eScienceLab/rocrate-validator/profiles/five-safes-crate/> .
18+
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
19+
@prefix schema: <http://schema.org/> .
20+
@prefix purl: <http://purl.org/dc/terms/> .
21+
@prefix sh: <http://www.w3.org/ns/shacl#> .
22+
@prefix validator: <https://github.com/crs4/rocrate-validator/> .
23+
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
24+
25+
26+
#=== MUST shapes ===#
27+
28+
five-safes-crate:WorkflowMustHaveDescriptiveName
29+
a sh:NodeShape ;
30+
sh:name "WorkflowExecution" ;
31+
sh:targetClass ro-crate:WorkflowRunAction ;
32+
33+
sh:property [
34+
a sh:PropertyShape ;
35+
sh:name "name" ;
36+
sh:minCount 1 ;
37+
sh:description "The `CreateAction` corresponding to the workflow run MUST have a name string of at least 10 characters." ;
38+
sh:path schema:name ;
39+
sh:datatype xsd:string ;
40+
sh:minLength 10 ;
41+
sh:severity sh:Violation ;
42+
sh:message "The `CreateAction` corresponding to the workflow run MUST have a name string of at least 10 characters." ;
43+
] .
44+
45+
46+
five-safes-crate:WorkflowMustHaveActionStatusWithAllowedValues
47+
a sh:NodeShape ;
48+
sh:name "WorkflowExecution" ;
49+
sh:targetClass ro-crate:WorkflowRunAction ;
50+
sh:property [
51+
a sh:PropertyShape ;
52+
sh:minCount 1 ;
53+
sh:name "actionStatus" ;
54+
sh:description "`CreateAction` MUST have an actionStatus with an allowed value (see https://schema.org/ActionStatusType)." ;
55+
sh:path schema:actionStatus ;
56+
sh:in (
57+
"http://schema.org/PotentialActionStatus"
58+
"http://schema.org/ActiveActionStatus"
59+
"http://schema.org/CompletedActionStatus"
60+
"http://schema.org/FailedActionStatus"
61+
) ;
62+
sh:severity sh:Violation ;
63+
sh:message "`CreateAction` MUST have an actionStatus with an allowed value (see https://schema.org/ActionStatusType)." ;
64+
] .
65+
66+
67+
#=== SHOULD shapes ===#
68+
69+
five-safes-crate:WorkflowexecutionObjectHasEndTimeIfEnded
70+
a sh:NodeShape ;
71+
sh:name "WorkflowExecution" ;
72+
sh:description "The workflow run object SHOULD have an endTime property if it has ended." ;
73+
74+
sh:target [
75+
a sh:SPARQLTarget ;
76+
sh:select """
77+
PREFIX schema: <http://schema.org/>
78+
PREFIX rocrate: <https://github.com/crs4/rocrate-validator/profiles/ro-crate/>
79+
80+
SELECT ?this
81+
WHERE {
82+
?this a rocrate:WorkflowRunAction ;
83+
schema:actionStatus ?status .
84+
FILTER(?status IN (
85+
"http://schema.org/CompletedActionStatus",
86+
"http://schema.org/FailedActionStatus"
87+
))
88+
}
89+
""" ;
90+
] ;
91+
92+
sh:property [
93+
a sh:PropertyShape ;
94+
sh:name "EndTime" ;
95+
sh:path schema:endTime ;
96+
sh:minCount 1 ;
97+
sh:maxCount 1 ;
98+
sh:severity sh:Warning ;
99+
sh:description "The workflow execution object SHOULD have an endTime property if it has ended." ;
100+
sh:message "The workflow execution object SHOULD have an endTime property if it has ended." ;
101+
] .
102+
103+
104+
#=== MAY shapes ===#
105+
106+
five-safes-crate:WorkflowexecutionObjectHasStartTimeIfBegun
107+
a sh:NodeShape ;
108+
sh:name "WorkflowExecution" ;
109+
sh:description (
110+
"The workflow execution object MAY have a startTime if actionStatus is "
111+
"either ActiveActionStatus, CompletedActionStatus or FailedActionStatus."
112+
) ;
113+
114+
sh:target [
115+
a sh:SPARQLTarget ;
116+
sh:select """
117+
PREFIX schema: <http://schema.org/>
118+
PREFIX rocrate: <https://github.com/crs4/rocrate-validator/profiles/ro-crate/>
119+
120+
SELECT ?this
121+
WHERE {
122+
?this a rocrate:WorkflowRunAction ;
123+
schema:actionStatus ?status .
124+
FILTER(?status IN (
125+
"http://schema.org/CompletedActionStatus",
126+
"http://schema.org/FailedActionStatus",
127+
"http://schema.org/ActiveActionStatus"
128+
))
129+
}
130+
""" ;
131+
] ;
132+
133+
sh:property [
134+
a sh:PropertyShape ;
135+
sh:name "StartTime" ;
136+
sh:path schema:startTime ;
137+
sh:minCount 1 ;
138+
sh:maxCount 1 ;
139+
sh:severity sh:Info ;
140+
sh:description (
141+
"The workflow execution object MAY have a startTime if actionStatus is "
142+
"either ActiveActionStatus, CompletedActionStatus or FailedActionStatus."
143+
) ;
144+
sh:message "The workflow execution object MAY have a startTime if actionStatus is either ActiveActionStatus, CompletedActionStatus or FailedActionStatus." ;
145+
] .

rocrate_validator/profiles/five-safes-crate/may/11_workflow_execution_phase.ttl

Lines changed: 0 additions & 64 deletions
This file was deleted.

rocrate_validator/profiles/five-safes-crate/must/11_workflow_execution_phase.ttl

Lines changed: 0 additions & 62 deletions
This file was deleted.

rocrate_validator/profiles/five-safes-crate/should/11_workflow_execution_phase.ttl

Lines changed: 0 additions & 58 deletions
This file was deleted.

0 commit comments

Comments
 (0)