@prefix :      <http://www.ontologydesignpatterns.org/cp/owl/situation.owl#> .
@prefix rdfs:  <http://www.w3.org/2000/01/rdf-schema#> .
@prefix cpannotationschema: <http://www.ontologydesignpatterns.org/schemas/cpannotationschema.owl#> .
@prefix owl:   <http://www.w3.org/2002/07/owl#> .
@prefix xsd:   <http://www.w3.org/2001/XMLSchema#> .
@prefix rdf:   <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix situation: <http://www.ontologydesignpatterns.org/cp/owl/situation.owl#> .

situation:isSettingFor
        a                 owl:ObjectProperty ;
        rdfs:domain       situation:Situation ;
        rdfs:isDefinedBy  <http://www.ontologydesignpatterns.org/cp/owl/situation.owl> ;
        rdfs:label        "is setting for"@en ;
        rdfs:range        owl:Thing .

cpannotationschema:hasConsequences
        a       owl:AnnotationProperty .

owl:versionInfo  a  owl:AnnotationProperty .

cpannotationschema:scenarios
        a       owl:AnnotationProperty .

situation:Situation  a    owl:Class ;
        rdfs:comment      "A view on a set of entities. It can be seen as a 'relational context', reifying a relation.\nFor example, a PlanExecution is a context including some actions executed by agents according to certain parameters and expected tasks to be achieved from a Plan; a DiagnosedSituation is a context of observed entities that is interpreted on the basis of a Diagnosis, etc.\nSituation is also able to represent reified n-ary relations, where isSettingFor is the top-level relation for all binary projections of the n-ary relation. If used in a transformation pattern for n-ary relations, the designer should take care of:\n- creating only one situation for each instance of an n-ary relation, otherwise the 'identification constraint' (Calvanese et al., IJCAI 2001) could be violated\n- adding an 'exact cardinality' restriction corresponding to the arity of the n-ary relation, otherwise the designer would actually represent a polymorphic relation." ;
        rdfs:isDefinedBy  <http://www.ontologydesignpatterns.org/cp/owl/situation.owl> ;
        rdfs:label        "Situation"@en ;
        rdfs:subClassOf   [ a                   owl:Restriction ;
                            owl:minCardinality  "1"^^xsd:nonNegativeInteger ;
                            owl:onProperty      situation:isSettingFor
                          ] .

cpannotationschema:coversRequirements
        a       owl:AnnotationProperty .

cpannotationschema:hasIntent
        a       owl:AnnotationProperty .

cpannotationschema:extractedFrom
        a       owl:AnnotationProperty .

situation:hasSetting  a   owl:ObjectProperty ;
        rdfs:comment      "A relation between entities and situations, e.g. 'this morning I've prepared my coffee with a new fantastic Arabica' (i.e.: (an amount of) a new fantastic Arabica hasSetting the preparation of my coffee this morning)." ;
        rdfs:domain       owl:Thing ;
        rdfs:isDefinedBy  <http://www.ontologydesignpatterns.org/cp/owl/situation.owl> ;
        rdfs:label        "has setting"@en ;
        rdfs:range        situation:Situation ;
        owl:inverseOf     situation:isSettingFor .

rdfs:comment  a  owl:AnnotationProperty .

cpannotationschema:hasAuthor
        a       owl:AnnotationProperty .

owl:Thing  a    owl:Class .

rdfs:label  a   owl:AnnotationProperty .

rdfs:isDefinedBy  a  owl:AnnotationProperty .

<http://www.ontologydesignpatterns.org/cp/owl/situation.owl>
        a                             owl:Ontology ;
        rdfs:label                    "situation"^^rdf:PlainLiteral ;
        cpannotationschema:coversRequirements
                "What is the context or situation of something? What are the things present in this context or situation?"^^rdf:PlainLiteral ;
        cpannotationschema:extractedFrom
                "http://www.ontologydesignpatterns.org/ont/dul/DUL.owl"^^rdf:PlainLiteral ;
        cpannotationschema:hasAuthor  "Aldo Gangemi"^^rdf:PlainLiteral ;
        cpannotationschema:hasConsequences
                "We can contextualize things that have something in common, or are associated: a same place, time, view, causal link, systemic dependence, etc.\nWe can also reify n-ary relations as situations."^^rdf:PlainLiteral ;
        cpannotationschema:hasIntent  "To represent contexts or situations, and the things that are contextualized."^^rdf:PlainLiteral ;
        cpannotationschema:scenarios  "The lecture was held in January 1921 by Bela Fleck, with some physicians in the audience making questions, in a very relaxed athmosphere."^^rdf:PlainLiteral ;
        owl:imports                   <http://www.ontologydesignpatterns.org/schemas/cpannotationschema.owl> ;
        owl:versionInfo               "Created by Aldo Gangemi and Valentina Presutti"^^xsd:string , "1.1 added rdfs:isDefinedBy for all named entities"^^xsd:string .
