@base .
@prefix : <> .
@prefix owl: .
@prefix rdf: .
@prefix xml: .
@prefix xsd: .
@prefix rdfs: .
@prefix cc: .
@prefix vann: .
@prefix schema: .
@prefix dct: .
@prefix skos: .
#################################################################
# Ontology Description
#
# OWL_PROFILE = OWL_2_RL (https://www.w3.org/TR/owl2-profiles/#OWL_2_RL)
# Verified in https://github.com/HyperAgents/ns.hyperagents.org/issues/84
#
#################################################################
:core a owl:Ontology ;
dct:title "Hypermedia MAS Core Ontology"@en, "Ontologie Centrale des SMA Hypermédias"@fr ;
dct:description "An ontology to describe Hypermedia Multi-Agent Systems."@en,
"Une ontologie pour la description de systèmes multi-agents hypermédias."@fr ;
dct:issued "2021-11-21"^^xsd:date ;
dct:creator ;
dct:contributor ;
dct:contributor ;
dct:contributor ;
dct:contributor ;
dct:contributor ;
dct:contributor ;
dct:contributor ;
dct:contributor ;
dct:contributor ;
cc:license ;
vann:preferredNamespacePrefix "hmas" ;
vann:preferredNamespaceUri <> .
#################################################################
# define external primitives to validate ontology
#################################################################
schema:Person a owl:Class .
schema:CollegeOrUniversity a owl:Class .
schema:ResearchOrganization 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 .
schema:mainEntityOfPage 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 .
#################################################################
# contributors
#################################################################
### People
a schema:Person ;
schema:name "Fabien Gandon" ;
schema:email "fabien.gandon@inria.fr" ;
schema:mainEntityOfPage ;
schema:identifier "https://orcid.org/0000-0003-0543-1232#orcid-id"^^xsd:anyURI ;
owl:sameAs ;
schema:affiliation .
a schema:Person ;
schema:name "Chistopher Leturc" ;
schema:email "christopher.leturc@inria.fr" ;
schema:mainEntityOfPage ;
schema:identifier "https://orcid.org/0000-0003-0821-6095#orcid-id"^^xsd:anyURI ;
schema:affiliation .
a schema:Person ;
schema:name "Maxime Lefrançois" ;
schema:email "maxime.lefrancois@emse.fr" ;
schema:mainEntityOfPage ;
schema:identifier "https://orcid.org/0000-0001-9814-8991#orcid-id"^^xsd:anyURI ;
owl:sameAs ;
schema:affiliation .
a schema:Person ;
schema:name "Andrei Ciortea" ;
schema:email "andrei.ciortea@unisg.ch" ;
schema:mainEntityOfPage ;
schema:identifier "https://orcid.org/0000-0003-0721-4135#orcid-id"^^xsd:anyURI ;
owl:sameAs ;
schema:affiliation .
a schema:Person ;
schema:name "Simon Mayer" ;
schema:email "simon.mayer@unisg.ch" ;
schema:mainEntityOfPage ;
schema:identifier "https://orcid.org/0000-0001-6367-3454#orcid-id"^^xsd:anyURI ;
owl:sameAs ;
schema:affiliation .
a schema:Person ;
schema:name "Danai Vachtsevanou" ;
schema:email "danai.vachtsevanou@unisg.ch" ;
schema:mainEntityOfPage ;
schema:identifier "https://orcid.org/0000-0002-6697-0427#orcid-id"^^xsd:anyURI ;
owl:sameAs ;
schema:affiliation .
a schema:Person ;
schema:name "Olivier Boissier" ;
schema:email "olivier.boissier@emse.fr" ;
schema:mainEntityOfPage ;
schema:identifier "https://orcid.org/0000-0002-2956-0533#orcid-id"^^xsd:anyURI ;
schema:affiliation .
a schema:Person ;
schema:name "Luis Gustavo Nardin" ;
schema:email "luisgustavo.nardin@emse.fr" ;
schema:mainEntityOfPage ;
schema:identifier "https://orcid.org/0000-0002-4506-2745#orcid-id"^^xsd:anyURI ;
schema:affiliation .
a schema:Person ;
schema:name "Victor Charpenay" ;
schema:email "victor.charpenay@emse.fr" ;
schema:mainEntityOfPage ;
schema:identifier "https://orcid.org/0000-0002-9210-1583#orcid-id"^^xsd:anyURI ;
schema:affiliation .
a schema:Person ;
schema:name "Antoine Zimmermann" ;
schema:email "antoine.zimmermann@emse.fr" ;
schema:mainEntityOfPage ;
schema:identifier "https://orcid.org/0000-0003-1502-6986#orcid-id"^^xsd:anyURI, "http://w3id.org/people/az/me"^^xsd:anyURI ;
schema:affiliation .
a schema:Person ;
schema:name "Yousouf Taghzouti" ;
schema:email "yousouf.taghzouti@emse.fr" ;
schema:mainEntityOfPage ;
schema:identifier "https://orcid.org/0000-0003-4509-9537#orcid-id"^^xsd:anyURI ;
schema:affiliation .
a schema:Person ;
schema:name "Nesrine Hafiene" ;
schema:email "nesrine.hafiene@emse.fr" ;
schema:mainEntityOfPage ;
schema:identifier "https://orcid.org/0000-0002-3497-8758#orcid-id"^^xsd:anyURI ;
schema:affiliation .
#### affiliations
a schema:CollegeOrUniversity ;
schema:name "University of St.Gallen" ;
schema:mainEntityOfPage .
a schema:CollegeOrUniversity ;
schema:name "MINES Saint-Étienne" ;
schema:mainEntityOfPage .
a schema:ResearchOrganization;
schema:name "Inria" ;
schema:mainEntityOfPage .
#################################################################
# Concept of Affordance
#################################################################
:Affordance a skos:Concept ;
rdfs:isDefinedBy :core ;
skos:prefLabel "affordance"@en ;
skos:definition "A behavior possibility that is a relationship between an ability of an agent and a situation that includes agents and features of the environment."@en ;
skos:historyNote "The definition of the concept follows affordance theorists [Chemero and Turvey, 2007]."@en ;
skos:editorialNote "The concept has been considered as a candidate term for representing interaction cues and metadata in the Hypermedia MAS Core Ontology. The term :Signifier is selected instead for the following reasons: 1) Affordances emerge upon the presence of individual agents in the appropriate situation, while signifiers are defined with respect to agent types to preserve the evolvability and reusability of interaction cues without requiring prior knowledge about individual agents; 2) Affordances are defined in [Chemero and Turvey, 2007] for studying interactions of animals, while signifiers are defined here for supporting interactions of autonomous agents, which exhibit more heterogeneous abilities than animals — including agents whose cognitive abilities exclusively rely on computational processes such as reasoning over representations. Here, the concept is provided to support the discussion, management, and modelling of signifiers, which reveal information about affordances [Norman, 2013]. For example, the association between the two terms enables examining the dynamic exposure of signifiers based on the run-time availability of agent abilities and situations, or the modelling of signifiers that reveal information about affordances for both artificial and human agents."@en ;
skos:related :Signifier ;
dct:references _:chemeroTurvey2007 ;
dct:references _:norman2013 .
_:chemeroTurvey2007 a owl:NamedIndividual ;
dct:bibliographicCitation "Chemero, A., & Turvey, M. T. (2007). Complexity, hypersets, and the ecological perspective on perception-action. Biological Theory, 2(1), 23-36."@en ;
dct:identifier ;
rdfs:label "Chemero and Turvey, 2007"@en .
_:norman2013 a owl:NamedIndividual ;
dct:bibliographicCitation "Norman, D. (2013). The design of everyday things: Revised and expanded edition. Basic books."@en ;
dct:identifier ;
rdfs:label "Norman, 2013"@en .
#################################################################
# Classes
#################################################################
:Agent a owl:Class ;
rdfs:isDefinedBy :core ;
rdfs:comment "An entity that is capable of autonomous behavior."@en ;
rdfs:label "agent"@en, "agent"@fr .
:Artifact a owl:Class ;
rdfs:isDefinedBy :core ;
rdfs:comment "A resource that can be dynamically constructed, shared, and used by agents to support their activities. In a Hypermedia MAS, an artifact exposes and can be accessed through a hypermedia interface (in addition to other possible interfaces, such as a physical interface)."@en ;
rdfs:seeAlso ;
rdfs:label "artifact"@en, "artéfact"@fr .
:HypermediaMASPlatform a owl:Class ;
rdfs:isDefinedBy :core ;
rdfs:comment "A Hypermedia MAS (HMAS) platform is a system providing a collection of features to support Hypermedia MAS. Common features include support for communication and interaction, runtime environments for agents, artifacts, or organizations, etc."@en ;
rdfs:label "HMAS platform"@en, "platforme SMAH"@fr ;
skos:example "Examples of hmas:HypermediaMASPlatform include Twitter, Facebook, a JADE node/delpoyment, or a JaCaMo node/delpoyment — all of which provide features that could support Hypermedia MAS & hybrid communities."@en ;
rdfs:seeAlso ;
rdfs:seeAlso .
:ResourceProfile a owl:Class ;
rdfs:isDefinedBy :core ;
rdfs:comment "Structured data describing a resource through general metadata, domain- and application-specific metadata, and signifiers."@en ;
skos:example "e.g., a Thing Description document, a Hydra document, an Socio-Technical Network platform description, an agent description based on the FIPA standard"@en ;
rdfs:label "resource profile"@en, "profil de ressource"@fr .
:Signifier rdf:type owl:Class ;
rdfs:isDefinedBy :core ;
rdfs:comment "A perceivable sign/cue that can be interpreted meaningfully by an agent to reveal information about a behavior possibility."@en ;
rdfs:label "signifier"@en, "signifiant"@fr ;
skos:note ":Signifier works as a bridge between the Core and the Interaction Vocabularies."@en ;
skos:related :Affordance ;
rdfs:seeAlso ;
rdfs:seeAlso .
:Workspace a owl:Class ;
rdfs:isDefinedBy :core ;
rdfs:comment "A logical container for any resource in general and in particular for agents, artifacts or other workspaces. Workspaces can be created or deleted by agents on a needed basis. All agent interactions happen in the context of a workspace whether or not the worspace was explicitly reified. A workspace can be, for instance, implemented on top of an LDP (Linked Data Platform) indirect container."@en ;
rdfs:label "workspace"@en, "espace de travail"@fr ;
rdfs:seeAlso ;
rdfs:seeAlso ;
rdfs:seeAlso ;
rdfs:seeAlso ;
rdfs:seeAlso .
:Organization a owl:Class ;
rdfs:isDefinedBy :core ;
rdfs:comment "An Organization is an entity situated on Agents and Artifacts, and regulated by a regulation system."@en ;
rdfs:label "organization"@en, "organisation"@en-GB, "organization"@en-us, "organisation"@fr .
### Top ontology constraints for coherent modeling
# disjoint top classes
[ a owl:AllDisjointClasses ;
owl:members ( :Agent :Artifact :ResourceProfile :Signifier ) ] .
#################################################################
# Object Properties
#################################################################
:transitivelyContains a owl:ObjectProperty, owl:TransitiveProperty ;
rdfs:isDefinedBy :core ;
owl:inverseOf :isTransitivelyContainedIn ;
rdfs:domain :Workspace ;
rdfs:comment "Links all the resources that are logically contained in a workspaces, directly or indirectly by transitivity."@en ;
dct:source ;
rdfs:label "transitively contains"@en, "contient transitivement"@fr ;
rdfs:seeAlso ;
rdfs:seeAlso .
:isTransitivelyContainedIn a owl:ObjectProperty, owl:TransitiveProperty ;
rdfs:isDefinedBy :core ;
rdfs:range :Workspace ;
owl:inverseOf :transitivelyContains ;
rdfs:comment "A relation that refers to all workspaces in which a resource is contained. "@en ;
rdfs:label "is transitively contained in"@en, "est transitivement contenu dans"@fr .
:contains a owl:ObjectProperty ;
rdfs:isDefinedBy :core ;
rdfs:subPropertyOf :transitivelyContains ;
owl:inverseOf :isContainedIn ;
rdfs:comment "A relation that refers to a direct logical containment relation and is related to the definition of a workspace as a logical container."@en ;
dct:source ;
rdfs:label "directly contains"@en, "contient directement"@fr .
:isContainedIn a owl:ObjectProperty ;
rdfs:isDefinedBy :core ;
rdfs:subPropertyOf :isTransitivelyContainedIn ;
owl:inverseOf :contains ;
rdfs:comment "A relation that describes a workspace that contains a resource."@en ;
rdfs:label "is directly contained in"@en, "est directement contenu dans"@fr .
:isProfileOf a owl:ObjectProperty ;
rdfs:isDefinedBy :core ;
owl:inverseOf :hasProfile ;
rdfs:domain :ResourceProfile ;
rdfs:comment "A relation that links a resource profile to the resource it is a profile of."@en ;
rdfs:seeAlso ;
rdfs:seeAlso ;
rdfs:label "is profile of"@en, "est le profil de"@fr .
:hasProfile a owl:ObjectProperty, owl:AsymmetricProperty ;
rdfs:isDefinedBy :core ;
rdfs:range :ResourceProfile ;
owl:inverseOf :isProfileOf ;
rdfs:comment "A relation that links a resource to its profile."@en ;
rdfs:label "has for profile"@en, "a pour profil"@fr .
:hosts a owl:ObjectProperty, owl:AsymmetricProperty ;
rdfs:isDefinedBy :core ;
owl:inverseOf :isHostedOn ;
rdfs:domain :HypermediaMASPlatform ;
rdfs:comment "A relation that refers to an information resource or a process that is hosted on a platform. A hosting relation might have further implications, e.g. the usage of the hosted resource (or the usage of platform resources by the hosted resource) could be subject to terms of service or data licensing policies specific to the hosting platform."@en ;
rdfs:label "hosts"@en, "héberge"@fr ;
dct:source ;
rdfs:seeAlso ;
rdfs:seeAlso .
:isHostedOn a owl:ObjectProperty, owl:AsymmetricProperty ;
rdfs:isDefinedBy :core ;
owl:inverseOf :hosts ;
rdfs:range :HypermediaMASPlatform ;
rdfs:comment "A relation that refers to the platform that hosts the information resource or process."@en ;
rdfs:label "is hosted on"@en, "est hébergé sur"@fr .
:isExposedIn a owl:ObjectProperty ;
rdfs:isDefinedBy :core ;
rdfs:label "is exposed in"@en, "est exposé dans"@fr ;
owl:inverseOf :exposesSignifier ;
rdfs:comment "A relation between a signifier and a resource profile it is exposed in."@en ;
rdfs:domain :Signifier ;
rdfs:range :ResourceProfile .
:exposesSignifier a owl:ObjectProperty ;
rdfs:isDefinedBy :core ;
rdfs:domain :ResourceProfile ;
rdfs:range :Signifier ;
owl:inverseOf :isExposedIn ;
rdfs:comment "A relation between a resource profile and a signifier it exposes."@en ;
rdfs:label "exposes signifier"@en, "expose le signifiant"@fr ;
dct:source ;
rdfs:seeAlso .
:isMemberOf a owl:ObjectProperty ;
rdfs:isDefinedBy :core ;
rdfs:domain :Agent ;
rdfs:range :Organization ;
rdfs:comment "A relation between an Agent and an Organization it belongs to."@en ;
rdfs:label "is member of"@en .
:isMaterialOf a owl:ObjectProperty ;
rdfs:isDefinedBy :core ;
rdfs:domain :Artifact ;
rdfs:range :Organization ;
rdfs:comment "A relation between an Artifact and an Organization it belongs to."@en ;
rdfs:label "is material of"@en .
####
# Notions of HOME saved for later
####
#:hasHomeMASPlatform a owl:ObjectProperty ;
# rdfs:subPropertyOf :isHostedBy ;
# rdfs:domain :Agent ;
# rdfs:range :MASPlatform ;
# rdfs:comment "The home platform of an agent is the platform on which the agent was created."@en ;
# rdfs:seeAlso ;
# rdfs:label "has home platform"@en .
#:hasHomeWorkspace a owl:ObjectProperty ;
# rdfs:subPropertyOf :isContainedBy ;
# owl:inverseOf :isHomeOf ;
# rdfs:comment "The home workspace of an agent is the specific workspace where the agent spawned."@en ;
# rdfs:seeAlso ;
# rdfs:label "has home workspace"@en .
#:isHomeOf a owl:ObjectProperty, owl:AsymmetricProperty ;
# rdfs:domain :Workspace ;
# rdfs:range :Agent ;
# rdfs:comment "The home workspace is the specific workspace where the agent spawned"@en ;
# rdfs:label "is home of"@en .
# :Hostable a owl:Class ;
# rdfs:isDefinedBy :core ;
# rdfs:comment "A resource that can be hosted on a MAS platform"@en ;
# skos:example "Agents, artifacts, resource profiles, and signifiers can be hosted on a MAS platform"@en ;
# rdfs:label "Hostable"@en, "Hébergeable"@fr ;
# rdfs:seeAlso ;
# rdfs:seeAlso .