# The pattern's own scenario, television half: the bus drivers' protest of 16 July 2016 as
# Channel 55 reported it. The protest, what the material claimed about it, and the act of
# reporting are three separate individuals - which is the point, because the claim that
# breakdowns caused the protest is Channel 55's, not verified fact.

@prefix actingfor: <http://www.ontologydesignpatterns.org/cp/owl/actingfor.owl#> .
@prefix intensionextension: <http://www.ontologydesignpatterns.org/cp/owl/intensionextension.owl#> .
@prefix newsreportingevent: <http://semantic.cs.put.poznan.pl/ontologies/newsreportingevent.owl#> .
@prefix reportingevent: <http://semantic.cs.put.poznan.pl/ontologies/reportingevent.owl#> .
@prefix situation: <http://www.ontologydesignpatterns.org/cp/owl/situation.owl#> .
@prefix timeindexedsituation: <http://www.ontologydesignpatterns.org/cp/owl/timeindexedsituation.owl#> .
@prefix timeinterval: <http://www.ontologydesignpatterns.org/cp/owl/timeinterval.owl#> .
@prefix typesofentities: <http://www.ontologydesignpatterns.org/cp/owl/typesofentities.owl#> .
@prefix ex: <https://w3id.org/ontoboard/example/reportingnewsevent#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .

ex:BusDriversProtest a owl:NamedIndividual , reportingevent:ActualEvent ;
    rdfs:label "the bus drivers' protest in the city centre, 16 July 2016" ;
    rdfs:comment "The event itself. Nothing here says what caused it: the causes are claims made by the media that reported it." .

ex:Channel55Material a owl:NamedIndividual , reportingevent:ActualEventView ;
    rdfs:label "the Channel 55 material on the protest: buses breaking down, and police intervening brutally" ;
    intensionextension:isAbout ex:BusDriversProtest ;
    intensionextension:expresses ex:BreakdownCauseClaim .

ex:BreakdownCauseClaim a owl:NamedIndividual , intensionextension:SocialObject ;
    rdfs:label "the claim that the protest was caused by buses breaking down" .

ex:EveningNewsReport a owl:NamedIndividual , newsreportingevent:NewsReportingEvent ;
    rdfs:label "the act of reporting the protest in the Channel 55 evening news programme" ;
    reportingevent:reports ex:Channel55Material ;
    reportingevent:hasAuthor ex:JohnDoe ;
    reportingevent:isBasedOnSourceActivity ex:CorrespondentReport ;
    newsreportingevent:presentedAt ex:Channel55 ;
    newsreportingevent:hasPresentationContext ex:FirstItemInProgramme ;
    timeindexedsituation:atTime ex:EveningNewsSlot .

ex:JohnDoe a owl:NamedIndividual , newsreportingevent:NewsEventReporter ;
    rdfs:label "John Doe, who prepared the material" ;
    actingfor:actsFor ex:MediaCorp .

ex:MediaCorp a owl:NamedIndividual , newsreportingevent:NewsProvider ;
    rdfs:label "Media Corp, the company behind the station" ;
    newsreportingevent:owns ex:Channel55 .

ex:Channel55 a owl:NamedIndividual , newsreportingevent:Media ;
    rdfs:label "Channel 55, a television news station" .

ex:FirstItemInProgramme a owl:NamedIndividual , newsreportingevent:NewsPresentationContext ;
    rdfs:label "first item in the programme" ;
    rdfs:comment "How the protest was presented, not what was said about it. The running order is how the editors rated its importance." .

ex:CorrespondentReport a owl:NamedIndividual , reportingevent:SourceActivity ;
    rdfs:label "the correspondent's report the material was based on" .

ex:EveningNewsSlot a owl:NamedIndividual , timeinterval:TimeInterval ;
    rdfs:label "the slot it filled: 16 July 2016, 19:30 to 19:35" ;
    timeinterval:hasIntervalDate "2016-07-16" ;
    timeinterval:hasIntervalStartDate "19:30" ;
    timeinterval:hasIntervalEndDate "19:35" .

# Only one direction of each inverse pair is asserted: actsFor/actsThrough, atTime/isTimeIndexFor, expresses/isExpressedBy, forEntity/hasTimeIndexedSetting, isAbout/isReferenceOf. A reasoner adds the other.
