BASE <https://w3id.org/itsdata/agent/v1/>
PREFIX : <https://w3id.org/itsdata/agent/v1/>
PREFIX dcterms: <http://purl.org/dc/terms/>
PREFIX owl: <http://www.w3.org/2002/07/owl#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>
PREFIX vann: <http://purl.org/vocab/vann/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX cdm1: <https://w3id.org/citydata/part1/v1/>
PREFIX its-core: <https://w3id.org/itsdata/core/v1/>

: a owl:Ontology ;
    dcterms:title "ITS Agent Ontology" ;
    skos:definition "This ontology defines concepts related to ITS agents." ;
    vann:preferredNamespaceUri "https://w3id.org/itsdata/agent/v1/" ;
    vann:preferredNamespacePrefix "its-agent" ;
    cdm1:mainModule "true" ;
    its-core:draft "true" ;
    dcterms:creator "Kenneth Vaughn" ;
    dcterms:created "Draft" ;
    dcterms:modified "2026-03-03"^^xsd:date ;
    owl:versionInfo "0.0.2" ;
    owl:versionIRI :r0.2 ;
    dcterms:license "http://creativecommons.org/licenses/by/4.0/" ;
    owl:imports cdm1:Agent.owl .

# === Object Properties ===

:ITSAgentObjectProperty a owl:ObjectProperty ;
    skos:definition "An object property to organize all object properties defined in the ITS Agent Ontology." ;
    rdfs:subPropertyOf its-core:ITSObjectProperty .

:playsRole a owl:ObjectProperty ;
    skos:definition "Indicates the role that an agent performs." ;
    rdfs:subPropertyOf :ITSAgentObjectProperty ;
    rdfs:domain :Agent ;
    rdfs:range :Role .

# === Classes ===

:ITSAgentThing a owl:Class ;
    skos:definition "Added for organizational purposes to identify classes defined in the Agent part of the ITS Ontology." ;
    rdfs:subClassOf its-core:ITSThing .

:Agent a owl:Class ;
    skos:definition "A person, organization, group, or software agent that performs a role. The role may add additional properties to the agent." ;
    rdfs:subClassOf :ITSAgentThing, cdm1:Agent .

:Role a owl:Class ;
    skos:definition "A role that an agent can perform. The role may add additional properties to the agent." ;
    rdfs:subClassOf :ITSAgentThing .