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 pathmanifest.owl.ttl
More file actions
210 lines (169 loc) · 8.25 KB
/
Copy pathmanifest.owl.ttl
File metadata and controls
210 lines (169 loc) · 8.25 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
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
@prefix manifest: <https://w3id.org/ascs-ev/envited-x/manifest/v5/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix org: <http://www.w3.org/ns/org#> .
@prefix prov: <http://www.w3.org/ns/prov#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
<https://w3id.org/ascs-ev/envited-x/manifest/v5> a owl:Ontology ;
rdfs:label "Ontology definition for manifest"@en ;
rdfs:comment "An ontology with common classes to describe the structure as list of contents of a domain specific asset using a manifest.json e.g. in an archive."@en ;
dcterms:creator "The GAIA-X 4 PLC AAD Project Team"@en ;
dcterms:contributor [
a foaf:Person ;
foaf:name "Johannes Demer" ;
org:memberOf <https://www.asc-s.de/> ;
] , [
a foaf:Person ;
foaf:name "Carlo van Driesten" ;
org:memberOf <https://www.bmwgroup.com/> ;
] , [
a foaf:Person ;
foaf:name "Mirco Nierenz" ;
org:memberOf <https://triangraphics.de/> ;
] , [
a foaf:Person ;
foaf:name "Erik Konietzko" ;
org:memberOf <https://www.ipk.fraunhofer.de/> ;
] ;
# Permanent identifier for the ontology (not version-specific)
dcterms:identifier <https://w3id.org/ascs-ev/envited-x/manifest> ;
# GitHub repository where the ontology is maintained
dcterms:source <https://github.com/GAIA-X4PLC-AAD/ontology-management-base> ;
# Specific GitHub release used for publishing this version
prov:wasDerivedFrom <https://github.com/GAIA-X4PLC-AAD/ontology-management-base/releases/tag/v0.1.0> ;
# Versioning
owl:versionIRI <https://w3id.org/ascs-ev/envited-x/manifest/v5> ;
owl:versionInfo "v5" ;
# Reference to SHACL validation rules
dcterms:conformsTo <https://w3id.org/ascs-ev/envited-x/manifest/v5/shapes> ;
# Additional references to the ENVITED Ecosystem Specification (EVES) or related ontologies
dcterms:references <https://w3id.org/ascs-ev/envited-x/envited-x/> ;
rdfs:seeAlso <https://ascs-ev.github.io/EVES/> .
manifest:Manifest a owl:Class ;
rdfs:label "Class definition for Manifest"@en ;
rdfs:comment """Defines the structure of an asset (e.g. simulation asset) as list of contents
using a manifest.json, listing explicitely included artifacts, referenced
artifacts and license information as linked properties. Typically used for
archives."""@en ;
owl:equivalentClass [
a owl:Restriction ;
owl:onProperty manifest:hasManifestReference ;
owl:cardinality 1
] ;
rdfs:subClassOf [
a owl:Restriction ;
owl:onProperty manifest:hasLicense ;
owl:cardinality 1
] ;
owl:equivalentClass [
a owl:Restriction ;
owl:onProperty manifest:hasArtifacts ;
owl:someValuesFrom manifest:Link
] ;
owl:equivalentClass [
a owl:Restriction ;
owl:onProperty manifest:hasReferencedArtifacts ;
owl:minCardinality 0
] .
manifest:Link a owl:Class ;
rdfs:label "Class definition for Link"@en ;
rdfs:comment """Defines a Link instance that connects to data and mandatory metadata
within an asset or related published simulation assets; can include
web references."""@en ;
rdfs:subClassOf [
a owl:Restriction ;
owl:onProperty manifest:hasFileMetadata ;
owl:cardinality 1
] .
manifest:FileMetadata a owl:Class ;
rdfs:label "Class definition for File Metadata"@en ;
rdfs:comment "Represents the properties of a data file referenced within a Link instance."@en ;
rdfs:subClassOf [
a owl:Restriction ;
owl:onProperty manifest:hasDimensions ;
owl:minCardinality 0
] .
manifest:Dimensions a owl:Class ;
rdfs:label "Class definition for Dimensions"@en ;
rdfs:comment "General class for defining the dimensions of a data file, e.g., of type image or video, referenced inside a manifest:FileMetadata."@en .
### Object properties
manifest:hasLink a owl:ObjectProperty ;
rdfs:label "has Link"@en ;
rdfs:comment "States that a subject has a Link instance."@en ;
# The range is Link, but no domain is specified
rdfs:range manifest:Link .
manifest:hasManifestReference a owl:ObjectProperty ;
rdfs:label "has Manifest Reference"@en ;
rdfs:comment "Links a Manifest to its corresponding manifest reference file, defining the structure and contents of a digital asset; only applicable within Manifest instances."@en ;
rdfs:subPropertyOf manifest:hasLink ;
rdfs:domain manifest:Manifest ;
rdfs:range manifest:Link .
manifest:hasLicense a owl:ObjectProperty ;
rdfs:label "has License"@en ;
rdfs:comment "Associates a Manifest instance with its corresponding license; only applicable within Manifest instances."@en ;
rdfs:domain manifest:Manifest ;
rdfs:range manifest:Link .
manifest:hasArtifacts a owl:ObjectProperty ;
rdfs:label "has Artifacts"@en ;
rdfs:comment "Associates a Manifest instance with its artifacts, represented as Link instances; only applicable within Manifest instances."@en ;
rdfs:subPropertyOf manifest:hasLink ;
rdfs:domain manifest:Manifest ;
rdfs:range manifest:Link .
manifest:hasReferencedArtifacts a owl:ObjectProperty ;
rdfs:label "has Referenced Artifacts"@en ;
rdfs:comment "Associates a Manifest instance with its referenced artifacts, represented as Link instances; only applicable within Manifest instances."@en ;
rdfs:subPropertyOf manifest:hasLink ;
rdfs:domain manifest:Manifest ;
rdfs:range manifest:Link .
manifest:hasFileMetadata a owl:ObjectProperty ;
rdfs:label "has File Metadata"@en ;
rdfs:comment "Associates a FileMetadata instance with its corresponding Link; only applicable within Link instances."@en ;
rdfs:domain manifest:Link ;
rdfs:range manifest:FileMetadata .
manifest:hasDimensions a owl:ObjectProperty ;
rdfs:label "has Dimensions"@en ;
rdfs:comment "Links a Dimensions instance to its associated FileMetadata, defining the size and scale of the data file; applicable only within FileMetadata instances."@en ;
rdfs:domain manifest:FileMetadata ;
rdfs:range manifest:Dimensions .
## Define a general access role class
manifest:AccessRole a owl:Class ;
rdfs:label "AccessRole"@en ;
rdfs:comment "A class representing different access roles of artifacts in a manifest."@en .
## General accessRole property
manifest:hasAccessRole a owl:ObjectProperty ;
rdfs:label "has AccessRole"@en ;
rdfs:comment "General property to indicate the access role of an artifact."@en ;
rdfs:domain manifest:Link ;
rdfs:range manifest:AccessRole .
## Define specific access role types as named individuals (NOT subclasses)
manifest:isPublic a manifest:AccessRole, owl:NamedIndividual ;
rdfs:label "Public Access Role"@en ;
rdfs:comment "Indicates that the artifact access role is public."@en .
## Define a general category class
manifest:Category a owl:Class ;
rdfs:label "Category"@en ;
rdfs:comment "A class representing different categories of artifacts in a manifest."@en .
## General category property
manifest:hasCategory a owl:ObjectProperty ;
rdfs:label "has Category"@en ;
rdfs:comment "General property to indicate the category of an artifact."@en ;
rdfs:domain manifest:Link ;
rdfs:range manifest:Category .
# New Category Classes
manifest:LicenseCategory a owl:Class ;
rdfs:subClassOf manifest:Category .
manifest:ManifestCategory a owl:Class ;
rdfs:subClassOf manifest:Category .
manifest:MiscellaneousCategory a owl:Class ;
rdfs:subClassOf manifest:Category .
# Base individual updated to the new class
manifest:isLicense a manifest:LicenseCategory, owl:NamedIndividual ;
rdfs:label "License Category"@en ;
rdfs:comment "Indicates that the artifact category is a license."@en .
manifest:isManifest a manifest:ManifestCategory, owl:NamedIndividual ;
rdfs:label "Manifest Category"@en ;
rdfs:comment "Indicates that the artifact category is a manifest."@en .
manifest:isMiscellaneous a manifest:Miscellaneous, owl:NamedIndividual ;
rdfs:label "Miscellaneous Category"@en ;
rdfs:comment "Indicates that the artifact category is miscellaneous."@en .