@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix : <http://cso.kmi.open.ac.uk/schema/cso#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix xml: <http://www.w3.org/XML/1998/namespace> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix skos: <http://www.w3.org/2004/02/skos/core#> .

<http://cso.kmi.open.ac.uk/schema/cso#>
    a owl:Ontology ;
    owl:imports <https://www.w3.org/2009/08/skos-reference/skos.rdf> .

:Topic
    a owl:Class ;
    rdfs:subClassOf skos:Concept .

:contributesTo
    a owl:ObjectProperty ;
    rdfs:comment "We use this relation to indicate that the research output of one topic contributes to another." ;
    rdfs:domain :Topic ;
    rdfs:label "contributes to"@en ;
    rdfs:range :Topic .

:preferentialEquivalent
    a owl:FunctionalProperty, owl:ObjectProperty ;
    rdfs:comment "We use this relationship to declare that the subject topic need to use the label of the object topic for presentation purposes." ;
    rdfs:domain :Topic ;
    rdfs:label "preferential equivalent"@en ;
    rdfs:range :Topic ;
    rdfs:subPropertyOf :relatedEquivalent, skos:related .

:relatedEquivalent
    a owl:ObjectProperty, owl:SymmetricProperty, owl:TransitiveProperty ;
    rdfs:comment "We use this relationship to identify that two potentially distinct research concepts are treated as equivalent in the context of the CSO." ;
    rdfs:domain :Topic ;
    rdfs:label "related equivalent"@en ;
    rdfs:range :Topic ;
    rdfs:subPropertyOf skos:related ;
    skos:note "Different from skos:exactMatch" .

:subTopicOf
    a owl:ObjectProperty, owl:TransitiveProperty ;
    rdfs:comment "We use this relation to indicate that a :Topic is a sub-area of another one. This is the inverse of :superTopicOf" ;
    rdfs:domain :Topic ;
    rdfs:label "sub-topic of"@en ;
    rdfs:range :Topic ;
    owl:inverseOf :superTopicOf .

:superTopicOf
    a owl:ObjectProperty, owl:TransitiveProperty ;
    rdfs:comment "We use this relation to indicate that a :Topic is a super-area of another one." ;
    rdfs:domain :Topic ;
    rdfs:label "super-topic of"@en ;
    rdfs:range :Topic ;
    rdfs:subPropertyOf skos:narrower .

