HyperAgents / hmas

An ontology to describe Hypermedia Multi-Agent Systems, interactions, and organizations.
https://purl.org/hmas/
1 stars 0 forks source link

[Motivating scenario] Safety rules in a manufacturing environment : represent a norm, a context, prohibition, obligation and permission #100

Closed DrLeturc closed 2 years ago

DrLeturc commented 2 years ago

Description

In the i3S workspace, if there is a fire, then all the doors must be closed, it is forbidden to take the elevators and it is allowed to take the emergency exits. A safety guard must ascertain which norms have not been respected and ensure that they are. Thus, the objective of this motivating scenario is to represent the norms, their context of application, and be able to list norms that have not been respected.

Competency Questions

ID Question in natural language
q1 How to identify a norm ?
q2 How to check if a norm is applicable wrt a context ?
q2 How to list norms that have not been respected ?

Glossary

Recommendations

...

TBox


:Norm rdf:type owl:Class ;
           rdfs:comment "An accepted standard or a way of behaving"@en ;
           rdfs:label "Norm"@en .

:hasNormativeRequirement rdf:type owl:ObjectProperty ;
        rdfs:domain :Norm ;
                rdfs:range rdfs:Container ;
                rdfs:comment "A normative requirement is a set of state-of-affairs described by a container that MUST be verified to apply the norm. "@en ;
                rdfs:label "has normative requirement"@en .

:prohibits rdf:type owl:ObjectProperty ;
                rdfs:domain :Norm ;
                rdfs:range rdfs:Container ;
                rdfs:comment "A prohibition is associated with a norm and describes a state of affairs that shouldn't be verified when a norm is applied. "@en ;
                rdfs:label "prohibits"@en .

:permits rdf:type owl:ObjectProperty ;
                rdfs:domains :Norm ;
                rdfs:range rdfs:Container ;
                rdfs:comment "A permission is associated with a norm and describes a state of affairs which is explicitly permitted when a norm is applied."@en ;
                rdfs:label "allows"@en .

:obliges rdf:type owl:ObjectProperty ;
        rdfs:domain :Norm ;
                rdfs:range rdfs:Container ;
                rdfs:comment "An obligation is associated with a norm and describes a state of affairs that must be maintained when a norm is applied."@en ;
                rdfs:label "obliges"@en .

ABox

:allTheDoorShouldBeClosedRule a hmas:Norm .

:allTheDoorShouldBeClosedRule hmas:hasNormativeRequirement
[ a rdf:Bag ;
  rdf:li [ a sp:Ask ; sp:where ([ sp:subject :i3sLab ; sp:predicate :contains ; sp:object :smoke ] ) ].
] .

# Real world assumption : 
:i3sLab :contains  :smoke .

:mydoor a :Door .
:mydoor :isStated :opened .

:allTheDoorShouldBeClosedRule hmas:obliges 
[ a rdf:Bag ;
  rdf:li [ a sp:Ask ; sp:where ([ sp:subject ?door ; sp:predicate :isStatedAs ; sp:object :closed ] ) ] .
] .

:allTheDoorShouldBeClosedRule hmas:permits 
[ a rdf:Bag ;
  rdf:li [ a sp:Ask ; sp:where ([ sp:subject ?agent ; sp:predicate :leavesBy ; sp:object ?exit-door ] ) ] .
] .

:allTheDoorShouldBeClosedRule hmas:forbids 
[ a rdf:Bag ;
  rdf:li [ a sp:Ask ; sp:where ([ sp:subject ?agent ; sp:predicate :takes ; sp:object ?elevator ] ) ] .
] .

Related links

Questions

...

DrLeturc commented 2 years ago

Too complex motivating scenario. We need to break things down.

DrLeturc commented 2 years ago

Too complex motivating scenario. We need to break things down.