From 50a0722f9a8ce22a5ee0e71df9d5ef83d8d189b7 Mon Sep 17 00:00:00 2001 From: danaivach Date: Wed, 14 Dec 2022 13:49:20 +0100 Subject: [PATCH 01/83] feat(manu) add behavior spec discovery initial commit --- .../README.md | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 domains/manufacturing-environments/discover-behavior-specifications/README.md diff --git a/domains/manufacturing-environments/discover-behavior-specifications/README.md b/domains/manufacturing-environments/discover-behavior-specifications/README.md new file mode 100644 index 00000000..629ace61 --- /dev/null +++ b/domains/manufacturing-environments/discover-behavior-specifications/README.md @@ -0,0 +1,30 @@ +# Discover Behavior Specifications + +Feature: Discovery of Behavior Specifications + + +## Description +An agent is situated in a manufacturing workspace that contains a robotic arm artifact. The agent has discovered a signifier in the profile of the artifact that reveals information about the affordance resetable, which affords the agent to reset the state of the robotic arm. + +The agent has the objective of resetting the robotic arm based on the discovered signifier. The signifier reveals information about the specification of a behavior — here, the specification of an action that the agent can execute to exploit the affordance resetable. The specification specifies a form that implements the action. + +The agent provides the expected input and uses the form in order to reset the robotic arm. + +## Competency Questions + +| ID | Question in Natural Language | Example | +|----|------------------------------|---------| +| q1 | What are the action specifications that signifiers of a given resource profile signify? | | +| q2 | What is the action specification that that a given signifier signifies? | | +| q3 | What are the forms that implement a given specified action? | | +| q4 | What are the forms that implement a given specified action? | | + +## Glossary +- Behavior (https://purl.org/hmas/interaction#Behavior): A course of action (i.e., an ordered process, a succession of actions, a pattern of activity) that is performed by an agent when exploiting an affordance. (e.g., the execution of an AgentSpeak plan, or a behavior as defined in subsumption architecture, or a JADE behavior). +- ActionExecution (https://purl.org/hmas/interaction#ActionExecution): A behavior that is the execution of exactly one action. +- BehavioralSpecification (https://purl.org/hmas/interaction#BehavioralSpecification): A specification that specifies a behavior. +- ActionSpecification (https://purl.org/hmas/interaction#ActionSpecification): A specification that specifies how to execute an action. +- signifies (https://purl.org/hmas/interaction#signifies): A relation between a behavior and a signifier that signifies it. +- hasForm (https://purl.org/hmas/interaction#hasForm): A relation between an action specification and a form (https://www.w3.org/2019/wot/hypermedia#Form) that describes an implementation of the specified action. +- hasAction (https://purl.org/hmas/interaction#hasAction): A relation between a behavioral specification and the specification of an action whose execution is part of the specified behavior. +- Signifier (https://purl.org/hmas/core#Signifier): see [_Other scenario TBA_](). From 99d7f2011805b5db3e80660c250aa2506508d0c4 Mon Sep 17 00:00:00 2001 From: danaivach Date: Wed, 14 Dec 2022 13:50:35 +0100 Subject: [PATCH 02/83] refactor(discover-behavior-specs) remove ontology iris --- .../discover-behavior-specifications/README.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/README.md b/domains/manufacturing-environments/discover-behavior-specifications/README.md index 629ace61..903fb24d 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/README.md +++ b/domains/manufacturing-environments/discover-behavior-specifications/README.md @@ -20,11 +20,11 @@ The agent provides the expected input and uses the form in order to reset the ro | q4 | What are the forms that implement a given specified action? | | ## Glossary -- Behavior (https://purl.org/hmas/interaction#Behavior): A course of action (i.e., an ordered process, a succession of actions, a pattern of activity) that is performed by an agent when exploiting an affordance. (e.g., the execution of an AgentSpeak plan, or a behavior as defined in subsumption architecture, or a JADE behavior). -- ActionExecution (https://purl.org/hmas/interaction#ActionExecution): A behavior that is the execution of exactly one action. -- BehavioralSpecification (https://purl.org/hmas/interaction#BehavioralSpecification): A specification that specifies a behavior. -- ActionSpecification (https://purl.org/hmas/interaction#ActionSpecification): A specification that specifies how to execute an action. -- signifies (https://purl.org/hmas/interaction#signifies): A relation between a behavior and a signifier that signifies it. -- hasForm (https://purl.org/hmas/interaction#hasForm): A relation between an action specification and a form (https://www.w3.org/2019/wot/hypermedia#Form) that describes an implementation of the specified action. -- hasAction (https://purl.org/hmas/interaction#hasAction): A relation between a behavioral specification and the specification of an action whose execution is part of the specified behavior. -- Signifier (https://purl.org/hmas/core#Signifier): see [_Other scenario TBA_](). +- Behavior: A course of action (i.e., an ordered process, a succession of actions, a pattern of activity) that is performed by an agent when exploiting an affordance. (e.g., the execution of an AgentSpeak plan, or a behavior as defined in subsumption architecture, or a JADE behavior). +- ActionExecution: A behavior that is the execution of exactly one action. +- BehavioralSpecification: A specification that specifies a behavior. +- ActionSpecification: A specification that specifies how to execute an action. +- signifies: A relation between a behavior and a signifier that signifies it. +- hasForm: A relation between an action specification and a form (https://www.w3.org/2019/wot/hypermedia#Form) that describes an implementation of the specified action. +- hasAction: A relation between a behavioral specification and the specification of an action whose execution is part of the specified behavior. +- Signifier: see [_Other scenario TBA_](). From a0f3ad454fef9cb72ff508761ef28e49a618fd21 Mon Sep 17 00:00:00 2001 From: danaivach Date: Wed, 14 Dec 2022 14:45:21 +0100 Subject: [PATCH 03/83] refactor(discover-behavior-specs) update glossary Replaced: Behavior -> Behavior Execution Behavioral Specification -> Behavior Specification has Form -> Form signifies -> Signification of Behaviors Updated: Behavior Execution, Action Execution, Behavior Specification, Action Specification, Form, Input, Schema Removed: has Action --- .../discover-behavior-specifications/README.md | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/README.md b/domains/manufacturing-environments/discover-behavior-specifications/README.md index 903fb24d..f2ad79b0 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/README.md +++ b/domains/manufacturing-environments/discover-behavior-specifications/README.md @@ -20,11 +20,10 @@ The agent provides the expected input and uses the form in order to reset the ro | q4 | What are the forms that implement a given specified action? | | ## Glossary -- Behavior: A course of action (i.e., an ordered process, a succession of actions, a pattern of activity) that is performed by an agent when exploiting an affordance. (e.g., the execution of an AgentSpeak plan, or a behavior as defined in subsumption architecture, or a JADE behavior). -- ActionExecution: A behavior that is the execution of exactly one action. -- BehavioralSpecification: A specification that specifies a behavior. -- ActionSpecification: A specification that specifies how to execute an action. -- signifies: A relation between a behavior and a signifier that signifies it. -- hasForm: A relation between an action specification and a form (https://www.w3.org/2019/wot/hypermedia#Form) that describes an implementation of the specified action. -- hasAction: A relation between a behavioral specification and the specification of an action whose execution is part of the specified behavior. -- Signifier: see [_Other scenario TBA_](). +- **Behavior Execution**: A course of action performed by an agent upon exploiting a behavior possibility. +- **Action Execution**: A behavior execution that is the execution of exactly one context-free action, e.g. of a context-free HTTP request. +- **Behavior Specification**: A specification that specifies a behavior, for example, as procedural knowledge (e.g., AgentSpeak plan) or code-on-demand (e.g., a script that implements a behavior). +- **Action Specification**: A specification that describes an action (e.g., through preconditions and postconditions) and how to execute the action, e.g. as a context-free request through a form. +- **Form**: A hypermedia control that describes how to execute an action as defined here: https://www.w3.org/2019/wot/hypermedia#Form. +- **Input**: An input of an action, which may include variables. The input may be used, for instance, in an action specification or in the representation of an action execution. +- **Schema**: The schema of an input. For example, the schema may be a JSON data schema (https://www.w3.org/2019/wot/json-schema#DataSchema) or a SHACL shape (http://www.w3.org/ns/shacl#Shape). From 88f2a4f9b6b12e567a88edd6766c89cb694f3230 Mon Sep 17 00:00:00 2001 From: danaivach Date: Wed, 14 Dec 2022 15:53:20 +0100 Subject: [PATCH 04/83] refactor(discover-behavior-specs) desc and questions update scenario description and competency questions to cover discovery of behavior specifications and behavior parametrization --- .../README.md | 21 +++++++++++-------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/README.md b/domains/manufacturing-environments/discover-behavior-specifications/README.md index f2ad79b0..fa33a671 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/README.md +++ b/domains/manufacturing-environments/discover-behavior-specifications/README.md @@ -4,25 +4,28 @@ Feature: Discovery of Behavior Specifications ## Description -An agent is situated in a manufacturing workspace that contains a robotic arm artifact. The agent has discovered a signifier in the profile of the artifact that reveals information about the affordance resetable, which affords the agent to reset the state of the robotic arm. +An agent A is situated in a manufacturing workspace that contains a robotic arm artifact. The resource profile of the robotic arm artifact exposes a signifier that reveals information about a behavior possibility ⁠—⁠ it signifies a specification describing how to move the gripper of the robotic arm artifact. Specifically, the specification describes the behavior of moving the gripper as an action that: +- is of type [onto:SetGripper](https://ci.mines-stetienne.fr/kg/ontology#SetGripper), +- expects an input of a schema [onto:GripperJoint](https://ci.mines-stetienne.fr/kg/ontology#GripperJoint), and +- can be executed based on a set of hypermedia controls. The set of hypermedia controls contains two forms ⁠—⁠ a form describing an HTTP request, and a form describing a CoAP request. -The agent has the objective of resetting the robotic arm based on the discovered signifier. The signifier reveals information about the specification of a behavior — here, the specification of an action that the agent can execute to exploit the affordance resetable. The specification specifies a form that implements the action. - -The agent provides the expected input and uses the form in order to reset the robotic arm. +Agent A has discovered the exposed signifier and has the objective of behaving based on the signified specification. For this, agent A provides an input of the schema [onto:GripperJoint](https://ci.mines-stetienne.fr/kg/ontology#GripperJoint), and sends an HTTP request based on one of the hypermedia controls. ## Competency Questions | ID | Question in Natural Language | Example | |----|------------------------------|---------| -| q1 | What are the action specifications that signifiers of a given resource profile signify? | | -| q2 | What is the action specification that that a given signifier signifies? | | -| q3 | What are the forms that implement a given specified action? | | -| q4 | What are the forms that implement a given specified action? | | +| q1 | What are the behavior specifications that a given signifier signifies? | | +| q2 | What are the action specifications that a given signifier signifies? | | +| q3 | What are the forms that describe how to execute a given specified action? | | +| q4 | What is the input that is expected by a given specified action? | | +| q5 | What are the schemas of a given expected input? | | + ## Glossary - **Behavior Execution**: A course of action performed by an agent upon exploiting a behavior possibility. - **Action Execution**: A behavior execution that is the execution of exactly one context-free action, e.g. of a context-free HTTP request. -- **Behavior Specification**: A specification that specifies a behavior, for example, as procedural knowledge (e.g., AgentSpeak plan) or code-on-demand (e.g., a script that implements a behavior). +- **Behavior Specification**: A specification that describes a behavior, for example, as procedural knowledge (e.g., AgentSpeak plan) or code-on-demand (e.g., a script that implements a behavior). - **Action Specification**: A specification that describes an action (e.g., through preconditions and postconditions) and how to execute the action, e.g. as a context-free request through a form. - **Form**: A hypermedia control that describes how to execute an action as defined here: https://www.w3.org/2019/wot/hypermedia#Form. - **Input**: An input of an action, which may include variables. The input may be used, for instance, in an action specification or in the representation of an action execution. From 859a8ba75da5fed9eaba9b64b3defd2e9cc1e4af Mon Sep 17 00:00:00 2001 From: danaivach Date: Wed, 14 Dec 2022 15:57:36 +0100 Subject: [PATCH 05/83] feat(discover-behavior-specs) add behavior signification --- .../discover-behavior-specifications/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/README.md b/domains/manufacturing-environments/discover-behavior-specifications/README.md index fa33a671..197cae56 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/README.md +++ b/domains/manufacturing-environments/discover-behavior-specifications/README.md @@ -30,3 +30,4 @@ Agent A has discovered the exposed signifier and has the objective of behaving b - **Form**: A hypermedia control that describes how to execute an action as defined here: https://www.w3.org/2019/wot/hypermedia#Form. - **Input**: An input of an action, which may include variables. The input may be used, for instance, in an action specification or in the representation of an action execution. - **Schema**: The schema of an input. For example, the schema may be a JSON data schema (https://www.w3.org/2019/wot/json-schema#DataSchema) or a SHACL shape (http://www.w3.org/ns/shacl#Shape). +- **Signification of Behavior**: The act of revealing information about how to exploit a behavior possibility. From 066064e2c65e70851d0c9541affad1ded3874422 Mon Sep 17 00:00:00 2001 From: danaivach Date: Wed, 14 Dec 2022 15:58:47 +0100 Subject: [PATCH 06/83] feat(discover-behavior-specs) signification recomm --- .../discover-behavior-specifications/README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/README.md b/domains/manufacturing-environments/discover-behavior-specifications/README.md index 197cae56..08deb9c6 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/README.md +++ b/domains/manufacturing-environments/discover-behavior-specifications/README.md @@ -31,3 +31,7 @@ Agent A has discovered the exposed signifier and has the objective of behaving b - **Input**: An input of an action, which may include variables. The input may be used, for instance, in an action specification or in the representation of an action execution. - **Schema**: The schema of an input. For example, the schema may be a JSON data schema (https://www.w3.org/2019/wot/json-schema#DataSchema) or a SHACL shape (http://www.w3.org/ns/shacl#Shape). - **Signification of Behavior**: The act of revealing information about how to exploit a behavior possibility. + + +## Recommendations +A signifier can signify a behavior specification for revealing information about how to exploit the relevant behavior possibility. From 392a60299c90a6db22a24cef6c685e9a8d0d2135 Mon Sep 17 00:00:00 2001 From: danaivach Date: Wed, 14 Dec 2022 16:08:53 +0100 Subject: [PATCH 07/83] feat(discover-behavior-specs) behaviors vs actions recomm --- .../discover-behavior-specifications/README.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/README.md b/domains/manufacturing-environments/discover-behavior-specifications/README.md index 08deb9c6..54cae120 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/README.md +++ b/domains/manufacturing-environments/discover-behavior-specifications/README.md @@ -34,4 +34,8 @@ Agent A has discovered the exposed signifier and has the objective of behaving b ## Recommendations -A signifier can signify a behavior specification for revealing information about how to exploit the relevant behavior possibility. +- A signifier can signify a behavior specification for revealing information about how to exploit the relevant behavior possibility. +- This scenario focuses on the signification of a behavior specification that is the specification of exactly one action. However, a signifier may concern a behavior that is more generic than a single action execution. In the latter case, implementation details (e.g. an [hctl:Form](https://www.w3.org/2019/wot/hypermedia#Form)) will remain attached directly to the actions of the specified behavior, and not the behavior specification itself. The above aim to the following: + - To enable the action-oriented design of hypermedia by keeping the implementation details attached to a specified action, considering that this is a simple design style, and a style easily relatable to how signifiers are used on the Web. + - To preserve the freedom of designers to create signifiers that concern behaviors with higher-level semantics on top of actions. + - To enable extension points for defining behaviors based on how human agents reason about action and perform behaviors when exploiting behavior possibilities. From ec34d06aa11c26ef6e31541d1a8dccd16ab27b85 Mon Sep 17 00:00:00 2001 From: danaivach Date: Wed, 14 Dec 2022 16:48:33 +0100 Subject: [PATCH 08/83] feat(discover-behavior-specs) add question examples --- .../discover-behavior-specifications/README.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/README.md b/domains/manufacturing-environments/discover-behavior-specifications/README.md index 54cae120..140c1475 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/README.md +++ b/domains/manufacturing-environments/discover-behavior-specifications/README.md @@ -4,9 +4,9 @@ Feature: Discovery of Behavior Specifications ## Description -An agent A is situated in a manufacturing workspace that contains a robotic arm artifact. The resource profile of the robotic arm artifact exposes a signifier that reveals information about a behavior possibility ⁠—⁠ it signifies a specification describing how to move the gripper of the robotic arm artifact. Specifically, the specification describes the behavior of moving the gripper as an action that: +An agent A is situated in a manufacturing workspace that contains a robotic arm artifact. The resource profile of the robotic arm artifact exposes a signifier S that reveals information about a behavior possibility ⁠—⁠ it signifies a specification SP describing how to move the gripper of the robotic arm artifact. Specifically, the SP describes the behavior of moving the gripper as an action that: - is of type [onto:SetGripper](https://ci.mines-stetienne.fr/kg/ontology#SetGripper), -- expects an input of a schema [onto:GripperJoint](https://ci.mines-stetienne.fr/kg/ontology#GripperJoint), and +- expects an input I of a schema [onto:GripperJoint](https://ci.mines-stetienne.fr/kg/ontology#GripperJoint), and - can be executed based on a set of hypermedia controls. The set of hypermedia controls contains two forms ⁠—⁠ a form describing an HTTP request, and a form describing a CoAP request. Agent A has discovered the exposed signifier and has the objective of behaving based on the signified specification. For this, agent A provides an input of the schema [onto:GripperJoint](https://ci.mines-stetienne.fr/kg/ontology#GripperJoint), and sends an HTTP request based on one of the hypermedia controls. @@ -15,11 +15,11 @@ Agent A has discovered the exposed signifier and has the objective of behaving b | ID | Question in Natural Language | Example | |----|------------------------------|---------| -| q1 | What are the behavior specifications that a given signifier signifies? | | -| q2 | What are the action specifications that a given signifier signifies? | | -| q3 | What are the forms that describe how to execute a given specified action? | | -| q4 | What is the input that is expected by a given specified action? | | -| q5 | What are the schemas of a given expected input? | | +| q1 | What are the behavior specifications that a given signifier signifies? |What are the behavior specifications that signifier S signifies?| +| q2 | What are the action specifications that a given signifier signifies? |What are the action specifications that signifier S signifies?| +| q3 | What are the forms that describe how to execute a given specified action? |What are the forms that describe how to execute moving the gripper of the robotic arm artifact based on SP?| +| q4 | What is the input that is expected by a given specified action? |What is the input that is expected for moving the gripper of the robotic arm artifact based on SP?| +| q5 | What are the schemas of a given expected input? |What are the schemas of the expected input I?| ## Glossary From cbe73d2d7f2fc87dfbdbfcdfc8def5476bb6a2c2 Mon Sep 17 00:00:00 2001 From: danaivach Date: Wed, 14 Dec 2022 16:56:50 +0100 Subject: [PATCH 09/83] fix(discover-behavior-specs) syntax --- .../discover-behavior-specifications/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/README.md b/domains/manufacturing-environments/discover-behavior-specifications/README.md index 140c1475..59117c87 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/README.md +++ b/domains/manufacturing-environments/discover-behavior-specifications/README.md @@ -4,12 +4,12 @@ Feature: Discovery of Behavior Specifications ## Description -An agent A is situated in a manufacturing workspace that contains a robotic arm artifact. The resource profile of the robotic arm artifact exposes a signifier S that reveals information about a behavior possibility ⁠—⁠ it signifies a specification SP describing how to move the gripper of the robotic arm artifact. Specifically, the SP describes the behavior of moving the gripper as an action that: +An agent A is situated in a manufacturing workspace that contains a robotic arm artifact. The resource profile of the robotic arm artifact exposes a signifier S that reveals information about a behavior possibility ⁠—⁠ it signifies a specification SP describing how to move the gripper of the robotic arm artifact. Specifically, SP describes the behavior of moving the gripper as an action that: - is of type [onto:SetGripper](https://ci.mines-stetienne.fr/kg/ontology#SetGripper), - expects an input I of a schema [onto:GripperJoint](https://ci.mines-stetienne.fr/kg/ontology#GripperJoint), and - can be executed based on a set of hypermedia controls. The set of hypermedia controls contains two forms ⁠—⁠ a form describing an HTTP request, and a form describing a CoAP request. -Agent A has discovered the exposed signifier and has the objective of behaving based on the signified specification. For this, agent A provides an input of the schema [onto:GripperJoint](https://ci.mines-stetienne.fr/kg/ontology#GripperJoint), and sends an HTTP request based on one of the hypermedia controls. +Agent A has discovered S and has the objective of behaving based on the signified SP. For this, agent A provides an input of the schema [onto:GripperJoint](https://ci.mines-stetienne.fr/kg/ontology#GripperJoint), and sends an HTTP request based on one of the hypermedia controls. ## Competency Questions From 4d9f4a60ace6c835e4449f9266029c0b2ac27833 Mon Sep 17 00:00:00 2001 From: danaivach Date: Mon, 19 Dec 2022 11:33:51 +0100 Subject: [PATCH 10/83] feat(discover-behavior-specs) add dependency terms --- .../discover-behavior-specifications/README.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/README.md b/domains/manufacturing-environments/discover-behavior-specifications/README.md index 59117c87..6757597f 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/README.md +++ b/domains/manufacturing-environments/discover-behavior-specifications/README.md @@ -31,7 +31,13 @@ Agent A has discovered S and has the objective of behaving based on the signifie - **Input**: An input of an action, which may include variables. The input may be used, for instance, in an action specification or in the representation of an action execution. - **Schema**: The schema of an input. For example, the schema may be a JSON data schema (https://www.w3.org/2019/wot/json-schema#DataSchema) or a SHACL shape (http://www.w3.org/ns/shacl#Shape). - **Signification of Behavior**: The act of revealing information about how to exploit a behavior possibility. - +- **Workspace**: see [_Other scenario TBA_](). +- **Resource Containment**: see [_Other scenario TBA_](). +- **Artifact**: see [_Other scenario TBA_](). +- **Agent**: see [_Other scenario TBA_](). +- **Resource Profile**: see [_Other scenario TBA_](). +- **Signifier**: see [_Other scenario TBA_](). +- **Signifier Exposure**: see [_Other scenario TBA_](). ## Recommendations - A signifier can signify a behavior specification for revealing information about how to exploit the relevant behavior possibility. From 4eedf37716ed0886360f251456d74327ffbd1aa4 Mon Sep 17 00:00:00 2001 From: danaivach Date: Fri, 30 Dec 2022 11:45:25 +0100 Subject: [PATCH 11/83] feat(discover-behavior-specs) add dataset --- .../dataset.ttl | 56 +++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl diff --git a/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl b/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl new file mode 100644 index 00000000..8580cea9 --- /dev/null +++ b/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl @@ -0,0 +1,56 @@ +@base . +@prefix : <#> . +@prefix owl: . +@prefix rdfs: . + +################################################################# +# Classes +################################################################# + +:BehaviorExecution a owl:Class ; + rdfs:label "behavior execution"@en ; + rdfs:comment "A course of action performed by an agent upon exploiting a behavior possibility."@en . + +:ActionExecution a owl:Class ; + rdfs:label "action execution"@en ; + rdfs:comment "A behavior execution that is the execution of exactly one context-free action, e.g. of a context-free HTTP request."@en ; + rdfs:subClassOf :BehaviorExecution . + +:BehaviorSpecification a owl:Class ; + rdfs:label "behavior specification"@en ; + rdfs:comment "A specification that describes a behavior, for example, as procedural knowledge (e.g., AgentSpeak plan) or code-on-demand (e.g., a script that implements a behavior)."@en . + +:ActionSpecification a owl:Class ; + rdfs:label "action specification"@en ; + rdfs:comment "A specification that describes an action (e.g., through preconditions and postconditions) and how to execute the action, e.g. as a context-free request through a form."@en ; + rdfs:subClassOf :BehaviorSpecification . + +:Input a owl:Class ; + rdfs:label "input"@en ; + rdfs:comment "An input of an action, which may include variables. The input may be used, for instance, in an action specification or in the representation of an action execution."@en . + +################################################################# +# Properties +################################################################# + +:signifies a owl:ObjectProperty ; + rdfs:label "signifies"@en ; + rdfs:comment "A relation between a signifier and a behavior specification it signifies."@en ; + rdfs:domain :Signifier ; + rdfs:range :BehaviorSpecification . + +:hasForm a owl:ObjectProperty ; + rdfs:label "has form"@en ; + rdfs:comment "A relation between an action specification and a form that describes how to execute the specified action."@en ; + rdfs:domain :ActionSpecification . + +:expectsInput a owl:ObjectProperty ; + rdfs:label "expects input"@en ; + rdfs:comment "A relation between an action specification and the input that the specified action expects."@en ; + rdfs:domain :ActionSpecification ; + rdfs:range :Input . + +:hasSchema a owl:ObjectProperty ; + rdfs:label "has schema"@en ; + rdfs:comment "A relation between an input and the schema of the input."@en ; + rdfs:domain :Input . From 99aa856a9f80fe1aa6fd6ed8df09e4ae4f2417af Mon Sep 17 00:00:00 2001 From: danaivach Date: Fri, 30 Dec 2022 11:49:54 +0100 Subject: [PATCH 12/83] feat(discover-behavior-specs) add q1 What are the behavior specifications that a given signifier signifies? --- .../discover-behavior-specifications/q1.rq | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 domains/manufacturing-environments/discover-behavior-specifications/q1.rq diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q1.rq b/domains/manufacturing-environments/discover-behavior-specifications/q1.rq new file mode 100644 index 00000000..0781f28a --- /dev/null +++ b/domains/manufacturing-environments/discover-behavior-specifications/q1.rq @@ -0,0 +1,10 @@ +base +prefix : <#> +prefix hmas: + +ask { + bind ( as ?s) + bind ( as ?sp) + ?s a hmas:Signifier . + ?s :signifies ?sp . +} From 396404c5377407a05145180f35c8b154e21d5609 Mon Sep 17 00:00:00 2001 From: danaivach Date: Fri, 30 Dec 2022 11:51:09 +0100 Subject: [PATCH 13/83] feat(discover-behavior-specs) add q2 Q2: What are the action specifications that a given signifier signifies? --- .../discover-behavior-specifications/q2.rq | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 domains/manufacturing-environments/discover-behavior-specifications/q2.rq diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q2.rq b/domains/manufacturing-environments/discover-behavior-specifications/q2.rq new file mode 100644 index 00000000..09159a36 --- /dev/null +++ b/domains/manufacturing-environments/discover-behavior-specifications/q2.rq @@ -0,0 +1,11 @@ +base +prefix : <#> +prefix hmas: + +ask { + bind ( as ?s) + bind ( as ?sp) + ?s a hmas:Signifier . + ?sp a :ActionSpecification . + ?s :signifies ?sp . +} From b6777009914c35fb46e7c870c2295c7f052db5f0 Mon Sep 17 00:00:00 2001 From: danaivach Date: Fri, 30 Dec 2022 11:52:33 +0100 Subject: [PATCH 14/83] feat(discover-behavior-specs) add q3 Q3: What are the forms that describe how to execute a given specified action? --- .../discover-behavior-specifications/q3.rq | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 domains/manufacturing-environments/discover-behavior-specifications/q3.rq diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q3.rq b/domains/manufacturing-environments/discover-behavior-specifications/q3.rq new file mode 100644 index 00000000..6edd55ee --- /dev/null +++ b/domains/manufacturing-environments/discover-behavior-specifications/q3.rq @@ -0,0 +1,15 @@ +base +prefix : <#> +prefix hmas: +prefix hctl: + +ask { + bind ( as ?f1) + bind ( as ?f2) + bind ( as ?sp) + ?f1 a hctl:Form . + ?f2 a hctl:Form . + ?sp a :ActionSpecification . + ?sp :hasForm ?f1 . + ?sp :hasForm ?f2 . +} From 82df5fc52dad7998276ff24dd03e63396d90b8f4 Mon Sep 17 00:00:00 2001 From: danaivach Date: Fri, 30 Dec 2022 11:58:29 +0100 Subject: [PATCH 15/83] feat(discover-behavior-specs) add q4 Q4: What is the input that is expected by a given specified action? --- .../discover-behavior-specifications/q4.rq | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 domains/manufacturing-environments/discover-behavior-specifications/q4.rq diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q4.rq b/domains/manufacturing-environments/discover-behavior-specifications/q4.rq new file mode 100644 index 00000000..f390fdea --- /dev/null +++ b/domains/manufacturing-environments/discover-behavior-specifications/q4.rq @@ -0,0 +1,11 @@ +base +prefix : <#> +prefix hmas: + +ask { + bind ( as ?i) + bind ( as ?sp) + ?i a :Input . + ?sp a :ActionSpecification . + ?sp :expectsInput ?i . +} From fb8475a5e48c4e9cbef0817c2b4ee442cacb0332 Mon Sep 17 00:00:00 2001 From: danaivach Date: Fri, 30 Dec 2022 12:00:18 +0100 Subject: [PATCH 16/83] feat(discover-behavior-specs) add q5 Q5: What are the schemas of a given expected input? --- .../discover-behavior-specifications/q5.rq | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 domains/manufacturing-environments/discover-behavior-specifications/q5.rq diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q5.rq b/domains/manufacturing-environments/discover-behavior-specifications/q5.rq new file mode 100644 index 00000000..ec9dd116 --- /dev/null +++ b/domains/manufacturing-environments/discover-behavior-specifications/q5.rq @@ -0,0 +1,10 @@ +base +prefix : <#> +prefix hmas: + +ask { + bind ( as ?sc) + bind ( as ?i) + ?i a :Input . + ?i :hasSchema ?sc. +} From 71822e7062f44106fff62343393c66a5325b1670 Mon Sep 17 00:00:00 2001 From: danaivach Date: Fri, 30 Dec 2022 12:04:15 +0100 Subject: [PATCH 17/83] fix(discover-behavior-specs) onto -> dataset --- .../dataset.ttl | 88 +++++++------------ 1 file changed, 33 insertions(+), 55 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl b/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl index 8580cea9..c9d64d97 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl +++ b/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl @@ -1,56 +1,34 @@ -@base . +@base . @prefix : <#> . -@prefix owl: . -@prefix rdfs: . - -################################################################# -# Classes -################################################################# - -:BehaviorExecution a owl:Class ; - rdfs:label "behavior execution"@en ; - rdfs:comment "A course of action performed by an agent upon exploiting a behavior possibility."@en . - -:ActionExecution a owl:Class ; - rdfs:label "action execution"@en ; - rdfs:comment "A behavior execution that is the execution of exactly one context-free action, e.g. of a context-free HTTP request."@en ; - rdfs:subClassOf :BehaviorExecution . - -:BehaviorSpecification a owl:Class ; - rdfs:label "behavior specification"@en ; - rdfs:comment "A specification that describes a behavior, for example, as procedural knowledge (e.g., AgentSpeak plan) or code-on-demand (e.g., a script that implements a behavior)."@en . - -:ActionSpecification a owl:Class ; - rdfs:label "action specification"@en ; - rdfs:comment "A specification that describes an action (e.g., through preconditions and postconditions) and how to execute the action, e.g. as a context-free request through a form."@en ; - rdfs:subClassOf :BehaviorSpecification . - -:Input a owl:Class ; - rdfs:label "input"@en ; - rdfs:comment "An input of an action, which may include variables. The input may be used, for instance, in an action specification or in the representation of an action execution."@en . - -################################################################# -# Properties -################################################################# - -:signifies a owl:ObjectProperty ; - rdfs:label "signifies"@en ; - rdfs:comment "A relation between a signifier and a behavior specification it signifies."@en ; - rdfs:domain :Signifier ; - rdfs:range :BehaviorSpecification . - -:hasForm a owl:ObjectProperty ; - rdfs:label "has form"@en ; - rdfs:comment "A relation between an action specification and a form that describes how to execute the specified action."@en ; - rdfs:domain :ActionSpecification . - -:expectsInput a owl:ObjectProperty ; - rdfs:label "expects input"@en ; - rdfs:comment "A relation between an action specification and the input that the specified action expects."@en ; - rdfs:domain :ActionSpecification ; - rdfs:range :Input . - -:hasSchema a owl:ObjectProperty ; - rdfs:label "has schema"@en ; - rdfs:comment "A relation between an input and the schema of the input."@en ; - rdfs:domain :Input . +@prefix hmas: . +@prefix phantom: . +@prefix hctl: . +@prefix htv: . +@prefix js: . + + a hmas:ResourceProfile; + hmas:exposesSignifier . + + a hmas:Signifier ; + :signifies . + + a :ActionSpecification, phantom:SetGripper ; + :hasForm ; + :hasForm ; + :expectsInput . + + a hctl:Form; + htv:methodName "PUT"; + hctl:hasTarget . + + a hctl:Form; + htv:methodName "PUT"; + hctl:hasTarget . + + a :Input ; + :hasSchema . + + a js:ObjectSchema, phantom:GripperJoint ; + js:properties [ a js:IntegerSchema ; + js:propertyName "phantom:hasGripperValue" + ] . From 8ea78da1ca6ab92ba5f5b53efd2880c4381d8352 Mon Sep 17 00:00:00 2001 From: danaivach Date: Fri, 30 Dec 2022 12:05:44 +0100 Subject: [PATCH 18/83] feat(discover-behavior-specs) add onto Classes: BehaviorExecution, ActionExecution, BehaviorSpecification, ActionSpecification, Input Properties: signifies, hasForm, expectsInput, hasSchema --- .../discover-behavior-specifications/onto.ttl | 56 +++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 domains/manufacturing-environments/discover-behavior-specifications/onto.ttl diff --git a/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl b/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl new file mode 100644 index 00000000..8580cea9 --- /dev/null +++ b/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl @@ -0,0 +1,56 @@ +@base . +@prefix : <#> . +@prefix owl: . +@prefix rdfs: . + +################################################################# +# Classes +################################################################# + +:BehaviorExecution a owl:Class ; + rdfs:label "behavior execution"@en ; + rdfs:comment "A course of action performed by an agent upon exploiting a behavior possibility."@en . + +:ActionExecution a owl:Class ; + rdfs:label "action execution"@en ; + rdfs:comment "A behavior execution that is the execution of exactly one context-free action, e.g. of a context-free HTTP request."@en ; + rdfs:subClassOf :BehaviorExecution . + +:BehaviorSpecification a owl:Class ; + rdfs:label "behavior specification"@en ; + rdfs:comment "A specification that describes a behavior, for example, as procedural knowledge (e.g., AgentSpeak plan) or code-on-demand (e.g., a script that implements a behavior)."@en . + +:ActionSpecification a owl:Class ; + rdfs:label "action specification"@en ; + rdfs:comment "A specification that describes an action (e.g., through preconditions and postconditions) and how to execute the action, e.g. as a context-free request through a form."@en ; + rdfs:subClassOf :BehaviorSpecification . + +:Input a owl:Class ; + rdfs:label "input"@en ; + rdfs:comment "An input of an action, which may include variables. The input may be used, for instance, in an action specification or in the representation of an action execution."@en . + +################################################################# +# Properties +################################################################# + +:signifies a owl:ObjectProperty ; + rdfs:label "signifies"@en ; + rdfs:comment "A relation between a signifier and a behavior specification it signifies."@en ; + rdfs:domain :Signifier ; + rdfs:range :BehaviorSpecification . + +:hasForm a owl:ObjectProperty ; + rdfs:label "has form"@en ; + rdfs:comment "A relation between an action specification and a form that describes how to execute the specified action."@en ; + rdfs:domain :ActionSpecification . + +:expectsInput a owl:ObjectProperty ; + rdfs:label "expects input"@en ; + rdfs:comment "A relation between an action specification and the input that the specified action expects."@en ; + rdfs:domain :ActionSpecification ; + rdfs:range :Input . + +:hasSchema a owl:ObjectProperty ; + rdfs:label "has schema"@en ; + rdfs:comment "A relation between an input and the schema of the input."@en ; + rdfs:domain :Input . From 826240cd6868f283d62bbdc0fd6fb2048c90f12e Mon Sep 17 00:00:00 2001 From: danaivach Date: Tue, 10 Jan 2023 14:24:44 +0100 Subject: [PATCH 19/83] refactor(discover-behavior-specs) mention action spec in description --- .../discover-behavior-specifications/README.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/README.md b/domains/manufacturing-environments/discover-behavior-specifications/README.md index 6757597f..0f224908 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/README.md +++ b/domains/manufacturing-environments/discover-behavior-specifications/README.md @@ -4,12 +4,12 @@ Feature: Discovery of Behavior Specifications ## Description -An agent A is situated in a manufacturing workspace that contains a robotic arm artifact. The resource profile of the robotic arm artifact exposes a signifier S that reveals information about a behavior possibility ⁠—⁠ it signifies a specification SP describing how to move the gripper of the robotic arm artifact. Specifically, SP describes the behavior of moving the gripper as an action that: -- is of type [onto:SetGripper](https://ci.mines-stetienne.fr/kg/ontology#SetGripper), -- expects an input I of a schema [onto:GripperJoint](https://ci.mines-stetienne.fr/kg/ontology#GripperJoint), and -- can be executed based on a set of hypermedia controls. The set of hypermedia controls contains two forms ⁠—⁠ a form describing an HTTP request, and a form describing a CoAP request. +An agent A is situated in a manufacturing workspace that contains a robotic arm artifact. The resource profile of the robotic arm artifact exposes a signifier S that provides a specification SP that describes how to exploit a behavior possibility, such as how to move the gripper of the robotic arm artifact. Specifically, SP is an action specification that describes the behavior of moving the gripper as an action that: +- is of type onto:SetGripper (https://ci.mines-stetienne.fr/kg/ontology#SetGripper), +- expects an input I of a schema onto:GripperJoint (https://ci.mines-stetienne.fr/kg/ontology#GripperJoint), and +- can be executed via a hypermedia control from a set of hypermedia controls:. The set of hypermedia controls contains two forms ⁠—⁠ a form describing an HTTP request, and a form describing a CoAP request. -Agent A has discovered S and has the objective of behaving based on the signified SP. For this, agent A provides an input of the schema [onto:GripperJoint](https://ci.mines-stetienne.fr/kg/ontology#GripperJoint), and sends an HTTP request based on one of the hypermedia controls. +Agent A has discovered S and has the objective of behaving based on the signified SP. To this end, agent A provides an input of the schema onto:GripperJoint, and sends an HTTP request based on one of the forms. ## Competency Questions From 73ccd5568840d3ad5c3de79d1aec2708c8299dc4 Mon Sep 17 00:00:00 2001 From: danaivach Date: Tue, 10 Jan 2023 14:27:40 +0100 Subject: [PATCH 20/83] refactor(discover-behavior-specs) signification to signifying --- .../README.md | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/README.md b/domains/manufacturing-environments/discover-behavior-specifications/README.md index 0f224908..01529556 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/README.md +++ b/domains/manufacturing-environments/discover-behavior-specifications/README.md @@ -24,24 +24,24 @@ Agent A has discovered S and has the objective of behaving based on the signifie ## Glossary - **Behavior Execution**: A course of action performed by an agent upon exploiting a behavior possibility. -- **Action Execution**: A behavior execution that is the execution of exactly one context-free action, e.g. of a context-free HTTP request. -- **Behavior Specification**: A specification that describes a behavior, for example, as procedural knowledge (e.g., AgentSpeak plan) or code-on-demand (e.g., a script that implements a behavior). -- **Action Specification**: A specification that describes an action (e.g., through preconditions and postconditions) and how to execute the action, e.g. as a context-free request through a form. -- **Form**: A hypermedia control that describes how to execute an action as defined here: https://www.w3.org/2019/wot/hypermedia#Form. -- **Input**: An input of an action, which may include variables. The input may be used, for instance, in an action specification or in the representation of an action execution. +- **Action Execution**: A behavior execution that is the execution of exactly one context-free action, e.g. of a context-free HTTP request. +- **Behavior Specification**: A specification that describes a behavior, for example, as procedural knowledge (e.g., AgentSpeak plan) or code-on-demand (e.g., a script that implements a behavior). +- **Action Specification**: A specification that describes an action (e.g., through preconditions and postconditions) and how to execute the action, e.g. as a context-free request through a form. +- **Form**: A hypermedia control that describes how to execute an action as defined here: https://www.w3.org/2019/wot/hypermedia#Form. +- **Input**: An input of an action, which may include variables. The input may be used, for instance, in an action specification or in the representation of an action execution. - **Schema**: The schema of an input. For example, the schema may be a JSON data schema (https://www.w3.org/2019/wot/json-schema#DataSchema) or a SHACL shape (http://www.w3.org/ns/shacl#Shape). - **Signification of Behavior**: The act of revealing information about how to exploit a behavior possibility. -- **Workspace**: see [_Other scenario TBA_](). -- **Resource Containment**: see [_Other scenario TBA_](). -- **Artifact**: see [_Other scenario TBA_](). -- **Agent**: see [_Other scenario TBA_](). -- **Resource Profile**: see [_Other scenario TBA_](). +- **Workspace**: see [_Other scenario TBA_](). +- **Resource Containment**: see [_Other scenario TBA_](). +- **Artifact**: see [_Other scenario TBA_](). +- **Agent**: see [_Other scenario TBA_](). +- **Resource Profile**: see [_Other scenario TBA_](). - **Signifier**: see [_Other scenario TBA_](). - **Signifier Exposure**: see [_Other scenario TBA_](). ## Recommendations - A signifier can signify a behavior specification for revealing information about how to exploit the relevant behavior possibility. -- This scenario focuses on the signification of a behavior specification that is the specification of exactly one action. However, a signifier may concern a behavior that is more generic than a single action execution. In the latter case, implementation details (e.g. an [hctl:Form](https://www.w3.org/2019/wot/hypermedia#Form)) will remain attached directly to the actions of the specified behavior, and not the behavior specification itself. The above aim to the following: +- This scenario focuses on signifying a behavior specification that is the specification of exactly one action. However, a signifier may concern a behavior that is more generic than a single action execution. In the latter case, implementation details (e.g. an [hctl:Form](https://www.w3.org/2019/wot/hypermedia#Form)) will remain attached directly to the actions of the specified behavior, and not the behavior specification itself. The above aim to the following: - To enable the action-oriented design of hypermedia by keeping the implementation details attached to a specified action, considering that this is a simple design style, and a style easily relatable to how signifiers are used on the Web. - To preserve the freedom of designers to create signifiers that concern behaviors with higher-level semantics on top of actions. - To enable extension points for defining behaviors based on how human agents reason about action and perform behaviors when exploiting behavior possibilities. From b4b183a45c76539c8b20a5877a6fbf15f122f17a Mon Sep 17 00:00:00 2001 From: danaivach Date: Fri, 13 Jan 2023 15:32:42 +0100 Subject: [PATCH 21/83] feat(src) create interaction ontology --- src/interaction.ttl | 70 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 src/interaction.ttl diff --git a/src/interaction.ttl b/src/interaction.ttl new file mode 100644 index 00000000..b5b9d8c2 --- /dev/null +++ b/src/interaction.ttl @@ -0,0 +1,70 @@ +@base . +@prefix : <#> . +@prefix hmas: . +@prefix owl: . +@prefix rdf: . +@prefix xml: . +@prefix xsd: . +@prefix rdfs: . +@prefix cc: . +@prefix vann: . +@prefix voaf: . +@prefix foaf: . +@prefix schema: . +@prefix dct: . +@prefix skos: . + +################################################################# +# Ontology Description +################################################################# + +<#> rdf:type owl:Ontology ; + dct:title "Hypermedia MAS Interaction Ontology"@en, "Ontologie d'Interaction des SMA Hypermédias"@fr ; + dct:description "An ontology to describe interaction in Hypermedia Multi-Agent Systems."@en, + "L'ontologie pour décrire l'interaction dans les systèmes multi-agents hypermédias."@fr ; + dct:issued "2023-01-13"^^xsd:date ; + cc:license ; + dct:creator ; + dct:contributor ; + dct:contributor ; + cc:license ; + vann:preferredNamespacePrefix "hint" ; + vann:preferredNamespaceUri <#> . + + + schema:name "Inria" ; + schema:url . + + + schema:name "MINES Saint-Étienne" ; + schema:url . + + + schema:name "University of St.Gallen" ; + schema:url . + + a schema:Person ; + schema:name "Andrei Ciortea" ; + schema:email "andrei.ciortea@unisg.ch" ; + schema:affiliation . + + a schema:Person ; + schema:name "Simon Mayer" ; + schema:email "simon.mayer@unisg.ch" ; + schema:affiliation . + + a schema:Person ; + schema:name "Danai Vachtsevanou" ; + schema:email "danai.vachtsevanou@unisg.ch" ; + schema:url ; + schema:affiliation . + +################################################################# +# Classes +################################################################# + + + +################################################################# +# Object Properties +################################################################# From 3dfd80733ecd0934f48c87a9c3a077fb527c775d Mon Sep 17 00:00:00 2001 From: danaivach Date: Fri, 13 Jan 2023 16:42:33 +0100 Subject: [PATCH 22/83] refactor(discover-behavior-specs) use onto from protege --- .../discover-behavior-specifications/onto.ttl | 78 +++++++++++-------- 1 file changed, 47 insertions(+), 31 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl b/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl index 8580cea9..06b5a028 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl +++ b/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl @@ -1,5 +1,6 @@ -@base . +@base . @prefix : <#> . +@prefix hmas: . @prefix owl: . @prefix rdfs: . @@ -7,50 +8,65 @@ # Classes ################################################################# +### https://purl.org/hmas/interaction#ActionExecution +:ActionExecution a owl:Class ; + rdfs:subClassOf :BehaviorExecution ; + rdfs:comment "A behavior execution that is the execution of exactly one context-free action, e.g. of a context-free HTTP request."@en ; + rdfs:label "action execution"@en . + + +### https://purl.org/hmas/interaction#ActionSpecification +:ActionSpecification a owl:Class ; + rdfs:subClassOf :BehaviorSpecification ; + rdfs:comment "A specification that describes an action (e.g., through preconditions and postconditions) and how to execute the action, e.g. as a context-free request through a form."@en ; + rdfs:label "action specification"@en . + + +### https://purl.org/hmas/interaction#BehaviorExecution :BehaviorExecution a owl:Class ; - rdfs:label "behavior execution"@en ; - rdfs:comment "A course of action performed by an agent upon exploiting a behavior possibility."@en . + rdfs:comment "A course of action performed by an agent upon exploiting a behavior possibility."@en ; + rdfs:label "behavior execution"@en . -:ActionExecution a owl:Class ; - rdfs:label "action execution"@en ; - rdfs:comment "A behavior execution that is the execution of exactly one context-free action, e.g. of a context-free HTTP request."@en ; - rdfs:subClassOf :BehaviorExecution . +### https://purl.org/hmas/interaction#BehaviorSpecification :BehaviorSpecification a owl:Class ; - rdfs:label "behavior specification"@en ; - rdfs:comment "A specification that describes a behavior, for example, as procedural knowledge (e.g., AgentSpeak plan) or code-on-demand (e.g., a script that implements a behavior)."@en . + rdfs:comment "A specification that describes a behavior, for example, as procedural knowledge (e.g., AgentSpeak plan) or code-on-demand (e.g., a script that implements a behavior)."@en ; + rdfs:label "behavior specification"@en . -:ActionSpecification a owl:Class ; - rdfs:label "action specification"@en ; - rdfs:comment "A specification that describes an action (e.g., through preconditions and postconditions) and how to execute the action, e.g. as a context-free request through a form."@en ; - rdfs:subClassOf :BehaviorSpecification . +### https://purl.org/hmas/interaction#Input :Input a owl:Class ; - rdfs:label "input"@en ; - rdfs:comment "An input of an action, which may include variables. The input may be used, for instance, in an action specification or in the representation of an action execution."@en . + rdfs:comment "An input of an action, which may include variables. The input may be used, for instance, in an action specification or in the representation of an action execution."@en ; + rdfs:label "input"@en . ################################################################# # Properties ################################################################# -:signifies a owl:ObjectProperty ; - rdfs:label "signifies"@en ; - rdfs:comment "A relation between a signifier and a behavior specification it signifies."@en ; - rdfs:domain :Signifier ; - rdfs:range :BehaviorSpecification . +### https://purl.org/hmas/interaction#expectsInput +:expectsInput a owl:ObjectProperty ; + rdfs:domain :ActionSpecification ; + rdfs:range :Input ; + rdfs:comment "A relation between an action specification and the input that the specified action expects."@en ; + rdfs:label "expects input"@en . + +### https://purl.org/hmas/interaction#hasForm :hasForm a owl:ObjectProperty ; - rdfs:label "has form"@en ; - rdfs:comment "A relation between an action specification and a form that describes how to execute the specified action."@en ; - rdfs:domain :ActionSpecification . + rdfs:domain :ActionSpecification ; + rdfs:comment "A relation between an action specification and a form that describes how to execute the specified action."@en ; + rdfs:label "has form"@en . -:expectsInput a owl:ObjectProperty ; - rdfs:label "expects input"@en ; - rdfs:comment "A relation between an action specification and the input that the specified action expects."@en ; - rdfs:domain :ActionSpecification ; - rdfs:range :Input . +### https://purl.org/hmas/interaction#hasSchema :hasSchema a owl:ObjectProperty ; - rdfs:label "has schema"@en ; - rdfs:comment "A relation between an input and the schema of the input."@en ; - rdfs:domain :Input . + rdfs:comment "A relation between an input and the schema of the input."@en ; + rdfs:label "has schema"@en . + + +### https://purl.org/hmas/interaction#signifies +:signifies a owl:ObjectProperty ; + rdfs:domain hmas:Signifier ; + rdfs:range :BehaviorSpecification ; + rdfs:comment "A relation between a signifier and a behavior specification it signifies."@en ; + rdfs:label "signifies"@en . From 90ab86c388bade9c36d0bd6afbab610868b41fde Mon Sep 17 00:00:00 2001 From: danaivach Date: Fri, 13 Jan 2023 16:51:26 +0100 Subject: [PATCH 23/83] feat(src) add interaction terms --- src/interaction.ttl | 80 +++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 77 insertions(+), 3 deletions(-) diff --git a/src/interaction.ttl b/src/interaction.ttl index b5b9d8c2..1cd0e222 100644 --- a/src/interaction.ttl +++ b/src/interaction.ttl @@ -18,10 +18,10 @@ # Ontology Description ################################################################# -<#> rdf:type owl:Ontology ; +<#> a owl:Ontology ; dct:title "Hypermedia MAS Interaction Ontology"@en, "Ontologie d'Interaction des SMA Hypermédias"@fr ; - dct:description "An ontology to describe interaction in Hypermedia Multi-Agent Systems."@en, - "L'ontologie pour décrire l'interaction dans les systèmes multi-agents hypermédias."@fr ; + dct:description "An ontology to describe interaction in Hypermedia Multi-Agent Systems."@en, + "L'ontologie pour décrire l'interaction dans les systèmes multi-agents hypermédias."@fr ; dct:issued "2023-01-13"^^xsd:date ; cc:license ; dct:creator ; @@ -59,12 +59,86 @@ schema:url ; schema:affiliation . +schema:Person a owl:Class . +schema:name a owl:AnnotationProperty . +schema:email a owl:AnnotationProperty . +schema:url a owl:AnnotationProperty . +schema:identifier a owl:AnnotationProperty . +schema:affiliation a owl:AnnotationProperty . +dct:title a owl:AnnotationProperty . +dct:description a owl:AnnotationProperty . +dct:contributor a owl:AnnotationProperty . +dct:issued a owl:AnnotationProperty . +dct:creator a owl:AnnotationProperty . +dct:source a owl:AnnotationProperty . +cc:license a owl:AnnotationProperty . +vann:preferredNamespacePrefix a owl:AnnotationProperty . +vann:preferredNamespaceUri a owl:AnnotationProperty . +skos:example a owl:AnnotationProperty . +skos:note a owl:AnnotationProperty . + ################################################################# # Classes ################################################################# +:ActionExecution a owl:Class ; + rdfs:subClassOf :BehaviorExecution ; + rdfs:comment "A behavior execution that is the execution of exactly one context-free action, e.g. of a context-free HTTP request."@en ; + rdfs:label "action execution"@en . + + +### https://purl.org/hmas/interaction#ActionSpecification +:ActionSpecification a owl:Class ; + rdfs:subClassOf :BehaviorSpecification ; + rdfs:comment "A specification that describes an action (e.g., through preconditions and postconditions) and how to execute the action, e.g. as a context-free request through a form."@en ; + rdfs:label "action specification"@en . + + +### https://purl.org/hmas/interaction#BehaviorExecution +:BehaviorExecution a owl:Class ; + rdfs:comment "A course of action performed by an agent upon exploiting a behavior possibility."@en ; + rdfs:label "behavior execution"@en . + + +### https://purl.org/hmas/interaction#BehaviorSpecification +:BehaviorSpecification a owl:Class ; + rdfs:comment "A specification that describes a behavior, for example, as procedural knowledge (e.g., AgentSpeak plan) or code-on-demand (e.g., a script that implements a behavior)."@en ; + rdfs:label "behavior specification"@en . + +### https://purl.org/hmas/interaction#Input +:Input a owl:Class ; + rdfs:comment "An input of an action, which may include variables. The input may be used, for instance, in an action specification or in the representation of an action execution."@en ; + rdfs:label "input"@en . ################################################################# # Object Properties ################################################################# + +### https://purl.org/hmas/interaction#expectsInput +:expectsInput a owl:ObjectProperty ; + rdfs:domain :ActionSpecification ; + rdfs:range :Input ; + rdfs:comment "A relation between an action specification and the input that the specified action expects."@en ; + rdfs:label "expects input"@en . + + +### https://purl.org/hmas/interaction#hasForm +:hasForm a owl:ObjectProperty ; + rdfs:domain :ActionSpecification ; + rdfs:comment "A relation between an action specification and a form that describes how to execute the specified action."@en ; + rdfs:label "has form"@en . + + +### https://purl.org/hmas/interaction#hasSchema +:hasSchema a owl:ObjectProperty ; + rdfs:comment "A relation between an input and the schema of the input."@en ; + rdfs:label "has schema"@en . + + +### https://purl.org/hmas/interaction#signifies +:signifies a owl:ObjectProperty ; + rdfs:domain hmas:Signifier ; + rdfs:range :BehaviorSpecification ; + rdfs:comment "A relation between a signifier and a behavior specification it signifies."@en ; + rdfs:label "signifies"@en . From 31cc723f80fcb6bbb5947e0c2804dea7478ff60e Mon Sep 17 00:00:00 2001 From: danaivach Date: Mon, 16 Jan 2023 09:54:18 +0100 Subject: [PATCH 24/83] feat(src) import hmas to hint --- src/interaction.ttl | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/interaction.ttl b/src/interaction.ttl index 1cd0e222..9eff8d3d 100644 --- a/src/interaction.ttl +++ b/src/interaction.ttl @@ -19,6 +19,7 @@ ################################################################# <#> a owl:Ontology ; + owl:imports hmas: ; dct:title "Hypermedia MAS Interaction Ontology"@en, "Ontologie d'Interaction des SMA Hypermédias"@fr ; dct:description "An ontology to describe interaction in Hypermedia Multi-Agent Systems."@en, "L'ontologie pour décrire l'interaction dans les systèmes multi-agents hypermédias."@fr ; @@ -43,6 +44,12 @@ schema:name "University of St.Gallen" ; schema:url . + a schema:Person ; + schema:name "Danai Vachtsevanou" ; + schema:email "danai.vachtsevanou@unisg.ch" ; + schema:url ; + schema:affiliation . + a schema:Person ; schema:name "Andrei Ciortea" ; schema:email "andrei.ciortea@unisg.ch" ; @@ -53,12 +60,6 @@ schema:email "simon.mayer@unisg.ch" ; schema:affiliation . - a schema:Person ; - schema:name "Danai Vachtsevanou" ; - schema:email "danai.vachtsevanou@unisg.ch" ; - schema:url ; - schema:affiliation . - schema:Person a owl:Class . schema:name a owl:AnnotationProperty . schema:email a owl:AnnotationProperty . From fae4908b2a836252a1e6943ee5afa125b3a522a4 Mon Sep 17 00:00:00 2001 From: danaivach Date: Tue, 17 Jan 2023 17:36:54 +0100 Subject: [PATCH 25/83] refactor(discover-behavior-specs) prefixes and variables --- .../README.md | 22 +++++++-------- .../dataset.ttl | 27 ++++++++++--------- .../discover-behavior-specifications/q1.rq | 5 ++-- .../discover-behavior-specifications/q2.rq | 5 ++-- .../discover-behavior-specifications/q3.rq | 7 ++--- .../discover-behavior-specifications/q4.rq | 5 ++-- .../discover-behavior-specifications/q5.rq | 4 +-- 7 files changed, 40 insertions(+), 35 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/README.md b/domains/manufacturing-environments/discover-behavior-specifications/README.md index 01529556..c5137bf1 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/README.md +++ b/domains/manufacturing-environments/discover-behavior-specifications/README.md @@ -4,22 +4,22 @@ Feature: Discovery of Behavior Specifications ## Description -An agent A is situated in a manufacturing workspace that contains a robotic arm artifact. The resource profile of the robotic arm artifact exposes a signifier S that provides a specification SP that describes how to exploit a behavior possibility, such as how to move the gripper of the robotic arm artifact. Specifically, SP is an action specification that describes the behavior of moving the gripper as an action that: +An agent is situated in a manufacturing workspace that contains a robotic arm artifact. The resource profile of the robotic arm artifact exposes a signifier that provides a specification describing how to exploit a behavior possibility, such as how to move the gripper of the robotic arm artifact. Specifically, it is an action specification that describes the behavior of moving the gripper as an action that: - is of type onto:SetGripper (https://ci.mines-stetienne.fr/kg/ontology#SetGripper), -- expects an input I of a schema onto:GripperJoint (https://ci.mines-stetienne.fr/kg/ontology#GripperJoint), and -- can be executed via a hypermedia control from a set of hypermedia controls:. The set of hypermedia controls contains two forms ⁠—⁠ a form describing an HTTP request, and a form describing a CoAP request. +- expects an input of the schema onto:GripperJoint (https://ci.mines-stetienne.fr/kg/ontology#GripperJoint), and +- can be executed via a hypermedia control from a set of hypermedia controls: The set of hypermedia controls contains two forms ⁠—⁠ a form describing an HTTP request, and a form describing a CoAP request. -Agent A has discovered S and has the objective of behaving based on the signified SP. To this end, agent A provides an input of the schema onto:GripperJoint, and sends an HTTP request based on one of the forms. +The agent has discovered the signifier and has the objective of behaving based on the signified SP. To this end, the agent provides an input of the schema onto:GripperJoint, and sends an HTTP request based on one of the forms. ## Competency Questions -| ID | Question in Natural Language | Example | -|----|------------------------------|---------| -| q1 | What are the behavior specifications that a given signifier signifies? |What are the behavior specifications that signifier S signifies?| -| q2 | What are the action specifications that a given signifier signifies? |What are the action specifications that signifier S signifies?| -| q3 | What are the forms that describe how to execute a given specified action? |What are the forms that describe how to execute moving the gripper of the robotic arm artifact based on SP?| -| q4 | What is the input that is expected by a given specified action? |What is the input that is expected for moving the gripper of the robotic arm artifact based on SP?| -| q5 | What are the schemas of a given expected input? |What are the schemas of the expected input I?| +| ID | Question in Natural Language | Example | +|----|------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------| +| q1 | What are the behavior specifications that a given signifier signifies? | Behavior specifications that signifier `ex:gripperMovable` signifies: `ex:moveGripper` | +| q2 | What are the action specifications that a given signifier signifies? | Action specifications that signifier `ex:gripperMovable` signifies: `ex:moveGripper` | +| q3 | What are the forms that describe how to execute a given specified action? | Forms that describe how to execute moving the gripper of the robotic arm artifact based on `ex:moveGripper`: `ex:httpForm`, `ex:coapForm` | +| q4 | What is the input that is expected by a given specified action? | Input that is expected for moving the gripper of the robotic arm artifact based on `ex:moveGripper`: `ex:gripperJoint` | +| q5 | What are the schemas of a given expected input? | Schemas of the expected input `ex:moveGripper`: `ex:gripperJointSchema` | ## Glossary diff --git a/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl b/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl index c9d64d97..d0078547 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl +++ b/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl @@ -5,30 +5,31 @@ @prefix hctl: . @prefix htv: . @prefix js: . +@prefix ex: . - a hmas:ResourceProfile; - hmas:exposesSignifier . +ex:ur5Profile a hmas:ResourceProfile; + hmas:exposesSignifier ex:gripperMovable . - a hmas:Signifier ; - :signifies . +ex:gripperMovable a hmas:Signifier ; + :signifies ex:moveGripper . - a :ActionSpecification, phantom:SetGripper ; - :hasForm ; - :hasForm ; - :expectsInput . +ex:moveGripper a :ActionSpecification, phantom:SetGripper ; + :hasForm ex:httpForm ; + :hasForm ex:coapForm ; + :expectsInput ex:gripperJoint . - a hctl:Form; +ex:httpForm a hctl:Form; htv:methodName "PUT"; hctl:hasTarget . - a hctl:Form; +ex:coapForm a hctl:Form; htv:methodName "PUT"; hctl:hasTarget . - a :Input ; - :hasSchema . +ex:gripperJoint a :Input ; + :hasSchema ex:gripperJointSchema . - a js:ObjectSchema, phantom:GripperJoint ; +ex:gripperJointSchema a js:ObjectSchema, phantom:GripperJoint ; js:properties [ a js:IntegerSchema ; js:propertyName "phantom:hasGripperValue" ] . diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q1.rq b/domains/manufacturing-environments/discover-behavior-specifications/q1.rq index 0781f28a..bd8fcf81 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q1.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q1.rq @@ -1,10 +1,11 @@ base prefix : <#> prefix hmas: +prefix ex: ask { - bind ( as ?s) - bind ( as ?sp) + bind (ex:gripperMovable as ?s) + bind (ex:moveGripper as ?sp) ?s a hmas:Signifier . ?s :signifies ?sp . } diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q2.rq b/domains/manufacturing-environments/discover-behavior-specifications/q2.rq index 09159a36..da791a23 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q2.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q2.rq @@ -1,10 +1,11 @@ base prefix : <#> prefix hmas: +prefix ex: ask { - bind ( as ?s) - bind ( as ?sp) + bind (ex:gripperMovable as ?s) + bind (ex:moveGripper as ?sp) ?s a hmas:Signifier . ?sp a :ActionSpecification . ?s :signifies ?sp . diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q3.rq b/domains/manufacturing-environments/discover-behavior-specifications/q3.rq index 6edd55ee..5e5ad464 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q3.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q3.rq @@ -2,11 +2,12 @@ base prefix : <#> prefix hmas: prefix hctl: +prefix ex: ask { - bind ( as ?f1) - bind ( as ?f2) - bind ( as ?sp) + bind (ex:httpForm as ?f1) + bind (ex:coapForm as ?f2) + bind (ex:moveGripper as ?sp) ?f1 a hctl:Form . ?f2 a hctl:Form . ?sp a :ActionSpecification . diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q4.rq b/domains/manufacturing-environments/discover-behavior-specifications/q4.rq index f390fdea..abcce4d8 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q4.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q4.rq @@ -1,10 +1,11 @@ base prefix : <#> prefix hmas: +prefix ex: ask { - bind ( as ?i) - bind ( as ?sp) + bind (ex:gripperJoint as ?i) + bind (ex:moveGripper as ?sp) ?i a :Input . ?sp a :ActionSpecification . ?sp :expectsInput ?i . diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q5.rq b/domains/manufacturing-environments/discover-behavior-specifications/q5.rq index ec9dd116..dbe5ee58 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q5.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q5.rq @@ -3,8 +3,8 @@ prefix : <#> prefix hmas: ask { - bind ( as ?sc) - bind ( as ?i) + bind (ex:gripperJointSchema as ?sc) + bind (ex:gripperJoint as ?i) ?i a :Input . ?i :hasSchema ?sc. } From 2d8741309089d0dee34d73bbc995c17103363459 Mon Sep 17 00:00:00 2001 From: danaivach Date: Wed, 25 Jan 2023 15:34:06 +0100 Subject: [PATCH 26/83] refactor(interaction) hash to slash --- .../discover-behavior-specifications/dataset.ttl | 4 ++-- .../discover-behavior-specifications/onto.ttl | 4 ++-- .../discover-behavior-specifications/q1.rq | 4 ++-- .../discover-behavior-specifications/q2.rq | 4 ++-- .../discover-behavior-specifications/q3.rq | 4 ++-- .../discover-behavior-specifications/q4.rq | 4 ++-- .../discover-behavior-specifications/q5.rq | 4 ++-- src/interaction.ttl | 6 +++--- 8 files changed, 17 insertions(+), 17 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl b/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl index d0078547..30cc93c2 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl +++ b/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl @@ -1,5 +1,5 @@ -@base . -@prefix : <#> . +@base . +@prefix : <> . @prefix hmas: . @prefix phantom: . @prefix hctl: . diff --git a/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl b/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl index 06b5a028..30b96ab6 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl +++ b/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl @@ -1,5 +1,5 @@ -@base . -@prefix : <#> . +@base . +@prefix : <> . @prefix hmas: . @prefix owl: . @prefix rdfs: . diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q1.rq b/domains/manufacturing-environments/discover-behavior-specifications/q1.rq index bd8fcf81..8d7e3f86 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q1.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q1.rq @@ -1,5 +1,5 @@ -base -prefix : <#> +base +prefix : <> prefix hmas: prefix ex: diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q2.rq b/domains/manufacturing-environments/discover-behavior-specifications/q2.rq index da791a23..004b0980 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q2.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q2.rq @@ -1,5 +1,5 @@ -base -prefix : <#> +base +prefix : <> prefix hmas: prefix ex: diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q3.rq b/domains/manufacturing-environments/discover-behavior-specifications/q3.rq index 5e5ad464..41d8df32 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q3.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q3.rq @@ -1,5 +1,5 @@ -base -prefix : <#> +base +prefix : <> prefix hmas: prefix hctl: prefix ex: diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q4.rq b/domains/manufacturing-environments/discover-behavior-specifications/q4.rq index abcce4d8..f58b51c4 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q4.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q4.rq @@ -1,5 +1,5 @@ -base -prefix : <#> +base +prefix : <> prefix hmas: prefix ex: diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q5.rq b/domains/manufacturing-environments/discover-behavior-specifications/q5.rq index dbe5ee58..78d5b513 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q5.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q5.rq @@ -1,5 +1,5 @@ -base -prefix : <#> +base +prefix : <> prefix hmas: ask { diff --git a/src/interaction.ttl b/src/interaction.ttl index 9eff8d3d..d277e0bd 100644 --- a/src/interaction.ttl +++ b/src/interaction.ttl @@ -1,5 +1,5 @@ -@base . -@prefix : <#> . +@base . +@prefix : <> . @prefix hmas: . @prefix owl: . @prefix rdf: . @@ -18,7 +18,7 @@ # Ontology Description ################################################################# -<#> a owl:Ontology ; +: a owl:Ontology ; owl:imports hmas: ; dct:title "Hypermedia MAS Interaction Ontology"@en, "Ontologie d'Interaction des SMA Hypermédias"@fr ; dct:description "An ontology to describe interaction in Hypermedia Multi-Agent Systems."@en, From 1045c5b57af1535436c0c49c29901e497b131f75 Mon Sep 17 00:00:00 2001 From: danaivach Date: Wed, 1 Feb 2023 12:18:09 +0100 Subject: [PATCH 27/83] refactor(interaction) use common ns --- src/interaction.ttl | 54 ++++++++++++++++----------------------------- 1 file changed, 19 insertions(+), 35 deletions(-) diff --git a/src/interaction.ttl b/src/interaction.ttl index d277e0bd..1b73b7a1 100644 --- a/src/interaction.ttl +++ b/src/interaction.ttl @@ -1,6 +1,5 @@ -@base . -@prefix : <> . -@prefix hmas: . +@base . +@prefix hmas: . @prefix owl: . @prefix rdf: . @prefix xml: . @@ -18,8 +17,8 @@ # Ontology Description ################################################################# -: a owl:Ontology ; - owl:imports hmas: ; +hmas:interaction a owl:Ontology ; + owl:imports hmas:core ; dct:title "Hypermedia MAS Interaction Ontology"@en, "Ontologie d'Interaction des SMA Hypermédias"@fr ; dct:description "An ontology to describe interaction in Hypermedia Multi-Agent Systems."@en, "L'ontologie pour décrire l'interaction dans les systèmes multi-agents hypermédias."@fr ; @@ -82,33 +81,25 @@ skos:note a owl:AnnotationProperty . # Classes ################################################################# -:ActionExecution a owl:Class ; - rdfs:subClassOf :BehaviorExecution ; +hmas:ActionExecution a owl:Class ; + rdfs:subClassOf hmas:BehaviorExecution ; rdfs:comment "A behavior execution that is the execution of exactly one context-free action, e.g. of a context-free HTTP request."@en ; rdfs:label "action execution"@en . - -### https://purl.org/hmas/interaction#ActionSpecification -:ActionSpecification a owl:Class ; - rdfs:subClassOf :BehaviorSpecification ; +hmas:ActionSpecification a owl:Class ; + rdfs:subClassOf hmas:BehaviorSpecification ; rdfs:comment "A specification that describes an action (e.g., through preconditions and postconditions) and how to execute the action, e.g. as a context-free request through a form."@en ; rdfs:label "action specification"@en . - -### https://purl.org/hmas/interaction#BehaviorExecution -:BehaviorExecution a owl:Class ; +hmas:BehaviorExecution a owl:Class ; rdfs:comment "A course of action performed by an agent upon exploiting a behavior possibility."@en ; rdfs:label "behavior execution"@en . - -### https://purl.org/hmas/interaction#BehaviorSpecification -:BehaviorSpecification a owl:Class ; +hmas:BehaviorSpecification a owl:Class ; rdfs:comment "A specification that describes a behavior, for example, as procedural knowledge (e.g., AgentSpeak plan) or code-on-demand (e.g., a script that implements a behavior)."@en ; rdfs:label "behavior specification"@en . - -### https://purl.org/hmas/interaction#Input -:Input a owl:Class ; +hmas:Input a owl:Class ; rdfs:comment "An input of an action, which may include variables. The input may be used, for instance, in an action specification or in the representation of an action execution."@en ; rdfs:label "input"@en . @@ -116,30 +107,23 @@ skos:note a owl:AnnotationProperty . # Object Properties ################################################################# -### https://purl.org/hmas/interaction#expectsInput -:expectsInput a owl:ObjectProperty ; - rdfs:domain :ActionSpecification ; - rdfs:range :Input ; +hmas:expectsInput a owl:ObjectProperty ; + rdfs:domain hmas:ActionSpecification ; + rdfs:range hmas:Input ; rdfs:comment "A relation between an action specification and the input that the specified action expects."@en ; rdfs:label "expects input"@en . - -### https://purl.org/hmas/interaction#hasForm -:hasForm a owl:ObjectProperty ; - rdfs:domain :ActionSpecification ; +hmas:hasForm a owl:ObjectProperty ; + rdfs:domain hmas:ActionSpecification ; rdfs:comment "A relation between an action specification and a form that describes how to execute the specified action."@en ; rdfs:label "has form"@en . - -### https://purl.org/hmas/interaction#hasSchema -:hasSchema a owl:ObjectProperty ; +hmas:hasSchema a owl:ObjectProperty ; rdfs:comment "A relation between an input and the schema of the input."@en ; rdfs:label "has schema"@en . - -### https://purl.org/hmas/interaction#signifies -:signifies a owl:ObjectProperty ; +hmas:signifies a owl:ObjectProperty ; rdfs:domain hmas:Signifier ; - rdfs:range :BehaviorSpecification ; + rdfs:range hmas:BehaviorSpecification ; rdfs:comment "A relation between a signifier and a behavior specification it signifies."@en ; rdfs:label "signifies"@en . From 57ec512c94646bce343df6987345f5800a211c70 Mon Sep 17 00:00:00 2001 From: danaivach Date: Wed, 1 Feb 2023 14:53:45 +0100 Subject: [PATCH 28/83] refactor(onto) hmas namespace --- .../discover-behavior-specifications/onto.ttl | 53 +++++++------------ 1 file changed, 18 insertions(+), 35 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl b/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl index 30b96ab6..95bbc542 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl +++ b/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl @@ -1,6 +1,5 @@ -@base . -@prefix : <> . -@prefix hmas: . +@base . +@prefix hmas: . @prefix owl: . @prefix rdfs: . @@ -8,65 +7,49 @@ # Classes ################################################################# -### https://purl.org/hmas/interaction#ActionExecution -:ActionExecution a owl:Class ; - rdfs:subClassOf :BehaviorExecution ; +hmas:ActionExecution a owl:Class ; + rdfs:subClassOf hmas:BehaviorExecution ; rdfs:comment "A behavior execution that is the execution of exactly one context-free action, e.g. of a context-free HTTP request."@en ; rdfs:label "action execution"@en . - -### https://purl.org/hmas/interaction#ActionSpecification -:ActionSpecification a owl:Class ; - rdfs:subClassOf :BehaviorSpecification ; +hmas:ActionSpecification a owl:Class ; + rdfs:subClassOf hmas:BehaviorSpecification ; rdfs:comment "A specification that describes an action (e.g., through preconditions and postconditions) and how to execute the action, e.g. as a context-free request through a form."@en ; rdfs:label "action specification"@en . - -### https://purl.org/hmas/interaction#BehaviorExecution -:BehaviorExecution a owl:Class ; +hmas:BehaviorExecution a owl:Class ; rdfs:comment "A course of action performed by an agent upon exploiting a behavior possibility."@en ; rdfs:label "behavior execution"@en . - -### https://purl.org/hmas/interaction#BehaviorSpecification -:BehaviorSpecification a owl:Class ; +hmas:BehaviorSpecification a owl:Class ; rdfs:comment "A specification that describes a behavior, for example, as procedural knowledge (e.g., AgentSpeak plan) or code-on-demand (e.g., a script that implements a behavior)."@en ; rdfs:label "behavior specification"@en . - -### https://purl.org/hmas/interaction#Input -:Input a owl:Class ; +hmas:Input a owl:Class ; rdfs:comment "An input of an action, which may include variables. The input may be used, for instance, in an action specification or in the representation of an action execution."@en ; rdfs:label "input"@en . ################################################################# -# Properties +# Object Properties ################################################################# -### https://purl.org/hmas/interaction#expectsInput -:expectsInput a owl:ObjectProperty ; - rdfs:domain :ActionSpecification ; - rdfs:range :Input ; +hmas:expectsInput a owl:ObjectProperty ; + rdfs:domain hmas:ActionSpecification ; + rdfs:range hmas:Input ; rdfs:comment "A relation between an action specification and the input that the specified action expects."@en ; rdfs:label "expects input"@en . - -### https://purl.org/hmas/interaction#hasForm -:hasForm a owl:ObjectProperty ; - rdfs:domain :ActionSpecification ; +hmas:hasForm a owl:ObjectProperty ; + rdfs:domain hmas:ActionSpecification ; rdfs:comment "A relation between an action specification and a form that describes how to execute the specified action."@en ; rdfs:label "has form"@en . - -### https://purl.org/hmas/interaction#hasSchema -:hasSchema a owl:ObjectProperty ; +hmas:hasSchema a owl:ObjectProperty ; rdfs:comment "A relation between an input and the schema of the input."@en ; rdfs:label "has schema"@en . - -### https://purl.org/hmas/interaction#signifies -:signifies a owl:ObjectProperty ; +hmas:signifies a owl:ObjectProperty ; rdfs:domain hmas:Signifier ; - rdfs:range :BehaviorSpecification ; + rdfs:range hmas:BehaviorSpecification ; rdfs:comment "A relation between a signifier and a behavior specification it signifies."@en ; rdfs:label "signifies"@en . From 69373829a47bc1bbab2ac4f7f830c117eb76d7df Mon Sep 17 00:00:00 2001 From: danaivach Date: Wed, 1 Feb 2023 15:01:11 +0100 Subject: [PATCH 29/83] refactor(queries) common namespace --- .../dataset.ttl | 19 +++++++++---------- .../discover-behavior-specifications/q1.rq | 7 +++---- .../discover-behavior-specifications/q2.rq | 9 ++++----- .../discover-behavior-specifications/q3.rq | 11 +++++------ .../discover-behavior-specifications/q4.rq | 11 +++++------ .../discover-behavior-specifications/q5.rq | 9 ++++----- 6 files changed, 30 insertions(+), 36 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl b/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl index 30cc93c2..759da64b 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl +++ b/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl @@ -1,6 +1,5 @@ -@base . -@prefix : <> . -@prefix hmas: . +@base . +@prefix hmas: . @prefix phantom: . @prefix hctl: . @prefix htv: . @@ -11,12 +10,12 @@ ex:ur5Profile a hmas:ResourceProfile; hmas:exposesSignifier ex:gripperMovable . ex:gripperMovable a hmas:Signifier ; - :signifies ex:moveGripper . + hmas:signifies ex:moveGripper . -ex:moveGripper a :ActionSpecification, phantom:SetGripper ; - :hasForm ex:httpForm ; - :hasForm ex:coapForm ; - :expectsInput ex:gripperJoint . +ex:moveGripper a hmas:ActionSpecification, phantom:SetGripper ; + hmas:hasForm ex:httpForm ; + hmas:hasForm ex:coapForm ; + hmas:expectsInput ex:gripperJoint . ex:httpForm a hctl:Form; htv:methodName "PUT"; @@ -26,8 +25,8 @@ ex:coapForm a hctl:Form; htv:methodName "PUT"; hctl:hasTarget . -ex:gripperJoint a :Input ; - :hasSchema ex:gripperJointSchema . +ex:gripperJoint a hmas:Input ; + hmas:hasSchema ex:gripperJointSchema . ex:gripperJointSchema a js:ObjectSchema, phantom:GripperJoint ; js:properties [ a js:IntegerSchema ; diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q1.rq b/domains/manufacturing-environments/discover-behavior-specifications/q1.rq index 8d7e3f86..ead76f09 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q1.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q1.rq @@ -1,11 +1,10 @@ -base -prefix : <> -prefix hmas: +base +prefix hmas: prefix ex: ask { bind (ex:gripperMovable as ?s) bind (ex:moveGripper as ?sp) ?s a hmas:Signifier . - ?s :signifies ?sp . + ?s hmas:signifies ?sp . } diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q2.rq b/domains/manufacturing-environments/discover-behavior-specifications/q2.rq index 004b0980..fa652145 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q2.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q2.rq @@ -1,12 +1,11 @@ -base -prefix : <> -prefix hmas: +base +prefix hmas: prefix ex: ask { bind (ex:gripperMovable as ?s) bind (ex:moveGripper as ?sp) ?s a hmas:Signifier . - ?sp a :ActionSpecification . - ?s :signifies ?sp . + ?sp a hmas:ActionSpecification . + ?s hmas:signifies ?sp . } diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q3.rq b/domains/manufacturing-environments/discover-behavior-specifications/q3.rq index 41d8df32..d1d9eef5 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q3.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q3.rq @@ -1,6 +1,5 @@ -base -prefix : <> -prefix hmas: +base +prefix hmas: prefix hctl: prefix ex: @@ -10,7 +9,7 @@ ask { bind (ex:moveGripper as ?sp) ?f1 a hctl:Form . ?f2 a hctl:Form . - ?sp a :ActionSpecification . - ?sp :hasForm ?f1 . - ?sp :hasForm ?f2 . + ?sp a hmas:ActionSpecification . + ?sp hmas:hasForm ?f1 . + ?sp hmas:hasForm ?f2 . } diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q4.rq b/domains/manufacturing-environments/discover-behavior-specifications/q4.rq index f58b51c4..6e3215f1 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q4.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q4.rq @@ -1,12 +1,11 @@ -base -prefix : <> -prefix hmas: +base +prefix hmas: prefix ex: ask { bind (ex:gripperJoint as ?i) bind (ex:moveGripper as ?sp) - ?i a :Input . - ?sp a :ActionSpecification . - ?sp :expectsInput ?i . + ?i a hmas:Input . + ?sp a hmas:ActionSpecification . + ?sp hmas:expectsInput ?i . } diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q5.rq b/domains/manufacturing-environments/discover-behavior-specifications/q5.rq index 78d5b513..36860b93 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q5.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q5.rq @@ -1,10 +1,9 @@ -base -prefix : <> -prefix hmas: +base +prefix hmas: ask { bind (ex:gripperJointSchema as ?sc) bind (ex:gripperJoint as ?i) - ?i a :Input . - ?i :hasSchema ?sc. + ?i a hmas:Input . + ?i hmas:hasSchema ?sc. } From 9480180df2496b3f231455088c64faa533416830 Mon Sep 17 00:00:00 2001 From: danaivach Date: Fri, 3 Feb 2023 08:22:55 +0100 Subject: [PATCH 30/83] feat(onto) add definedby my ontology --- .../discover-behavior-specifications/onto.ttl | 9 +++++++++ src/interaction.ttl | 11 ++++++++++- 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl b/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl index 95bbc542..72fb0ac0 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl +++ b/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl @@ -8,24 +8,29 @@ ################################################################# hmas:ActionExecution a owl:Class ; + rdfs:isDefinedBy hmas:interaction ; rdfs:subClassOf hmas:BehaviorExecution ; rdfs:comment "A behavior execution that is the execution of exactly one context-free action, e.g. of a context-free HTTP request."@en ; rdfs:label "action execution"@en . hmas:ActionSpecification a owl:Class ; + rdfs:isDefinedBy hmas:interaction ; rdfs:subClassOf hmas:BehaviorSpecification ; rdfs:comment "A specification that describes an action (e.g., through preconditions and postconditions) and how to execute the action, e.g. as a context-free request through a form."@en ; rdfs:label "action specification"@en . hmas:BehaviorExecution a owl:Class ; + rdfs:isDefinedBy hmas:interaction ; rdfs:comment "A course of action performed by an agent upon exploiting a behavior possibility."@en ; rdfs:label "behavior execution"@en . hmas:BehaviorSpecification a owl:Class ; + rdfs:isDefinedBy hmas:interaction ; rdfs:comment "A specification that describes a behavior, for example, as procedural knowledge (e.g., AgentSpeak plan) or code-on-demand (e.g., a script that implements a behavior)."@en ; rdfs:label "behavior specification"@en . hmas:Input a owl:Class ; + rdfs:isDefinedBy hmas:interaction ; rdfs:comment "An input of an action, which may include variables. The input may be used, for instance, in an action specification or in the representation of an action execution."@en ; rdfs:label "input"@en . @@ -34,21 +39,25 @@ hmas:Input a owl:Class ; ################################################################# hmas:expectsInput a owl:ObjectProperty ; + rdfs:isDefinedBy hmas:interaction ; rdfs:domain hmas:ActionSpecification ; rdfs:range hmas:Input ; rdfs:comment "A relation between an action specification and the input that the specified action expects."@en ; rdfs:label "expects input"@en . hmas:hasForm a owl:ObjectProperty ; + rdfs:isDefinedBy hmas:interaction ; rdfs:domain hmas:ActionSpecification ; rdfs:comment "A relation between an action specification and a form that describes how to execute the specified action."@en ; rdfs:label "has form"@en . hmas:hasSchema a owl:ObjectProperty ; + rdfs:isDefinedBy hmas:interaction ; rdfs:comment "A relation between an input and the schema of the input."@en ; rdfs:label "has schema"@en . hmas:signifies a owl:ObjectProperty ; + rdfs:isDefinedBy hmas:interaction ; rdfs:domain hmas:Signifier ; rdfs:range hmas:BehaviorSpecification ; rdfs:comment "A relation between a signifier and a behavior specification it signifies."@en ; diff --git a/src/interaction.ttl b/src/interaction.ttl index 1b73b7a1..7869cd15 100644 --- a/src/interaction.ttl +++ b/src/interaction.ttl @@ -28,7 +28,7 @@ hmas:interaction a owl:Ontology ; dct:contributor ; dct:contributor ; cc:license ; - vann:preferredNamespacePrefix "hint" ; + vann:preferredNamespacePrefix "hmas" ; vann:preferredNamespaceUri <#> . @@ -82,24 +82,29 @@ skos:note a owl:AnnotationProperty . ################################################################# hmas:ActionExecution a owl:Class ; + rdfs:isDefinedBy hmas:interaction ; rdfs:subClassOf hmas:BehaviorExecution ; rdfs:comment "A behavior execution that is the execution of exactly one context-free action, e.g. of a context-free HTTP request."@en ; rdfs:label "action execution"@en . hmas:ActionSpecification a owl:Class ; + rdfs:isDefinedBy hmas:interaction ; rdfs:subClassOf hmas:BehaviorSpecification ; rdfs:comment "A specification that describes an action (e.g., through preconditions and postconditions) and how to execute the action, e.g. as a context-free request through a form."@en ; rdfs:label "action specification"@en . hmas:BehaviorExecution a owl:Class ; + rdfs:isDefinedBy hmas:interaction ; rdfs:comment "A course of action performed by an agent upon exploiting a behavior possibility."@en ; rdfs:label "behavior execution"@en . hmas:BehaviorSpecification a owl:Class ; + rdfs:isDefinedBy hmas:interaction ; rdfs:comment "A specification that describes a behavior, for example, as procedural knowledge (e.g., AgentSpeak plan) or code-on-demand (e.g., a script that implements a behavior)."@en ; rdfs:label "behavior specification"@en . hmas:Input a owl:Class ; + rdfs:isDefinedBy hmas:interaction ; rdfs:comment "An input of an action, which may include variables. The input may be used, for instance, in an action specification or in the representation of an action execution."@en ; rdfs:label "input"@en . @@ -108,21 +113,25 @@ hmas:Input a owl:Class ; ################################################################# hmas:expectsInput a owl:ObjectProperty ; + rdfs:isDefinedBy hmas:interaction ; rdfs:domain hmas:ActionSpecification ; rdfs:range hmas:Input ; rdfs:comment "A relation between an action specification and the input that the specified action expects."@en ; rdfs:label "expects input"@en . hmas:hasForm a owl:ObjectProperty ; + rdfs:isDefinedBy hmas:interaction ; rdfs:domain hmas:ActionSpecification ; rdfs:comment "A relation between an action specification and a form that describes how to execute the specified action."@en ; rdfs:label "has form"@en . hmas:hasSchema a owl:ObjectProperty ; + rdfs:isDefinedBy hmas:interaction ; rdfs:comment "A relation between an input and the schema of the input."@en ; rdfs:label "has schema"@en . hmas:signifies a owl:ObjectProperty ; + rdfs:isDefinedBy hmas:interaction ; rdfs:domain hmas:Signifier ; rdfs:range hmas:BehaviorSpecification ; rdfs:comment "A relation between a signifier and a behavior specification it signifies."@en ; From 7c813aa1f68ace06a66be90c4c3bf3030ba5ab43 Mon Sep 17 00:00:00 2001 From: danaivach Date: Tue, 7 Feb 2023 19:55:21 +0100 Subject: [PATCH 31/83] refactor(all) use preferred prefix --- .../dataset.ttl | 23 ++++---- .../discover-behavior-specifications/onto.ttl | 53 +++++++++--------- .../discover-behavior-specifications/q1.rq | 7 +-- .../discover-behavior-specifications/q2.rq | 9 ++- .../discover-behavior-specifications/q3.rq | 9 ++- .../discover-behavior-specifications/q4.rq | 9 ++- .../discover-behavior-specifications/q5.rq | 7 +-- src/interaction.ttl | 56 +++++++++---------- 8 files changed, 83 insertions(+), 90 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl b/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl index 759da64b..f4309f12 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl +++ b/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl @@ -1,21 +1,20 @@ -@base . -@prefix hmas: . +@prefix : . @prefix phantom: . @prefix hctl: . @prefix htv: . @prefix js: . @prefix ex: . -ex:ur5Profile a hmas:ResourceProfile; - hmas:exposesSignifier ex:gripperMovable . +ex:ur5Profile a :ResourceProfile; + :exposesSignifier ex:gripperMovable . -ex:gripperMovable a hmas:Signifier ; - hmas:signifies ex:moveGripper . +ex:gripperMovable a :Signifier ; + :signifies ex:moveGripper . -ex:moveGripper a hmas:ActionSpecification, phantom:SetGripper ; - hmas:hasForm ex:httpForm ; - hmas:hasForm ex:coapForm ; - hmas:expectsInput ex:gripperJoint . +ex:moveGripper a :ActionSpecification, phantom:SetGripper ; + :hasForm ex:httpForm ; + :hasForm ex:coapForm ; + :expectsInput ex:gripperJoint . ex:httpForm a hctl:Form; htv:methodName "PUT"; @@ -25,8 +24,8 @@ ex:coapForm a hctl:Form; htv:methodName "PUT"; hctl:hasTarget . -ex:gripperJoint a hmas:Input ; - hmas:hasSchema ex:gripperJointSchema . +ex:gripperJoint a :Input ; + :hasSchema ex:gripperJointSchema . ex:gripperJointSchema a js:ObjectSchema, phantom:GripperJoint ; js:properties [ a js:IntegerSchema ; diff --git a/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl b/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl index 72fb0ac0..f93c7e68 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl +++ b/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl @@ -1,5 +1,4 @@ -@base . -@prefix hmas: . +@prefix : . @prefix owl: . @prefix rdfs: . @@ -7,30 +6,30 @@ # Classes ################################################################# -hmas:ActionExecution a owl:Class ; - rdfs:isDefinedBy hmas:interaction ; - rdfs:subClassOf hmas:BehaviorExecution ; +:ActionExecution a owl:Class ; + rdfs:isDefinedBy :interaction ; + rdfs:subClassOf :BehaviorExecution ; rdfs:comment "A behavior execution that is the execution of exactly one context-free action, e.g. of a context-free HTTP request."@en ; rdfs:label "action execution"@en . -hmas:ActionSpecification a owl:Class ; - rdfs:isDefinedBy hmas:interaction ; - rdfs:subClassOf hmas:BehaviorSpecification ; +:ActionSpecification a owl:Class ; + rdfs:isDefinedBy :interaction ; + rdfs:subClassOf :BehaviorSpecification ; rdfs:comment "A specification that describes an action (e.g., through preconditions and postconditions) and how to execute the action, e.g. as a context-free request through a form."@en ; rdfs:label "action specification"@en . -hmas:BehaviorExecution a owl:Class ; - rdfs:isDefinedBy hmas:interaction ; +:BehaviorExecution a owl:Class ; + rdfs:isDefinedBy :interaction ; rdfs:comment "A course of action performed by an agent upon exploiting a behavior possibility."@en ; rdfs:label "behavior execution"@en . -hmas:BehaviorSpecification a owl:Class ; - rdfs:isDefinedBy hmas:interaction ; +:BehaviorSpecification a owl:Class ; + rdfs:isDefinedBy :interaction ; rdfs:comment "A specification that describes a behavior, for example, as procedural knowledge (e.g., AgentSpeak plan) or code-on-demand (e.g., a script that implements a behavior)."@en ; rdfs:label "behavior specification"@en . -hmas:Input a owl:Class ; - rdfs:isDefinedBy hmas:interaction ; +:Input a owl:Class ; + rdfs:isDefinedBy :interaction ; rdfs:comment "An input of an action, which may include variables. The input may be used, for instance, in an action specification or in the representation of an action execution."@en ; rdfs:label "input"@en . @@ -38,27 +37,27 @@ hmas:Input a owl:Class ; # Object Properties ################################################################# -hmas:expectsInput a owl:ObjectProperty ; - rdfs:isDefinedBy hmas:interaction ; - rdfs:domain hmas:ActionSpecification ; - rdfs:range hmas:Input ; +:expectsInput a owl:ObjectProperty ; + rdfs:isDefinedBy :interaction ; + rdfs:domain :ActionSpecification ; + rdfs:range :Input ; rdfs:comment "A relation between an action specification and the input that the specified action expects."@en ; rdfs:label "expects input"@en . -hmas:hasForm a owl:ObjectProperty ; - rdfs:isDefinedBy hmas:interaction ; - rdfs:domain hmas:ActionSpecification ; +:hasForm a owl:ObjectProperty ; + rdfs:isDefinedBy :interaction ; + rdfs:domain :ActionSpecification ; rdfs:comment "A relation between an action specification and a form that describes how to execute the specified action."@en ; rdfs:label "has form"@en . -hmas:hasSchema a owl:ObjectProperty ; - rdfs:isDefinedBy hmas:interaction ; +:hasSchema a owl:ObjectProperty ; + rdfs:isDefinedBy :interaction ; rdfs:comment "A relation between an input and the schema of the input."@en ; rdfs:label "has schema"@en . -hmas:signifies a owl:ObjectProperty ; - rdfs:isDefinedBy hmas:interaction ; - rdfs:domain hmas:Signifier ; - rdfs:range hmas:BehaviorSpecification ; +:signifies a owl:ObjectProperty ; + rdfs:isDefinedBy :interaction ; + rdfs:domain :Signifier ; + rdfs:range :BehaviorSpecification ; rdfs:comment "A relation between a signifier and a behavior specification it signifies."@en ; rdfs:label "signifies"@en . diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q1.rq b/domains/manufacturing-environments/discover-behavior-specifications/q1.rq index ead76f09..8c65d895 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q1.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q1.rq @@ -1,10 +1,9 @@ -base -prefix hmas: +prefix : prefix ex: ask { bind (ex:gripperMovable as ?s) bind (ex:moveGripper as ?sp) - ?s a hmas:Signifier . - ?s hmas:signifies ?sp . + ?s a :Signifier . + ?s :signifies ?sp . } diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q2.rq b/domains/manufacturing-environments/discover-behavior-specifications/q2.rq index fa652145..95d04809 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q2.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q2.rq @@ -1,11 +1,10 @@ -base -prefix hmas: +prefix : prefix ex: ask { bind (ex:gripperMovable as ?s) bind (ex:moveGripper as ?sp) - ?s a hmas:Signifier . - ?sp a hmas:ActionSpecification . - ?s hmas:signifies ?sp . + ?s a :Signifier . + ?sp a :ActionSpecification . + ?s :signifies ?sp . } diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q3.rq b/domains/manufacturing-environments/discover-behavior-specifications/q3.rq index d1d9eef5..567d4043 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q3.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q3.rq @@ -1,5 +1,4 @@ -base -prefix hmas: +prefix : prefix hctl: prefix ex: @@ -9,7 +8,7 @@ ask { bind (ex:moveGripper as ?sp) ?f1 a hctl:Form . ?f2 a hctl:Form . - ?sp a hmas:ActionSpecification . - ?sp hmas:hasForm ?f1 . - ?sp hmas:hasForm ?f2 . + ?sp a :ActionSpecification . + ?sp :hasForm ?f1 . + ?sp :hasForm ?f2 . } diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q4.rq b/domains/manufacturing-environments/discover-behavior-specifications/q4.rq index 6e3215f1..dc2ff180 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q4.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q4.rq @@ -1,11 +1,10 @@ -base -prefix hmas: +prefix : prefix ex: ask { bind (ex:gripperJoint as ?i) bind (ex:moveGripper as ?sp) - ?i a hmas:Input . - ?sp a hmas:ActionSpecification . - ?sp hmas:expectsInput ?i . + ?i a :Input . + ?sp a :ActionSpecification . + ?sp :expectsInput ?i . } diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q5.rq b/domains/manufacturing-environments/discover-behavior-specifications/q5.rq index 36860b93..275ef003 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q5.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q5.rq @@ -1,9 +1,8 @@ -base -prefix hmas: +prefix : ask { bind (ex:gripperJointSchema as ?sc) bind (ex:gripperJoint as ?i) - ?i a hmas:Input . - ?i hmas:hasSchema ?sc. + ?i a :Input . + ?i :hasSchema ?sc. } diff --git a/src/interaction.ttl b/src/interaction.ttl index 7869cd15..da9384db 100644 --- a/src/interaction.ttl +++ b/src/interaction.ttl @@ -17,8 +17,8 @@ # Ontology Description ################################################################# -hmas:interaction a owl:Ontology ; - owl:imports hmas:core ; +:interaction a owl:Ontology ; + owl:imports :core ; dct:title "Hypermedia MAS Interaction Ontology"@en, "Ontologie d'Interaction des SMA Hypermédias"@fr ; dct:description "An ontology to describe interaction in Hypermedia Multi-Agent Systems."@en, "L'ontologie pour décrire l'interaction dans les systèmes multi-agents hypermédias."@fr ; @@ -29,7 +29,7 @@ hmas:interaction a owl:Ontology ; dct:contributor ; cc:license ; vann:preferredNamespacePrefix "hmas" ; - vann:preferredNamespaceUri <#> . + vann:preferredNamespaceUri <> . schema:name "Inria" ; @@ -81,30 +81,30 @@ skos:note a owl:AnnotationProperty . # Classes ################################################################# -hmas:ActionExecution a owl:Class ; - rdfs:isDefinedBy hmas:interaction ; - rdfs:subClassOf hmas:BehaviorExecution ; +:ActionExecution a owl:Class ; + rdfs:isDefinedBy :interaction ; + rdfs:subClassOf :BehaviorExecution ; rdfs:comment "A behavior execution that is the execution of exactly one context-free action, e.g. of a context-free HTTP request."@en ; rdfs:label "action execution"@en . -hmas:ActionSpecification a owl:Class ; - rdfs:isDefinedBy hmas:interaction ; - rdfs:subClassOf hmas:BehaviorSpecification ; +:ActionSpecification a owl:Class ; + rdfs:isDefinedBy :interaction ; + rdfs:subClassOf :BehaviorSpecification ; rdfs:comment "A specification that describes an action (e.g., through preconditions and postconditions) and how to execute the action, e.g. as a context-free request through a form."@en ; rdfs:label "action specification"@en . -hmas:BehaviorExecution a owl:Class ; - rdfs:isDefinedBy hmas:interaction ; +:BehaviorExecution a owl:Class ; + rdfs:isDefinedBy :interaction ; rdfs:comment "A course of action performed by an agent upon exploiting a behavior possibility."@en ; rdfs:label "behavior execution"@en . -hmas:BehaviorSpecification a owl:Class ; - rdfs:isDefinedBy hmas:interaction ; +:BehaviorSpecification a owl:Class ; + rdfs:isDefinedBy :interaction ; rdfs:comment "A specification that describes a behavior, for example, as procedural knowledge (e.g., AgentSpeak plan) or code-on-demand (e.g., a script that implements a behavior)."@en ; rdfs:label "behavior specification"@en . -hmas:Input a owl:Class ; - rdfs:isDefinedBy hmas:interaction ; +:Input a owl:Class ; + rdfs:isDefinedBy :interaction ; rdfs:comment "An input of an action, which may include variables. The input may be used, for instance, in an action specification or in the representation of an action execution."@en ; rdfs:label "input"@en . @@ -112,27 +112,27 @@ hmas:Input a owl:Class ; # Object Properties ################################################################# -hmas:expectsInput a owl:ObjectProperty ; - rdfs:isDefinedBy hmas:interaction ; - rdfs:domain hmas:ActionSpecification ; - rdfs:range hmas:Input ; +:expectsInput a owl:ObjectProperty ; + rdfs:isDefinedBy :interaction ; + rdfs:domain :ActionSpecification ; + rdfs:range :Input ; rdfs:comment "A relation between an action specification and the input that the specified action expects."@en ; rdfs:label "expects input"@en . -hmas:hasForm a owl:ObjectProperty ; - rdfs:isDefinedBy hmas:interaction ; - rdfs:domain hmas:ActionSpecification ; +:hasForm a owl:ObjectProperty ; + rdfs:isDefinedBy :interaction ; + rdfs:domain :ActionSpecification ; rdfs:comment "A relation between an action specification and a form that describes how to execute the specified action."@en ; rdfs:label "has form"@en . -hmas:hasSchema a owl:ObjectProperty ; - rdfs:isDefinedBy hmas:interaction ; +:hasSchema a owl:ObjectProperty ; + rdfs:isDefinedBy :interaction ; rdfs:comment "A relation between an input and the schema of the input."@en ; rdfs:label "has schema"@en . -hmas:signifies a owl:ObjectProperty ; - rdfs:isDefinedBy hmas:interaction ; - rdfs:domain hmas:Signifier ; - rdfs:range hmas:BehaviorSpecification ; +:signifies a owl:ObjectProperty ; + rdfs:isDefinedBy :interaction ; + rdfs:domain :Signifier ; + rdfs:range :BehaviorSpecification ; rdfs:comment "A relation between a signifier and a behavior specification it signifies."@en ; rdfs:label "signifies"@en . From 2487e7be280855cf7a04bf874a8ffa7fe2d6274a Mon Sep 17 00:00:00 2001 From: danaivach Date: Fri, 9 Jun 2023 10:12:39 +0200 Subject: [PATCH 32/83] docs(discover-behavior-specs) rm repeated artifact --- .../discover-behavior-specifications/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/README.md b/domains/manufacturing-environments/discover-behavior-specifications/README.md index c5137bf1..fb056581 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/README.md +++ b/domains/manufacturing-environments/discover-behavior-specifications/README.md @@ -4,7 +4,7 @@ Feature: Discovery of Behavior Specifications ## Description -An agent is situated in a manufacturing workspace that contains a robotic arm artifact. The resource profile of the robotic arm artifact exposes a signifier that provides a specification describing how to exploit a behavior possibility, such as how to move the gripper of the robotic arm artifact. Specifically, it is an action specification that describes the behavior of moving the gripper as an action that: +An agent is situated in a manufacturing workspace that contains a robotic arm artifact. The resource profile of the robotic arm exposes a signifier that provides a specification describing how to exploit a behavior possibility, such as how to move the gripper of the robotic arm artifact. Specifically, it is an action specification that describes the behavior of moving the gripper as an action that: - is of type onto:SetGripper (https://ci.mines-stetienne.fr/kg/ontology#SetGripper), - expects an input of the schema onto:GripperJoint (https://ci.mines-stetienne.fr/kg/ontology#GripperJoint), and - can be executed via a hypermedia control from a set of hypermedia controls: The set of hypermedia controls contains two forms ⁠—⁠ a form describing an HTTP request, and a form describing a CoAP request. From 89f7bc129948e4e3567517280fa884d85c988b6d Mon Sep 17 00:00:00 2001 From: danaivach Date: Fri, 9 Jun 2023 10:14:39 +0200 Subject: [PATCH 33/83] Update README.md docs(discover-behavior-specs) correct artifact repetition --- .../discover-behavior-specifications/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/README.md b/domains/manufacturing-environments/discover-behavior-specifications/README.md index fb056581..97ceafc8 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/README.md +++ b/domains/manufacturing-environments/discover-behavior-specifications/README.md @@ -4,7 +4,7 @@ Feature: Discovery of Behavior Specifications ## Description -An agent is situated in a manufacturing workspace that contains a robotic arm artifact. The resource profile of the robotic arm exposes a signifier that provides a specification describing how to exploit a behavior possibility, such as how to move the gripper of the robotic arm artifact. Specifically, it is an action specification that describes the behavior of moving the gripper as an action that: +An agent is situated in a manufacturing workspace that contains a robotic arm artifact. The resource profile of the robotic arm artifact exposes a signifier that provides a specification describing how to exploit a behavior possibility, such as how to move the gripper of the robotic arm. Specifically, it is an action specification that describes the behavior of moving the gripper as an action that: - is of type onto:SetGripper (https://ci.mines-stetienne.fr/kg/ontology#SetGripper), - expects an input of the schema onto:GripperJoint (https://ci.mines-stetienne.fr/kg/ontology#GripperJoint), and - can be executed via a hypermedia control from a set of hypermedia controls: The set of hypermedia controls contains two forms ⁠—⁠ a form describing an HTTP request, and a form describing a CoAP request. From 1d74f317216fcfe50ee9f89d147ad0cb233c4736 Mon Sep 17 00:00:00 2001 From: danaivach Date: Fri, 9 Jun 2023 10:19:33 +0200 Subject: [PATCH 34/83] docs(discover-behavior-specs) clarify action-behavior spec --- .../discover-behavior-specifications/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/README.md b/domains/manufacturing-environments/discover-behavior-specifications/README.md index 97ceafc8..2745f096 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/README.md +++ b/domains/manufacturing-environments/discover-behavior-specifications/README.md @@ -4,7 +4,7 @@ Feature: Discovery of Behavior Specifications ## Description -An agent is situated in a manufacturing workspace that contains a robotic arm artifact. The resource profile of the robotic arm artifact exposes a signifier that provides a specification describing how to exploit a behavior possibility, such as how to move the gripper of the robotic arm. Specifically, it is an action specification that describes the behavior of moving the gripper as an action that: +An agent is situated in a manufacturing workspace that contains a robotic arm artifact. The resource profile of the robotic arm artifact exposes a signifier that provides a specification describing how to exploit a behavior possibility, such as how to move the gripper of the robotic arm. Specifically, it is a behavior specification that defines a single action that specifies the moving of the gripper. This action specification: - is of type onto:SetGripper (https://ci.mines-stetienne.fr/kg/ontology#SetGripper), - expects an input of the schema onto:GripperJoint (https://ci.mines-stetienne.fr/kg/ontology#GripperJoint), and - can be executed via a hypermedia control from a set of hypermedia controls: The set of hypermedia controls contains two forms ⁠—⁠ a form describing an HTTP request, and a form describing a CoAP request. From d141cfd1cf64f12cfac6c3bed005ee9370b20437 Mon Sep 17 00:00:00 2001 From: danaivach Date: Fri, 9 Jun 2023 10:28:23 +0200 Subject: [PATCH 35/83] docs(discover-behavior-specs) format ontology terms --- .../discover-behavior-specifications/README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/README.md b/domains/manufacturing-environments/discover-behavior-specifications/README.md index 2745f096..90c085ee 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/README.md +++ b/domains/manufacturing-environments/discover-behavior-specifications/README.md @@ -5,11 +5,11 @@ Feature: Discovery of Behavior Specifications ## Description An agent is situated in a manufacturing workspace that contains a robotic arm artifact. The resource profile of the robotic arm artifact exposes a signifier that provides a specification describing how to exploit a behavior possibility, such as how to move the gripper of the robotic arm. Specifically, it is a behavior specification that defines a single action that specifies the moving of the gripper. This action specification: -- is of type onto:SetGripper (https://ci.mines-stetienne.fr/kg/ontology#SetGripper), -- expects an input of the schema onto:GripperJoint (https://ci.mines-stetienne.fr/kg/ontology#GripperJoint), and +- is of type `onto:SetGripper` (https://ci.mines-stetienne.fr/kg/ontology#SetGripper), +- expects an input of the schema `onto:GripperJoint` (https://ci.mines-stetienne.fr/kg/ontology#GripperJoint), and - can be executed via a hypermedia control from a set of hypermedia controls: The set of hypermedia controls contains two forms ⁠—⁠ a form describing an HTTP request, and a form describing a CoAP request. -The agent has discovered the signifier and has the objective of behaving based on the signified SP. To this end, the agent provides an input of the schema onto:GripperJoint, and sends an HTTP request based on one of the forms. +The agent has discovered the signifier and has the objective of behaving based on the signified SP. To this end, the agent provides an input of the schema `onto:GripperJoint`, and sends an HTTP request based on one of the forms. ## Competency Questions @@ -41,7 +41,7 @@ The agent has discovered the signifier and has the objective of behaving based o ## Recommendations - A signifier can signify a behavior specification for revealing information about how to exploit the relevant behavior possibility. -- This scenario focuses on signifying a behavior specification that is the specification of exactly one action. However, a signifier may concern a behavior that is more generic than a single action execution. In the latter case, implementation details (e.g. an [hctl:Form](https://www.w3.org/2019/wot/hypermedia#Form)) will remain attached directly to the actions of the specified behavior, and not the behavior specification itself. The above aim to the following: +- This scenario focuses on signifying a behavior specification that is the specification of exactly one action. However, a signifier may concern a behavior that is more generic than a single action execution. In the latter case, implementation details (e.g. an [`hctl:Form`](https://www.w3.org/2019/wot/hypermedia#Form)) will remain attached directly to the actions of the specified behavior, and not the behavior specification itself. The above aim to the following: - To enable the action-oriented design of hypermedia by keeping the implementation details attached to a specified action, considering that this is a simple design style, and a style easily relatable to how signifiers are used on the Web. - To preserve the freedom of designers to create signifiers that concern behaviors with higher-level semantics on top of actions. - To enable extension points for defining behaviors based on how human agents reason about action and perform behaviors when exploiting behavior possibilities. From 54cc803bbe541bd406ba75a87de75ee216d57289 Mon Sep 17 00:00:00 2001 From: danaivach Date: Fri, 9 Jun 2023 10:32:13 +0200 Subject: [PATCH 36/83] docs(discover-behavior-specs) extend CoAP acronym --- .../discover-behavior-specifications/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/README.md b/domains/manufacturing-environments/discover-behavior-specifications/README.md index 90c085ee..966e6904 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/README.md +++ b/domains/manufacturing-environments/discover-behavior-specifications/README.md @@ -7,7 +7,7 @@ Feature: Discovery of Behavior Specifications An agent is situated in a manufacturing workspace that contains a robotic arm artifact. The resource profile of the robotic arm artifact exposes a signifier that provides a specification describing how to exploit a behavior possibility, such as how to move the gripper of the robotic arm. Specifically, it is a behavior specification that defines a single action that specifies the moving of the gripper. This action specification: - is of type `onto:SetGripper` (https://ci.mines-stetienne.fr/kg/ontology#SetGripper), - expects an input of the schema `onto:GripperJoint` (https://ci.mines-stetienne.fr/kg/ontology#GripperJoint), and -- can be executed via a hypermedia control from a set of hypermedia controls: The set of hypermedia controls contains two forms ⁠—⁠ a form describing an HTTP request, and a form describing a CoAP request. +- can be executed via a hypermedia control from a set of hypermedia controls: The set of hypermedia controls contains two forms ⁠—⁠ a form describing an HTTP request, and a form describing a request based on the Constrained Application Protocol (CoAP). The agent has discovered the signifier and has the objective of behaving based on the signified SP. To this end, the agent provides an input of the schema `onto:GripperJoint`, and sends an HTTP request based on one of the forms. From 684a250359bf81ca6f69d590c8d8b0c4d5780458 Mon Sep 17 00:00:00 2001 From: danaivach Date: Fri, 9 Jun 2023 10:37:20 +0200 Subject: [PATCH 37/83] docs(discover-behavior-specs) rm SP; action vs behavior spec update --- .../discover-behavior-specifications/README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/README.md b/domains/manufacturing-environments/discover-behavior-specifications/README.md index 966e6904..ed1df103 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/README.md +++ b/domains/manufacturing-environments/discover-behavior-specifications/README.md @@ -4,13 +4,13 @@ Feature: Discovery of Behavior Specifications ## Description -An agent is situated in a manufacturing workspace that contains a robotic arm artifact. The resource profile of the robotic arm artifact exposes a signifier that provides a specification describing how to exploit a behavior possibility, such as how to move the gripper of the robotic arm. Specifically, it is a behavior specification that defines a single action that specifies the moving of the gripper. This action specification: +An agent is situated in a manufacturing workspace that contains a robotic arm artifact. The resource profile of the robotic arm artifact exposes a signifier that provides a specification describing how to exploit a behavior possibility, such as how to move the gripper of the robotic arm. Specifically, it is a behavior specification that specifies a single action of moving the gripper. This behavior specification is an action specification that: - is of type `onto:SetGripper` (https://ci.mines-stetienne.fr/kg/ontology#SetGripper), - expects an input of the schema `onto:GripperJoint` (https://ci.mines-stetienne.fr/kg/ontology#GripperJoint), and - can be executed via a hypermedia control from a set of hypermedia controls: The set of hypermedia controls contains two forms ⁠—⁠ a form describing an HTTP request, and a form describing a request based on the Constrained Application Protocol (CoAP). -The agent has discovered the signifier and has the objective of behaving based on the signified SP. To this end, the agent provides an input of the schema `onto:GripperJoint`, and sends an HTTP request based on one of the forms. - +The agent has discovered the signifier and has the objective of behaving based on the signified behavior specification (here, the signified action specification). To this end, the agent provides an input of the schema `onto:GripperJoint`, and sends an HTTP request based on one of the forms. + ## Competency Questions | ID | Question in Natural Language | Example | From 0455c46884f6f98710e1f931201bbd9a7348801f Mon Sep 17 00:00:00 2001 From: danaivach Date: Fri, 9 Jun 2023 10:43:14 +0200 Subject: [PATCH 38/83] docs(discover-behavior-specs) replace action with action specification --- .../discover-behavior-specifications/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/README.md b/domains/manufacturing-environments/discover-behavior-specifications/README.md index ed1df103..8ea0866f 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/README.md +++ b/domains/manufacturing-environments/discover-behavior-specifications/README.md @@ -17,8 +17,8 @@ The agent has discovered the signifier and has the objective of behaving based o |----|------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------| | q1 | What are the behavior specifications that a given signifier signifies? | Behavior specifications that signifier `ex:gripperMovable` signifies: `ex:moveGripper` | | q2 | What are the action specifications that a given signifier signifies? | Action specifications that signifier `ex:gripperMovable` signifies: `ex:moveGripper` | -| q3 | What are the forms that describe how to execute a given specified action? | Forms that describe how to execute moving the gripper of the robotic arm artifact based on `ex:moveGripper`: `ex:httpForm`, `ex:coapForm` | -| q4 | What is the input that is expected by a given specified action? | Input that is expected for moving the gripper of the robotic arm artifact based on `ex:moveGripper`: `ex:gripperJoint` | +| q3 | What are the forms that describe how to execute an action based on a given action specification? | Forms that describe how to execute moving the gripper of the robotic arm artifact based on `ex:moveGripper`: `ex:httpForm`, `ex:coapForm` | +| q4 | What is the input that is expected to execute an action based on a given action specification? | Input that is expected for moving the gripper of the robotic arm artifact based on `ex:moveGripper`: `ex:gripperJoint` | | q5 | What are the schemas of a given expected input? | Schemas of the expected input `ex:moveGripper`: `ex:gripperJointSchema` | From 7497157ab22607948b6127eacda9e39dc447c158 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 6 Jul 2023 10:01:21 +0200 Subject: [PATCH 39/83] Update README.md Update based on #109 --- .../README.md | 47 +++++++++---------- 1 file changed, 23 insertions(+), 24 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/README.md b/domains/manufacturing-environments/discover-behavior-specifications/README.md index 8ea0866f..ce89c52f 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/README.md +++ b/domains/manufacturing-environments/discover-behavior-specifications/README.md @@ -4,40 +4,39 @@ Feature: Discovery of Behavior Specifications ## Description -An agent is situated in a manufacturing workspace that contains a robotic arm artifact. The resource profile of the robotic arm artifact exposes a signifier that provides a specification describing how to exploit a behavior possibility, such as how to move the gripper of the robotic arm. Specifically, it is a behavior specification that specifies a single action of moving the gripper. This behavior specification is an action specification that: -- is of type `onto:SetGripper` (https://ci.mines-stetienne.fr/kg/ontology#SetGripper), -- expects an input of the schema `onto:GripperJoint` (https://ci.mines-stetienne.fr/kg/ontology#GripperJoint), and -- can be executed via a hypermedia control from a set of hypermedia controls: The set of hypermedia controls contains two forms ⁠—⁠ a form describing an HTTP request, and a form describing a request based on the Constrained Application Protocol (CoAP). +An agent is situated in a manufacturing workspace that contains a robotic arm artifact. In the same workspace, a signifier signifies information about how to exploit a behavior possibility offered by the robotic arm artifact, specifically, information about how to move the gripper of the robotic arm. This information specifies a set of contraints on how to execute the action of moving the gripper: +- the action execution should have an [`onto:GripperJoint`](https://ci.mines-stetienne.fr/kg/ontology#GripperJoint) as input; +- the action execution should use on of the following hypermedia controls: + - a form describing an HTTP request, + - a form describing a request based on the Constrained Application Protocol (CoAP). -The agent has discovered the signifier and has the objective of behaving based on the signified behavior specification (here, the signified action specification). To this end, the agent provides an input of the schema `onto:GripperJoint`, and sends an HTTP request based on one of the forms. +The agent discovers the signifier, that is exposed in the profile of the robotic arm artifact. Based on the signified information, the agent moves the gripper by providing an [`onto:GripperJoint`](https://ci.mines-stetienne.fr/kg/ontology#GripperJoint) as input, and sends an HTTP request based on one of the forms. ## Competency Questions | ID | Question in Natural Language | Example | |----|------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------| -| q1 | What are the behavior specifications that a given signifier signifies? | Behavior specifications that signifier `ex:gripperMovable` signifies: `ex:moveGripper` | -| q2 | What are the action specifications that a given signifier signifies? | Action specifications that signifier `ex:gripperMovable` signifies: `ex:moveGripper` | -| q3 | What are the forms that describe how to execute an action based on a given action specification? | Forms that describe how to execute moving the gripper of the robotic arm artifact based on `ex:moveGripper`: `ex:httpForm`, `ex:coapForm` | -| q4 | What is the input that is expected to execute an action based on a given action specification? | Input that is expected for moving the gripper of the robotic arm artifact based on `ex:moveGripper`: `ex:gripperJoint` | -| q5 | What are the schemas of a given expected input? | Schemas of the expected input `ex:moveGripper`: `ex:gripperJointSchema` | +| q1 | What is the action execution specification that a given signifier signifies? | Specification that signifier `ex:gripperMovable` signifies: `ex:moveGripper` | +| q2 | What are the constraints on the input that an action execution should have based on a given specification? | Constaints on the input that the execution of moving the gripper should have based on `ex:moveGripper`: `ex:gripperJoint` | +| q3 | What are forms that an action execution should use based on a given specification? | Forms that the execution of moving the gripper should use based on `ex:moveGripper`: `ex:httpForm`, `ex:coapForm` | + ## Glossary - **Behavior Execution**: A course of action performed by an agent upon exploiting a behavior possibility. -- **Action Execution**: A behavior execution that is the execution of exactly one context-free action, e.g. of a context-free HTTP request. -- **Behavior Specification**: A specification that describes a behavior, for example, as procedural knowledge (e.g., AgentSpeak plan) or code-on-demand (e.g., a script that implements a behavior). -- **Action Specification**: A specification that describes an action (e.g., through preconditions and postconditions) and how to execute the action, e.g. as a context-free request through a form. -- **Form**: A hypermedia control that describes how to execute an action as defined here: https://www.w3.org/2019/wot/hypermedia#Form. -- **Input**: An input of an action, which may include variables. The input may be used, for instance, in an action specification or in the representation of an action execution. -- **Schema**: The schema of an input. For example, the schema may be a JSON data schema (https://www.w3.org/2019/wot/json-schema#DataSchema) or a SHACL shape (http://www.w3.org/ns/shacl#Shape). -- **Signification of Behavior**: The act of revealing information about how to exploit a behavior possibility. -- **Workspace**: see [_Other scenario TBA_](). -- **Resource Containment**: see [_Other scenario TBA_](). -- **Artifact**: see [_Other scenario TBA_](). -- **Agent**: see [_Other scenario TBA_](). -- **Resource Profile**: see [_Other scenario TBA_](). -- **Signifier**: see [_Other scenario TBA_](). -- **Signifier Exposure**: see [_Other scenario TBA_](). +- **Action Execution**: A behavior execution that is the execution of exactly one context-free action, e.g. of a context-free HTTP request. +- **Input**: An input of an action, for example, in the representation of an action execution. +- **Form**: A hypermedia control that describes how to execute an action as defined here, for example, an [`hctl:Form`](https://www.w3.org/2019/wot/hypermedia#Form). +- **Signification of Behavior**: The act of revealing information about how to exploit a behavior possibility. +- **Signifier**: see [Discovery of Signifiers](../discover-signifiers/README.md). +- **Signifier Exposure**: see [Discovery of Signifiers](../discover-signifiers/README.md). +- **Situatedness**: see [Discovery of Signifiers](../discover-signifiers/README.md). +- **Workspace**: see [Discovery of Workspaces, Agents, and Artifacts in Hypermedia Environments](../discover-core/README.md). +- **Resource Containment**: see [Discovery of Workspaces, Agents, and Artifacts in Hypermedia Environments](../discover-core/README.md). +- **Artifact**: see [Discovery of Workspaces, Agents, and Artifacts in Hypermedia Environments](../discover-core/README.md). +- **Agent**: see [Discovery of Workspaces, Agents, and Artifacts in Hypermedia Environments](../discover-core/README.md). +- **Resource Profile**: see [Discovery of Workspaces, Agents, and Artifacts in Hypermedia Environments](../discover-core/README.md). + ## Recommendations - A signifier can signify a behavior specification for revealing information about how to exploit the relevant behavior possibility. From 8ca244b588d563db177b3beb1277b8db609d83f8 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 6 Jul 2023 10:41:30 +0200 Subject: [PATCH 40/83] Update based on #116 --- .../dataset.ttl | 48 ++++++++++++------- 1 file changed, 32 insertions(+), 16 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl b/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl index f4309f12..388ed656 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl +++ b/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl @@ -1,8 +1,10 @@ @prefix : . -@prefix phantom: . +@prefix onto: . @prefix hctl: . @prefix htv: . -@prefix js: . +@prefix sh: . +@prefix prov: . +@prefix xs: . @prefix ex: . ex:ur5Profile a :ResourceProfile; @@ -11,23 +13,37 @@ ex:ur5Profile a :ResourceProfile; ex:gripperMovable a :Signifier ; :signifies ex:moveGripper . -ex:moveGripper a :ActionSpecification, phantom:SetGripper ; - :hasForm ex:httpForm ; - :hasForm ex:coapForm ; - :expectsInput ex:gripperJoint . +ex:moveGripperShape a sh:NodeShape; + sh:class :ActionExecution ; + sh:property [ + sh:path prov:used ; + sh:minCount 1; + sh:maxCount 1 ; + sh:or ( + [ sh:hasValue ex:httpForm ] + [ sh:hasValue ex:coapForm ] + ) ; + ] ; + sh:property [ + sh:path :hasInput; + sh:qualifiedValueShape ex:gripperJointShape ; + sh:qualifiedMinCount 1 ; + sh:qualifiedMaxCount 1 + ] . + +ex:gripperJointShape a sh:NodeShape ; + sh:class onto:GripperJoint ; + sh:property [ + sh:path ex:hasGripperValue ; + sh:minCount 1; + sh:maxCount 1 ; + sh:datatype xs:integer + ] . ex:httpForm a hctl:Form; htv:methodName "PUT"; - hctl:hasTarget . + hctl:hasTarget . ex:coapForm a hctl:Form; htv:methodName "PUT"; - hctl:hasTarget . - -ex:gripperJoint a :Input ; - :hasSchema ex:gripperJointSchema . - -ex:gripperJointSchema a js:ObjectSchema, phantom:GripperJoint ; - js:properties [ a js:IntegerSchema ; - js:propertyName "phantom:hasGripperValue" - ] . + hctl:hasTarget . From cf3ac1925e9e97b9d7fb7e836c39c704926ccd16 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 6 Jul 2023 10:46:38 +0200 Subject: [PATCH 41/83] Update based on #109 --- .../discover-behavior-specifications/onto.ttl | 30 +++---------------- 1 file changed, 4 insertions(+), 26 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl b/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl index f93c7e68..3a3af7bb 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl +++ b/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl @@ -12,48 +12,26 @@ rdfs:comment "A behavior execution that is the execution of exactly one context-free action, e.g. of a context-free HTTP request."@en ; rdfs:label "action execution"@en . -:ActionSpecification a owl:Class ; - rdfs:isDefinedBy :interaction ; - rdfs:subClassOf :BehaviorSpecification ; - rdfs:comment "A specification that describes an action (e.g., through preconditions and postconditions) and how to execute the action, e.g. as a context-free request through a form."@en ; - rdfs:label "action specification"@en . - :BehaviorExecution a owl:Class ; rdfs:isDefinedBy :interaction ; rdfs:comment "A course of action performed by an agent upon exploiting a behavior possibility."@en ; rdfs:label "behavior execution"@en . -:BehaviorSpecification a owl:Class ; - rdfs:isDefinedBy :interaction ; - rdfs:comment "A specification that describes a behavior, for example, as procedural knowledge (e.g., AgentSpeak plan) or code-on-demand (e.g., a script that implements a behavior)."@en ; - rdfs:label "behavior specification"@en . - :Input a owl:Class ; rdfs:isDefinedBy :interaction ; - rdfs:comment "An input of an action, which may include variables. The input may be used, for instance, in an action specification or in the representation of an action execution."@en ; + rdfs:comment "An input of an action, for example, in the representation of an action execution."@en ; rdfs:label "input"@en . ################################################################# # Object Properties ################################################################# -:expectsInput a owl:ObjectProperty ; +:hasInput a owl:ObjectProperty ; rdfs:isDefinedBy :interaction ; rdfs:domain :ActionSpecification ; rdfs:range :Input ; - rdfs:comment "A relation between an action specification and the input that the specified action expects."@en ; - rdfs:label "expects input"@en . - -:hasForm a owl:ObjectProperty ; - rdfs:isDefinedBy :interaction ; - rdfs:domain :ActionSpecification ; - rdfs:comment "A relation between an action specification and a form that describes how to execute the specified action."@en ; - rdfs:label "has form"@en . - -:hasSchema a owl:ObjectProperty ; - rdfs:isDefinedBy :interaction ; - rdfs:comment "A relation between an input and the schema of the input."@en ; - rdfs:label "has schema"@en . + rdfs:comment "A relation between an action execution and the input that it has."@en ; + rdfs:label "has input"@en . :signifies a owl:ObjectProperty ; rdfs:isDefinedBy :interaction ; From 6c01f6e53ddf04e5507792da35d881ac61436216 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 6 Jul 2023 10:51:36 +0200 Subject: [PATCH 42/83] fix(discover-behavior-specs) moveGripper to moveGripperShape --- .../discover-behavior-specifications/dataset.ttl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl b/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl index 388ed656..2491ba73 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl +++ b/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl @@ -11,7 +11,7 @@ ex:ur5Profile a :ResourceProfile; :exposesSignifier ex:gripperMovable . ex:gripperMovable a :Signifier ; - :signifies ex:moveGripper . + :signifies ex:moveGripperShape . ex:moveGripperShape a sh:NodeShape; sh:class :ActionExecution ; From 5a63ce2487961b1ec1e7dacf4a37217e5b1fd9ec Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 6 Jul 2023 10:52:11 +0200 Subject: [PATCH 43/83] feat(discover-behavior-specs) q1 response --- .../discover-behavior-specifications/q1.csv | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 domains/manufacturing-environments/discover-behavior-specifications/q1.csv diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q1.csv b/domains/manufacturing-environments/discover-behavior-specifications/q1.csv new file mode 100644 index 00000000..5f508014 --- /dev/null +++ b/domains/manufacturing-environments/discover-behavior-specifications/q1.csv @@ -0,0 +1,2 @@ +actionExecutionSpec +http://example.org/moveGripperShape From 409365d89d9d688ea02653bcad4e7df198fcae0f Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 6 Jul 2023 10:54:45 +0200 Subject: [PATCH 44/83] feat(discover-behavior-specs) csv with commas --- .../discover-behavior-specifications/q1.csv | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q1.csv b/domains/manufacturing-environments/discover-behavior-specifications/q1.csv index 5f508014..9b9d49d3 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q1.csv +++ b/domains/manufacturing-environments/discover-behavior-specifications/q1.csv @@ -1,2 +1,2 @@ -actionExecutionSpec -http://example.org/moveGripperShape +actionExecutionSpec, +http://example.org/moveGripperShape, From 88c7ef1b55a62204045fbbac4cb430fa200f5eae Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 6 Jul 2023 11:22:52 +0200 Subject: [PATCH 45/83] refactor(discover-behavior-specs) based on #116 --- .../discover-behavior-specifications/q1.rq | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q1.rq b/domains/manufacturing-environments/discover-behavior-specifications/q1.rq index 8c65d895..4206e9ce 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q1.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q1.rq @@ -1,9 +1,12 @@ prefix : prefix ex: +prefix sh: -ask { - bind (ex:gripperMovable as ?s) - bind (ex:moveGripper as ?sp) - ?s a :Signifier . - ?s :signifies ?sp . +select ?actionExecutionSpec +where { + ex:gripperMovable a :Signifier . + ex:gripperMovable :signifies ?actionExecutionSpec . + ?actionExecutionSpec a sh:NodeShape . + ?actionExecutionSpec sh:class :ActionExecution . } +order by ?actionExecutionSpec From 314d546b8b726082b3ec8c3448c8254e343abb60 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 6 Jul 2023 11:31:20 +0200 Subject: [PATCH 46/83] feat(discover-behavior-specs) add queries for input --- .../discover-behavior-specifications/README.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/README.md b/domains/manufacturing-environments/discover-behavior-specifications/README.md index ce89c52f..e5a4b927 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/README.md +++ b/domains/manufacturing-environments/discover-behavior-specifications/README.md @@ -16,9 +16,11 @@ The agent discovers the signifier, that is exposed in the profile of the robotic | ID | Question in Natural Language | Example | |----|------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------| -| q1 | What is the action execution specification that a given signifier signifies? | Specification that signifier `ex:gripperMovable` signifies: `ex:moveGripper` | -| q2 | What are the constraints on the input that an action execution should have based on a given specification? | Constaints on the input that the execution of moving the gripper should have based on `ex:moveGripper`: `ex:gripperJoint` | -| q3 | What are forms that an action execution should use based on a given specification? | Forms that the execution of moving the gripper should use based on `ex:moveGripper`: `ex:httpForm`, `ex:coapForm` | +| q1 | What is the action execution specification that a given signifier signifies? | Specification that signifier `ex:gripperMovable` signifies: `ex:moveGripperShape` | +| q2 | What are the constraints on the input that an action execution should have based on a given specification? | Constaints on the input that the execution of moving the gripper should have based on `ex:moveGripper`: `ex:gripperJointShape` | +| q3 | What is the type of the input that an action execution should have based on a given specification? | Type of the input that the execution of moving the gripper should have based on `ex:moveGripper`: `onto:GripperJoint` | +| q4 | What are the properties that the input of an action execution should have based on a given specification? | Properties of the input that the execution of moving the gripper should have based on `ex:moveGripper`: `ex:hasGripperValue` | +| q5 | What are forms that an action execution should use based on a given specification? | Forms that the execution of moving the gripper should use based on `ex:moveGripper`: `ex:httpForm`, `ex:coapForm` | From ff1912c4d4db2c2eec5ddf6ca3e7bcffe447eb36 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 6 Jul 2023 11:38:05 +0200 Subject: [PATCH 47/83] refactor(discover-behavior-specs) based on #116 --- .../discover-behavior-specifications/q2.rq | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q2.rq b/domains/manufacturing-environments/discover-behavior-specifications/q2.rq index 95d04809..12b9a75f 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q2.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q2.rq @@ -1,10 +1,11 @@ prefix : prefix ex: +prefix sh: -ask { - bind (ex:gripperMovable as ?s) - bind (ex:moveGripper as ?sp) - ?s a :Signifier . - ?sp a :ActionSpecification . - ?s :signifies ?sp . +select ?inputSpec +where { + ex:moveGripperShape sh:property ?propertySpec . + ?propertySpec sh:path :hasInput . + ?propertySpec sh:qualifiedValueShape ?inputSpec . } +order by ?inputSpec From eb6a3529dd58445a6da4a7f99f250e1bc88e1001 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 6 Jul 2023 11:39:58 +0200 Subject: [PATCH 48/83] feat(discover-behavior-specs) q2 response --- .../discover-behavior-specifications/q2.csv | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 domains/manufacturing-environments/discover-behavior-specifications/q2.csv diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q2.csv b/domains/manufacturing-environments/discover-behavior-specifications/q2.csv new file mode 100644 index 00000000..f86076d4 --- /dev/null +++ b/domains/manufacturing-environments/discover-behavior-specifications/q2.csv @@ -0,0 +1,2 @@ +inputSpec, +http://example.org/gripperJointShape, From 8b5bd7a001ccff479ec98abf6c83d22ba99097c4 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 6 Jul 2023 11:43:25 +0200 Subject: [PATCH 49/83] refactor(discover-behavior-specs) based on #116 --- .../discover-behavior-specifications/q3.rq | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q3.rq b/domains/manufacturing-environments/discover-behavior-specifications/q3.rq index 567d4043..f65edf95 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q3.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q3.rq @@ -1,14 +1,12 @@ prefix : -prefix hctl: prefix ex: +prefix sh: -ask { - bind (ex:httpForm as ?f1) - bind (ex:coapForm as ?f2) - bind (ex:moveGripper as ?sp) - ?f1 a hctl:Form . - ?f2 a hctl:Form . - ?sp a :ActionSpecification . - ?sp :hasForm ?f1 . - ?sp :hasForm ?f2 . +select ?inputType +where { + ex:moveGripperShape sh:property ?propertySpec . + ?propertySpec sh:path :hasInput . + ?propertySpec sh:qualifiedValueShape ?inputSpec . + ?inputSpec sh:class ?inputType . } +order by ?inputType From b6f1e589ba6b0b527315011a039f3f10619af82c Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 6 Jul 2023 11:46:02 +0200 Subject: [PATCH 50/83] feat(discover-behavior-specs) q3 response --- .../discover-behavior-specifications/q3.csv | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 domains/manufacturing-environments/discover-behavior-specifications/q3.csv diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q3.csv b/domains/manufacturing-environments/discover-behavior-specifications/q3.csv new file mode 100644 index 00000000..1d8ccd16 --- /dev/null +++ b/domains/manufacturing-environments/discover-behavior-specifications/q3.csv @@ -0,0 +1,2 @@ +inputType, +https://ci.mines-stetienne.fr/kg/ontology#GripperJoint, From c8bf864a79f6019956a1b15d68fa2c1e30548618 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 6 Jul 2023 11:50:00 +0200 Subject: [PATCH 51/83] refactor(discover-behavior-specs) based on #116 --- .../discover-behavior-specifications/q4.rq | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q4.rq b/domains/manufacturing-environments/discover-behavior-specifications/q4.rq index dc2ff180..2180b307 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q4.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q4.rq @@ -1,10 +1,13 @@ prefix : prefix ex: +prefix sh: -ask { - bind (ex:gripperJoint as ?i) - bind (ex:moveGripper as ?sp) - ?i a :Input . - ?sp a :ActionSpecification . - ?sp :expectsInput ?i . +select ?inputProperty +where { + ex:moveGripperShape sh:property ?propertySpec . + ?propertySpec sh:path :hasInput . + ?propertySpec sh:qualifiedValueShape ?inputSpec . + ?inputSpec sh:property ?inputPropertySpec . + ?inputPropertySpec sh:path ?inputProperty . } +order by ?inputProperty From 62353fc12aa95c81d302a1b0b20808f87a862183 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 6 Jul 2023 11:51:56 +0200 Subject: [PATCH 52/83] feat(discover-behavior-specs) q4 response --- .../discover-behavior-specifications/q4.csv | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 domains/manufacturing-environments/discover-behavior-specifications/q4.csv diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q4.csv b/domains/manufacturing-environments/discover-behavior-specifications/q4.csv new file mode 100644 index 00000000..06aa089c --- /dev/null +++ b/domains/manufacturing-environments/discover-behavior-specifications/q4.csv @@ -0,0 +1,2 @@ +inputProperty, +http://example.org/hasGripperValue, From ace28b57b52bac4c775a1ab0bc5d22c0424594f4 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 6 Jul 2023 11:54:00 +0200 Subject: [PATCH 53/83] refactor(discover-behavior-specs) moveGripper to moveGripperShape --- .../discover-behavior-specifications/README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/README.md b/domains/manufacturing-environments/discover-behavior-specifications/README.md index e5a4b927..d932dca0 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/README.md +++ b/domains/manufacturing-environments/discover-behavior-specifications/README.md @@ -17,10 +17,10 @@ The agent discovers the signifier, that is exposed in the profile of the robotic | ID | Question in Natural Language | Example | |----|------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------| | q1 | What is the action execution specification that a given signifier signifies? | Specification that signifier `ex:gripperMovable` signifies: `ex:moveGripperShape` | -| q2 | What are the constraints on the input that an action execution should have based on a given specification? | Constaints on the input that the execution of moving the gripper should have based on `ex:moveGripper`: `ex:gripperJointShape` | -| q3 | What is the type of the input that an action execution should have based on a given specification? | Type of the input that the execution of moving the gripper should have based on `ex:moveGripper`: `onto:GripperJoint` | -| q4 | What are the properties that the input of an action execution should have based on a given specification? | Properties of the input that the execution of moving the gripper should have based on `ex:moveGripper`: `ex:hasGripperValue` | -| q5 | What are forms that an action execution should use based on a given specification? | Forms that the execution of moving the gripper should use based on `ex:moveGripper`: `ex:httpForm`, `ex:coapForm` | +| q2 | What are the constraints on the input that an action execution should have based on a given specification? | Constaints on the input that the execution of moving the gripper should have based on `ex:moveGripperShape`: `ex:gripperJointShape` | +| q3 | What is the type of the input that an action execution should have based on a given specification? | Type of the input that the execution of moving the gripper should have based on `ex:moveGripperShape`: `onto:GripperJoint` | +| q4 | What are the properties that the input of an action execution should have based on a given specification? | Properties of the input that the execution of moving the gripper should have based on `ex:moveGripperShape`: `ex:hasGripperValue` | +| q5 | What are forms that an action execution should use based on a given specification? | Forms that the execution of moving the gripper should use based on `ex:moveGripperShape`: `ex:httpForm`, `ex:coapForm` | From 013460300cfbbf8f277e66973a18c18bb8ae841d Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 6 Jul 2023 12:09:16 +0200 Subject: [PATCH 54/83] refactor(discover-behavior-specs) based on #116 --- .../discover-behavior-specifications/q5.rq | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q5.rq b/domains/manufacturing-environments/discover-behavior-specifications/q5.rq index 275ef003..afee481f 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q5.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q5.rq @@ -1,8 +1,17 @@ prefix : +prefix ex: +prefix sh: +prefix prov: -ask { - bind (ex:gripperJointSchema as ?sc) - bind (ex:gripperJoint as ?i) - ?i a :Input . - ?i :hasSchema ?sc. +select ?form +where { + ex:moveGripperShape sh:property ?propertySpec . + ?propertySpec sh:path prov:used . + { ?propertySpec sh:hasValue ?form . } + union + { ?propertySpec sh:or ?formShapeList . + ?formShapeList rdf:rest*/rdf:first ?formShape . + ?formShape sh:hasValue ?form . + } } +order by ?form From 65497b698b3504d9755daa38497722404e45a2d7 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 6 Jul 2023 12:11:59 +0200 Subject: [PATCH 55/83] feat(discover-behavior-specs) q5 response --- .../discover-behavior-specifications/q5.csv | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 domains/manufacturing-environments/discover-behavior-specifications/q5.csv diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q5.csv b/domains/manufacturing-environments/discover-behavior-specifications/q5.csv new file mode 100644 index 00000000..60eb6a8f --- /dev/null +++ b/domains/manufacturing-environments/discover-behavior-specifications/q5.csv @@ -0,0 +1,3 @@ +form, +http://example.org/coapForm>, +http://example.org/httpForm, From c0f2c06e09910f90b1efed068edd43cfa6e509c7 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 6 Jul 2023 12:14:30 +0200 Subject: [PATCH 56/83] style(discover-behavior-specs) q3 indentation --- .../discover-behavior-specifications/q3.rq | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q3.rq b/domains/manufacturing-environments/discover-behavior-specifications/q3.rq index f65edf95..92c1ca00 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q3.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q3.rq @@ -5,8 +5,8 @@ prefix sh: select ?inputType where { ex:moveGripperShape sh:property ?propertySpec . - ?propertySpec sh:path :hasInput . - ?propertySpec sh:qualifiedValueShape ?inputSpec . + ?propertySpec sh:path :hasInput . + ?propertySpec sh:qualifiedValueShape ?inputSpec . ?inputSpec sh:class ?inputType . } order by ?inputType From 0cf83f16b0100f685cc02c62ef39815380825a40 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 6 Jul 2023 12:15:45 +0200 Subject: [PATCH 57/83] style(discover-behavior-specs) q4 indentation --- .../discover-behavior-specifications/q4.rq | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q4.rq b/domains/manufacturing-environments/discover-behavior-specifications/q4.rq index 2180b307..3511ba02 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q4.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q4.rq @@ -5,8 +5,8 @@ prefix sh: select ?inputProperty where { ex:moveGripperShape sh:property ?propertySpec . - ?propertySpec sh:path :hasInput . - ?propertySpec sh:qualifiedValueShape ?inputSpec . + ?propertySpec sh:path :hasInput . + ?propertySpec sh:qualifiedValueShape ?inputSpec . ?inputSpec sh:property ?inputPropertySpec . ?inputPropertySpec sh:path ?inputProperty . } From 42a8bc95a992db68d3a3f70ded57e12a48537fd8 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 6 Jul 2023 12:17:21 +0200 Subject: [PATCH 58/83] style(discover-behavior-specs) q5 indentation --- .../discover-behavior-specifications/q5.rq | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q5.rq b/domains/manufacturing-environments/discover-behavior-specifications/q5.rq index afee481f..258e5cb0 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q5.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q5.rq @@ -5,13 +5,16 @@ prefix prov: select ?form where { - ex:moveGripperShape sh:property ?propertySpec . - ?propertySpec sh:path prov:used . - { ?propertySpec sh:hasValue ?form . } - union - { ?propertySpec sh:or ?formShapeList . - ?formShapeList rdf:rest*/rdf:first ?formShape . - ?formShape sh:hasValue ?form . + ex:moveGripperShape sh:property ?propertySpec . + ?propertySpec sh:path prov:used . + { + ?propertySpec sh:hasValue ?form . + } + union + { + ?propertySpec sh:or ?formShapeList . + ?formShapeList rdf:rest*/rdf:first ?formShape . + ?formShape sh:hasValue ?form . } } order by ?form From d3e061c1cadc981b3611e2dd740a7edece9aab81 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 6 Jul 2023 12:39:32 +0200 Subject: [PATCH 59/83] refactor(discover-behavior-specs) clarify behavior vs action recommendation --- .../discover-behavior-specifications/README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/README.md b/domains/manufacturing-environments/discover-behavior-specifications/README.md index d932dca0..c825507f 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/README.md +++ b/domains/manufacturing-environments/discover-behavior-specifications/README.md @@ -42,7 +42,7 @@ The agent discovers the signifier, that is exposed in the profile of the robotic ## Recommendations - A signifier can signify a behavior specification for revealing information about how to exploit the relevant behavior possibility. -- This scenario focuses on signifying a behavior specification that is the specification of exactly one action. However, a signifier may concern a behavior that is more generic than a single action execution. In the latter case, implementation details (e.g. an [`hctl:Form`](https://www.w3.org/2019/wot/hypermedia#Form)) will remain attached directly to the actions of the specified behavior, and not the behavior specification itself. The above aim to the following: - - To enable the action-oriented design of hypermedia by keeping the implementation details attached to a specified action, considering that this is a simple design style, and a style easily relatable to how signifiers are used on the Web. - - To preserve the freedom of designers to create signifiers that concern behaviors with higher-level semantics on top of actions. - - To enable extension points for defining behaviors based on how human agents reason about action and perform behaviors when exploiting behavior possibilities. +- This scenario focuses on signifying a specification of a behavior execution that is the execution of exactly one action. However, a signifier may concern a behavior execution that is more generic than a single action execution, for example, in the case of a behavior that is executed through the execution of multiple actions. In the latter case, implementation details (e.g. an [`hctl:Form`](https://www.w3.org/2019/wot/hypermedia#Form)) will be directly associated to the specifications of the individual action executions rather than the overall behavior execution specification. This differentiation between behavior execution and action execution serves the following purposes: + - Enabling the action-oriented design of hypermedia by keeping the implementation details attached to a specified action execution, considering that this is a simple design style, and a style easily relatable to how signifiers are used on the Web. + - Preserving the freedom of designers to create signifiers that concern the executution of behaviors with higher-level semantics on top of actions. + - Providing extension points for defining behaviors based on how human agents reason about action and execute behaviors when exploiting behavior possibilities. From c21d76a952e6998e7e16f816351ec599d6ade5b4 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 6 Jul 2023 13:03:42 +0200 Subject: [PATCH 60/83] fix(discover-behavior-specs) rm definitions from core The Interaction Ontology used to include definitions already included in the Core Ontology --- src/interaction.ttl | 48 +-------------------------------------------- 1 file changed, 1 insertion(+), 47 deletions(-) diff --git a/src/interaction.ttl b/src/interaction.ttl index 66aab715..88334a3a 100644 --- a/src/interaction.ttl +++ b/src/interaction.ttl @@ -31,52 +31,6 @@ vann:preferredNamespacePrefix "hmas" ; vann:preferredNamespaceUri <> . - - schema:name "Inria" ; - schema:url . - - - schema:name "MINES Saint-Étienne" ; - schema:url . - - - schema:name "University of St.Gallen" ; - schema:url . - - a schema:Person ; - schema:name "Danai Vachtsevanou" ; - schema:email "danai.vachtsevanou@unisg.ch" ; - schema:url ; - schema:affiliation . - - a schema:Person ; - schema:name "Andrei Ciortea" ; - schema:email "andrei.ciortea@unisg.ch" ; - schema:affiliation . - - a schema:Person ; - schema:name "Simon Mayer" ; - schema:email "simon.mayer@unisg.ch" ; - schema:affiliation . - -schema:Person a owl:Class . -schema:name a owl:AnnotationProperty . -schema:email a owl:AnnotationProperty . -schema:url a owl:AnnotationProperty . -schema:identifier a owl:AnnotationProperty . -schema:affiliation a owl:AnnotationProperty . -dct:title a owl:AnnotationProperty . -dct:description a owl:AnnotationProperty . -dct:contributor a owl:AnnotationProperty . -dct:issued a owl:AnnotationProperty . -dct:creator a owl:AnnotationProperty . -dct:source a owl:AnnotationProperty . -cc:license a owl:AnnotationProperty . -vann:preferredNamespacePrefix a owl:AnnotationProperty . -vann:preferredNamespaceUri a owl:AnnotationProperty . -skos:example a owl:AnnotationProperty . -skos:note a owl:AnnotationProperty . - ################################################################# # Classes ################################################################# @@ -135,4 +89,4 @@ skos:note a owl:AnnotationProperty . rdfs:domain :Signifier ; rdfs:range :BehaviorSpecification ; rdfs:comment "A relation between a signifier and a behavior specification it signifies."@en ; - rdfs:label "signifies"@en . \ No newline at end of file + rdfs:label "signifies"@en . From 0386b644ad00cdf46f6df02d752b7db12581b00d Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 6 Jul 2023 13:04:56 +0200 Subject: [PATCH 61/83] refactor(discover-behavior-specs) based on #109 --- src/interaction.ttl | 30 ++++-------------------------- 1 file changed, 4 insertions(+), 26 deletions(-) diff --git a/src/interaction.ttl b/src/interaction.ttl index 88334a3a..1ca38c48 100644 --- a/src/interaction.ttl +++ b/src/interaction.ttl @@ -41,48 +41,26 @@ rdfs:comment "A behavior execution that is the execution of exactly one context-free action, e.g. of a context-free HTTP request."@en ; rdfs:label "action execution"@en . -:ActionSpecification a owl:Class ; - rdfs:isDefinedBy :interaction ; - rdfs:subClassOf :BehaviorSpecification ; - rdfs:comment "A specification that describes an action (e.g., through preconditions and postconditions) and how to execute the action, e.g. as a context-free request through a form."@en ; - rdfs:label "action specification"@en . - :BehaviorExecution a owl:Class ; rdfs:isDefinedBy :interaction ; rdfs:comment "A course of action performed by an agent upon exploiting a behavior possibility."@en ; rdfs:label "behavior execution"@en . -:BehaviorSpecification a owl:Class ; - rdfs:isDefinedBy :interaction ; - rdfs:comment "A specification that describes a behavior, for example, as procedural knowledge (e.g., AgentSpeak plan) or code-on-demand (e.g., a script that implements a behavior)."@en ; - rdfs:label "behavior specification"@en . - :Input a owl:Class ; rdfs:isDefinedBy :interaction ; - rdfs:comment "An input of an action, which may include variables. The input may be used, for instance, in an action specification or in the representation of an action execution."@en ; + rdfs:comment "An input of an action, for example, in the representation of an action execution."@en ; rdfs:label "input"@en . ################################################################# # Object Properties ################################################################# -:expectsInput a owl:ObjectProperty ; +:hasInput a owl:ObjectProperty ; rdfs:isDefinedBy :interaction ; rdfs:domain :ActionSpecification ; rdfs:range :Input ; - rdfs:comment "A relation between an action specification and the input that the specified action expects."@en ; - rdfs:label "expects input"@en . - -:hasForm a owl:ObjectProperty ; - rdfs:isDefinedBy :interaction ; - rdfs:domain :ActionSpecification ; - rdfs:comment "A relation between an action specification and a form that describes how to execute the specified action."@en ; - rdfs:label "has form"@en . - -:hasSchema a owl:ObjectProperty ; - rdfs:isDefinedBy :interaction ; - rdfs:comment "A relation between an input and the schema of the input."@en ; - rdfs:label "has schema"@en . + rdfs:comment "A relation between an action execution and the input that it has."@en ; + rdfs:label "has input"@en . :signifies a owl:ObjectProperty ; rdfs:isDefinedBy :interaction ; From 63b7b2da56fe6bbfb99a20e6140edd74681bf4c4 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 6 Jul 2023 13:10:21 +0200 Subject: [PATCH 62/83] fix(interaction-onto) rm unused prefixes --- src/interaction.ttl | 6 ------ 1 file changed, 6 deletions(-) diff --git a/src/interaction.ttl b/src/interaction.ttl index 1ca38c48..1a67c20d 100644 --- a/src/interaction.ttl +++ b/src/interaction.ttl @@ -1,17 +1,11 @@ @base . @prefix : <> . @prefix owl: . -@prefix rdf: . -@prefix xml: . @prefix xsd: . @prefix rdfs: . @prefix cc: . @prefix vann: . -@prefix voaf: . -@prefix foaf: . -@prefix schema: . @prefix dct: . -@prefix skos: . ################################################################# # Ontology Description From c42ad6e266331f24ffc440084abe7dd2ee9194e9 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 21 Sep 2023 11:47:51 +0200 Subject: [PATCH 63/83] fix(q5) malformed csv --- .../discover-behavior-specifications/q5.csv | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q5.csv b/domains/manufacturing-environments/discover-behavior-specifications/q5.csv index 60eb6a8f..1bf5fa10 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q5.csv +++ b/domains/manufacturing-environments/discover-behavior-specifications/q5.csv @@ -1,3 +1,3 @@ form, -http://example.org/coapForm>, +http://example.org/coapForm, http://example.org/httpForm, From 69a7eb6006771e16dd365c249334e93f4fa7aaa7 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 21 Sep 2023 11:52:03 +0200 Subject: [PATCH 64/83] refactor(dataset) use hmas prefix --- .../discover-behavior-specifications/dataset.ttl | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl b/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl index 2491ba73..07744445 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl +++ b/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl @@ -1,4 +1,4 @@ -@prefix : . +@prefix hmas: . @prefix onto: . @prefix hctl: . @prefix htv: . @@ -7,14 +7,14 @@ @prefix xs: . @prefix ex: . -ex:ur5Profile a :ResourceProfile; - :exposesSignifier ex:gripperMovable . +ex:ur5Profile a hmas:ResourceProfile; + hmas:exposesSignifier ex:gripperMovable . -ex:gripperMovable a :Signifier ; - :signifies ex:moveGripperShape . +ex:gripperMovable a hmas:Signifier ; + hmas:signifies ex:moveGripperShape . ex:moveGripperShape a sh:NodeShape; - sh:class :ActionExecution ; + sh:class hmas:ActionExecution ; sh:property [ sh:path prov:used ; sh:minCount 1; @@ -25,10 +25,10 @@ ex:moveGripperShape a sh:NodeShape; ) ; ] ; sh:property [ - sh:path :hasInput; + sh:path hmas:hasInput; sh:qualifiedValueShape ex:gripperJointShape ; sh:qualifiedMinCount 1 ; - sh:qualifiedMaxCount 1 + sh:qualifiedMaxCount 1 ] . ex:gripperJointShape a sh:NodeShape ; From 8abbf953b28d7ad01f85522e62346a30f25d5478 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 21 Sep 2023 11:55:11 +0200 Subject: [PATCH 65/83] refactor(queries) use hmas prefix --- .../discover-behavior-specifications/q1.rq | 8 ++++---- .../discover-behavior-specifications/q2.rq | 4 ++-- .../discover-behavior-specifications/q3.rq | 4 ++-- .../discover-behavior-specifications/q4.rq | 4 ++-- .../discover-behavior-specifications/q5.rq | 2 +- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q1.rq b/domains/manufacturing-environments/discover-behavior-specifications/q1.rq index 4206e9ce..73efff66 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q1.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q1.rq @@ -1,12 +1,12 @@ -prefix : +prefix hmas: prefix ex: prefix sh: select ?actionExecutionSpec where { - ex:gripperMovable a :Signifier . - ex:gripperMovable :signifies ?actionExecutionSpec . + ex:gripperMovable a hmas:Signifier . + ex:gripperMovable hmas:signifies ?actionExecutionSpec . ?actionExecutionSpec a sh:NodeShape . - ?actionExecutionSpec sh:class :ActionExecution . + ?actionExecutionSpec sh:class hmas:ActionExecution . } order by ?actionExecutionSpec diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q2.rq b/domains/manufacturing-environments/discover-behavior-specifications/q2.rq index 12b9a75f..866dfef0 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q2.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q2.rq @@ -1,11 +1,11 @@ -prefix : +prefix hmas: prefix ex: prefix sh: select ?inputSpec where { ex:moveGripperShape sh:property ?propertySpec . - ?propertySpec sh:path :hasInput . + ?propertySpec sh:path hmas:hasInput . ?propertySpec sh:qualifiedValueShape ?inputSpec . } order by ?inputSpec diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q3.rq b/domains/manufacturing-environments/discover-behavior-specifications/q3.rq index 92c1ca00..bc1eb31c 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q3.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q3.rq @@ -1,11 +1,11 @@ -prefix : +prefix hmas: prefix ex: prefix sh: select ?inputType where { ex:moveGripperShape sh:property ?propertySpec . - ?propertySpec sh:path :hasInput . + ?propertySpec sh:path hmas:hasInput . ?propertySpec sh:qualifiedValueShape ?inputSpec . ?inputSpec sh:class ?inputType . } diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q4.rq b/domains/manufacturing-environments/discover-behavior-specifications/q4.rq index 3511ba02..f90c8fd2 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q4.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q4.rq @@ -1,11 +1,11 @@ -prefix : +prefix hmas: prefix ex: prefix sh: select ?inputProperty where { ex:moveGripperShape sh:property ?propertySpec . - ?propertySpec sh:path :hasInput . + ?propertySpec sh:path hmas:hasInput . ?propertySpec sh:qualifiedValueShape ?inputSpec . ?inputSpec sh:property ?inputPropertySpec . ?inputPropertySpec sh:path ?inputProperty . diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q5.rq b/domains/manufacturing-environments/discover-behavior-specifications/q5.rq index 258e5cb0..0cfa366e 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q5.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q5.rq @@ -1,4 +1,4 @@ -prefix : +prefix hmas: prefix ex: prefix sh: prefix prov: From 2fe0d2b6c79daf6cd5132987ee2a09e4f450d90e Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 21 Sep 2023 11:58:08 +0200 Subject: [PATCH 66/83] refactor(onto) define base --- .../discover-behavior-specifications/onto.ttl | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl b/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl index 3a3af7bb..4c2b8a04 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl +++ b/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl @@ -1,4 +1,5 @@ -@prefix : . +@base . +@prefix : <> . @prefix owl: . @prefix rdfs: . From 6bbfd349b53bf8caf86da864d078da07b73f7cac Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 21 Sep 2023 12:10:01 +0200 Subject: [PATCH 67/83] feat(dataset) workspace and artifact descs --- .../discover-behavior-specifications/dataset.ttl | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl b/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl index 07744445..b6800b3d 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl +++ b/domains/manufacturing-environments/discover-behavior-specifications/dataset.ttl @@ -1,6 +1,7 @@ @prefix hmas: . @prefix onto: . @prefix hctl: . +@prefix pto: . @prefix htv: . @prefix sh: . @prefix prov: . @@ -8,8 +9,14 @@ @prefix ex: . ex:ur5Profile a hmas:ResourceProfile; + hmas:isProfileOf ex:ur5; hmas:exposesSignifier ex:gripperMovable . +ex:ur5 a hmas:Artifact, pto:Robotic_arm ; + hmas:isContainedIn ex:manufacturingWksp . + +ex:manufacturingWksp a hmas:Workspace . + ex:gripperMovable a hmas:Signifier ; hmas:signifies ex:moveGripperShape . From 18ac8af091cf7e3e72372597211d1ec0bc514627 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 21 Sep 2023 13:21:16 +0200 Subject: [PATCH 68/83] style(q1) rm redundant subject --- .../discover-behavior-specifications/q1.rq | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q1.rq b/domains/manufacturing-environments/discover-behavior-specifications/q1.rq index 73efff66..806755cc 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q1.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q1.rq @@ -4,8 +4,8 @@ prefix sh: select ?actionExecutionSpec where { - ex:gripperMovable a hmas:Signifier . - ex:gripperMovable hmas:signifies ?actionExecutionSpec . + ex:gripperMovable a hmas:Signifier ; + hmas:signifies ?actionExecutionSpec . ?actionExecutionSpec a sh:NodeShape . ?actionExecutionSpec sh:class hmas:ActionExecution . } From f7b41cfa9ccf831fa2042fbfd6370c3173740f1f Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 21 Sep 2023 13:25:06 +0200 Subject: [PATCH 69/83] style(q1) rm redundant subject --- .../discover-behavior-specifications/q1.rq | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q1.rq b/domains/manufacturing-environments/discover-behavior-specifications/q1.rq index 806755cc..6fac0fd5 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q1.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q1.rq @@ -6,7 +6,7 @@ select ?actionExecutionSpec where { ex:gripperMovable a hmas:Signifier ; hmas:signifies ?actionExecutionSpec . - ?actionExecutionSpec a sh:NodeShape . - ?actionExecutionSpec sh:class hmas:ActionExecution . + ?actionExecutionSpec a sh:NodeShape ; + sh:class hmas:ActionExecution . } order by ?actionExecutionSpec From 50c6f63eae4680eb9893e27e8598accca5361163 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 21 Sep 2023 13:34:44 +0200 Subject: [PATCH 70/83] feat(onto) french labels on executions and input --- .../discover-behavior-specifications/onto.ttl | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl b/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl index 4c2b8a04..2aaef21c 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl +++ b/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl @@ -11,17 +11,17 @@ rdfs:isDefinedBy :interaction ; rdfs:subClassOf :BehaviorExecution ; rdfs:comment "A behavior execution that is the execution of exactly one context-free action, e.g. of a context-free HTTP request."@en ; - rdfs:label "action execution"@en . + rdfs:label "action execution"@en, "exécution de l'action"@fr . :BehaviorExecution a owl:Class ; rdfs:isDefinedBy :interaction ; rdfs:comment "A course of action performed by an agent upon exploiting a behavior possibility."@en ; - rdfs:label "behavior execution"@en . + rdfs:label "behavior execution"@en, "exécution du comportement"@fr . :Input a owl:Class ; rdfs:isDefinedBy :interaction ; rdfs:comment "An input of an action, for example, in the representation of an action execution."@en ; - rdfs:label "input"@en . + rdfs:label "input"@en, "entrée"@fr . ################################################################# # Object Properties From 40c56f18232ee1dc05b4d9c432a0ba378f174b69 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 21 Sep 2023 13:42:48 +0200 Subject: [PATCH 71/83] fix(hasInput-domain) actionSpec to actionEx --- .../discover-behavior-specifications/onto.ttl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl b/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl index 2aaef21c..5d2e5a88 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl +++ b/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl @@ -29,7 +29,7 @@ :hasInput a owl:ObjectProperty ; rdfs:isDefinedBy :interaction ; - rdfs:domain :ActionSpecification ; + rdfs:domain :ActionExecution ; rdfs:range :Input ; rdfs:comment "A relation between an action execution and the input that it has."@en ; rdfs:label "has input"@en . From 27e0f93f900adb5a3ebf42a9570947b5f1f84bff Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 21 Sep 2023 14:30:39 +0200 Subject: [PATCH 72/83] fix(signifies-range) behaviorSpec to shacl shape --- .../discover-behavior-specifications/onto.ttl | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl b/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl index 5d2e5a88..e75bd744 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl +++ b/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl @@ -1,5 +1,6 @@ @base . @prefix : <> . +@prefix sh: . @prefix owl: . @prefix rdfs: . @@ -37,6 +38,6 @@ :signifies a owl:ObjectProperty ; rdfs:isDefinedBy :interaction ; rdfs:domain :Signifier ; - rdfs:range :BehaviorSpecification ; + rdfs:range sh:NodeShape ; rdfs:comment "A relation between a signifier and a behavior specification it signifies."@en ; rdfs:label "signifies"@en . From d56547c429b3ef6002fc782fbad06f02bc6402f7 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 21 Sep 2023 14:34:57 +0200 Subject: [PATCH 73/83] feat(onto) french labels of properties --- .../discover-behavior-specifications/onto.ttl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl b/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl index e75bd744..5c62687b 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl +++ b/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl @@ -33,11 +33,11 @@ rdfs:domain :ActionExecution ; rdfs:range :Input ; rdfs:comment "A relation between an action execution and the input that it has."@en ; - rdfs:label "has input"@en . + rdfs:label "has input"@en, "a une entrée"@fr . :signifies a owl:ObjectProperty ; rdfs:isDefinedBy :interaction ; rdfs:domain :Signifier ; rdfs:range sh:NodeShape ; rdfs:comment "A relation between a signifier and a behavior specification it signifies."@en ; - rdfs:label "signifies"@en . + rdfs:label "signifies"@en, "signifie"@fr . From c74a5c8ac0b61daa146a757fd0a8814736b162c9 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 21 Sep 2023 14:39:36 +0200 Subject: [PATCH 74/83] refactor(query-results) rm commas --- .../discover-behavior-specifications/q1.csv | 4 ++-- .../discover-behavior-specifications/q2.csv | 4 ++-- .../discover-behavior-specifications/q3.csv | 4 ++-- .../discover-behavior-specifications/q4.csv | 4 ++-- .../discover-behavior-specifications/q5.csv | 6 +++--- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q1.csv b/domains/manufacturing-environments/discover-behavior-specifications/q1.csv index 9b9d49d3..5f508014 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q1.csv +++ b/domains/manufacturing-environments/discover-behavior-specifications/q1.csv @@ -1,2 +1,2 @@ -actionExecutionSpec, -http://example.org/moveGripperShape, +actionExecutionSpec +http://example.org/moveGripperShape diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q2.csv b/domains/manufacturing-environments/discover-behavior-specifications/q2.csv index f86076d4..2c5c5eb2 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q2.csv +++ b/domains/manufacturing-environments/discover-behavior-specifications/q2.csv @@ -1,2 +1,2 @@ -inputSpec, -http://example.org/gripperJointShape, +inputSpec +http://example.org/gripperJointShape diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q3.csv b/domains/manufacturing-environments/discover-behavior-specifications/q3.csv index 1d8ccd16..390eb293 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q3.csv +++ b/domains/manufacturing-environments/discover-behavior-specifications/q3.csv @@ -1,2 +1,2 @@ -inputType, -https://ci.mines-stetienne.fr/kg/ontology#GripperJoint, +inputType +https://ci.mines-stetienne.fr/kg/ontology#GripperJoint diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q4.csv b/domains/manufacturing-environments/discover-behavior-specifications/q4.csv index 06aa089c..82fcf1d2 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q4.csv +++ b/domains/manufacturing-environments/discover-behavior-specifications/q4.csv @@ -1,2 +1,2 @@ -inputProperty, -http://example.org/hasGripperValue, +inputProperty +http://example.org/hasGripperValue diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q5.csv b/domains/manufacturing-environments/discover-behavior-specifications/q5.csv index 1bf5fa10..cae3d88b 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q5.csv +++ b/domains/manufacturing-environments/discover-behavior-specifications/q5.csv @@ -1,3 +1,3 @@ -form, -http://example.org/coapForm, -http://example.org/httpForm, +form +http://example.org/coapForm +http://example.org/httpForm \ No newline at end of file From 4155bbd7dcbbc9a2c267cc19c1c8a8025e160249 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 21 Sep 2023 14:52:23 +0200 Subject: [PATCH 75/83] docs(questions) better usage of word contraints --- .../discover-behavior-specifications/README.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/README.md b/domains/manufacturing-environments/discover-behavior-specifications/README.md index c825507f..3224e977 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/README.md +++ b/domains/manufacturing-environments/discover-behavior-specifications/README.md @@ -14,13 +14,13 @@ The agent discovers the signifier, that is exposed in the profile of the robotic ## Competency Questions -| ID | Question in Natural Language | Example | -|----|------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------| -| q1 | What is the action execution specification that a given signifier signifies? | Specification that signifier `ex:gripperMovable` signifies: `ex:moveGripperShape` | -| q2 | What are the constraints on the input that an action execution should have based on a given specification? | Constaints on the input that the execution of moving the gripper should have based on `ex:moveGripperShape`: `ex:gripperJointShape` | -| q3 | What is the type of the input that an action execution should have based on a given specification? | Type of the input that the execution of moving the gripper should have based on `ex:moveGripperShape`: `onto:GripperJoint` | -| q4 | What are the properties that the input of an action execution should have based on a given specification? | Properties of the input that the execution of moving the gripper should have based on `ex:moveGripperShape`: `ex:hasGripperValue` | -| q5 | What are forms that an action execution should use based on a given specification? | Forms that the execution of moving the gripper should use based on `ex:moveGripperShape`: `ex:httpForm`, `ex:coapForm` | +| ID | Question in Natural Language | Example | +|----|---------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------| +| q1 | What is the action execution specification that a given signifier signifies? | Specification that signifier `ex:gripperMovable` signifies: `ex:moveGripperShape` | +| q2 | What is the specification of the input based on a given action execution specification? | Specification of the input for the execution of moving the gripper based on `ex:moveGripperShape`: `ex:gripperJointShape` | +| q3 | What is the type of the input that an action execution should have based on a given action execution specification? | Type of the input that the execution of moving the gripper should have based on `ex:moveGripperShape`: `onto:GripperJoint` | +| q4 | What are the properties that the input of an action execution should have based on a given action execution specification? | Properties of the input that the execution of moving the gripper should have based on `ex:moveGripperShape`: `ex:hasGripperValue` | +| q5 | What are forms that an action execution should use based on a given action execution specification? | Forms that the execution of moving the gripper should use based on `ex:moveGripperShape`: `ex:httpForm`, `ex:coapForm` | From e42dbcf95c0ca1d2e9a5c1fe3c8429645c1e86d3 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 21 Sep 2023 14:58:27 +0200 Subject: [PATCH 76/83] style(queries) rm redundant subjects --- .../discover-behavior-specifications/q2.rq | 4 ++-- .../discover-behavior-specifications/q3.rq | 4 ++-- .../discover-behavior-specifications/q4.rq | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q2.rq b/domains/manufacturing-environments/discover-behavior-specifications/q2.rq index 866dfef0..60d31497 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q2.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q2.rq @@ -5,7 +5,7 @@ prefix sh: select ?inputSpec where { ex:moveGripperShape sh:property ?propertySpec . - ?propertySpec sh:path hmas:hasInput . - ?propertySpec sh:qualifiedValueShape ?inputSpec . + ?propertySpec sh:path hmas:hasInput ; + sh:qualifiedValueShape ?inputSpec . } order by ?inputSpec diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q3.rq b/domains/manufacturing-environments/discover-behavior-specifications/q3.rq index bc1eb31c..48dc7c9b 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q3.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q3.rq @@ -5,8 +5,8 @@ prefix sh: select ?inputType where { ex:moveGripperShape sh:property ?propertySpec . - ?propertySpec sh:path hmas:hasInput . - ?propertySpec sh:qualifiedValueShape ?inputSpec . + ?propertySpec sh:path hmas:hasInput ; + sh:qualifiedValueShape ?inputSpec . ?inputSpec sh:class ?inputType . } order by ?inputType diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q4.rq b/domains/manufacturing-environments/discover-behavior-specifications/q4.rq index f90c8fd2..81c0fc70 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q4.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q4.rq @@ -5,8 +5,8 @@ prefix sh: select ?inputProperty where { ex:moveGripperShape sh:property ?propertySpec . - ?propertySpec sh:path hmas:hasInput . - ?propertySpec sh:qualifiedValueShape ?inputSpec . + ?propertySpec sh:path hmas:hasInput ; + sh:qualifiedValueShape ?inputSpec . ?inputSpec sh:property ?inputPropertySpec . ?inputPropertySpec sh:path ?inputProperty . } From 9c5862d03e5820ce3bb66d6c4548428fa2588b65 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 21 Sep 2023 15:03:41 +0200 Subject: [PATCH 77/83] refactor(interaction) french lablels and rm spec classes --- src/interaction.ttl | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/interaction.ttl b/src/interaction.ttl index 1a67c20d..8265d699 100644 --- a/src/interaction.ttl +++ b/src/interaction.ttl @@ -6,6 +6,7 @@ @prefix cc: . @prefix vann: . @prefix dct: . +@prefix sh: . ################################################################# # Ontology Description @@ -33,17 +34,17 @@ rdfs:isDefinedBy :interaction ; rdfs:subClassOf :BehaviorExecution ; rdfs:comment "A behavior execution that is the execution of exactly one context-free action, e.g. of a context-free HTTP request."@en ; - rdfs:label "action execution"@en . + rdfs:label "action execution"@en, "exécution de l'action"@fr . :BehaviorExecution a owl:Class ; rdfs:isDefinedBy :interaction ; rdfs:comment "A course of action performed by an agent upon exploiting a behavior possibility."@en ; - rdfs:label "behavior execution"@en . + rdfs:label "behavior execution"@en, "exécution du comportement"@fr . :Input a owl:Class ; rdfs:isDefinedBy :interaction ; rdfs:comment "An input of an action, for example, in the representation of an action execution."@en ; - rdfs:label "input"@en . + rdfs:label "input"@en, "entrée"@fr . ################################################################# # Object Properties @@ -51,14 +52,14 @@ :hasInput a owl:ObjectProperty ; rdfs:isDefinedBy :interaction ; - rdfs:domain :ActionSpecification ; + rdfs:domain :ActionExecution ; rdfs:range :Input ; rdfs:comment "A relation between an action execution and the input that it has."@en ; - rdfs:label "has input"@en . + rdfs:label "has input"@en, "a une entrée"@fr . :signifies a owl:ObjectProperty ; rdfs:isDefinedBy :interaction ; rdfs:domain :Signifier ; - rdfs:range :BehaviorSpecification ; + rdfs:range sh:NodeShape ; rdfs:comment "A relation between a signifier and a behavior specification it signifies."@en ; - rdfs:label "signifies"@en . + rdfs:label "signifies"@en, "signifie"@fr . From 61b43f861adafcfaf37aeec7e7587a15084151b2 Mon Sep 17 00:00:00 2001 From: danaivach Date: Thu, 21 Sep 2023 15:08:44 +0200 Subject: [PATCH 78/83] feat(q5) rdf prefix --- .../discover-behavior-specifications/q5.rq | 1 + 1 file changed, 1 insertion(+) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q5.rq b/domains/manufacturing-environments/discover-behavior-specifications/q5.rq index 0cfa366e..a1418104 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q5.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q5.rq @@ -2,6 +2,7 @@ prefix hmas: prefix ex: prefix sh: prefix prov: +prefix rdf: select ?form where { From 0f2a7df48527b72b04946d668c43e2783dcd3285 Mon Sep 17 00:00:00 2001 From: danaivach Date: Fri, 22 Sep 2023 08:55:21 +0200 Subject: [PATCH 79/83] docs(scenario-desc) relax agent behavior expectations --- .../discover-behavior-specifications/README.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/README.md b/domains/manufacturing-environments/discover-behavior-specifications/README.md index 3224e977..1d5aa2ee 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/README.md +++ b/domains/manufacturing-environments/discover-behavior-specifications/README.md @@ -10,7 +10,10 @@ An agent is situated in a manufacturing workspace that contains a robotic arm ar - a form describing an HTTP request, - a form describing a request based on the Constrained Application Protocol (CoAP). -The agent discovers the signifier, that is exposed in the profile of the robotic arm artifact. Based on the signified information, the agent moves the gripper by providing an [`onto:GripperJoint`](https://ci.mines-stetienne.fr/kg/ontology#GripperJoint) as input, and sends an HTTP request based on one of the forms. +The agent discovers the signifier, that is exposed in the profile of the robotic arm artifact. +Based on the signified information, that agent knows that interacting with the robotic arm artifact requires providing +an [`onto:GripperJoint`](https://ci.mines-stetienne.fr/kg/ontology#GripperJoint) as input, and sending either an HTTP or +a CoAP request based on the forms. ## Competency Questions From a6925a95b412b49e7eb2d8474d4eaad5b0447c56 Mon Sep 17 00:00:00 2001 From: danaivach Date: Fri, 22 Sep 2023 09:32:59 +0200 Subject: [PATCH 80/83] refactor(signifies) comment use of node shape --- .../discover-behavior-specifications/onto.ttl | 2 +- src/interaction.ttl | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl b/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl index 5c62687b..85c37052 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl +++ b/domains/manufacturing-environments/discover-behavior-specifications/onto.ttl @@ -39,5 +39,5 @@ rdfs:isDefinedBy :interaction ; rdfs:domain :Signifier ; rdfs:range sh:NodeShape ; - rdfs:comment "A relation between a signifier and a behavior specification it signifies."@en ; + rdfs:comment "A relation between a signifier and a node shape specifying a description of the expected behavior execution."@en ; rdfs:label "signifies"@en, "signifie"@fr . diff --git a/src/interaction.ttl b/src/interaction.ttl index 8265d699..4b28bbe1 100644 --- a/src/interaction.ttl +++ b/src/interaction.ttl @@ -61,5 +61,5 @@ rdfs:isDefinedBy :interaction ; rdfs:domain :Signifier ; rdfs:range sh:NodeShape ; - rdfs:comment "A relation between a signifier and a behavior specification it signifies."@en ; + rdfs:comment "A relation between a signifier and a node shape specifying a description of the expected behavior execution."@en ; rdfs:label "signifies"@en, "signifie"@fr . From e9ddc26a5136ec0dbe9df9ac5641726b6aa0659a Mon Sep 17 00:00:00 2001 From: Fabien Gandon Date: Fri, 22 Sep 2023 09:48:47 +0200 Subject: [PATCH 81/83] indenting --- .../discover-behavior-specifications/q2.rq | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q2.rq b/domains/manufacturing-environments/discover-behavior-specifications/q2.rq index 60d31497..66d3dde2 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q2.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q2.rq @@ -5,7 +5,7 @@ prefix sh: select ?inputSpec where { ex:moveGripperShape sh:property ?propertySpec . - ?propertySpec sh:path hmas:hasInput ; - sh:qualifiedValueShape ?inputSpec . + ?propertySpec sh:path hmas:hasInput ; + sh:qualifiedValueShape ?inputSpec . } order by ?inputSpec From add503db70b990c2274260b220702159114d888d Mon Sep 17 00:00:00 2001 From: Fabien Gandon Date: Fri, 22 Sep 2023 09:49:39 +0200 Subject: [PATCH 82/83] indenting --- .../discover-behavior-specifications/q3.rq | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q3.rq b/domains/manufacturing-environments/discover-behavior-specifications/q3.rq index 48dc7c9b..864360ff 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q3.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q3.rq @@ -6,7 +6,7 @@ select ?inputType where { ex:moveGripperShape sh:property ?propertySpec . ?propertySpec sh:path hmas:hasInput ; - sh:qualifiedValueShape ?inputSpec . + sh:qualifiedValueShape ?inputSpec . ?inputSpec sh:class ?inputType . } order by ?inputType From 97e505c6b82a8b840fcf93c3695c084007aa0547 Mon Sep 17 00:00:00 2001 From: Fabien Gandon Date: Fri, 22 Sep 2023 09:50:35 +0200 Subject: [PATCH 83/83] indenting --- .../discover-behavior-specifications/q4.rq | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/domains/manufacturing-environments/discover-behavior-specifications/q4.rq b/domains/manufacturing-environments/discover-behavior-specifications/q4.rq index 81c0fc70..92040ad0 100644 --- a/domains/manufacturing-environments/discover-behavior-specifications/q4.rq +++ b/domains/manufacturing-environments/discover-behavior-specifications/q4.rq @@ -6,7 +6,7 @@ select ?inputProperty where { ex:moveGripperShape sh:property ?propertySpec . ?propertySpec sh:path hmas:hasInput ; - sh:qualifiedValueShape ?inputSpec . + sh:qualifiedValueShape ?inputSpec . ?inputSpec sh:property ?inputPropertySpec . ?inputPropertySpec sh:path ?inputProperty . }