@prefix dc:    <http://purl.org/dc/elements/1.1/> .
@prefix :      <http://www.sensormeasurement.appspot.com/ont/transport/traffic#> .
@prefix ns:    <http://www.w3org/2003/06/sw-vocab-status/ns#> .
@prefix protege: <http://protege.stanford.edu/plugins/owl/protege#> .
@prefix foaf:  <http://xmlns.com/foaf/0.1/> .
@prefix xsp:   <http://www.owl-ontologies.com/2005/08/07/xsp.owl#> .
@prefix j.0:   <http://www.traffic.com/ontologies/a.owl#> .
@prefix vann:  <http://purl.org/vocab/vann/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix sqwrl: <http://sqwrl.stanford.edu/ontologies/built-ins/3.4/sqwrl.owl#> .
@prefix rdfs:  <http://www.w3.org/2000/01/rdf-schema#> .
@prefix voaf:  <http://purl.org/vocommons/voaf#> .
@prefix swrl:  <http://www.w3.org/2003/11/swrl#> .
@prefix traffic: <http://www.sensormeasurement.appspot.com/ont/transport/traffic#> .
@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 skos:  <http://www.w3.org/2004/02/skos/core#> .
@prefix cc:    <http://creativecommons.org/ns#> .
@prefix ace_lexicon: <http://attempto.ifi.uzh.ch/ace_lexicon#> .

traffic:speedWithOvertaker
        a                   owl:DatatypeProperty ;
        rdfs:domain         traffic:Vehicle ;
        rdfs:range          [ a          rdfs:Datatype ;
                              owl:oneOf  [ a          rdf:List ;
                                           rdf:first  "1"^^xsd:int ;
                                           rdf:rest   [ a          rdf:List ;
                                                        rdf:first  "2"^^xsd:int ;
                                                        rdf:rest   [ a          rdf:List ;
                                                                     rdf:first  "3"^^xsd:int ;
                                                                     rdf:rest   ()
                                                                   
                                                                   ]
                                                      ]
                                         ]
                            ] ;
        rdfs:subPropertyOf  traffic:speedWith .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:FirstAfterGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Lateral
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "2"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                 ] ;
                                                      rdf:rest   ()
                                                    
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:MaintainSpeed
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Ahead
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:BeforeGap
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          true ;
                                                                   swrl:propertyPredicate  traffic:bigSpeedDifference
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "3"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Decelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Behind
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          "1"^^xsd:long ;
                                                      swrl:propertyPredicate  traffic:speedWithAheadCar
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "3"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                 ] ;
                                                      rdf:rest   ()
                                                    
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:MaintainSpeed
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:NoSpace
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          true ;
                                                      swrl:propertyPredicate  traffic:bigSpeedDifference
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "1"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithAheadCar
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "1"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Accelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:AfterGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Behind
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          false ;
                                                                   swrl:propertyPredicate  traffic:isInFrontOfOvertaker
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "3"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Decelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Behind
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:LastBeforeGap
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          true ;
                                                                   swrl:propertyPredicate  traffic:bigSpeedDifference
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "3"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithOvertaker
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Decelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:BeforeGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Behind
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "2"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithOvertaker
                                                                 ] ;
                                                      rdf:rest   ()
                                                    
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftDecelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       <urn:swrl#c> ;
                            swrl:classPredicate  traffic:AfterGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       <urn:swrl#c> ;
                                         swrl:classPredicate  traffic:Lateral
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       <urn:swrl#c> ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          <urn:swrl#c> ;
                                                                   swrl:argument2          "faster"^^xsd:string ;
                                                                   swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                 ] ;
                                                      rdf:rest   ()
                                                    
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       <urn:swrl#c> ;
                            swrl:classPredicate  traffic:MaintainSpeed
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:AfterGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Behind
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          true ;
                                                                   swrl:propertyPredicate  traffic:bigSpeedDifference
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          true ;
                                                                                swrl:propertyPredicate  traffic:isInFrontOfOvertaker
                                                                              ] ;
                                                                   rdf:rest   [ a          swrl:AtomList ;
                                                                                rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                             swrl:argument1          traffic:c ;
                                                                                             swrl:argument2          "1"^^xsd:long ;
                                                                                             swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                                           ] ;
                                                                                rdf:rest   ()
                                                                              
                                                                              ]
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Accelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

<http://www.unavarra.es/foaf/unavarra.rdf#J.J.Astrain>
        a       foaf:Person , owl:NamedIndividual .

traffic:Decelerate  a    owl:Class ;
        rdfs:subClassOf  traffic:Action .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Ahead
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:FirstAfterGap
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "3"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                 ] ;
                                                      rdf:rest   ()
                                                    
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:MaintainSpeed
                          ] ;
               rdf:rest   ()
             
             ]
] .

traffic:Ahead  a         owl:Class ;
        rdfs:subClassOf  traffic:Space .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Behind
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          false ;
                                                      swrl:propertyPredicate  traffic:bigSpeedDifference
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "3"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithAheadCar
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "3"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftDecelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Behind
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          false ;
                                                      swrl:propertyPredicate  traffic:bigSpeedDifference
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "2"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithAheadCar
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "1"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftAccelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:AfterGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Ahead
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "2"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                 ] ;
                                                      rdf:rest   ()
                                                    
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:MaintainSpeed
                          ] ;
               rdf:rest   ()
             
             ]
] .

ns:term_status  a  owl:AnnotationProperty .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:BeforeGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Lateral
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          true ;
                                                                   swrl:propertyPredicate  traffic:bigSpeedDifference
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "3"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Decelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

foaf:name  a    owl:AnnotationProperty .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Ahead
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:FirstAfterGap
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          true ;
                                                                   swrl:propertyPredicate  traffic:bigSpeedDifference
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "1"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Accelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

j.0:hasSpaceLateral  a  owl:AnnotationProperty .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Behind
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          "2"^^xsd:long ;
                                                      swrl:propertyPredicate  traffic:speedWithAheadCar
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "2"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                 ] ;
                                                      rdf:rest   ()
                                                    
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftAccelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

traffic:BeforeGap  a     owl:Class ;
        rdfs:subClassOf  traffic:Position .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                            swrl:argument1          <urn:swrl#c> ;
                            swrl:argument2          false ;
                            swrl:propertyPredicate  traffic:beforeTheGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                         swrl:argument1          <urn:swrl#c> ;
                                         swrl:argument2          true ;
                                         swrl:propertyPredicate  traffic:lastFirstBeforeAfter-TheGap
                                       ] ;
                            rdf:rest   ()
                          
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       <urn:swrl#c> ;
                            swrl:classPredicate  traffic:FirstAfterGap
                          ] ;
               rdf:rest   ()
             
             ]
] .

j.0:isOvertaking  a  owl:AnnotationProperty .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Behind
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          "2"^^xsd:long ;
                                                      swrl:propertyPredicate  traffic:speedWithAheadCar
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "3"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                 ] ;
                                                      rdf:rest   ()
                                                    
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:MaintainSpeed
                          ] ;
               rdf:rest   ()
             
             ]
] .

traffic:MaintainDistanceWithCarInFront
        a                owl:Class ;
        rdfs:subClassOf  traffic:Action .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                            swrl:argument1          <urn:swrl#c> ;
                            swrl:argument2          false ;
                            swrl:propertyPredicate  traffic:hasSpaceAhead
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                         swrl:argument1          <urn:swrl#c> ;
                                         swrl:argument2          true ;
                                         swrl:propertyPredicate  traffic:hasSpaceBehind
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          <urn:swrl#c> ;
                                                      swrl:argument2          false ;
                                                      swrl:propertyPredicate  traffic:hasSpaceLateral
                                                    ] ;
                                         rdf:rest   ()
                                       
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       <urn:swrl#c> ;
                            swrl:classPredicate  traffic:Behind
                          ] ;
               rdf:rest   ()
             
             ]
] .

<mailto:antoniojesus.bermejo@unavarra.es>
        a          foaf:Person , owl:NamedIndividual ;
        foaf:name  "A. J. Bermejo" .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:NoSpace
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          "2"^^xsd:long ;
                                                      swrl:propertyPredicate  traffic:speedWithAheadCar
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "2"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                 ] ;
                                                      rdf:rest   ()
                                                    
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftAccelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:AfterGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Ahead
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "3"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                 ] ;
                                                      rdf:rest   ()
                                                    
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:MaintainSpeed
                          ] ;
               rdf:rest   ()
             
             ]
] .

traffic:Overtaker  a     owl:Class ;
        rdfs:subClassOf  traffic:Vehicle .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Behind
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:LastBeforeGap
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "2"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithOvertaker
                                                                 ] ;
                                                      rdf:rest   ()
                                                    
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftDecelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

traffic:ChangeLine  a    owl:Class ;
        rdfs:subClassOf  traffic:Action .

traffic:Car2  a                       traffic:Vehicle , owl:NamedIndividual ;
        traffic:beforeTheGap          false ;
        traffic:bigSpeedDifference    false ;
        traffic:hasSpaceAhead         true ;
        traffic:hasSpaceBehind        false ;
        traffic:hasSpaceLateral       false ;
        traffic:isInFrontOfOvertaker  true ;
        traffic:isOvertaking          false ;
        traffic:lastFirstBeforeAfter-TheGap
                true ;
        traffic:speedWithBeforeTheGapCar
                1 .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:AfterGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Lateral
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          false ;
                                                                   swrl:propertyPredicate  traffic:bigSpeedDifference
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "1"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftAccelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

traffic:speedWithBeforeTheGapCar
        a                   owl:DatatypeProperty , owl:AnnotationProperty ;
        rdfs:domain         traffic:Vehicle ;
        rdfs:range          [ a          rdfs:Datatype ;
                              owl:oneOf  [ a          rdf:List ;
                                           rdf:first  "1"^^xsd:int ;
                                           rdf:rest   [ a          rdf:List ;
                                                        rdf:first  "2"^^xsd:int ;
                                                        rdf:rest   [ a          rdf:List ;
                                                                     rdf:first  "3"^^xsd:int ;
                                                                     rdf:rest   ()
                                                                   
                                                                   ]
                                                      ]
                                         ]
                            ] ;
        rdfs:subPropertyOf  traffic:speedWith .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                            swrl:argument1          <urn:swrl#c> ;
                            swrl:argument2          false ;
                            swrl:propertyPredicate  traffic:beforeTheGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                         swrl:argument1          <urn:swrl#c> ;
                                         swrl:argument2          false ;
                                         swrl:propertyPredicate  traffic:lastFirstBeforeAfter-TheGap
                                       ] ;
                            rdf:rest   ()
                          
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       <urn:swrl#c> ;
                            swrl:classPredicate  traffic:AfterGap
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:NoSpace
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          true ;
                                                      swrl:propertyPredicate  traffic:bigSpeedDifference
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "3"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithAheadCar
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "2"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Decelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

traffic:hasXValue  a        owl:FunctionalProperty , owl:DatatypeProperty ;
        rdfs:range          xsd:integer ;
        rdfs:subPropertyOf  traffic:position .

traffic:speedWithBehindCar
        a                   owl:DatatypeProperty ;
        rdfs:domain         traffic:Vehicle ;
        rdfs:range          [ a          rdfs:Datatype ;
                              owl:oneOf  [ a          rdf:List ;
                                           rdf:first  "1"^^xsd:int ;
                                           rdf:rest   [ a          rdf:List ;
                                                        rdf:first  "2"^^xsd:int ;
                                                        rdf:rest   [ a          rdf:List ;
                                                                     rdf:first  "3"^^xsd:int ;
                                                                     rdf:rest   ()
                                                                   
                                                                   ]
                                                      ]
                                         ]
                            ] ;
        rdfs:subPropertyOf  traffic:speedWith .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:AfterGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Behind
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          false ;
                                                                   swrl:propertyPredicate  traffic:isInFrontOfOvertaker
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "2"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftDecelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

foaf:Organization  a  owl:Class .

traffic:lastFirstBeforeAfter-TheGap
        a                   owl:DatatypeProperty , owl:AnnotationProperty ;
        rdfs:domain         traffic:Vehicle ;
        rdfs:range          xsd:boolean ;
        rdfs:subPropertyOf  traffic:position .

traffic:speedWithAheadCar
        a                   owl:DatatypeProperty ;
        rdfs:domain         traffic:Vehicle ;
        rdfs:range          [ a          rdfs:Datatype ;
                              owl:oneOf  [ a          rdf:List ;
                                           rdf:first  "1"^^xsd:int ;
                                           rdf:rest   [ a          rdf:List ;
                                                        rdf:first  "2"^^xsd:int ;
                                                        rdf:rest   [ a          rdf:List ;
                                                                     rdf:first  "3"^^xsd:int ;
                                                                     rdf:rest   ()
                                                                   
                                                                   ]
                                                      ]
                                         ]
                            ] ;
        rdfs:subPropertyOf  traffic:speedWith .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:NoSpace
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          "1"^^xsd:long ;
                                                      swrl:propertyPredicate  traffic:speedWithAheadCar
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "3"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                 ] ;
                                                      rdf:rest   ()
                                                    
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:MaintainSpeed
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:NoSpace
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          false ;
                                                      swrl:propertyPredicate  traffic:bigSpeedDifference
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "3"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithAheadCar
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "1"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftDecelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

traffic:AfterGap  a      owl:Class ;
        rdfs:subClassOf  traffic:Position .

traffic:movement  a  owl:DatatypeProperty .

traffic:Position  a      owl:Class ;
        rdfs:subClassOf  traffic:Vehicle .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Behind
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:LastBeforeGap
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "1"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithOvertaker
                                                                 ] ;
                                                      rdf:rest   ()
                                                    
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:MaintainSpeed
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Ahead
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          "1"^^xsd:long ;
                                                      swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                    ] ;
                                         rdf:rest   ()
                                       
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Accelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:NoSpace
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          false ;
                                                      swrl:propertyPredicate  traffic:bigSpeedDifference
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "3"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithAheadCar
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "2"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftDecelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:NoSpace
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          true ;
                                                      swrl:propertyPredicate  traffic:bigSpeedDifference
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "2"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithAheadCar
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "1"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Accelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:BeforeGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Lateral
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "1"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                 ] ;
                                                      rdf:rest   ()
                                                    
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:MaintainSpeed
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Behind
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          true ;
                                                      swrl:propertyPredicate  traffic:bigSpeedDifference
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "1"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithAheadCar
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "1"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Accelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:FirstAfterGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Lateral
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "3"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                 ] ;
                                                      rdf:rest   ()
                                                    
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:MaintainSpeed
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Behind
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          "1"^^xsd:long ;
                                                      swrl:propertyPredicate  traffic:speedWithAheadCar
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "2"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                 ] ;
                                                      rdf:rest   ()
                                                    
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftAccelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

traffic:isInFrontOfOvertaker
        a                   owl:DatatypeProperty , owl:AnnotationProperty ;
        rdfs:domain         traffic:Vehicle ;
        rdfs:range          xsd:boolean ;
        rdfs:subPropertyOf  traffic:position .

<mailto:josej.astrain@unavarra.es>
        a          foaf:Person , owl:NamedIndividual ;
        foaf:name  "J. J. Astrain" .

traffic:Car4  a                       traffic:Vehicle , owl:NamedIndividual ;
        traffic:bigSpeedDifference    false ;
        traffic:hasSpaceAhead         true ;
        traffic:hasSpaceBehind        false ;
        traffic:hasSpaceLateral       false ;
        traffic:isInFrontOfOvertaker  false ;
        traffic:isOvertaking          true ;
        traffic:speedWithBeforeTheGapCar
                3 .

traffic:SoftAccelerate
        a                owl:Class ;
        rdfs:subClassOf  traffic:Action .

traffic:hasDirectionValue
        a                   owl:FunctionalProperty , owl:DatatypeProperty ;
        rdfs:range          rdfs:Literal ;
        rdfs:subPropertyOf  traffic:movement .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:NoSpace
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          true ;
                                                      swrl:propertyPredicate  traffic:bigSpeedDifference
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "3"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithAheadCar
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "1"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Decelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

traffic:bigSpeedDifference
        a                   owl:DatatypeProperty , owl:AnnotationProperty ;
        rdfs:domain         traffic:Vehicle ;
        rdfs:range          xsd:boolean ;
        rdfs:subPropertyOf  traffic:speedWith .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:AfterGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Ahead
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          false ;
                                                                   swrl:propertyPredicate  traffic:bigSpeedDifference
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "1"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftAccelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Behind
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          true ;
                                                      swrl:propertyPredicate  traffic:bigSpeedDifference
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "3"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithAheadCar
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "3"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Decelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

traffic:MaintainSpeed
        a                owl:Class ;
        rdfs:subClassOf  traffic:Action .

traffic:NoSpace  a       owl:Class ;
        rdfs:subClassOf  traffic:Space .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:FirstAfterGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Lateral
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          true ;
                                                                   swrl:propertyPredicate  traffic:bigSpeedDifference
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "1"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Accelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

voaf:Vocabulary  a  owl:Class .

traffic:beforeTheGap  a     owl:DatatypeProperty , owl:AnnotationProperty ;
        rdfs:domain         traffic:Vehicle ;
        rdfs:range          xsd:boolean ;
        rdfs:subPropertyOf  traffic:position .

traffic:hasSpaceAhead
        a                   owl:DatatypeProperty , owl:AnnotationProperty ;
        rdfs:domain         traffic:Vehicle ;
        rdfs:range          xsd:boolean ;
        rdfs:subPropertyOf  traffic:hasSpace .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Ahead
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:FirstAfterGap
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "2"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                 ] ;
                                                      rdf:rest   ()
                                                    
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:MaintainSpeed
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:AfterGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Behind
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          false ;
                                                                   swrl:propertyPredicate  traffic:bigSpeedDifference
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          true ;
                                                                                swrl:propertyPredicate  traffic:isInFrontOfOvertaker
                                                                              ] ;
                                                                   rdf:rest   [ a          swrl:AtomList ;
                                                                                rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                             swrl:argument1          traffic:c ;
                                                                                             swrl:argument2          "1"^^xsd:long ;
                                                                                             swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                                           ] ;
                                                                                rdf:rest   ()
                                                                              
                                                                              ]
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftAccelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

<mailto:alberto.cordoba@unavarra.es>
        a          foaf:Person , owl:NamedIndividual ;
        foaf:name  "A. Cordoba" .

traffic:speedWith  a  owl:DatatypeProperty .

traffic:NotOvertaker  a  owl:Class ;
        rdfs:subClassOf  traffic:Vehicle .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Behind
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          false ;
                                                      swrl:propertyPredicate  traffic:bigSpeedDifference
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "3"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithAheadCar
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "1"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftDecelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                            swrl:argument1          <urn:swrl#c> ;
                            swrl:argument2          true ;
                            swrl:propertyPredicate  traffic:hasSpaceAhead
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                         swrl:argument1          <urn:swrl#c> ;
                                         swrl:argument2          false ;
                                         swrl:propertyPredicate  traffic:hasSpaceLateral
                                       ] ;
                            rdf:rest   ()
                          
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       <urn:swrl#c> ;
                            swrl:classPredicate  traffic:Ahead
                          ] ;
               rdf:rest   ()
             
             ]
] .

<urn:swrl#c>  a  swrl:Variable .

foaf:Person  a  owl:Class .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Behind
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          true ;
                                                      swrl:propertyPredicate  traffic:bigSpeedDifference
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "3"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithAheadCar
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "1"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Decelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Ahead
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:LastBeforeGap
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "2"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                 ] ;
                                                      rdf:rest   ()
                                                    
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:MaintainDistanceWithCarInFront
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Behind
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          false ;
                                                      swrl:propertyPredicate  traffic:bigSpeedDifference
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "1"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithAheadCar
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "1"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftAccelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Ahead
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          "2"^^xsd:long ;
                                                      swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                    ] ;
                                         rdf:rest   ()
                                       
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Accelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

<mailto:jesusv@unavarra.es>
        a          foaf:Person , owl:NamedIndividual ;
        foaf:name  "J. Villadangos" .

traffic:position  a  owl:DatatypeProperty .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:BeforeGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Behind
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          true ;
                                                                   swrl:propertyPredicate  traffic:bigSpeedDifference
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "3"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithOvertaker
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Decelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:AfterGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Lateral
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          true ;
                                                                   swrl:propertyPredicate  traffic:bigSpeedDifference
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "1"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Accelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                            swrl:argument1          <urn:swrl#c> ;
                            swrl:argument2          false ;
                            swrl:propertyPredicate  traffic:hasSpaceAhead
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                         swrl:argument1          <urn:swrl#c> ;
                                         swrl:argument2          false ;
                                         swrl:propertyPredicate  traffic:hasSpaceBehind
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          <urn:swrl#c> ;
                                                      swrl:argument2          false ;
                                                      swrl:propertyPredicate  traffic:hasSpaceLateral
                                                    ] ;
                                         rdf:rest   ()
                                       
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       <urn:swrl#c> ;
                            swrl:classPredicate  traffic:NoSpace
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:NoSpace
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          false ;
                                                      swrl:propertyPredicate  traffic:bigSpeedDifference
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "3"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithAheadCar
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "3"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftDecelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

<http://www.unavarra.es/foaf/unavarra.rdf#A.Cordoba>
        a       foaf:Person , owl:NamedIndividual .

traffic:Space  a  owl:Class .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:FirstAfterGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Lateral
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          false ;
                                                                   swrl:propertyPredicate  traffic:bigSpeedDifference
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "1"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftAccelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

traffic:c  a    swrl:Variable .

traffic:hasSpaceBehind
        a                   owl:DatatypeProperty , owl:AnnotationProperty ;
        rdfs:domain         traffic:Vehicle ;
        rdfs:range          xsd:boolean ;
        rdfs:subPropertyOf  traffic:hasSpace .

j.0:hasSpaceBehind  a  owl:AnnotationProperty .

<http://purl.org/vocommons/voaf>
        a       voaf:Vocabulary , owl:NamedIndividual .

traffic:hasSpaceLateral
        a                   owl:DatatypeProperty , owl:AnnotationProperty ;
        rdfs:domain         traffic:Vehicle ;
        rdfs:range          xsd:boolean ;
        rdfs:subPropertyOf  traffic:hasSpace .

traffic:Car1  a                       traffic:Vehicle , owl:NamedIndividual ;
        traffic:beforeTheGap          true ;
        traffic:bigSpeedDifference    false ;
        traffic:hasSpaceAhead         true ;
        traffic:hasSpaceBehind        false ;
        traffic:hasSpaceLateral       false ;
        traffic:isInFrontOfOvertaker  false ;
        traffic:isOvertaking          false ;
        traffic:lastFirstBeforeAfter-TheGap
                true ;
        traffic:speedWithBeforeTheGapCar
                2 .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:LastBeforeGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Lateral
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "2"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                 ] ;
                                                      rdf:rest   ()
                                                    
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:MaintainDistanceWithCarInFront
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       <urn:swrl#c> ;
                            swrl:classPredicate  traffic:Vehicle
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                         swrl:argument1          <urn:swrl#c> ;
                                         swrl:argument2          false ;
                                         swrl:propertyPredicate  traffic:isOvertaking
                                       ] ;
                            rdf:rest   ()
                          
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       <urn:swrl#c> ;
                            swrl:classPredicate  traffic:NotOvertaker
                          ] ;
               rdf:rest   ()
             
             ]
] .

traffic:Lateral  a       owl:Class ;
        rdfs:subClassOf  traffic:Space .

traffic:LastBeforeGap
        a                owl:Class ;
        rdfs:subClassOf  traffic:Position .

traffic:Vehicle  a       owl:Class ;
        rdfs:subClassOf  [ a                owl:Restriction ;
                           owl:cardinality  "1"^^xsd:nonNegativeInteger ;
                           owl:onProperty   traffic:doesAction
                         ] .

traffic:doesAction  a  owl:IrreflexiveProperty , owl:FunctionalProperty , owl:AsymmetricProperty , owl:ObjectProperty ;
        rdfs:domain  traffic:Vehicle .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       <urn:swrl#c> ;
                            swrl:classPredicate  traffic:NoSpace
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       <urn:swrl#c> ;
                                         swrl:classPredicate  traffic:NotOvertaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          <urn:swrl#c> ;
                                                      swrl:argument2          false ;
                                                      swrl:propertyPredicate  traffic:isInFrontOfOvertaker
                                                    ] ;
                                         rdf:rest   ()
                                       
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       <urn:swrl#c> ;
                            swrl:classPredicate  traffic:SoftDecelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:AfterGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Lateral
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "2"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                 ] ;
                                                      rdf:rest   ()
                                                    
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:MaintainSpeed
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:NoSpace
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          false ;
                                                      swrl:propertyPredicate  traffic:bigSpeedDifference
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "1"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithAheadCar
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "1"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftAccelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

traffic:SoftDecelerate
        a                owl:Class ;
        rdfs:subClassOf  traffic:Action .

traffic:hasYValue  a        owl:FunctionalProperty , owl:DatatypeProperty ;
        rdfs:range          xsd:integer ;
        rdfs:subPropertyOf  traffic:position .

traffic:  a                            owl:Ontology , owl:NamedIndividual , voaf:Vocabulary ;
        rdfs:comment                   " An ontology to describe the management of the traffic" ;
        cc:license                     <http://creativecommons.org/licenses/by/3.0/> ;
        dc:description                 "A traffic ontology that describes the management of the traffic in a straight road with two lanes, both in the same direction. The situation is an ambulance trying to overtake all the other cars and they have to modify their speed and positions in order to able the ambulance to pass as fast as possible."@en ;
        dc:title                       "Road Traffic Management"@en ;
        dcterms:creator                <mailto:jesusv@unavarra.es> , <mailto:alberto.cordoba@unavarra.es> , <mailto:antoniojesus.bermejo@unavarra.es> , <mailto:josej.astrain@unavarra.es> ;
        dcterms:issued                 "2012-01-21"^^xsd:date ;
        dcterms:modified               "2012-09-07"^^xsd:date ;
        dcterms:source                 <http://link.springer.com/chapter/10.1007%2F978-3-642-32524-3_14> ;
        vann:preferredNamespacePrefix  "traffic" ;
        vann:preferredNamespaceUri     "http://www.sensormeasurement.appspot.com/ont/transport/traffic#" ;
        owl:versionInfo                1.0 ;
        skos:historyNote               "Ontology extracted from the paper Ontology Based Road Traffic Management. [Bermejo, A.J. et al. 2012] "@en .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Behind
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:LastBeforeGap
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          false ;
                                                                   swrl:propertyPredicate  traffic:bigSpeedDifference
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "3"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithOvertaker
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftDecelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Ahead
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:BeforeGap
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          false ;
                                                                   swrl:propertyPredicate  traffic:bigSpeedDifference
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "3"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftDecelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

j.0:hasSpaceAhead  a  owl:AnnotationProperty .

j.0:isInFrontOfOvertaker
        a       owl:AnnotationProperty .

traffic:Accelerate  a    owl:Class ;
        rdfs:subClassOf  traffic:Action .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:NoSpace
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          false ;
                                                      swrl:propertyPredicate  traffic:bigSpeedDifference
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "2"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithAheadCar
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "1"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftAccelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                            swrl:argument1          <urn:swrl#c> ;
                            swrl:argument2          true ;
                            swrl:propertyPredicate  traffic:hasSpaceLateral
                          ] ;
               rdf:rest   ()
             
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       <urn:swrl#c> ;
                            swrl:classPredicate  traffic:Lateral
                          ] ;
               rdf:rest   ()
             
             ]
] .

traffic:Car3  a                       traffic:Vehicle , owl:NamedIndividual ;
        traffic:beforeTheGap          false ;
        traffic:bigSpeedDifference    false ;
        traffic:hasSpaceAhead         true ;
        traffic:hasSpaceBehind        false ;
        traffic:hasSpaceLateral       false ;
        traffic:isInFrontOfOvertaker  true ;
        traffic:isOvertaking          false ;
        traffic:lastFirstBeforeAfter-TheGap
                false ;
        traffic:speedWithBeforeTheGapCar
                3 .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Ahead
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:FirstAfterGap
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          false ;
                                                                   swrl:propertyPredicate  traffic:bigSpeedDifference
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "1"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftAccelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       <urn:swrl#c> ;
                            swrl:classPredicate  traffic:Lateral
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       <urn:swrl#c> ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   ()
                          
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       <urn:swrl#c> ;
                            swrl:classPredicate  traffic:ChangeLine
                          ] ;
               rdf:rest   ()
             
             ]
] .

<http://www.unavarra.es/foaf/unavarra.rdf#A.J.Bermejo>
        a       foaf:Person , owl:NamedIndividual .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:BeforeGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Behind
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "1"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithOvertaker
                                                                 ] ;
                                                      rdf:rest   ()
                                                    
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:MaintainSpeed
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                            swrl:argument1          <urn:swrl#c> ;
                            swrl:argument2          true ;
                            swrl:propertyPredicate  traffic:beforeTheGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                         swrl:argument1          <urn:swrl#c> ;
                                         swrl:argument2          false ;
                                         swrl:propertyPredicate  traffic:lastFirstBeforeAfter-TheGap
                                       ] ;
                            rdf:rest   ()
                          
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       <urn:swrl#c> ;
                            swrl:classPredicate  traffic:BeforeGap
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       <urn:swrl#c> ;
                            swrl:classPredicate  traffic:Vehicle
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                         swrl:argument1          <urn:swrl#c> ;
                                         swrl:argument2          true ;
                                         swrl:propertyPredicate  traffic:isOvertaking
                                       ] ;
                            rdf:rest   ()
                          
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       <urn:swrl#c> ;
                            swrl:classPredicate  traffic:Overtaker
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:AfterGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Ahead
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          true ;
                                                                   swrl:propertyPredicate  traffic:bigSpeedDifference
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "1"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Accelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:BeforeGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Lateral
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          false ;
                                                                   swrl:propertyPredicate  traffic:bigSpeedDifference
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "3"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftDecelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Behind
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          false ;
                                                      swrl:propertyPredicate  traffic:bigSpeedDifference
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "3"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithAheadCar
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "2"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftDecelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Ahead
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:BeforeGap
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "1"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                 ] ;
                                                      rdf:rest   ()
                                                    
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:MaintainSpeed
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:NoSpace
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          true ;
                                                      swrl:propertyPredicate  traffic:bigSpeedDifference
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "3"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithAheadCar
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "3"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Decelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:AfterGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Behind
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          true ;
                                                                   swrl:propertyPredicate  traffic:isInFrontOfOvertaker
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "2"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftAccelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

traffic:Action  a        owl:Class ;
        rdfs:subClassOf  owl:Thing ;
        rdfs:subClassOf  [ a                   owl:Restriction ;
                           owl:onProperty      traffic:isActionDoneBy ;
                           owl:someValuesFrom  traffic:Vehicle
                         ] .

traffic:FirstAfterGap
        a                owl:Class ;
        rdfs:subClassOf  traffic:Position .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:AfterGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Behind
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          false ;
                                                                   swrl:propertyPredicate  traffic:isInFrontOfOvertaker
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "1"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftDecelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

traffic:isActionDoneBy
        a              owl:IrreflexiveProperty , owl:InverseFunctionalProperty , owl:AsymmetricProperty , owl:ObjectProperty ;
        rdfs:range     traffic:Vehicle ;
        owl:inverseOf  traffic:doesAction .

<http://www.unavarra.es/foaf/unavarra.rdf#J.Villadangos>
        a       foaf:Person , owl:NamedIndividual .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Ahead
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:BeforeGap
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "2"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                 ] ;
                                                      rdf:rest   ()
                                                    
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:MaintainSpeed
                          ] ;
               rdf:rest   ()
             
             ]
] .

voaf:VocabularySpace  a   owl:Class ;
        rdfs:comment      "A vocabulary space defines any relevant grouping of vocabularies \ne.g., designed for similar purposes or domains, or designed by the same publisher or the same project, etc.\n    A vocabulary can belong to zero, one or more vocabulary spaces."@en , "Dublin Core properties isPartOf and hasPart are used to link a vocabulary to a \nvocabulary space" ;
        rdfs:isDefinedBy  voaf: ;
        rdfs:label        "Vocabulary Space"@en .

<http://www.unavarra.es>
        a       foaf:Organization , owl:NamedIndividual .

traffic:hasSpace  a  owl:DatatypeProperty .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:BeforeGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Behind
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          false ;
                                                                   swrl:propertyPredicate  traffic:bigSpeedDifference
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "3"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithOvertaker
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftDecelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

traffic:hasSpeedValue
        a                   owl:FunctionalProperty , owl:DatatypeProperty ;
        rdfs:range          xsd:nonNegativeInteger ;
        rdfs:subPropertyOf  traffic:movement .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Ahead
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          "3"^^xsd:long ;
                                                      swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                    ] ;
                                         rdf:rest   ()
                                       
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftAccelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

traffic:isOvertaking  a     owl:DatatypeProperty , owl:AnnotationProperty ;
        rdfs:domain         traffic:Vehicle ;
        rdfs:range          xsd:boolean ;
        rdfs:subPropertyOf  traffic:position .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:BeforeGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Lateral
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                    swrl:ClassAtom ;
                                                      swrl:argument1       traffic:c ;
                                                      swrl:classPredicate  traffic:NotOvertaker
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "2"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithBeforeTheGapCar
                                                                 ] ;
                                                      rdf:rest   ()
                                                    
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:MaintainSpeed
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       <urn:swrl#c> ;
                            swrl:classPredicate  traffic:NoSpace
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       <urn:swrl#c> ;
                                         swrl:classPredicate  traffic:NotOvertaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          <urn:swrl#c> ;
                                                      swrl:argument2          true ;
                                                      swrl:propertyPredicate  traffic:isInFrontOfOvertaker
                                                    ] ;
                                         rdf:rest   ()
                                       
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       <urn:swrl#c> ;
                            swrl:classPredicate  traffic:SoftAccelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

traffic:Behind  a        owl:Class ;
        rdfs:subClassOf  traffic:Space .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Behind
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          true ;
                                                      swrl:propertyPredicate  traffic:bigSpeedDifference
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "2"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithAheadCar
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "1"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Accelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:NoSpace
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          "1"^^xsd:long ;
                                                      swrl:propertyPredicate  traffic:speedWithAheadCar
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "2"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                 ] ;
                                                      rdf:rest   ()
                                                    
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:SoftAccelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:NoSpace
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          "2"^^xsd:long ;
                                                      swrl:propertyPredicate  traffic:speedWithAheadCar
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "3"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                 ] ;
                                                      rdf:rest   ()
                                                    
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:MaintainSpeed
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                            swrl:argument1          <urn:swrl#c> ;
                            swrl:argument2          true ;
                            swrl:propertyPredicate  traffic:beforeTheGap
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                         swrl:argument1          <urn:swrl#c> ;
                                         swrl:argument2          true ;
                                         swrl:propertyPredicate  traffic:lastFirstBeforeAfter-TheGap
                                       ] ;
                            rdf:rest   ()
                          
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       <urn:swrl#c> ;
                            swrl:classPredicate  traffic:LastBeforeGap
                          ] ;
               rdf:rest   ()
             
             ]
] .

[ a          swrl:Imp ;
  swrl:body  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Behind
                          ] ;
               rdf:rest   [ a          swrl:AtomList ;
                            rdf:first  [ a                    swrl:ClassAtom ;
                                         swrl:argument1       traffic:c ;
                                         swrl:classPredicate  traffic:Overtaker
                                       ] ;
                            rdf:rest   [ a          swrl:AtomList ;
                                         rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                      swrl:argument1          traffic:c ;
                                                      swrl:argument2          true ;
                                                      swrl:propertyPredicate  traffic:bigSpeedDifference
                                                    ] ;
                                         rdf:rest   [ a          swrl:AtomList ;
                                                      rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                   swrl:argument1          traffic:c ;
                                                                   swrl:argument2          "3"^^xsd:long ;
                                                                   swrl:propertyPredicate  traffic:speedWithAheadCar
                                                                 ] ;
                                                      rdf:rest   [ a          swrl:AtomList ;
                                                                   rdf:first  [ a                       swrl:DatavaluedPropertyAtom ;
                                                                                swrl:argument1          traffic:c ;
                                                                                swrl:argument2          "2"^^xsd:long ;
                                                                                swrl:propertyPredicate  traffic:speedWithBehindCar
                                                                              ] ;
                                                                   rdf:rest   ()
                                                                 
                                                                 ]
                                                    ]
                                       ]
                          ]
             ] ;
  swrl:head  [ a          swrl:AtomList ;
               rdf:first  [ a                    swrl:ClassAtom ;
                            swrl:argument1       traffic:c ;
                            swrl:classPredicate  traffic:Decelerate
                          ] ;
               rdf:rest   ()
             
             ]
] .
