summaryrefslogtreecommitdiff
path: root/waste
diff options
context:
space:
mode:
Diffstat (limited to 'waste')
-rw-r--r--waste/core.sdm102
-rw-r--r--waste/prefixes.ttl31
-rw-r--r--waste/view.sdm56
3 files changed, 189 insertions, 0 deletions
diff --git a/waste/core.sdm b/waste/core.sdm
new file mode 100644
index 0000000..6ff284f
--- /dev/null
+++ b/waste/core.sdm
@@ -0,0 +1,102 @@
+module waste core <https://thoughtroam.abcdefghijklmnopqrstuvxyzæøå.dk/waste/> is
+
+ import [ dc skos xsd ]
+ import [ waste_view ]
+
+ entity Resident is
+ identity citizenId -> unknown
+
+ viewsWasteAs -> {unique 0..6} waste_view:Grossness
+ end
+
+ entity Household is
+ identity apartmentId -> unknown
+
+ furnishedWith -> {10} Bin
+ inhabitedBy -> {1..4} Resident
+ end
+
+ entity Host is
+ identity HostingId -> unknown
+
+ providesContainer -> Container
+ end
+
+ entity WasteCollector
+
+ entity Bin is
+ identity binId -> unknown
+
+ forTrashTypeType -> TrashType
+ binCapacity -> BinCapacity
+ binSpareCapacity -> BinSpareCapacity
+ end
+
+ enum TrashType of
+ @owl:equivalentClass = unsigned
+ Food is
+ @rdf:value = 1
+ @skos:prefLabel = "Food waste"@en, "Mad"@da
+ end
+ Paper is
+ @rdf:value = 2
+ @skos:prefLabel = "Paper"@en, "Papir"@da
+ end
+ Cardboard is
+ @rdf:value = 3
+ @skos:prefLabel = "Cardboard"@en, "Pap"@da
+ end
+ Metal is
+ @rdf:value = 4
+ @skos:prefLabel = "Metal"@en, "Metal"@da
+ end
+ Glass is
+ @rdf:value = 5
+ @skos:prefLabel = "Glass"@en, "Glas"@da
+ end
+ Plastic is
+ @rdf:value = 6
+ @skos:prefLabel = "Plastic"@en, "Plast"@da
+ end
+ Textiles is
+ @rdf:value = 7
+ @skos:prefLabel = "Textiles"@en, "Tekstil"@da
+ end
+ Cartons is
+ @rdf:value = 8
+ @skos:prefLabel = "Paper"@en, "Papir"@da
+ @skos:prefLabel = "Food and beverage cartons"@en, "Mad- og drikkekartoner"@da
+ end
+ Residual is
+ @rdf:value = 9
+ @skos:prefLabel = "Residual waste"@en, "Restaffald"@da
+ end
+ Hazardous is
+ @rdf:value = 10
+ @skos:prefLabel = "Hazardous waste"@en, "Farligt affald"@da
+ end
+ end
+
+ event BinEmptied source Bin is
+ binEmptied -> Bin
+ binEmptiedBy -> Resident
+ binEmptiedTo -> Container
+ binResets -> BinSpareCapacity
+ end
+
+ event BinFilled source Bin is
+ by -> Resident
+ end
+
+ event ContainerEmptied source Container is
+ containerEmptied -> Container
+ containerEmptiedBy -> WasteCollector
+ containerEmptiedTo -> RecyclingPlant
+ containerResets -> ContainerSpareCapacity
+ end
+
+ structure Container
+
+ structure Incinerator
+
+end
diff --git a/waste/prefixes.ttl b/waste/prefixes.ttl
new file mode 100644
index 0000000..11a3a6f
--- /dev/null
+++ b/waste/prefixes.ttl
@@ -0,0 +1,31 @@
+@base <https://thoughtroam.xn--abcdefghijklmnopqrstuvxyz-0fc0a81c.dk/rdf> .
+@prefix : <#> .
+@prefix ex: <https://thoughtroam.xn--abcdefghijklmnopqrstuvxyz-0fc0a81c.dk/rdf/ex#> .
+@prefix learning: <https://thoughtroam.xn--abcdefghijklmnopqrstuvxyz-0fc0a81c.dk/rdf/> .
+@prefix foaf: <http://xmlns.com/foaf/0.1/> .
+@prefix owl: <http://www.w3.org/2002/07/owl#> .
+@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
+@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
+@prefix sdml: <http://sdml.io/sdml-owl.ttl#> .
+@prefix dc: <http://purl.org/dc/elements/1.1/> .
+@prefix skos: <http://www.w3.org/2004/02/skos/core#> .
+@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
+
+#[] puml:options """
+# hide empty members
+# hide circle
+# left to right direction
+#""".
+
+# TODO: use FoaF ontology
+foaf:Person puml:stereotype "(A,orange)".
+:Learner puml:stereotype "(A,orange)".
+:Educator puml:stereotype "(A,orange)".
+:Objective puml:stereotype "(O,green)".
+
+#<> a puml:Inline.
+#sdml:Member a puml:Inline.
+sdml:hasMember a puml:InlineProperty.
+dc:creator a puml:InlineProperty.
+dc:license a puml:InlineProperty.
+owl:imports a puml:InlineProperty.
diff --git a/waste/view.sdm b/waste/view.sdm
new file mode 100644
index 0000000..7eb97cd
--- /dev/null
+++ b/waste/view.sdm
@@ -0,0 +1,56 @@
+module waste waste_view <https://thoughtroam.abcdefghijklmnopqrstuvxyzæøå.dk/waste/> is
+
+ ; Grossness: https://english.stackexchange.com/a/272409
+ import [ dc skos xsd ]
+
+ @skos:prefLabel = "Waste perception Ontology"@en
+ @dc:description = "Ways that waste can be subjectively perceived"@en
+ @dc:created = @xsd:date(2024-04-27)
+ @dc:creator = <https://dr.jones.dk/me/#me>
+ @dc:license = <https://spdx.org/licenses/AGPL-3.0-or-later>
+
+ enum Commodity of
+ @owl:equivalentClass = unsigned
+ Refuse is
+ @rdf:value = 1
+ end
+ Litter is
+ @rdf:value = 2
+ end
+ Waste is
+ @rdf:value = 3
+ end
+ Rubbish is
+ @rdf:value = 4
+ end
+ Trash is
+ @rdf:value = 5
+ end
+ Garbage is
+ @rdf:value = 6
+ end
+ end
+
+ enum Grossness of
+ @owl:equivalentClass = unsigned
+ Refuse is
+ @rdf:value = 1
+ end
+ Litter is
+ @rdf:value = 2
+ end
+ Waste is
+ @rdf:value = 3
+ end
+ Rubbish is
+ @rdf:value = 4
+ end
+ Trash is
+ @rdf:value = 5
+ end
+ Garbage is
+ @rdf:value = 6
+ end
+ end
+
+end