Skip to content

Commit

Permalink
Ontology review: AGENTS
Browse files Browse the repository at this point in the history
  • Loading branch information
glguy committed Dec 21, 2020
1 parent e5e8a35 commit d69285e
Show file tree
Hide file tree
Showing 5 changed files with 67 additions and 49 deletions.
49 changes: 26 additions & 23 deletions RACK-Ontology/OwlModels/AGENTS.owl
@@ -1,7 +1,7 @@
<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:provs="http://arcos.rack/PROV-S#"
xmlns:AGENTS="http://arcos.rack/AGENTS#"
xmlns:Ag="http://arcos.rack/AGENTS#"
xmlns:builtinfunctions="http://sadl.org/builtinfunctions#"
xmlns:owl="http://www.w3.org/2002/07/owl#"
xmlns:sadlimplicitmodel="http://sadl.org/sadlimplicitmodel#"
Expand All @@ -17,43 +17,46 @@
<rdfs:comment xml:lang="en">This ontology was created from a SADL file 'AGENTS.sadl' and should not be directly edited.</rdfs:comment>
</owl:Ontology>
<owl:Class rdf:ID="TOOL">
<rdfs:comment xml:lang="en">An aid (software, hardware, etc) that automates the performance of a specific activity.</rdfs:comment>
<rdfs:subClassOf rdf:resource="PROV-S#AGENT"/>
</owl:Class>
<owl:Class rdf:ID="SOFTWAREAGENT">
<rdfs:comment xml:lang="en">A software agent is running software.</rdfs:comment>
<rdfs:subClassOf>
<owl:Restriction>
<owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
>1</owl:maxCardinality>
<owl:onProperty>
<owl:DatatypeProperty rdf:ID="toolVersion"/>
</owl:onProperty>
</owl:Restriction>
</rdfs:subClassOf>
<rdfs:comment xml:lang="en">An aid (software, hardware, etc) that automates the performance of an activity.</rdfs:comment>
<rdfs:subClassOf rdf:resource="PROV-S#AGENT"/>
</owl:Class>
<owl:Class rdf:ID="ORGANIZATION">
<rdfs:comment xml:lang="en">An organization is a social or legal institution such as a company, society, etc.</rdfs:comment>
<rdfs:subClassOf rdf:resource="PROV-S#AGENT"/>
</owl:Class>
<owl:Class rdf:ID="PERSON">
<rdfs:comment xml:lang="en">Person agents are people</rdfs:comment>
<rdfs:subClassOf>
<owl:Restriction>
<owl:someValuesFrom rdf:resource="PROV-S#AGENT"/>
<owl:onProperty>
<owl:ObjectProperty rdf:ID="employedBy"/>
</owl:onProperty>
</owl:Restriction>
</rdfs:subClassOf>
<rdfs:comment xml:lang="en">Person agents are people - alias for User</rdfs:comment>
<rdfs:subClassOf rdf:resource="PROV-S#AGENT"/>
</owl:Class>
<owl:ObjectProperty rdf:ID="employedBy">
<owl:ObjectProperty rdf:about="#employedBy">
<rdfs:subPropertyOf rdf:resource="PROV-S#actedOnBehalfOf"/>
<rdfs:comment xml:lang="en">Relates people to the company they were acting on behalf of.</rdfs:comment>
<rdfs:range rdf:resource="PROV-S#AGENT"/>
<rdfs:domain rdf:resource="#PERSON"/>
</owl:ObjectProperty>
<owl:DatatypeProperty rdf:ID="name">
<rdfs:comment xml:lang="en">Full name of a person</rdfs:comment>
<rdfs:domain>
<owl:Class>
<owl:unionOf rdf:parseType="Collection">
<owl:Class rdf:about="#ORGANIZATION"/>
<owl:Class rdf:about="#PERSON"/>
</owl:unionOf>
</owl:Class>
</rdfs:domain>
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
<rdfs:comment xml:lang="en">Full name of an organization</rdfs:comment>
</owl:DatatypeProperty>
<owl:DatatypeProperty rdf:ID="emailAddress">
<rdfs:comment xml:lang="en">Email address of person</rdfs:comment>
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
<rdfs:domain rdf:resource="#PERSON"/>
</owl:DatatypeProperty>
<owl:DatatypeProperty rdf:about="#toolVersion">
<rdfs:comment xml:lang="en">The release version of the tool</rdfs:comment>
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
<rdfs:domain rdf:resource="#TOOL"/>
</owl:DatatypeProperty>
</rdf:RDF>
23 changes: 18 additions & 5 deletions RACK-Ontology/OwlModels/PROV-S.owl
Expand Up @@ -22,6 +22,15 @@
</rdfs:subClassOf>
</owl:Class>
<owl:Class rdf:ID="AGENT">
<rdfs:subClassOf>
<owl:Restriction>
<owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#int"
>1</owl:maxCardinality>
<owl:onProperty>
<owl:DatatypeProperty rdf:ID="agentName"/>
</owl:onProperty>
</owl:Restriction>
</rdfs:subClassOf>
<rdfs:comment xml:lang="en">An agent is something that bears some form of responsibility for an activity taking place, for the existence of an entity, or for another agent's activity.</rdfs:comment>
<rdfs:subClassOf>
<owl:Class rdf:ID="THING"/>
Expand Down Expand Up @@ -63,6 +72,11 @@
<rdfs:range rdf:resource="#AGENT"/>
<rdfs:domain rdf:resource="#ENTITY"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:ID="dataInsertedBy">
<rdfs:comment xml:lang="en">The activity that caused this data to be added to RACK</rdfs:comment>
<rdfs:range rdf:resource="#ACTIVITY"/>
<rdfs:domain rdf:resource="#THING"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="#wasDerivedFrom">
<rdfs:comment xml:lang="en">A derivation is a transformation of an entity into another, an update of an entity resulting in a new one, or the construction of a new entity based on a pre-existing entity.</rdfs:comment>
<rdfs:range rdf:resource="#ENTITY"/>
Expand All @@ -74,11 +88,6 @@
<rdfs:range rdf:resource="#ENTITY"/>
<rdfs:domain rdf:resource="#ENTITY"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:ID="dataInsertedBy">
<rdfs:comment xml:lang="en">The activity that caused this data to be added to RACK</rdfs:comment>
<rdfs:range rdf:resource="#ACTIVITY"/>
<rdfs:domain rdf:resource="#THING"/>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:ID="wasAssociatedWith">
<rdfs:comment xml:lang="en">An activity association is an assignment of responsibility to an agent for an activity, indicating that the agent had a role in the activity. It further allows for a plan to be specified, which is the plan intended by the agent to achieve some goals in the context of this activity.</rdfs:comment>
<rdfs:range rdf:resource="#AGENT"/>
Expand Down Expand Up @@ -109,6 +118,10 @@
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#dateTime"/>
<rdfs:domain rdf:resource="#ACTIVITY"/>
</owl:DatatypeProperty>
<owl:DatatypeProperty rdf:about="#agentName">
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
<rdfs:domain rdf:resource="#AGENT"/>
</owl:DatatypeProperty>
<owl:DatatypeProperty rdf:ID="title">
<rdfs:comment xml:lang="en">A short, human-readable identifying label.</rdfs:comment>
<rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
Expand Down
36 changes: 18 additions & 18 deletions RACK-Ontology/ontology/AGENTS.sadl
Expand Up @@ -10,35 +10,35 @@
* of the Defense Advanced Research Projects Agency (DARPA).
*/

uri "http://arcos.rack/AGENTS" alias AGENTS.

/******* URIs and imports ***************/
uri "http://arcos.rack/AGENTS" alias Ag.
import "http://arcos.rack/PROV-S".


/************** edit history *****************
*
* dwa - 11 Nov 2020 - reduced cardinality of 'employedBy' to 1, because N seems ill-defined or unnecessary
* dwa - 11 Nov 2020 - removed 'name' as a string property because it was pushed down into the AGENT base class - see edit in PROV-S.sadl
* dwa - 11 Nov 2020 - added 'version' as a string property for TOOL agents
*/

ORGANIZATION
(note "An organization is a social or legal institution such as a company, society, etc.")
is a type of AGENT.

name (note "Full name of an organization")
describes ORGANIZATION with values of type string.

PERSON (note "Person agents are people")
PERSON (note "Person agents are people - alias for User")
is a type of AGENT.

name (note "Full name of a person")
describes PERSON with values of type string.

emailAddress (note "Email address of person")
describes PERSON with values of type string.

employedBy (note "Relates people to the company they were acting on behalf of.")
describes PERSON with values of type AGENT.
employedBy is a type of actedOnBehalfOf.

employedBy (note "Relates people to the company they were acting on behalf of.")
describes PERSON with at most one value of type AGENT.
employedBy is a type of actedOnBehalfOf.

TOOL
(note "An aid (software, hardware, etc) that automates the performance of a specific activity.")
is a type of AGENT.

SOFTWAREAGENT
(note "A software agent is running software.")
(note "An aid (software, hardware, etc) that automates the performance of an activity.")
is a type of AGENT.
toolVersion (note "The release version of the tool") describes TOOL with values of type string.
toolVersion describes TOOL with at most 1 value.

2 changes: 2 additions & 0 deletions RACK-Ontology/ontology/PROV-S.sadl
Expand Up @@ -40,6 +40,8 @@ COLLECTION (note "A collection is an entity that provides a structure to some co
AGENT (note "An agent is something that bears some form of responsibility for an activity taking place, for the existence of an entity, or for another agent's activity.")
is a type of THING.
actedOnBehalfOf (note "Delegation is the assignment of authority and responsibility to an agent (by itself or by another agent) to carry out a specific activity as a delegate or representative, while the agent it acts on behalf of retains some responsibility for the outcome of the delegated work.") describes AGENT with values of type AGENT.
agentName describes AGENT with values of type string.
agentName describes AGENT with at most 1 value.

ACTIVITY (note "An activity is something that occurs over a period of time and acts upon or with entities; it may include consuming, processing, transforming, modifying, relocating, using, or generating entities.")
is a type of THING.
Expand Down
6 changes: 3 additions & 3 deletions Turnstile-Ontology/99-Utils/NodeGroups/Ingest-Engineer.json
Expand Up @@ -86,7 +86,7 @@
"KeyName": "name",
"ValueType": "string",
"relationship": "http://www.w3.org/2001/XMLSchema#string",
"UriRelationship": "http://arcos.rack/AGENTS#name",
"UriRelationship": "http://arcos.rack/PROV-S#agentName",
"Constraints": "",
"fullURIName": "",
"SparqlID": "?name_Engineer",
Expand Down Expand Up @@ -219,7 +219,7 @@
]
},
{
"URIRelation": "http://arcos.rack/AGENTS#name",
"URIRelation": "http://arcos.rack/PROV-S#agentName",
"mapping": [
{
"colId": "col_3",
Expand All @@ -233,4 +233,4 @@
}
]
}
}
}

0 comments on commit d69285e

Please sign in to comment.