Suppose i have Event e, which hasStartTime t1 and hasEndTime t2. To calculate the duration using SWRL of the event in minutes i use this rule :

Event(?e)  ∧
hasStartTime(?e, ?t1)  ∧
hasEndTime(?e, ?t2)  ∧
temporal:duration(?d, ?t1, ?t2, temporal:Minutes)
  → hasDuration(?e, ?d)

?d is return value in a minute .


I found good resources to know more about semantic web and semantic web technology such as the definition of semantic web, RDF, Ontology and also how to use protege. Here is the addrees :

And for the complete information just visit

I really got that this tutorial is usefull a lot, even for beginner.

Protege 3.4 beta version provides SQWRL to get knowledge from OWL Ontology. How to activate and use this feature, i wrote it in this document (get-information-from-ontology-using-sqwrl.pdf).

Complete example can be found on