-
Notifications
You must be signed in to change notification settings - Fork 4
/
prov-cco-directmappings.ttl
541 lines (461 loc) · 27.6 KB
/
prov-cco-directmappings.ttl
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
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix swrl: <http://www.w3.org/2003/11/swrl#> .
@prefix prov: <http://www.w3.org/ns/prov#> .
@prefix obo: <http://purl.obolibrary.org/obo/> .
@prefix cco: <https://www.commoncoreontologies.org/> .
@prefix dc: <http://purl.org/dc/elements/1.1/> .
@prefix sssom: <https://w3id.org/sssom/> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@base <https://raw.githubusercontent.com/BFO-Mappings/PROV-to-BFO/main/prov-cco-directmappings.ttl> .
<https://raw.githubusercontent.com/BFO-Mappings/PROV-to-BFO/main/prov-cco-directmappings.ttl>
a owl:Ontology;
rdfs:label "Common Core Ontologies (CCO) mappings for W3C PROVenance Interchange Ontology (PROV-O)"@en ;
owl:versionIRI <https://github.com/BFO-Mappings/PROV-to-BFO/releases/tag/v2024-11-23> ;
owl:imports <https://raw.githubusercontent.com/BFO-Mappings/PROV-to-BFO/main/prov-bfo-directmappings.ttl> ;
rdfs:comment "This mapping depends on the imported PROV-O to BFO mapping" ;
dc:contributor "Tim Prudhomme", "Giacomo De Colle" , "Austin Liebers" , "Alec Sculley" , "Peihong Karl Xie", "Sydney Cohen", "John Beverley" ;
dc:license <https://creativecommons.org/publicdomain/zero/1.0/> ;
prov:wasDerivedFrom <http://www.w3.org/ns/prov> ,
<https://github.com/CommonCoreOntology/CommonCoreOntologies> ;
rdfs:seeAlso <https://basic-formal-ontology.org/> ,
<https://github.com/BFO-Mappings/PROV-to-BFO> ;
.
# PROV class mappings and property restrictions
prov:Agent rdf:type owl:Class .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:Agent ;
owl:annotatedProperty owl:equivalentClass ;
owl:annotatedTarget [ owl:intersectionOf ( cco:ont00001017
[ rdf:type owl:Restriction ;
owl:onProperty cco:ont00001787 ;
owl:someValuesFrom prov:Activity
]
) ;
rdf:type owl:Class
] ;
sssom:object_label "Agent that is an agent in some Activity" ;
rdfs:comment "An agent is an Agent that is an agent in some Activity. According to Requirement VI13 in 'Rationale of Prov', this could be a prov:Entity"@en .
prov:Person rdf:type owl:Class .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:Person ;
owl:annotatedProperty owl:equivalentClass ;
owl:annotatedTarget [ owl:intersectionOf ( cco:ont00001262
prov:Agent)] ;
sssom:object_label "Person" ;
rdfs:comment "Every prov:Person is both a prov:Agent and a cco:ont00001262. However, not every cco:ont00001262 is a prov:Agent or cco:ont00001017. So, prov:Person and cco:ont00001262 are not coextensive."@en .
prov:Organization rdf:type owl:Class .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:Organization ;
owl:annotatedProperty owl:equivalentClass ;
owl:annotatedTarget [ owl:intersectionOf ( cco:ont00001180
prov:Agent)] ;
sssom:object_label "Organization" ;
rdfs:comment "Every prov:Organization is both a prov:Agent and a cco:ont00001180. However, not every cco:ont00001180 is a prov:Agent or cco:ont00001017. So, prov:Organization and cco:ont00001180 are not coextensive."@en .
prov:Plan rdf:type owl:Class .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:Plan ;
owl:annotatedProperty rdfs:subClassOf ;
owl:annotatedTarget cco:ont00000958 ;
sssom:object_label "Information Content Entity" ;
rdfs:comment "Plans are information content which are about entities. prov:Plan is similar to cco:ont00000974, except that PROV explicitly does not constrain the type of information content that prov:Plans consist of."@en .
prov:Start rdf:type owl:Class .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:Start ;
owl:annotatedProperty owl:equivalentClass ;
owl:annotatedTarget cco:ont00000197 ;
sssom:object_label "Process Beginning" ;
rdfs:comment "TODO add justification"@en .
prov:End rdf:type owl:Class .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:End ;
owl:annotatedProperty owl:equivalentClass ;
owl:annotatedTarget cco:ont00000083 ;
sssom:object_label "Process Ending" ;
rdfs:comment "TODO add justification"@en .
# PROV-Dictionary class mappings
prov:Dictionary rdf:type owl:Class .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:Dictionary ;
owl:annotatedProperty rdfs:subClassOf ;
owl:annotatedTarget cco:ont00000958 ;
sssom:object_label "Information Content Entity" ;
rdfs:comment "A prov:Dictionary exists in virtue of the fact that there is at least one of what may be multiple copies; it is the content or the pattern that the multiple copies share."@en .
prov:KeyEntityPair rdf:type owl:Class .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:KeyEntityPair ;
owl:annotatedProperty rdfs:subClassOf ;
owl:annotatedTarget cco:ont00000958 ;
sssom:object_label "Information Content Entity" ;
rdfs:comment "A prov:KeyEntityPair exists in virtue of the fact that there is at least one of what may be multiple copies; it is the content or the pattern that the multiple copies share."@en .
# PROV object property mappings
prov:wasAssociatedWith rdf:type owl:ObjectProperty . cco:ont00001833 rdf:type owl:ObjectProperty .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:wasAssociatedWith ;
owl:annotatedProperty rdfs:subPropertyOf ;
owl:annotatedTarget cco:ont00001833 ;
sssom:object_label "has agent" ;
rdfs:comment "An Activity that was associated with an Agent has the Agent as its agent."@en .
prov:wasInvalidatedBy rdf:type owl:ObjectProperty . cco:ont00001886 rdf:type owl:ObjectProperty .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:wasInvalidatedBy ;
owl:annotatedProperty rdfs:subPropertyOf ;
owl:annotatedTarget cco:ont00001886 ;
sssom:object_label "is affected by" ;
rdfs:comment "An Entity that was invalidated by an Activity is also affected by that Activity."@en .
prov:wasGeneratedBy rdf:type owl:ObjectProperty . cco:ont00001816 rdf:type owl:ObjectProperty .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:wasGeneratedBy ;
owl:annotatedProperty rdfs:subPropertyOf ;
owl:annotatedTarget cco:ont00001816 ;
sssom:object_label "is output of" ;
rdfs:comment "An Entity that was generated by an Activity is output of that Activity."@en .
prov:invalidated rdf:type owl:ObjectProperty . cco:ont00001834 rdf:type owl:ObjectProperty .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:invalidated ;
owl:annotatedProperty rdfs:subPropertyOf ;
owl:annotatedTarget cco:ont00001834 ;
sssom:object_label "affects" ;
rdfs:comment "An Activity that invalidated an Entity also affects that Entity."@en .
prov:used rdf:type owl:ObjectProperty . cco:ont00001834 rdf:type owl:ObjectProperty .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:used ;
owl:annotatedProperty rdfs:subPropertyOf ;
owl:annotatedTarget cco:ont00001834 ;
sssom:object_label "affects" ;
rdfs:comment "An Activity that used an Entity affects the Entity."@en .
prov:generated rdf:type owl:ObjectProperty . cco:ont00001986 rdf:type owl:ObjectProperty .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:generated ;
owl:annotatedProperty rdfs:subPropertyOf ;
owl:annotatedTarget cco:ont00001986 ;
sssom:object_label "has output" ;
rdfs:comment "An Activity that generated an Entity has_output that Entity."@en .
prov:hadPlan rdf:type owl:ObjectProperty . cco:ont00001920 rdf:type owl:ObjectProperty .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:hadPlan ;
owl:annotatedProperty owl:propertyChainAxiom ;
owl:annotatedTarget ( [ owl:inverseOf prov:qualifiedAssociation ] cco:ont00001920 ) ;
sssom:object_label "qualified association of something prescribed by" ;
rdfs:comment "If an Association is the qualified association of some Activity, and that Activity is prescribed by some Plan, then that Association 'had plan' that Plan."@en .
prov:qualifiedAssociation rdf:type owl:ObjectProperty . cco:ont00001777 rdf:type owl:ObjectProperty .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:qualifiedAssociation ;
owl:annotatedProperty rdfs:subPropertyOf ;
owl:annotatedTarget cco:ont00001777 ;
sssom:object_label "has process part" ;
rdfs:comment "An Activity that has an Association as its qualified association also has the Activity as its process part."@en ;
rdfs:comment "If this Activity prov:wasAssociatedWith Agent :ag, then it can qualify the Association using prov:qualifiedAssociation [ a prov:Association; prov:agent :ag; :foo :bar ]."@en .
prov:qualifiedAttribution rdf:type owl:ObjectProperty . cco:ont00001886 rdf:type owl:ObjectProperty .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:qualifiedAttribution ;
owl:annotatedProperty rdfs:subPropertyOf ;
owl:annotatedTarget cco:ont00001886 ;
sssom:object_label "is affected by" ;
rdfs:comment "An Entity that is attributed to something is affected by that Attribution."@en .
prov:qualifiedRevision rdf:type owl:ObjectProperty . cco:ont00001886 rdf:type owl:ObjectProperty .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:qualifiedRevision ;
owl:annotatedProperty rdfs:subPropertyOf ;
owl:annotatedTarget cco:ont00001886 ;
sssom:object_label "is affected by" ;
rdfs:comment "If a Revision is the qualified revision of an Entity, then the Entity is affected by the Revision."@en .
prov:qualifiedDelegation rdf:type owl:ObjectProperty . cco:ont00001787 rdf:type owl:ObjectProperty .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:qualifiedDelegation ;
owl:annotatedProperty rdfs:subPropertyOf ;
owl:annotatedTarget cco:ont00001787 ;
sssom:object_label "agent in" ;
rdfs:comment "If a Delegation is the qualified delegation of an Agent, then the Agent is agent in (namely causally active in) the Delegation."@en .
prov:qualifiedDerivation rdf:type owl:ObjectProperty . cco:ont00001816 rdf:type owl:ObjectProperty .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:qualifiedDerivation ;
owl:annotatedProperty rdfs:subPropertyOf ;
owl:annotatedTarget cco:ont00001816 ;
sssom:object_label "is output of" ;
rdfs:comment "If a Derivation is the qualified derivation of an Entity, then the Entity is output of the Derivation."@en .
prov:qualifiedPrimarySource rdf:type owl:ObjectProperty . cco:ont00001816 rdf:type owl:ObjectProperty .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:qualifiedPrimarySource ;
owl:annotatedProperty rdfs:subPropertyOf ;
owl:annotatedTarget cco:ont00001816 ;
sssom:object_label "is output of" ;
rdfs:comment "A Entity that has a Primary Source as its qualified primary source is output of that Primary Source."@en .
prov:qualifiedQuotation rdf:type owl:ObjectProperty . cco:ont00001816 rdf:type owl:ObjectProperty .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:qualifiedQuotation ;
owl:annotatedProperty rdfs:subPropertyOf ;
owl:annotatedTarget cco:ont00001816 ;
sssom:object_label "is output of" ;
rdfs:comment "If a Quotation is the qualified quotation related to an Entity as the quote, then that Entity is output of that Quotation. See definition of prov:qualifiedQuotation."@en .
prov:agent rdf:type owl:ObjectProperty . cco:ont00001833 rdf:type owl:ObjectProperty .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:agent ;
owl:annotatedProperty rdfs:subPropertyOf ;
owl:annotatedTarget cco:ont00001833 ;
sssom:object_label "has agent" ;
rdfs:comment "An AgentInfluence has_agent an Agent because the Agent is the agent of the AgentInfluence."@en .
# PROV-Dictionary object property mappings
prov:pairEntity rdf:type owl:ObjectProperty . cco:ont00001808 rdf:type owl:ObjectProperty .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:pairEntity ;
owl:annotatedProperty rdfs:subPropertyOf ;
owl:annotatedTarget cco:ont00001808 ;
sssom:object_label "is about" ;
rdfs:comment "A Key-Entity Pair is about an Entity because Key-Entity Pairs are Information Content Entities"@en .
prov:pairKey rdf:type owl:ObjectProperty . cco:ont00001808 rdf:type owl:ObjectProperty .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:pairKey ;
owl:annotatedProperty rdfs:subPropertyOf ;
owl:annotatedTarget cco:ont00001808 ;
sssom:object_label "is about" ;
rdfs:comment "A Key-Entity Pair is about a key because Key-Entity Pairs are Information Content Entities"@en .
# PROV-AQ object property mappings
prov:has_anchor rdf:type owl:ObjectProperty . cco:ont00001801 rdf:type owl:ObjectProperty .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:has_anchor ;
owl:annotatedProperty rdfs:subPropertyOf ;
owl:annotatedTarget cco:ont00001801 ;
sssom:object_label "is subject of" ;
rdfs:comment "A resource that has some anchor is the subject of that anchor"@en .
prov:has_provenance rdf:type owl:ObjectProperty . cco:ont00001801 rdf:type owl:ObjectProperty .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:has_provenance ;
owl:annotatedProperty rdfs:subPropertyOf ;
owl:annotatedTarget cco:ont00001801 ;
sssom:object_label "is subject of" ;
rdfs:comment "A resource that has some provenance resource is the subject of that provenance resource"@en .
# PROV-links object property mappings
prov:asInBundle rdf:type owl:ObjectProperty . cco:ont00001801 rdf:type owl:ObjectProperty .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:asInBundle ;
owl:annotatedProperty rdfs:subPropertyOf ;
owl:annotatedTarget cco:ont00001801 ;
sssom:object_label "is subject of" ;
rdfs:comment "When :x prov:mentionOf :y and :y is described in Bundle :b, and :x prov:asInBundle :b, then :x is subject of :b"@en .
# PROV object property mappings using SKOS
prov:ServiceDescription rdf:type owl:Class .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:ServiceDescription ;
owl:annotatedProperty skos:relatedMatch ;
owl:annotatedTarget cco:ont00000958 ;
sssom:object_label "Information Content Entity" ;
rdfs:comment "PROV-AQ documentation suggests that a prov:ServiceDescription is used to describe a service.
However, prov:ServiceDescription is a prov:SoftwareAgent, which is an independent continuant.
By contrast, only generically dependent continuants such as information can be about or describe something in CCO."@en .
prov:describesService rdf:type owl:ObjectProperty . cco:ont00001808 rdf:type owl:ObjectProperty .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:describesService ;
owl:annotatedProperty skos:relatedMatch ;
owl:annotatedTarget cco:ont00001808 ;
sssom:object_label "is about" ;
rdfs:comment "PROV-AQ documentation suggests that a prov:ServiceDescription is used to describe a service.
However, prov:ServiceDescription is a prov:SoftwareAgent, which is an independent continuant.
By contrast, only generically dependent continuants such as information can be about or describe something in CCO."@en .
prov:qualifiedGeneration rdf:type owl:ObjectProperty . cco:ont00001816 rdf:type owl:ObjectProperty .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:qualifiedGeneration ;
owl:annotatedProperty skos:relatedMatch ;
owl:annotatedTarget cco:ont00001816 ;
sssom:object_label "is output of" ;
rdfs:comment "Generation is a prov:InstantaneousEvent, a process boundary. However, if it were a process, and some Generation was a qualified generation of an Entity, then that Entity would be the output of that Generation."@en .
prov:qualifiedInvalidation rdf:type owl:ObjectProperty . cco:ont00001886 rdf:type owl:ObjectProperty .
[] rdf:type owl:Axiom ;
owl:annotatedSource prov:qualifiedInvalidation ;
owl:annotatedProperty skos:relatedMatch ;
owl:annotatedTarget cco:ont00001886 ;
sssom:object_label "is affected by" ;
rdfs:comment "Invalidation is a prov:InstantaneousEvent, a process boundary. However, if it were a process, and some Invalidation was a qualified invalidation of an Entity, then that Entity could be affected by that Invalidation."@en .
# PROV object property mappings using SWRL rules
:x rdf:type swrl:Variable .
:y rdf:type swrl:Variable .
# prov:dictionary(?x, ?y) ^ obo:BFO_0000015(?x) -> cco:ont00001834(?x, ?y)
[ <http://swrl.stanford.edu/ontologies/3.3/swrla.owl#isRuleEnabled> "true"^^xsd:boolean ;
rdfs:comment "If a Removal and Insertion is a process, and [used?] on another Dictionary, then that Removal and Insertion affects that Dictionary";
rdfs:label "Removal and Insertion dictionary -> affects" ;
rdf:type swrl:Imp ;
swrl:body [ rdf:type swrl:AtomList ;
rdf:first [ rdf:type swrl:IndividualPropertyAtom ;
swrl:propertyPredicate prov:dictionary ;
swrl:argument1 :x ;
swrl:argument2 :y
] ;
rdf:rest [ rdf:type swrl:AtomList ;
rdf:first [ rdf:type swrl:ClassAtom ;
swrl:classPredicate obo:BFO_0000015 ;
swrl:argument1 :x
] ;
rdf:rest rdf:nil
]
] ;
swrl:head [ rdf:type swrl:AtomList ;
rdf:first [ rdf:type swrl:IndividualPropertyAtom ;
swrl:propertyPredicate cco:ont00001834 ;
swrl:argument1 :x ;
swrl:argument2 :y
] ;
rdf:rest rdf:nil
]
] .
# prov:entity(?x, ?y) ^ obo:BFO_0000015(?x) -> cco:ont00001921(?x, ?y)
[ <http://swrl.stanford.edu/ontologies/3.3/swrla.owl#isRuleEnabled> "true"^^xsd:boolean ;
rdfs:comment "If an EntityInfluence is a process and is the EntityInfluence of an Entity, then that EntityInfluence has input that Entity as the influencer.";
rdfs:label "EntityInfluence entity -> has_input" ;
rdf:type swrl:Imp ;
swrl:body [ rdf:type swrl:AtomList ;
rdf:first [ rdf:type swrl:IndividualPropertyAtom ;
swrl:propertyPredicate prov:entity ;
swrl:argument1 :x ;
swrl:argument2 :y
] ;
rdf:rest [ rdf:type swrl:AtomList ;
rdf:first [ rdf:type swrl:ClassAtom ;
swrl:classPredicate obo:BFO_0000015 ;
swrl:argument1 :x
] ;
rdf:rest rdf:nil
]
] ;
swrl:head [ rdf:type swrl:AtomList ;
rdf:first [ rdf:type swrl:IndividualPropertyAtom ;
swrl:propertyPredicate cco:ont00001921 ;
swrl:argument1 :x ;
swrl:argument2 :y
] ;
rdf:rest rdf:nil
]
] .
# # prov:ServiceDescription(?x) ^ obo:BFO_0000101(?x, ?y) ^ cco:ont00001808(?y, ?z) -> prov:describesService(?x, ?z)
[ <http://swrl.stanford.edu/ontologies/3.3/swrla.owl#isRuleEnabled> "true"^^xsd:boolean ;
rdfs:comment "Every prov:ServiceDescription is a prov:SoftwareAgent. If a prov:ServiceDescription is a carrier of something which is about a service, then it 'describes service' that service."@en ;
rdfs:label "(some ServiceDescription) is carrier of (something) which is about (some service) -> describesService that service" ;
rdf:type swrl:Imp ;
swrl:body [ rdf:type swrl:AtomList ;
rdf:first [ rdf:type swrl:ClassAtom ;
swrl:classPredicate prov:ServiceDescription ;
swrl:argument1 :x
] ;
rdf:rest [ rdf:type swrl:AtomList ;
rdf:first [ rdf:type swrl:IndividualPropertyAtom ;
swrl:propertyPredicate obo:BFO_0000101 ;
swrl:argument1 :x ;
swrl:argument2 :y
] ;
rdf:rest [ rdf:type swrl:AtomList ;
rdf:first [ rdf:type swrl:IndividualPropertyAtom ;
swrl:propertyPredicate cco:ont00001808 ;
swrl:argument1 :y ;
swrl:argument2 :z
] ;
rdf:rest rdf:nil
]
]
] ;
swrl:head [ rdf:type swrl:AtomList ;
rdf:first [ rdf:type swrl:IndividualPropertyAtom ;
swrl:propertyPredicate prov:describesService ;
swrl:argument1 :x ;
swrl:argument2 :z
] ;
rdf:rest rdf:nil
]
] .
# cco:ont00001801(?x, ?y) ^ obo:BFO_0000084(?y, ?z) ^ prov:DirectQueryService(?z) -> prov:has_query_service(?x, ?z)
[ <http://swrl.stanford.edu/ontologies/3.3/swrla.owl#isRuleEnabled> "true"^^xsd:boolean ;
rdfs:comment "prov:has_query_service describes the relationship between a resource and a provenance query service, a prov:DirectQueryService, which is a particular, material carrier (a particular web server) of some generically dependent software. Therefore, if a resource is the subject of something (an Information Content Entity), which generically depends on a provenance query service, then that resource prov:has_query_service that provenance query service. Informally, this means the resource is represented in some provenance querying software that is running on a web server."@en ;
rdfs:label "subject of (something) that generically depends on (some ProvenanceService) -> hasProvenanceService" ;
rdf:type swrl:Imp ;
swrl:body [ rdf:type swrl:AtomList ;
rdf:first [ rdf:type swrl:IndividualPropertyAtom ;
swrl:propertyPredicate cco:ont00001801 ;
swrl:argument1 :x ;
swrl:argument2 :y
] ;
rdf:rest [ rdf:type swrl:AtomList ;
rdf:first [ rdf:type swrl:IndividualPropertyAtom ;
swrl:propertyPredicate obo:BFO_0000084 ;
swrl:argument1 :y ;
swrl:argument2 :z
] ;
rdf:rest [ rdf:type swrl:AtomList ;
rdf:first [ rdf:type swrl:ClassAtom ;
swrl:classPredicate prov:DirectQueryService ;
swrl:argument1 :z
] ;
rdf:rest rdf:nil
]
]
] ;
swrl:head [ rdf:type swrl:AtomList ;
rdf:first [ rdf:type swrl:IndividualPropertyAtom ;
swrl:propertyPredicate prov:has_query_service ;
swrl:argument1 :x ;
swrl:argument2 :z
] ;
rdf:rest rdf:nil
]
] .
# cco:ont00001801(?x, ?y) ^ obo:BFO_0000084(?y, ?z) ^ prov:SoftwareAgent(?z) -> prov:pingback(?x, ?z)
[ <http://swrl.stanford.edu/ontologies/3.3/swrla.owl#isRuleEnabled> "true"^^xsd:boolean ;
rdfs:comment "A resource that has some pingback service is the subject of something (an Information Content Entity) that generically depends on that pingback service. Here, a pingback service is usually specified as a prov:SoftwareAgent, which is a particular, material carrier of some generically dependent software."@en ;
rdfs:label "subject of (something) that generically depends on (some Software Agent) -> pingback" ;
rdf:type swrl:Imp ;
swrl:body [ rdf:type swrl:AtomList ;
rdf:first [ rdf:type swrl:IndividualPropertyAtom ;
swrl:propertyPredicate cco:ont00001801 ;
swrl:argument1 :x ;
swrl:argument2 :y
] ;
rdf:rest [ rdf:type swrl:AtomList ;
rdf:first [ rdf:type swrl:IndividualPropertyAtom ;
swrl:propertyPredicate obo:BFO_0000084 ;
swrl:argument1 :y ;
swrl:argument2 :z
] ;
rdf:rest [ rdf:type swrl:AtomList ;
rdf:first [ rdf:type swrl:ClassAtom ;
swrl:classPredicate prov:SoftwareAgent ;
swrl:argument1 :z
] ;
rdf:rest rdf:nil
]
]
] ;
swrl:head [ rdf:type swrl:AtomList ;
rdf:first [ rdf:type swrl:IndividualPropertyAtom ;
swrl:propertyPredicate prov:pingback ;
swrl:argument1 :x ;
swrl:argument2 :z
] ;
rdf:rest rdf:nil
]
] .
# prov:insertedKeyEntityPair(?x,?y) ^ obo:BFO_0000015(?x) -> cco:ont00001986(?x,?y)
[ <http://swrl.stanford.edu/ontologies/3.3/swrla.owl#isRuleEnabled> "true"^^xsd:boolean ;
rdfs:comment "If the Insertion of a Key-Entity Pair is a process, then that Insertion has output that Key-Entity Pair"@en ;
rdfs:label "Insertion insertedKeyEntityPair -> has_output" ;
rdf:type swrl:Imp ;
swrl:body [ rdf:type swrl:AtomList ;
rdf:first [ rdf:type swrl:IndividualPropertyAtom ;
swrl:propertyPredicate prov:insertedKeyEntityPair ;
swrl:argument1 :x ;
swrl:argument2 :y
] ;
rdf:rest [ rdf:type swrl:AtomList ;
rdf:first [ rdf:type swrl:ClassAtom ;
swrl:classPredicate obo:BFO_0000015 ;
swrl:argument1 :x
] ;
rdf:rest rdf:nil
]
] ;
swrl:head [ rdf:type swrl:AtomList ;
rdf:first [ rdf:type swrl:IndividualPropertyAtom ;
swrl:propertyPredicate cco:ont00001986 ;
swrl:argument1 :x ;
swrl:argument2 :y
] ;
rdf:rest rdf:nil
]
] .