From harry.chen at umbc.edu Wed Jun 16 14:59:18 2004 From: harry.chen at umbc.edu (Harry Chen) Date: Wed Jun 16 15:00:03 2004 Subject: [CoBrA-users] Re: Using the Temporal Reasoner with OWL In-Reply-To: <011f01c453d4$6ae967b0$0121020a@IHMC> References: <011f01c453d4$6ae967b0$0121020a@IHMC> Message-ID: -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On Jun 16, 2004, at 3:02 PM, Larry Bunch wrote: > I'm particularly interested in using the temporal reasoner in Jena, so > please point me to the Java API you mentioned. At the moment, there is no binary release. You have to fetch source from the CVS compile time. http://projects.semwebcentral.org/scm/?group_id=22 Required Java library: - - Jena 1.2 Following the Jena reasoner API convention, I created two classes for instantiating a temporal reasoner (see the "src" directory in CVS). package: soupa.reasoner.time SOUPATimeReasoner.java SOUPATimeReasonerFactory.java A test example code can be found in package: edu.umbc.cobra.test TestSOUPAReasoner.java test data: tests/time-t1.owl Here is a bit more detail behind the implementation: The rules are implemented based on the SOUPA time ontology. This ontology is about the same as the DAML time and the time entry sub-ontology. http://pervasive.semanticweb.org/ont/dev/time A Java class representation of this ontology is edu.umbc.cobra.vocabulary.soupa.Time With this class, in your code, you can reference the defined time ontology terms as static Java objects. This is similar to the standard OWL/RDF vocabulary classes provided by Jena. A typical usage: 1) create a Model (a simple RDF model, not OWL) 2) load RDF statements into the Model (statements that are expressed using the SOUPA time ontology) 3) call SOUPATimeReasonerFactory to create a SOUPATimeReasoner 4) create an InfModel by calling InfModel infModel = ModelFactory.createInfModel(reasoner,dataModel); 5) query the infModel. NOTE: be aware that if you use an OWL inference model (i.e., a model that already has an OWL reasoner attached) in conjunction with the temporal inference model, you may experience java runtime exceptions (e.g., out of memory). as far as I know, this is a performance issue with the Jena's OWL reaosner. For this reason, I often build temporal inference model based on a plain RDF model. Let me know if you have any questions. - - Harry - -- Harry Chen <> eBiquity Research Group <> Dept. of CSEE UMBC mailto:harry.chen@umbc.edu <> http://umbc.edu/people/hchen4 <> 8303 775C F587 8F91 673B 000A C396 A7F5 C12B D936 <> -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.3 (Darwin) iD8DBQFA0Kaaw5an9cEr2TYRAq0hAJsHVQTyXYZBzJHWMGSO7P9pMYgjhACfXet/ dFFNdIVkDvFCkBLZlT2fBoE= =FEIN -----END PGP SIGNATURE-----