-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathocsm-profile.ttl
1159 lines (1024 loc) · 45.4 KB
/
ocsm-profile.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
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
@prefix : <https://w3id.org/ocsm/> .
@prefix ocsm: <https://w3id.org/ocsm/> .
@prefix qb: <http://purl.org/linked-data/cube#> .
@prefix dct: <http://purl.org/dc/terms/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix xml: <http://www.w3.org/XML/1998/namespace> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix dcat: <http://www.w3.org/ns/dcat#> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix prov: <http://www.w3.org/ns/prov#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
@prefix stat: <http://data.europa.eu/m8g/> .
@prefix schema: <https://schema.org/> .
@prefix af-inspire: <http://inspire.ec.europa.eu/schemas/af/3.0#> .
@prefix act-inspire: <http://inspire.ec.europa.eu/schemas/act-core/3.0#> .
@prefix foodie: <http://foodie-cloud.com/model/foodie#> .
@prefix saref4agri: <https://saref.etsi.org/saref4agri/> .
@prefix common: <http://portele.de/ont/inspire/baseInspire#> .
@prefix fiware: <https://smartdatamodels.org/> .
@prefix iso19109: <http://def.seegrid.csiro.au/isotc211/iso19109/2005/feature#> .
@prefix iso19150-2: <http://def.seegrid.csiro.au/isotc211/iso19150/-2/2012/basic#> .
@prefix iso19103: <http://def.seegrid.csiro.au/isotc211/iso19103/2005/basic#> .
@prefix geo: <http://www.opengis.net/ont/geosparql#> .
@prefix saref: <https://saref.etsi.org/core/> .
@prefix ssn: <http://www.w3.org/ns/ssn/> .
@prefix obo: <http://purl.obolibrary.org/obo/> .
@prefix fiware-agrifood: <https://smartdatamodels.org/dataModel.Agrifood/> .
@prefix om: <http://www.ontology-of-units-of-measure.org/resource/om-2/> .
@prefix org: <http://www.w3.org/ns/org#> .
@prefix ploutos: <https://www.tno.nl/agrifood/ontology/ploutos/common#> .
@prefix sosa: <http://www.w3.org/ns/sosa/> .
@prefix qudt: <http://qudt.org/schema/qudt/> .
@base <https://w3id.org/ocsm/> .
<https://w3id.org/ocsm> a owl:Ontology ;
dct:contributor [ schema:affiliation [ foaf:name "Maastricht University"
] ;
foaf:name "Jack Verhoosel"
] ,
[ schema:affiliation [ foaf:name "Maastricht University"
] ;
foaf:name "Christopher Brewster"
] ;
dct:creator [ schema:affiliation [ foaf:name "PSNC"
] ;
rdfs:seeAlso <http://orcid.org/0000-0003-4289-4922> ;
foaf:name "Raul Palma"
] ;
owl:imports <https://w3id.org/demeter/agri/agriCommon> ,
<https://w3id.org/demeter/agri/agriFeature> ,
<https://w3id.org/demeter/agri/agriCrop> ,
<https://w3id.org/demeter/agri/agriIntervention> ,
<https://w3id.org/demeter/agri/agriAlert> ,
<https://w3id.org/demeter/agri/agriProduct> ,
<https://w3id.org/demeter/agri/agriProperty> ,
<https://w3id.org/demeter/agri/agriSystem> ,
<https://w3id.org/demeter/agri/agriPest> ,
<https://w3id.org/demeter/agri/farmAnimal> ;
dct:description "The OpenAgri Common Semantic Information Model is a project specific ontology covering the needs of project pilots and components. It is based on the Agriculure Information Model (AIM) and the ploutos ontology"@en ;
dct:rights "This vocabulary is distributed under Creative Commons Attribution 4.0 License - http://creativecommons.org/licenses/by/4.0"@en ;
dct:title "OpenAgri Common Semantic Information Model (OCSM) project ontology"@en ;
rdfs:label "OpenAgri Common Semantic Information Model (OCSM) project ontology"@en ;
rdfs:comment "The OpenAgri Common Semantic Information Model (OCSM) is the common vocabulary in OpenAgri project providing the basis for semantic interoperability across pilots and components"@en ;
owl:versionInfo "1.0" ;
foaf:maker [ foaf:homepage <https://horizon-openagri.eu/> ;
foaf:name "OpenAgri project"
] .
#################################################################
# Annotation properties
#################################################################
#################################################################
# Datatypes
#################################################################
#################################################################
# Object Properties
#################################################################
## ploutos ##
ploutos:usesPesticide
rdf:type owl:ObjectProperty ;
rdfs:label "uses pesticide" ;
rdfs:range ploutos:Pesticide ;
.
ploutos:hasCost
rdf:type owl:ObjectProperty ;
rdfs:comment "Here we make the link to the Ontology of units of Measure and enable classes to have a measure with a numerical value and a unit" ;
rdfs:label "has cost" ;
rdfs:range om:Measure ;
.
### incorrect range (om:Unit), should be om:Measure
ploutos:isPricePer
rdf:type owl:ObjectProperty ;
rdfs:comment "Here we make the link to the Ontology of units of Measure and enable classes to have a measure with a numerical value and a unit" ;
rdfs:label "is price per" ;
rdfs:range om:Measure ;
.
### incorrect range (ploutos:SoilManagementOperation), should be unionof ploutos:SoilManagementOperation and CropManagementOperation
ploutos:isOperatedOn
rdf:type owl:ObjectProperty ;
rdfs:label "is operated on" ;
rdfs:domain [
rdf:type owl:Class ;
owl:unionOf (
ploutos:SoilManagementOperation
ploutos:CropManagementOperation
) ;
] ;
.
ploutos:responsibleAgent
rdf:type owl:ObjectProperty ;
rdfs:range <http://xmlns.com/foaf/0.1/Agent> ;
.
ploutos:usesAgriculturalMachinery
rdf:type owl:ObjectProperty ;
rdfs:comment "This property indicates the kind of agricultural machine that is used for a specific operation" ;
rdfs:domain ploutos:Operation ;
rdfs:label "uses agricultural machinery" ;
rdfs:range ploutos:AgriculturalMachine ;
.
ploutos:hasGreenhouseGasEmission
rdf:type owl:ObjectProperty ;
rdfs:comment "This property indicates that a farm or a machine can have an estimation of the total greenhouse gas emission during a time period of usually a year. The emission is expressed in terms of the amount of kilograms of carbon equivalent per ton of product produced by the farm." ;
rdfs:domain [
rdf:type owl:Class ;
owl:unionOf (
ploutos:Farm
ploutos:AgriculturalMachine
) ;
] ;
rdfs:label "has greenhouse gas emission" ;
rdfs:range sosa:Observation ;
.
### updated domain to include irrigationOperation
ploutos:usesIrrigationSystem
rdf:type owl:ObjectProperty ;
rdfs:domain [
rdf:type owl:Class ;
owl:unionOf (
ploutos:Parcel
ploutos:IrrigationOperation
) ;
] ;
rdfs:label "uses irrigation system" ;
rdfs:range ploutos:IrrigationSystem ;
.
ploutos:hasCycle
rdf:type owl:ObjectProperty ;
rdfs:comment "This is the property that expresses the relationship between a parcel and multiple crop cycles." ;
rdfs:label "has cycle" ;
.
ploutos:isAppliedPer
rdf:type owl:ObjectProperty ;
rdfs:label "is applied per" ;
rdfs:range om:Area ;
.
ploutos:hasAppliedAmount
rdf:type owl:ObjectProperty ;
rdfs:comment "Here we make the link to the Ontology of units of Measure and enable classes to have a measure witth a numerical value and a unit" ;
rdfs:label "has applied amount" ;
rdfs:range om:Measure ;
.
ploutos:hasWeatherObservation
rdf:type owl:ObjectProperty ;
rdfs:comment "This property indicates that an operation can have an observation of a weather phenomenon done during the execution of the operation. Such a weather phenomenon can have influence on the operation and the environment in which the operation is executed." ;
rdfs:domain ploutos:Operation ;
rdfs:label "has weather observation" ;
rdfs:range sosa:Observation ;
.
ploutos:hasTreatedArea
rdf:type owl:ObjectProperty ;
rdfs:comment "Here we make the link to the Ontology of units of Measure and enable classes to have a measure with a numerical value and a unit" ;
rdfs:label "has treated area" ;
rdfs:range om:Measure ;
.
## fixed type of property (it was datattypeproperty)
ploutos:hasCycleDuration
rdf:type owl:ObjectProperty ;
rdfs:comment "This property represents the duration of a sprinkling cycle period including the soak time, i.e., the time needed for the water to soak into the soil." ;
rdfs:domain ploutos:IrrigationOperation ;
rdfs:label "has cycle duration" ;
rdfs:range <http://www.w3.org/2006/time#Duration> ;
.
ploutos:usesFertilizer
rdf:type owl:ObjectProperty ;
rdfs:label "uses fertilizer" ;
rdfs:range ploutos:Fertilizer ;
.
ploutos:hasNutrientConcentration
rdf:type owl:ObjectProperty ;
rdfs:label "has nutrient concentration" ;
.
## ocsm ##
ocsm:hasPestThreat
rdf:type owl:ObjectProperty ;
rdfs:comment "References the Pest that threatens the subject entity" ;
rdfs:isDefinedBy <https://w3id.org/ocsm/> .
ocsm:hasYieldPrediction
rdf:type owl:ObjectProperty ;
rdfs:comment "References the Yield prediction for a crop in a parcel/plot" ;
rdfs:range ocsm:YieldPrediction ;
rdfs:isDefinedBy <https://w3id.org/ocsm/> .
ocsm:hasVinesStressIndicator
rdf:type owl:ObjectProperty ;
rdfs:comment "References the Vines Stress Indicator of a Vineyard in a parcel/plot" ;
rdfs:range ocsm:VinesStressIndicator ;
rdfs:isDefinedBy <https://w3id.org/ocsm/> .
ocsm:hasCanopyDensityProfile
rdf:type owl:ObjectProperty ;
rdfs:comment "References the Canopy Density Profile of a Vineyard in a parcel/plot" ;
rdfs:range ocsm:CanopyDensityProfile ;
rdfs:isDefinedBy <https://w3id.org/ocsm/> .
ocsm:contactPerson
rdf:type owl:ObjectProperty ;
rdfs:comment "contact Person of an entity, e.g., farm, parcel, etc." ;
rdfs:label "contactPerson" ;
rdfs:range foaf:Person ;
rdfs:isDefinedBy <https://w3id.org/ocsm/> .
#################################################################
# Data properties
#################################################################
## ploutos ##
ploutos:hasPreHarvestInterval
rdf:type owl:DatatypeProperty ;
rdfs:comment "This property indicates preharvest interval, which is the waiting time between a pesticide application and when a crop can be harvested. During the PHI, the pesticide may be broken down in the plant, or on its surface." ;
rdfs:domain ploutos:Pesticide ;
rdfs:label "has preharvest interval" ;
rdfs:range <http://www.w3.org/2006/time#Duration> ;
.
ploutos:hasCommercialName
rdf:type owl:DatatypeProperty ;
rdfs:label "has commercial name" ;
rdfs:range xsd:string ;
.
ploutos:hasActiveSubstance
rdf:type owl:DatatypeProperty ;
rdfs:comment "1: This property is used by instances of class TreatmentMaterial to indicate the active substance in the treatment material." ;
rdfs:comment "2: For now, this is modelled as a string for simplicity. In the future, this can be replaced by a Substance class of which there can be a different types from a vocabulary" ;
rdfs:domain ploutos:TreatmentMaterial ;
rdfs:label "has active substance" ;
rdfs:range xsd:string ;
.
## added ploutos:PestInterventionOperation in domain
ploutos:isTargetedTowards
rdf:type owl:DatatypeProperty ;
rdfs:comment "1: This property expresses the organism towards which a pest prevention operation or a treatment material is targeted, e.g. late blight" ;
rdfs:comment "2: For now, this is modelled for simplicity as a string that contains the name of the targeted organism. In the future, this can be replaced by a class Organisms with more properties than just the name." ;
rdfs:domain [
rdf:type owl:Class ;
owl:unionOf (
ploutos:TreatmentMaterial
ploutos:PestPreventionOperation
ploutos:PestMonitoringOperation
ploutos:PestInterventionOperation
) ;
] ;
rdfs:label "is targeted towards" ;
rdfs:range xsd:string ;
.
ploutos:actsOnCropStage
rdf:type owl:DatatypeProperty ;
rdfs:comment """This property indicates that a crop management operation acts on a crop that is in a certain crop stage. Crop stages can be:
1: germination;
2: leaf development;
3: formation of side shoots;
4: stem elongation;
5: vegetative plant parts;
6: inflorescence emergence;
7: flowering;
8: fruit development;
9: ripening;
10: senescence.""" ;
rdfs:domain ploutos:CropManagementOperation ;
rdfs:label "acts on crop stage" ;
rdfs:range xsd:string ;
.
ploutos:hasCountry
rdf:type owl:DatatypeProperty ;
rdfs:comment "1: This property expresses the country in which an object is located. An object can be a farm, a farmer's association or a processing company" ;
rdfs:comment "2: This is modelled using the existing country ontology: http://eulersharp.sourceforge.net/2003/03swap/countries" ;
rdfs:label "has country" ;
rdfs:range <http://eulersharp.sourceforge.net/2003/03swap/countries#iso3166-1-alpha-2DT> ;
.
ploutos:hasAdministrator
rdf:type owl:DatatypeProperty ;
rdfs:comment "1: This property expresses the administrator of the parcel, which can be someone else than the farmer that owns the parcel." ;
rdfs:comment "2: For now, this is modelled for simplicity as a string that contains the name of the administrator. In the future, this can be replaced by a class person with more properties than just the name." ;
rdfs:domain ploutos:Parcel ;
rdfs:label "has administrator" ;
rdfs:range xsd:string ;
.
ploutos:hasToponym
rdf:type owl:DatatypeProperty ;
rdfs:comment "This property expresses the toponym of a parcel, meaning the name of the parcel as it is used by the locals" ;
rdfs:domain ploutos:Parcel ;
rdfs:label "has toponym" ;
rdfs:range xsd:string ;
.
ploutos:inRegion
rdf:type owl:DatatypeProperty ;
rdfs:comment "1: This property expresses the region in which a parcel is located, meaning the county or province of the parcel." ;
rdfs:comment "2: For now, this is modelled as a string for simplicity. In the future, this can be replaced by a class of region with more properties than just the name." ;
rdfs:domain ploutos:Parcel ;
rdfs:label "in region" ;
rdfs:range xsd:string ;
.
ploutos:hasArea
rdf:type owl:DatatypeProperty ;
rdfs:comment "This property expresses the area of a flat object such as a parcel or field on the land" ;
rdfs:label "has area" ;
rdfs:range xsd:float ;
.
ploutos:hasSprinklerFlow
rdf:type owl:DatatypeProperty ;
rdfs:comment "this property indicates the flow of water through the sprinklers of an irrigation system in cubic meters per hour (m3/h)" ;
rdfs:domain ploutos:IrrigationSystem ;
rdfs:label "has sprinkler flow" ;
rdfs:range xsd:float ;
.
ploutos:hasNumberOfSprinklers
rdf:type owl:DatatypeProperty ;
rdfs:domain ploutos:IrrigationSystem ;
rdfs:label "has number of sprinklers" ;
rdfs:range xsd:integer ;
.
ploutos:hasNumberOfSprinklersPerPlant
rdf:type owl:DatatypeProperty ;
rdfs:domain ploutos:IrrigationSystem ;
rdfs:label "has number of sprinklers per plant" ;
rdfs:range xsd:integer ;
.
ploutos:hasIrrigationType
rdf:type owl:DatatypeProperty ;
rdfs:domain ploutos:IrrigationSystem ;
rdfs:label "has irrigation type" ;
rdfs:range xsd:string ;
.
ploutos:hasBlossomingDate
rdf:type owl:DatatypeProperty ;
rdfs:label "has blossoming date" ;
rdfs:range xsd:dateTime ;
.
ploutos:hasEndDatetime
rdf:type owl:DatatypeProperty ;
rdfs:label "has end datetime" ;
rdfs:range xsd:dateTime ;
.
ploutos:hasFirstLeavesDate
rdf:type owl:DatatypeProperty ;
rdfs:label "has first leaves date" ;
rdfs:range xsd:dateTime ;
.
ploutos:hasFruitingDate
rdf:type owl:DatatypeProperty ;
rdfs:label "has fruiting date" ;
rdfs:range xsd:dateTime ;
.
ploutos:hasStartDatetime
rdf:type owl:DatatypeProperty ;
rdfs:label "has start datetime" ;
rdfs:range xsd:dateTime ;
.
ploutos:hasSeedRate
rdf:type owl:DatatypeProperty ;
rdfs:comment "This property represents the quantity of seed of a crop that is required per hectare of land to sow for optimum crop production" ;
rdfs:domain obo:PO_0000003 ;
rdfs:label "has seed rate" ;
rdfs:range xsd:integer ;
.
ploutos:isMeantFor
rdf:type owl:DatatypeProperty ;
rdfs:comment "1: This property expresses the porpuse for which a product that is cultivated is meant, e.g. industrial processing or private consumption" ;
rdfs:comment "2: For now, this is modelled for simplicity as a string that contains the purpose of the product. In the future, this can be replaced by a class ProductPurpose with more properties than just the name." ;
rdfs:domain ploutos:Product ;
rdfs:label "is meant for" ;
rdfs:range xsd:string ;
.
ploutos:isJustifiedBecause
rdf:type owl:DatatypeProperty ;
rdfs:comment "This property indicates the reason why a chemical control operation and the use of a certain pesticide is justified" ;
rdfs:domain ploutos:ChemicalControlOperation ;
rdfs:label "is justified because" ;
rdfs:range xsd:string ;
.
ploutos:hasApplicationMethod
rdf:type owl:DatatypeProperty ;
rdfs:comment "this property defines the type of methods that can be used for crop fertilization, e.g., broadcasting, foliar, placement, and fertigation." ;
rdfs:label "has application method" ;
rdfs:range xsd:string ;
.
ploutos:hasFertilizationType
rdf:type owl:DatatypeProperty ;
rdfs:comment "this property defines the type of fertilization that is used, e.g., pre-planting." ;
rdfs:domain ploutos:FertilizationOperation ;
rdfs:label "has fertilization type" ;
rdfs:range xsd:string ;
.
## ocsm ##
ocsm:cultivationSeason a owl:DatatypeProperty ;
rdfs:label "cultivationSeason"@en ;
rdfs:comment "cultivation season" ;
rdfs:range xsd:string ;
rdfs:isDefinedBy <https://w3id.org/ocsm/> .
ocsm:municipality a owl:DatatypeProperty ;
rdfs:label "municipality"@en ;
rdfs:comment "municipality" ;
rdfs:range xsd:string ;
rdfs:isDefinedBy <https://w3id.org/ocsm/> .
ocsm:community a owl:DatatypeProperty ;
rdfs:label "community"@en ;
rdfs:comment "community" ;
rdfs:range xsd:string ;
rdfs:isDefinedBy <https://w3id.org/ocsm/> .
ocsm:isNitroAarea a owl:DatatypeProperty ;
rdfs:label "isNitroAarea"@en ;
rdfs:comment "isNitroAarea" ;
rdfs:range xsd:boolean ;
rdfs:isDefinedBy <https://w3id.org/ocsm/> .
ocsm:isNatura2000Area a owl:DatatypeProperty ;
rdfs:label "isNatura2000Area"@en ;
rdfs:comment "isNatura2000Area" ;
rdfs:range xsd:boolean ;
rdfs:isDefinedBy <https://w3id.org/ocsm/> .
ocsm:isPDOPGIArea a owl:DatatypeProperty ;
rdfs:label "isPDOPGIArea"@en ;
rdfs:comment "isPDOPGIArea" ;
rdfs:range xsd:boolean ;
rdfs:isDefinedBy <https://w3id.org/ocsm/> .
ocsm:isIrrigated a owl:DatatypeProperty ;
rdfs:label "isIrrigated"@en ;
rdfs:comment "isIrrigated" ;
rdfs:range xsd:boolean ;
rdfs:isDefinedBy <https://w3id.org/ocsm/> .
ocsm:isCultivatedInLevels a owl:DatatypeProperty ;
rdfs:label "isCultivatedInLevels"@en ;
rdfs:comment "isCultivatedInLevels" ;
rdfs:range xsd:boolean ;
rdfs:isDefinedBy <https://w3id.org/ocsm/> .
ocsm:isGroundSlope a owl:DatatypeProperty ;
rdfs:label "isGroundSlope"@en ;
rdfs:comment "isGroundSlope" ;
rdfs:range xsd:boolean ;
rdfs:isDefinedBy <https://w3id.org/ocsm/> .
ocsm:hasIrrigationFlow a owl:DatatypeProperty ;
rdfs:label "hasIrrigationFlow"@en ;
rdfs:comment "hasIrrigationFlow" ;
rdfs:range xsd:float ;
rdfs:isDefinedBy <https://w3id.org/ocsm/> .
#################################################################
# Classes
#################################################################
## saref4agri ##
saref4agri:Yield a owl:Class ;
rdfs:subClassOf saref:Property, sosa:ObservedProperty ;
rdfs:comment "The produced amount of food for animals or of agricultural products."@en ;
rdfs:label "Yield"@en .
## ploutos ##
ploutos:Pesticide
rdf:type owl:Class ;
rdfs:comment "This class represents the set of pesticides. A pesticide is a substance that is meant to control pests." ;
rdfs:subClassOf ploutos:TreatmentMaterial ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:minQualifiedCardinality "0"^^xsd:nonNegativeInteger ;
owl:onDataRange xsd:time ;
owl:onProperty ploutos:hasPreHarvestInterval ;
] ;
.
ploutos:TreatmentMaterial
rdf:type owl:Class ;
rdfs:comment "This class represents all material or substances that can be used on a parcel, i.e. in the soil or on the crop, e.g. fertilizers, pesticides, but also water" ;
rdfs:label "Treatment material" ;
rdfs:subClassOf owl:Thing ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:cardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty ploutos:hasCommercialName ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onClass om:Measure ;
owl:onProperty ploutos:hasCost ;
owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onClass om:Unit ;
owl:onProperty ploutos:isPricePer ;
owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onProperty ploutos:hasActiveSubstance ;
owl:someValuesFrom xsd:string ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onProperty ploutos:isTargetedTowards ;
owl:someValuesFrom xsd:string ;
] ;
.
ploutos:PestPreventionOperation
rdf:type owl:Class ;
rdfs:comment "This class represents the set of operations to protect crop against any kind of pest or disease by trying to prevent pest attacks. It is a specific CropProtectionOperation." ;
rdfs:label "Pest prevention operation" ;
rdfs:subClassOf ploutos:CropProtectionOperation ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onProperty ploutos:isTargetedTowards ;
owl:someValuesFrom xsd:string ;
] ;
.
ploutos:PestMonitoringOperation
rdf:type owl:Class ;
rdfs:comment "This class represents the set of operations to protect crop against any kind of pest or disease by trying to monitor the presence of possible pests. It is a specific CropProtectionOperation." ;
rdfs:label "Pest monitoring operation" ;
rdfs:subClassOf ploutos:CropProtectionOperation ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onProperty ploutos:isTargetedTowards ;
owl:someValuesFrom xsd:string ;
] ;
.
ploutos:CropProtectionOperation
rdf:type owl:Class ;
rdfs:comment "This class represents the set of operations to protect crop against any kind of pest or disease. It is a specific CropManagementOperation and is meant for pest prevention, pest monitoring and pest intervention." ;
rdfs:label "Crop protection operation" ;
rdfs:subClassOf ploutos:CropManagementOperation ;
.
ploutos:CropManagementOperation
rdf:type owl:Class ;
rdfs:comment "1: This is the class of crop management operations in which the crop/plant is being treated to enhance the performance, e.g. a crop protection operation or pruning operation" ;
rdfs:comment """2: The actsOnCropStage property indicates that the crop management operation acts on a crop that is in a certain crop stage. Crop stages can be:
1: germination;
2: leaf development;
3: formation of side shoots;
4: stem elongation;
5: vegetative plant parts;
6: inflorescence emergence;
7: flowering;
8: fruit development;
9: ripening;
10: senescence.""" ;
rdfs:subClassOf ploutos:Operation ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onProperty ploutos:actsOnCropStage ;
owl:someValuesFrom xsd:string ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onProperty ploutos:isOperatedOn ;
owl:someValuesFrom ploutos:Parcel ;
] ;
.
ploutos:Operation
rdf:type owl:Class ;
rdfs:comment "An operation is a set of actions on an object performed by a responsible agent during a specific time interval" ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
owl:onClass <http://xmlns.com/foaf/0.1/Agent> ;
owl:onProperty ploutos:responsibleAgent ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:minQualifiedCardinality "0"^^xsd:nonNegativeInteger ;
owl:onClass ploutos:AgriculturalMachine ;
owl:onProperty ploutos:usesAgriculturalMachinery ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onDataRange xsd:dateTime ;
owl:onProperty ploutos:hasEndDatetime ;
owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onDataRange xsd:dateTime ;
owl:onProperty ploutos:hasStartDatetime ;
owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onProperty ploutos:hasWeatherObservation ;
owl:someValuesFrom sosa:Observation ;
] ;
.
ploutos:AgriculturalMachine
rdf:type owl:Class ;
rdfs:comment "This class represents the set of all agricultural machines that are used on the farm" ;
rdfs:label "Agricultural machine" ;
rdfs:subClassOf owl:Thing ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onProperty ploutos:hasGreenhouseGasEmission ;
owl:someValuesFrom sosa:Observation ;
] ;
.
ploutos:Farm
rdf:type owl:Class ;
rdfs:subClassOf org:Organization ;
rdfs:subClassOf saref4agri:Farm ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onDataRange <http://eulersharp.sourceforge.net/2003/03swap/countries#iso3166-1-alpha-2DT> ;
owl:onProperty ploutos:hasCountry ;
owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onProperty ploutos:hasGreenhouseGasEmission ;
owl:someValuesFrom sosa:Observation ;
] ;
.
ploutos:Parcel
rdf:type owl:Class ;
rdfs:comment "1: This class represents the set of parcels. A parcel is a plot of land, usually a division of a larger area." ;
rdfs:comment "2: A parcel has various attributes, such as an area, a region, a toponym and an administrator. In addition, the crop that is being cultivated on the parcel has various dates, such as first leaves date, blossoming date and fruiting date. Last but not least, various systems can be used on the parcel for cultivation, such as an irrigation system." ;
rdfs:subClassOf obo:ENVO_00000114 ;
rdfs:subClassOf saref4agri:Parcel ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:cardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty ploutos:hasAdministrator ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:cardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty ploutos:hasToponym ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:cardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty ploutos:inRegion ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
owl:onClass ploutos:IrrigationSystem ;
owl:onProperty ploutos:usesIrrigationSystem ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onDataRange xsd:float ;
owl:onProperty ploutos:hasArea ;
owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onProperty ploutos:hasCycle ;
owl:someValuesFrom ploutos:CropCycle ;
] ;
.
ploutos:IrrigationSystem
rdf:type owl:Class ;
rdfs:comment "This class represents all kind of irrigation systems that are used to irrigate the soil of a parcel on a farm." ;
rdfs:label "Irrigation system" ;
rdfs:subClassOf ploutos:System ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
owl:onDataRange xsd:float ;
owl:onProperty ploutos:hasSprinklerFlow ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
owl:onDataRange xsd:integer ;
owl:onProperty ploutos:hasNumberOfSprinklers ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
owl:onDataRange xsd:integer ;
owl:onProperty ploutos:hasNumberOfSprinklersPerPlant ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onDataRange xsd:string ;
owl:onProperty ploutos:hasIrrigationType ;
owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
] ;
.
ploutos:CropCycle
rdf:type owl:Class ;
rdfs:comment "1: This class represents the set of crop cycles. A crop cycle is a single cycle of cultivating a crop from sowing till harvesting. For a multiyear plant or crop, a crop cycle is the period between first leaving until harvesting." ;
rdfs:comment "2: A crop cycle has various attributes, such as the parcel on which the crop is being cultivated as well as various dates, such as first leaves date, blossoming date and fruiting date." ;
rdfs:comment "3: A ploutos:Crop is equivalent to the class obo:PO_0000003, which contains all or most plant varieties." ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:cardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty ploutos:hasBlossomingDate ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:cardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty ploutos:hasEndDatetime ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:cardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty ploutos:hasFirstLeavesDate ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:cardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty ploutos:hasFruitingDate ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:cardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty ploutos:hasStartDatetime ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:cardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty ploutos:hasToponym ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onClass ploutos:Crop ;
owl:onProperty saref4agri:contains ;
owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
] ;
.
ploutos:Crop
rdf:type owl:Class ;
rdfs:comment "This class represents all kinds of cultivated plants that can be grown on a parcel of a farm or more generically on any type of substrate in any kind of environment. It is thus a superclass of a wide variety of different species." ;
rdfs:comment "We have defined this class to be equivalent to obo:PO_0000003 which is the concept of a \"whole plant\", in the PO classification, which is reused by the FOODON ontology. Thereby, the ploutos:Crop concept automatically inherits all the subclasses defined in the FOODON ontology under PO_0000003." ;
rdfs:subClassOf saref4agri:Crop ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:cardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty ploutos:hasSeedRate ;
] ;
owl:equivalentClass obo:PO_0000003 ;
.
ploutos:SoilManagementOperation
rdf:type owl:Class ;
rdfs:comment "1: This is the class of soil management operations in which certain material is applied to the soil an a parcel to enhance the performance, e.g. a fertilization operation, a spraying operation or an irrigation operation" ;
rdfs:comment "2: Wikipedia says: soil management is the application of operations, practices, and treatments to protect soil and enhance its performance (such as soil fertility or soil mechanics). It includes soil conservation, soil amendment, and optimal soil health. See: https://en.wikipedia.org/wiki/Soil_management" ;
rdfs:subClassOf ploutos:Operation ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
owl:onClass om:Area ;
owl:onProperty ploutos:isAppliedPer ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onClass om:Measure ;
owl:onProperty ploutos:hasAppliedAmount ;
owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onProperty ploutos:isOperatedOn ;
owl:someValuesFrom ploutos:Parcel ;
] ;
.
ploutos:System
rdf:type owl:Class ;
rdfs:comment "This class represents all kinds of systems that are used in the agrifood supply chain" ;
rdfs:label "System" ;
rdfs:subClassOf owl:Thing ;
.
ploutos:PestInterventionOperation
rdf:type owl:Class ;
rdfs:comment "This class represents the set of operations to protect crop against any kind of pest or disease by intervening current pest attacks with pest control methods. It is a specific CropProtectionOperation." ;
rdfs:label "Pest intervention operation" ;
rdfs:subClassOf ploutos:CropProtectionOperation ;
.
ploutos:ChemicalControlOperation
rdf:type owl:Class ;
rdfs:comment "This class represents the set of operations to protect crop against any kind of pest or disease. It is a specific PestInterventionOperation and uses a specific pesticide with a treatment material is meant for pest prevention, pest monitoring and pest intervention." ;
rdfs:label "Crop protection operation" ;
rdfs:subClassOf ploutos:PestInterventionOperation ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
owl:onClass om:Area ;
owl:onProperty ploutos:isAppliedPer ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onClass om:Measure ;
owl:onProperty ploutos:hasAppliedAmount ;
owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onClass om:Measure ;
owl:onProperty ploutos:hasTreatedArea ;
owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onDataRange xsd:string ;
owl:onProperty ploutos:isJustifiedBecause ;
owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onProperty ploutos:usesPesticide ;
owl:someValuesFrom ploutos:Pesticide ;
] ;
.
ploutos:IrrigationOperation
rdf:type owl:Class ;
rdfs:comment "This class represents the set of operations to irrigate the soil of a parcel of a farm with water. It is a specific SoilManagementOperation." ;
rdfs:label "Irrigation operation" ;
rdfs:subClassOf ploutos:SoilManagementOperation ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:cardinality "1"^^xsd:nonNegativeInteger ;
owl:onProperty ploutos:hasCycleDuration ;
] ;
.
ploutos:FertilizationOperation
rdf:type owl:Class ;
rdfs:comment "This class represents the set of operations to fertilize the soil on the land of a farm. It is a specific SoilManagementOperation and uses a fertilizer or a specific type and applies this on an area that is treated. A fertilizer is a chemical or natural substance added to soil or land to increase its fertility." ;
rdfs:label "Fertilization operation" ;
rdfs:subClassOf ploutos:SoilManagementOperation ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onClass om:Measure ;
owl:onProperty ploutos:hasTreatedArea ;
owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onDataRange xsd:string ;
owl:onProperty ploutos:hasApplicationMethod ;
owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onDataRange xsd:string ;
owl:onProperty ploutos:hasFertilizationType ;
owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
] ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onProperty ploutos:usesFertilizer ;
owl:someValuesFrom ploutos:Fertilizer ;
] ;
.
ploutos:Fertilizer
rdf:type owl:Class ;
rdfs:comment "1: This represents the class of fertilizers that are used in fertilization operations to give nutrients to soil, water or another substrate" ;
rdfs:comment "2: The property hasNutrientConcentration relates to an om:Percentage that has a value and a \"phenomenon\" that indicates for which nutrient the percentage holds" ;
rdfs:label "fertilizer" ;
rdfs:subClassOf ploutos:TreatmentMaterial ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onProperty ploutos:hasNutrientConcentration ;
owl:someValuesFrom om:Percentage ;
] ;
.
ploutos:Product
rdf:type owl:Class ;
rdfs:comment "Instances of this class are product items, such as a can with beans, or a box with bananas, a bin with peaches or a lot with peaches" ;
rdfs:subClassOf [
rdf:type owl:Restriction ;
owl:onDataRange xsd:string ;
owl:onProperty ploutos:isMeantFor ;
owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
] ;
.
obo:PO_0000003 a owl:Class ;
rdfs:label "whole plant" ;
.
obo:ENVO_00000114 a owl:Class ;
rdfs:label "agricultural field" ;
.
om:Area a owl:Class ;
rdfs:label "area" ;
rdfs:subClassOf om:Quantity ;
.
om:Percentage a owl:Class ;
rdfs:label "Percentage" ;
rdfs:subClassOf om:Ratio ;
.
om:Ratio a owl:Class ;
rdfs:label "Ratio" ;
rdfs:subClassOf om:Quantity ;
.
## ocsm ##
ocsm:Vineyard a owl:Class ;
rdfs:label "Vineyard" ;
rdfs:comment "Vineyard type of plot" ;
rdfs:isDefinedBy <https://w3id.org/ocsm/> .
ocsm:YieldPrediction a owl:Class ;
rdfs:label "YieldPrediction" ;
rdfs:comment "Yield Prediction" ;
rdfs:isDefinedBy <https://w3id.org/ocsm/> .