@prefix :      <https://w3id.org/coach#> .
@prefix schema: <https://schema.org/> .
@prefix owl:   <http://www.w3.org/2002/07/owl#> .
@prefix rdf:   <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix terms: <http://purl.org/dc/terms/> .
@prefix xsd:   <http://www.w3.org/2001/XMLSchema#> .
@prefix skos:  <http://www.w3.org/2004/02/skos/core#> .
@prefix vocab: <https://w3id.org/widoco/vocab#> .
@prefix rdfs:  <http://www.w3.org/2000/01/rdf-schema#> .
@prefix AnnotationVocabulary: <https://www.omg.org/spec/Commons/AnnotationVocabulary/> .
@prefix vann:  <http://purl.org/vocab/vann/> .
@prefix foaf:  <http://xmlns.com/foaf/0.1/> .

:OpenessScheme  a         owl:NamedIndividual ;
        rdfs:isDefinedBy  <https://gitlab.com/linkeddatacenter/coach/-/raw/main/src/taxonomies/big5-taxonomy.ttl> .

skos:definition  a  owl:AnnotationProperty .

schema:codeRepository
        a       owl:AnnotationProperty .

<http://www.wikidata.org/entity/Q17888>
        a                 owl:NamedIndividual ;
        rdfs:isDefinedBy  <https://www.wikidata.org/> ;
        rdfs:label        "sexual orientation"@en .

:hasReligion  a             owl:FunctionalProperty , owl:ObjectProperty ;
        rdfs:label          "hasReligion"@en ;
        rdfs:range          [ a               owl:Restriction ;
                              owl:hasValue    <http://www.wikidata.org/entity/Q9174> ;
                              owl:onProperty  <http://www.wikidata.org/prop/direct/P31>
                            ] ;
        rdfs:subPropertyOf  :dimension ;
        skos:definition     "Associates a Character with their religion, specifying the religious belief system they adhere to."@en .

:       a                              owl:Ontology ;
        rdfs:isDefinedBy               : ;
        rdfs:label                     "COACH"@en ;
        terms:abstract                 "An upper ontology to classify a character by some conceptual dimensions"@en ;
        terms:created                  "2025-02-02T10:11:00"^^xsd:dateTime ;
        terms:creator                  <https://gitlab.com/ecow> , <https://gitlab.com/canevesecamilla> ;
        terms:description              "This ontology describes a person character as a vector of demographic traits, each dimension refers to a concept contained within a specific  taxonomy or to an instance of a  wikidata item."@en ;
        terms:license                  <https://creativecommons.org/licenses/by-nc/4.0/> ;
        terms:title                    "Character of a Character Ontology (COACH)"@en ;
        vann:preferredNamespacePrefix  "coach" ;
        vann:preferredNamespaceUri     "https://w3id.org/coach#" ;
        owl:versionIRI                 : ;
        owl:versionInfo                "0.9.0" ;
        foaf:fundedBy                  <https://gitlab.com/linkeddatacenter> ;
        schema:citation                "C.Canevese, E.Fagnoni. Character of a Character Ontology (w3id.org/coach)"@en ;
        schema:codeRepository          <https://gitlab.com/linkeddatacenter/coach> ;
        schema:image                   "/uml.png" ;
        vocab:introduction             "TBD introduction"@en .

:hasAgreeableness  a        owl:FunctionalProperty , owl:ObjectProperty ;
        rdfs:label          "hasAgreeableness"@en ;
        rdfs:range          [ a               owl:Restriction ;
                              owl:hasValue    :AgreeablenessScheme ;
                              owl:onProperty  skos:inScheme
                            ] ;
        rdfs:subPropertyOf  :dimension ;
        skos:definition     "Associates a Character with their level of agreeableness, as defined in the AgreeablenessScheme."@en .

terms:license  a  owl:AnnotationProperty .

:hasCitizenship  a          owl:ObjectProperty ;
        rdfs:label          "hasCitizenship"@en ;
        rdfs:range          [ a               owl:Restriction ;
                              owl:hasValue    <http://www.wikidata.org/entity/Q6256> ;
                              owl:onProperty  <http://www.wikidata.org/prop/direct/P31>
                            ] ;
        rdfs:subPropertyOf  :dimension ;
        skos:definition     "Associates a Character with their country of citizenship."@en ;
        skos:editorialNote  "More than a citizenship is allowed"@en .

schema:citation  a  owl:AnnotationProperty .

:NeuroticismScheme  a     owl:NamedIndividual ;
        rdfs:isDefinedBy  : , <https://gitlab.com/linkeddatacenter/coach/-/raw/main/src/taxonomies/big5-taxonomy.ttl> .

:EducationScheme  a       owl:NamedIndividual ;
        rdfs:isDefinedBy  <https://gitlab.com/linkeddatacenter/coach/-/raw/main/src/taxonomies/isced-taxonomy.ttl> .

vann:preferredNamespaceUri
        a       owl:AnnotationProperty .

<https://gitlab.com/linkeddatacenter>
        a              owl:NamedIndividual ;
        foaf:homepage  "https://linkeddata.center/" ;
        foaf:name      "LinkedData.Center" .

rdf:langString  a  rdfs:Datatype .

:likes  a                   owl:ObjectProperty ;
        rdfs:label          "likes"@en ;
        rdfs:range          owl:Thing ;
        rdfs:subPropertyOf  :dimension ;
        skos:definition     "Anything a Character dislikes"@en ;
        skos:editorialNote  "Better to use a wikipedia item."@en .

:hasEducation  a            owl:FunctionalProperty , owl:ObjectProperty ;
        rdfs:label          "hasEducation"@en ;
        rdfs:range          [ a               owl:Restriction ;
                              owl:hasValue    :EducationScheme ;
                              owl:onProperty  skos:inScheme
                            ] ;
        rdfs:subPropertyOf  :dimension ;
        skos:definition     "Associates a Character with their educational background, as defined within the EducationScheme."@en .

foaf:homepage  a  owl:AnnotationProperty .

terms:created  a  owl:AnnotationProperty .

terms:creator  a  owl:AnnotationProperty .

terms:title  a  owl:AnnotationProperty .

:hasExtraversion  a         owl:FunctionalProperty , owl:ObjectProperty ;
        rdfs:label          "hasExtraversion"@en ;
        rdfs:range          [ a               owl:Restriction ;
                              owl:hasValue    :ExtraversionScheme ;
                              owl:onProperty  skos:inScheme
                            ] ;
        rdfs:subPropertyOf  :dimension ;
        skos:definition     "Associates a Character with their level of extraversion, as defined within the ExtraversionScheme."@en .

<http://www.wikidata.org/entity/Q33742>
        a                 owl:NamedIndividual ;
        rdfs:isDefinedBy  <https://www.wikidata.org/> ;
        rdfs:label        "natural language"@en .

:hasLanguage  a             owl:ObjectProperty ;
        rdfs:label          "hasLanguage" ;
        rdfs:range          [ a               owl:Restriction ;
                              owl:hasValue    <http://www.wikidata.org/entity/Q33742> ;
                              owl:onProperty  <http://www.wikidata.org/prop/direct/P31>
                            ] ;
        rdfs:subPropertyOf  :dimension ;
        skos:definition     "Associates a Character with the natural languages they speak."@en ;
        skos:editorialNote  "More than a language is allowed"@en .

:AgreeablenessScheme  a   owl:NamedIndividual ;
        rdfs:isDefinedBy  : , <https://gitlab.com/linkeddatacenter/coach/-/raw/main/src/taxonomies/big5-taxonomy.ttl> .

:Character  a                owl:Class ;
        rdfs:isDefinedBy     : ;
        rdfs:label           "Character"@en ;
        owl:equivalentClass  [ a                   owl:Restriction ;
                               owl:onProperty      :dimension ;
                               owl:someValuesFrom  owl:Thing
                             ] ;
        skos:definition      "Represents an entity, real or fictional, characterized by various attributes (or dimensions) such as personality traits, cultural background, and preferences."@en .

schema:image  a     owl:AnnotationProperty ;
        rdfs:range  schema:MediaObject .

terms:abstract  a  owl:AnnotationProperty .

foaf:fundedBy  a  owl:AnnotationProperty .

terms:contributor  a  owl:AnnotationProperty .

<http://www.wikidata.org/prop/direct/P31>
        a           owl:ObjectProperty ;
        rdfs:label  "instance of"@en .

:ExtraversionScheme  a    owl:NamedIndividual ;
        rdfs:isDefinedBy  : , <https://gitlab.com/linkeddatacenter/coach/-/raw/main/src/taxonomies/big5-taxonomy.ttl> .

vocab:introduction  a  owl:AnnotationProperty .

<http://www.wikidata.org/entity/Q6256>
        a                 owl:NamedIndividual ;
        rdfs:isDefinedBy  <https://www.wikidata.org/> ;
        rdfs:label        "country"@en .

foaf:mbox  a    owl:AnnotationProperty .

<https://gitlab.com/canevesecamilla>
        a          owl:NamedIndividual ;
        foaf:mbox  <mailto:canevesecamilla@gmail.com> ;
        foaf:name  "Camilla Canevese" .

<http://www.wikidata.org/entity/Q12909644>
        a           owl:NamedIndividual ;
        rdfs:label  "political ideology"@en .

:hasSex  a                  owl:FunctionalProperty , owl:ObjectProperty ;
        rdfs:label          "hasSex"@en ;
        rdfs:range          [ a               owl:Restriction ;
                              owl:hasValue    <http://www.wikidata.org/entity/Q4369513> ;
                              owl:onProperty  <http://www.wikidata.org/prop/direct/P31>
                            ] ;
        rdfs:subPropertyOf  :dimension ;
        skos:definition     "Associates a Character with their biological sex"@en .

AnnotationVocabulary:synonym
        a       owl:AnnotationProperty .

:hasNeuroticism  a          owl:FunctionalProperty , owl:ObjectProperty ;
        rdfs:label          "hasNeuroticism"@en ;
        rdfs:range          [ a               owl:Restriction ;
                              owl:hasValue    :NeuroticismScheme ;
                              owl:onProperty  skos:inScheme
                            ] ;
        rdfs:subPropertyOf  :dimension ;
        skos:definition     "Associates a Character with their level of neuroticism, as defined within the NeuroticismScheme."@en .

skos:inScheme  a  owl:ObjectProperty .

:hasConscientiousness
        a                   owl:FunctionalProperty , owl:ObjectProperty ;
        rdfs:label          "hasConscientiousness"@en ;
        rdfs:range          [ a               owl:Restriction ;
                              owl:hasValue    :ConscientiousnessScheme ;
                              owl:onProperty  skos:inScheme
                            ] ;
        rdfs:subPropertyOf  :dimension ;
        skos:definition     "Associates a Character with their level of conscientiousness, as defined in the ConscientiousnessScheme."@en .

<http://www.wikidata.org/entity/Q9174>
        a                 owl:NamedIndividual ;
        rdfs:isDefinedBy  <https://www.wikidata.org/> ;
        rdfs:label        "religion"@en .

:hasOpenness  a             owl:FunctionalProperty , owl:ObjectProperty ;
        rdfs:label          "hasOpenness"@en ;
        rdfs:range          [ a               owl:Restriction ;
                              owl:hasValue    :OpenessScheme ;
                              owl:onProperty  skos:inScheme
                            ] ;
        rdfs:subPropertyOf  :dimension ;
        skos:definition     "Associates a Character with their level of openness, as defined within the   OpennessScheme."@en .

:hasAge  a                  owl:FunctionalProperty , owl:ObjectProperty ;
        rdfs:label          "hasAge"@en ;
        rdfs:range          [ a               owl:Restriction ;
                              owl:hasValue    :AgeScheme ;
                              owl:onProperty  skos:inScheme
                            ] ;
        rdfs:subPropertyOf  :dimension ;
        skos:definition     "Associates a Character with their age, as defined within the AgeScheme."@en .

skos:notation  a  owl:AnnotationProperty .

:AgeScheme  a             owl:NamedIndividual ;
        rdfs:isDefinedBy  : , <https://gitlab.com/linkeddatacenter/coach/-/raw/main/src/taxonomies/age-taxonomy.ttl> .

foaf:name  a    owl:AnnotationProperty .

:PoliticalOrientationScheme
        a                 owl:NamedIndividual ;
        rdfs:isDefinedBy  <https://gitlab.com/linkeddatacenter/coach/-/raw/main/src/taxonomies/political-orientation-taxonomy.ttl> .

<http://www.wikidata.org/entity/Q4369513>
        a                 owl:NamedIndividual ;
        rdfs:isDefinedBy  <https://www.wikidata.org/> ;
        rdfs:label        "sex of humans"@en .

:hasCountryOfBirth  a       owl:FunctionalProperty , owl:ObjectProperty ;
        rdfs:label          "hasCountryOfBirth"@en ;
        rdfs:range          [ a               owl:Restriction ;
                              owl:hasValue    <http://www.wikidata.org/entity/Q6256> ;
                              owl:onProperty  <http://www.wikidata.org/prop/direct/P31>
                            ] ;
        rdfs:subPropertyOf  :dimension ;
        skos:definition     "Associates a Character with their country of birth, specifying the nation where the character was born."@en .

terms:modified  a  owl:AnnotationProperty .

<https://gitlab.com/ecow>
        a          owl:NamedIndividual ;
        foaf:mbox  <mailto:enrico@fagnoni.it> ;
        foaf:name  "Enrico Fagnoni" .

vann:preferredNamespacePrefix
        a       owl:AnnotationProperty .

terms:issued  a  owl:AnnotationProperty .

:ConscientiousnessScheme
        a                 owl:NamedIndividual ;
        rdfs:isDefinedBy  : , <https://gitlab.com/linkeddatacenter/coach/-/raw/main/src/taxonomies/big5-taxonomy.ttl> .

:hasPoliticalOrientation
        a                   owl:FunctionalProperty , owl:ObjectProperty ;
        rdfs:label          "hasPoliticalOrientation"@en ;
        rdfs:range          [ a            owl:Class ;
                              owl:unionOf  ( [ a               owl:Restriction ;
                                               owl:hasValue    :PoliticalOrientationScheme ;
                                               owl:onProperty  skos:inScheme
                                             ] [ a               owl:Restriction ;
                                                 owl:hasValue    <http://www.wikidata.org/entity/Q12909644> ;
                                                 owl:onProperty  <http://www.wikidata.org/prop/direct/P31>
                                               ] )
                            ] ;
        rdfs:subPropertyOf  :dimension ;
        skos:definition     "Associates a Character with their political orientation."@en .

:dislikes  a                      owl:ObjectProperty ;
        rdfs:label                "dislikes"@en ;
        rdfs:range                owl:Thing ;
        rdfs:subPropertyOf        :dimension ;
        owl:propertyDisjointWith  :likes ;
        skos:definition           "Represents anything a Character dislikes."@en ;
        skos:editorialNote        "Better to use a wikipedia item"@en .

terms:description  a  owl:AnnotationProperty .

skos:editorialNote  a  owl:AnnotationProperty .

:hasSexualOrientation
        a                   owl:FunctionalProperty , owl:ObjectProperty ;
        rdfs:label          "hasSexualOrientation"@en ;
        rdfs:range          [ a               owl:Restriction ;
                              owl:hasValue    <http://www.wikidata.org/entity/Q17888> ;
                              owl:onProperty  <http://www.wikidata.org/prop/direct/P31>
                            ] ;
        rdfs:subPropertyOf  :dimension ;
        skos:definition     "Associates a Character with their sexual orientation"@en .

:dimension  a             owl:ObjectProperty ;
        rdfs:domain       :Character ;
        rdfs:isDefinedBy  : ;
        rdfs:label        "hasDimension"@en ;
        skos:definition   "Identifies an essential feature or attribute of a Character, including personal, cultural, or psychological dimensions."@en .
