# Jena Rules

@prefix caIN: <file:ontology/indoorNav.owl#> .

@prefix temporal: <file:ontology/temporal.owl#> .

@include <OWL>.

 

[setBusy:

    (?event caIN:hasStartTime ?startTime)

    (?event caIN:hasEndTime ?endTime)

    (?event caIN:hasAttendee ?person)

    (?route caIN:requestAtTime ?requestTime)

    (?requestTime temporal:after ?startTime)

    (?requestTime temporal:before ?endTime)

->

    (?person caIN:personStatus “busy”^^xsd:string) ]

 

 

[visLoc:

   (?visitor caIN:representedBy ?sensor)

   (?sensor caIN:isMovingTo ?location)

->

   (?visitor caIN:isLocatedIn ?location) ]

 

 

[startingNode:

    (?visitor caIN:isLocatedIn ?location)

->

    (?route caIN:hasStartNode ?location) ]

 

 

[labTargetNode:

   (?lab caIN:hasText ?text)

->

  (?route hasEndNode ?lab) ]

 

 

[lockedStatus:

   (?event caIN:hasStartTime ?startTime)

   (?event caIN:hasEndTime ?endTime)

   (?event caIN:takePlaceAt ?loc)

   (?route caIN:requestAtTime ?requestTime)

   (?event caIN:eventCategory “passageLocking”^^xsd:string)

   (?requestTime temporal:after ?startTime)

   (?requestTime temporal:before ?endTime)

->

   (?location caIN:doorIsLocked “true”xsd:boolean) ]

 

[eventPerLocation:

   (?event caIN:hasStartTime ?startTime)

   (?event caIN:hasEndTime ?endTime)

   (?event caIN:hasAttendee ?person)

   (?event caIN:takePlaceAt ?location)

   (?route caIN:requestTime ?requestTime)

   (?requestTime temporal:after ?startTime)

   (?requestTime temporal:before ?endTime)

->

   (?person caIN:isLocatedIn ?location)

   (?route caIN:hasEndNode ?location) ]

 

 

Advertisements