Re: [Owlim-discussion] Error in predicate statistics - context index related
Hi Marek, thank you for the testcase - we were able to reproduce the issue and will include a fix with the next maintenance release Damyan Ognyanov Ontotext AD On 4/5/2013 5:57 PM, Marek Šurek wrote: Hi, I was able to reproduce problem with error predicate statistics related to context-index : Owlim b5849, Sesame 2.6.10, Linux RHEL, Java 7 64 bit, Tomcat 7 1. Edit test.ttl to correctly import foo.owl 2. Create repository : curl -X POST -H Content-Type:text/turtle -T /home/path/to/test.ttl localhost:8080/openrdf-sesame/repositories/SYSTEM/rdf-graphs/service?graph=http://www.foo.com/test 3. Run query : PREFIX rdf:http://www.w3.org/1999/02/22-rdf-syntax-ns# PREFIX rdfs:http://www.w3.org/2000/01/rdf-schema# SELECT * WHERE { GRAPH http://www.ontotext.com/explicit { ?place rdf:type ?placeType . ?placeType rdfs:label ?placeTypeLabel } } LIMIT 10 4. Look into catalina.out Best regards, Marek ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] delete owlim repository with sesame workbench
Hi Carlo, the issue is related to the way repository description is created, managed and deleted through Sesame framework. When repository is created, only its actual configuration/description/ is stored within the SYSTEM repository - it is not immediately instantiated - so the configuration is not immediately verified. When you try to delete it through the workbench app - the server tries to instantiate it first but when that fail due to some misconfiguration you end up with such exception. If there are no other repositories you could simply delete the SYSTEM repository and restart the openrdf-sesame app. But if that is unfeasible for some reason then you could try to remove it's description from the SYSTEM repository using a sparql updates executed directly against it. Look at the examples at: http://owlim.ontotext.com/display/OWLIMv53/OWLIM+FAQ#OWLIMFAQ-Configuration Although there is no exact Sparql update mentioned which deletes a repository, you could easily craft one knowing only just the id of the repository and how the SYSTEM repository data is organized. Let me know If you still are unable to remove it - will try to aid you further on that. Damyan Ognyanov Ontotext AD On 3/7/2013 1:36 PM, Carlo Allocca wrote: Dear All, I have just started to play with OWLIM 5. For the installation, I followed all the steps as you described here https://confluence.ontotext.com/display/OWLIMv51/OWLIM-SE+Installation I create an owlim-repository using the sesame console, then using sesame workbech I tried to delete it. When doing so, i got the following error (see below). Please, i would like to ask any help for it. How can i delete it? Many Thanks, Regards, Carlo HTTP Status 500 - org.openrdf.repository.RepositoryException: Failed to delete repository: org.openrdf.repository.RepositoryException: java.lang.IllegalArgumentException: Parameter 'tuple-index-memory' should contain a value no less than 20m (500) *type* Exception report *message* _org.openrdf.repository.RepositoryException: Failed to delete repository: org.openrdf.repository.RepositoryException: java.lang.IllegalArgumentException: Parameter 'tuple-index-memory' should contain a value no less than 20m (500)_ *description* _The server encountered an internal error that prevented it from fulfilling this request._ *exception* javax.servlet.ServletException: org.openrdf.repository.RepositoryException: Failed to delete repository: org.openrdf.repository.RepositoryException: java.lang.IllegalArgumentException: Parameter 'tuple-index-memory' should contain a value no less than 20m (500) org.openrdf.workbench.base.TransformationServlet.service(TransformationServlet.java:85) org.openrdf.workbench.base.BaseServlet.service(BaseServlet.java:40) org.openrdf.workbench.proxy.ProxyRepositoryServlet.service(ProxyRepositoryServlet.java:93) org.openrdf.workbench.proxy.WorkbenchServlet.service(WorkbenchServlet.java:131) org.openrdf.workbench.proxy.WorkbenchServlet.service(WorkbenchServlet.java:90) org.openrdf.workbench.proxy.WorkbenchGateway.service(WorkbenchGateway.java:109) org.openrdf.workbench.base.BaseServlet.service(BaseServlet.java:40) org.openrdf.workbench.proxy.CookieCacheControlFilter.doFilter(CookieCacheControlFilter.java:52) *root cause* org.openrdf.repository.RepositoryException: Failed to delete repository: org.openrdf.repository.RepositoryException: java.lang.IllegalArgumentException: Parameter 'tuple-index-memory' should contain a value no less than 20m (500) org.openrdf.http.client.HTTPClient.deleteRepository(HTTPClient.java:1094) org.openrdf.repository.manager.RemoteRepositoryManager.removeRepository(RemoteRepositoryManager.java:268) org.openrdf.workbench.commands.DeleteServlet.dropRepository(DeleteServlet.java:55) org.openrdf.workbench.commands.DeleteServlet.doPost(DeleteServlet.java:49) org.openrdf.workbench.base.TransformationServlet.service(TransformationServlet.java:75) org.openrdf.workbench.base.BaseServlet.service(BaseServlet.java:40) org.openrdf.workbench.proxy.ProxyRepositoryServlet.service(ProxyRepositoryServlet.java:93) org.openrdf.workbench.proxy.WorkbenchServlet.service(WorkbenchServlet.java:131) org.openrdf.workbench.proxy.WorkbenchServlet.service(WorkbenchServlet.java:90) org.openrdf.workbench.proxy.WorkbenchGateway.service(WorkbenchGateway.java:109) org.openrdf.workbench.base.BaseServlet.service(BaseServlet.java:40) org.openrdf.workbench.proxy.CookieCacheControlFilter.doFilter(CookieCacheControlFilter.java:52) *note* _The full stack trace of the root cause is available in the Apache Tomcat/7.0.37 logs._ Apache Tomcat/7.0.37
Re: [Owlim-discussion] setting Ruleset owlim repository using sesame workbench
Hi Carlo, the easiest and less ambiguous way to specify your custom ruleset is to use its absolute pathname as value of the 'ruleset' parameter. Make sure that the user under which your web app server runs have sufficient rights to access it. HTH, Damyan Ognyanov Ontotext AD On 3/7/2013 3:33 PM, Carlo Allocca wrote: Dear All, it is again me. I would like to ask the following: I creating a new OWLIM-SE repository with sesame workbench and my question is: How Can I set RulesSet with myfile.pie ? I have done it using OWLIM as java library, but how to do it using sesame workbench? Thank you very much for your help. Regards, Carlo ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] Unable to find custom Lucene Scorer
hi Marek, Both Scorer and ScorerFactory were moved into com.ontotext.trree.plugin.lucene package but that was not reflected within the obfuscation script and those end up obfuscated. I've already changed the online documentation and the next maintenance release of 5.3 will expose those interfaces properly. Sorry for the inconvenience Damyan Ognyanov, Ontotext AD On 2/11/2013 11:45 PM, Marek Šurek wrote: Hi, I would like to ask where can I find interface ScorerFactory and Scorer. According to documentation (http://owlim.ontotext.com/display/OWLIMv53/OWLIM-SE+Full-text+Search) it should be here : com.ontotext.trree.plugin.ScorerFactory and also com.ontotext.trree.plugin.Scorer. But I'm not able to find it. Could you guide me where to search? OWLIM SE 5.3 b5777 Best regards, Marek ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] lucene index on values of a certain property
Hi Katja, There is no direct way to index only those literals that appear as objects of statements with certain set of predicates. but you could index the subjects - by building a molecule model of size 1, consisting only literals and looking only fro that exact predicate. will give you an example using the same data from your email. First, to insert the data: PREFIX ns:http://example.org/ PREFIX rdf:http://www.w3.org/1999/02/22-rdf-syntax-ns# INSERT DATA { ns:Object1 rdf:type ns:Type1 . ns:Object2 rdf:type ns:Type1 . ns:Object3 rdf:type ns:Type1 . ns:Object1 ns:prop1 v11 . ns:Object1 ns:prop2 v12 . ns:Object2 ns:prop1 v21 . ns:Object2 ns:prop2 v22 . ns:Object3 ns:prop1 v31 . ns:Object3 ns:prop2 v32 . } then prepare and create the index by choosing: - a model of size 1 (one hop traversal from the originating node), - selecting only the uris to be included - then specifying only ns:prop1 to be traversed - then to include only values if type literal - not bNodes nor URI PREFIX luc: http://www.ontotext.com/owlim/lucene# INSERT DATA { luc:moleculeSize luc:setParam 1 . luc:index luc:setParam uris . luc:includePredicates luc:setParam http://example.org/prop1; . luc:include luc:setParam literal . luc:myIndex luc:createIndex true . } then the same query should return only those nodes that are subjects of a statement with ns:pred1 and where the literals match the lucene query: for instance PREFIX luc: http://www.ontotext.com/owlim/lucene# select * where { ?s luc:myIndex v?1 . } should return [ns:Object1, ns:Object2 and ns:Object3] while this one PREFIX luc: http://www.ontotext.com/owlim/lucene# select * where { ?s luc:myIndex v?2 . } an empty result set HTH On 1/25/2013 10:44 AM, Pfeifer, Katja wrote: Hello, I have a question concerning the use of the lucene index. Assume the data in the RDF store is as follows: ns:Object1 rdf:type ns:Type1 . ns:Object2 rdf:type ns:Type1 . ns:Object3 rdf:type ns:Type1 . ... ns:Object1 ns:prop1 v11 . ns:Object1 ns:prop2 v12 . ns:Object2 ns:prop1 v21 . ns:Object2 ns:prop2 v22 . ns:Object3 ns:prop1 v31 . ns:Object3 ns:prop2 v32 . ... I like to have an index for searching within the values of the property ns:prop1 (i.e., v11, v21, v31, ...). I thought that setting the parameter luc:includePredicates to ns:prop1 makes such an index restricted to values of a certain property possible. Unfortunately this does not work and the final index included all literals independent from the property (i.e., v11, v12, ...). Here are the ASK statements I executed. Instead of ns:prop1 I used the complete URI as I read that using namespaces here is not working: PREFIX luc: http://www.ontotext.com/owlim/lucene# ASK { luc:include luc:setParam literal . } ASK { luc:includePredicates luc:setParam ns:prop1 . } ASK { luc:index luc:setParam literal . } ASK { luc:myIndex luc:createIndex true . } Afterwards (all ASK statements returned true) I wanted to get all values of ns:prop1 matching a certain search string (e.g., v*) by executing: PREFIX luc: http://www.ontotext.com/owlim/lucene# SELECT ?s WHERE { ?s luc:myIndex v* . } Best regards, Katja ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] Is there a version of owlim jena bridge that would work with arq 2.9.4?
Hi Lauri, The Jena adapter within Owlim 5.3 uses jena 2.7.3 / arq 2.9.3 combo - not sure if that helps or if those versions are forward compatible with those you are using. See the release notes: http://owlim.ontotext.com/display/OWLIMv53/OWLIM-SE+Release+notes regards, Damyan Ognyanov Ontotext AD On 1/17/2013 6:55 PM, Lauri Carlson wrote: Hello, I hit the problem below after switching to arq 2.9.4. I am using owlim-se-5.2.5563. Is there a version of owlim jena bridge that would work with arq 2.9.4? I use jena-core 2.7.4 and arq 2.9.4. It would harm other things to have to downgrade. Greetings, Lauri Carlson University of Helsinki http://www.mail-archive.com/owlim-discussion@ontotext.com/msg01415.html Barry Bishop Wed, 22 Feb 2012 11:14:55 -0800 Forwarding reply on behalf of Damyan Onyanov: Hi Marek, the error you are getting is due to a version mismatch between the jena/arq libraries we use to build our bridge and those you are using. In recent versions of ARQ the com.hp.hpl.jena.sparql.engine.binding.BindingMap is no longer a 'normal' class but an interface but in our code we are still trying to instantiate it as usually. So you need to switch to some older versions of jena/arq that works with owlim, e.g. jena-2.6.3 and arq-2.8.6 combo for instance - these are exact versions we use. HTH, Damyan Ognyanov Ontotext AD ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] Plugin not found in classpath
Hi Marek, the logged error is a false alarm. The cause of it is that, sometime ago, we changed the default value of an jvm parameter that is used to specify additional plugins to be initialized (not listed in the respective services file within META-INF folder of the jar) from nothing to (an empty string). The error is logged because we could not initialize a plugin with class name. We will fix that so to do not give such false alarms in the next maintenance release. Damyan Ognyanov Ontotext AD On 1/11/2013 11:56 AM, Marek Šurek wrote: Hi, I see this error message for quite long time in our logs, but as it was not crucial I ignored it. May I ask what the error message means and why it's there? What are consequences of such error, because error is quite strong log message? We use geo-spatial plugin and lucene plugin, but the error message is there even when they are disabled. [ERROR] 2013-01-11 10:39:39,120 [repositories/repository-name] Plugin '' not found in classpath. Skipping... Best regards, Marek ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] {Disarmed} Re: missing owl:sameAs triples
Hi Jerven, if your repository's ruleset is indeed preset to 'empty' and you do not use any inference then please use -Ddisable-sameAs=true JVM option on your service or alter the repository configuration until we release a proper 5.3 release with the fix ... regards, damyan On 12/19/2012 3:52 PM, Jerven Bolleman wrote: The jena warnings are another issue, on the uniprot rdf production site. Not for you to worry about, in any case will be fixed by the next uniprot data release on the 9th of January. Thanks for looking into the owl:sameAs issue. Regards, Jerven On 12/19/2012 02:47 PM, Barry Norton wrote: Further, I converted to NTriples (note, Jena gives a lot of warnings - it's probably worth duplicating this and taking note), and pulled out only the sameAs statements: $ apache-jena-2.7.4/bin/rdfparse citations.rdf citations.rdf.nt $ wc citations.rdf.nt 12693123 217642066 2491240008 citations.rdf.nt $ grep 'sameAs' citations.rdf.nt citations-sameAs.r.nt $ wc citations-sameAs.rdf.nt 789525 3158100 103875838 citations-sameAs.rdf.nt These I upload by themselves: $ curl -X POST -H Content-Type:text/turtle -T citations-sameAs.rdf.nt http://localhost:8080/openrdf-sesame/repositories/citations/statements I received then the same results as below. So I think we can disregard the effect of other data and concentrate purely on what's happening to these sameAs statements. This requires looking into the internals, so I'll leave you in Damyan's capable hands. Barry On 19/12/12 12:42, Barry Norton wrote: Jerven, confirmed I can reproduce your problem thus: $ wget ftp://ftp.uniprot.org/pub/databases/uniprot/current_release/rdf/citations.rdf.gz $ gunzip citations.rdf.gz $ curl -X POST -H Content-Type:application/rdf+xml -T citations.rdf http://localhost:8080/openrdf-sesame/repositories/citations/statements And now (unlike with P68353.nt) get only: $ curl -d query=DESCRIBE http://purl.uniprot.org/uniprot/P68359 http://localhost:8080/openrdf-sesame/repositories/citations @prefix rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns# . @prefix rdfs: http://www.w3.org/2000/01/rdf-schema# . @prefix sesame: http://www.openrdf.org/schema/sesame# . @prefix owl: http://www.w3.org/2002/07/owl# . @prefix xsd: http://www.w3.org/2001/XMLSchema# . @prefix fn: http://www.w3.org/2005/xpath-functions# . [no results] And: $ curl -H Accept:application/sparql-results+json -d query=PREFIX owl: http://www.w3.org/2002/07/owl# SELECT * WHERE {?s owl:sameAs ?o} LIMIT 10 http://localhost:8080/openrdf-sesame/repositories/citations { head: { vars: [ s, o ] }, results: { bindings: [ ] } [again, nothing] Barry On 19/12/12 11:50, Jerven Bolleman wrote: Hi Barry, No there are two systems which show the same problem. All triples with owl:sameAs as predicate are gone. i.e. PREFIX owl: http://www.w3.org/2002/07/owl# SELECT * WHERE {?s owl:sameAs ?o} returns no results. Both at linkedlifedata and at beta.sparql.uniprot.org. Apparently Vassil claims that linkedlifedata deletes all owl:sameAs statements and therefore should not return results. This is silly but ok, if you really do that then you can not replicate my problem at that endpoint. However, we at uniprot do not remove any owl:sameAs statement. We load these into the store and then do not get them back in query answering. Basically all triples with owl:sameAs are silently deleted by the store. A dataset that you can use for experimenting is ftp://ftp.uniprot.org/pub/databases/uniprot/current_release/rdf/citations.rdf.gz Which is moderate in size. Regards, Jerven On 12/19/2012 11:38 AM, Barry Norton wrote: Thanks for the clarification - I believe Vassil has answered the question in the mean time, this is down to the way the data is loaded and exposed in LinkedLifeData. OWLIM does index the equivalence in the raw dataset and, under appropriate conditions, will infer the symmetric dual. Barry On 19/12/12 10:24, Jerven Bolleman wrote: Hi Barry, The workbench is not involved its just using directly the sesame api. e.g. ((GraphQuery) query).evaluate(); As the triple is explicit in the dataset. Which means setIncludeInferred true or false should not matter. Testing with the debugger it is unaffected. Tobe clear we load the data using ruleset=none. Which might impact the scenario. The query used to work its just in the latest version that I notice it being gone. Regards, Jerven On 12/19/2012 11:03 AM, Barry Norton wrote: Jerven, using owlim-se-5.3.5689 I just executed: $ wget http://www.uniprot.org/uniprot/P68353.nt $ curl -X POST -H Content-Type:text/turtle -T P68353.nt http://localhost:8080/openrdf-sesame/repositories/uniprot/statements $ curl -d query=DESCRIBE http://purl.uniprot.org/intact/EBI-530932 http://localhost:8080/openrdf-sesame/repositories/uniprot I got: @prefix rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns# . @prefix rdfs: http://www.w3.org/2000/01/rdf-schema
Re: [Owlim-discussion] pending write reached
hi Nico, that means that at least 'PendigWritesLimit' updates are waiting to be processed due to some long running one still not finished ... or because of the said replication you are talking about. there is no way to flush/discard the pending updates. They will wait until processed or until the 'Timeout' value is reached. HTH Dmayan Ognyanov Ontotext AD On 11/19/2012 1:43 PM, Broccoli Nico wrote: hi, in my owlim enterprise 5.2 , when i try to update , system respond to me pending write reached, In jmxconsole i see pendingwritelimit and pendingwrite equals to 1000, (we just finish replicate between worker) How can i flush or free or delete this pending write ? thanks nico Le informazioni contenute nella presente e-mail potrebbero essere confidenziali e sono dirette unicamente ai destinatari sopra indicati. In caso di ricezione da parte di persona diversa è vietato qualunque tipo di distribuzione o copia. Chi riceva questo messaggio per errore è pregato di inoltrarlo al mittente e di distruggere questa e-mail. This e-mail may contain confidential information and is intended only for the use of the addressee(s) named above. If the reader of this message is not the intended recipient of this message, please note that distribution or copying of this communication is forbidden. Anyone who receives this communication in error should return it immediately to the sender and destroy the message. ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] openrdf-sesame server starting issue
Hi Nazmul, the openrdf-sesame app will be initialized automatically when the workbench connects to it or you may access the main page at http://localhost:8081/openrdf-sesame/home/overview.view the workbench uses XLT's to create repositories. The war file distributed with Owlim SE has a SE specific XLT named create-owlim-se.xsl within the 'transformations' folder of the deployed openrdf-workbench app. Check if you are using the right WAR file. There are other ways to create remote repositories, either using the Sesame console or by directly manipulating the SYSTEM repository as it is done within the example at: http://owlim.ontotext.com/display/OWLIMv53/OWLIM+FAQ#OWLIMFAQ-HowcanIscript%28automate%29thecreationofremoterepositories%3F not sure about tutorial but the online documentation is available at: http://owlim.ontotext.com/display/OWLIMv53 regards, Damyan Ognyanov Ontotext AD On 11/18/2012 2:00 AM, HUSSAIN, N (Student) wrote: Hi, I have installed OWLIM-SE. I can start workbench using the following URL: http://localhost:8080/openrdf-workbench/ http://localhost:8080/openrdf-workbench/ But I cannot start the server using this URL: http://localhost:8080/openrdf-sesame. A http error status error 404 appear. However, after starting the server using openrdf-workbench, I tried to create new repository but 'OWLIM-SE' is not available in the drop-down list. Please help. Is there any online tutorial available for OWLIM-SE? Kind regards Nazmul ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] Delayed update #2149 processed
Hi Nico, that notification is reported when a delayed update has been finally processed. If the cluster's parameter 'UpdateTimeout' is set to something greater than 0, the thread that initially handles the update request will wait that amount of milliseconds prior to return no matter if the update is still pending or not - the HTTP code in that case will be 204. So when the update is finally processed (in some future moment( that notification is fired to inform for the result ) so that have nothing to do with the way you send updates to the master node - in a single transaction in separate successive ones. When an update is delayed and the initial thread is about to return HTTP 204, another notification is sent describing the situation and reporting the runtime id of that update for future reference - e.g. so one to be able to track the result - failed or success - when the above notification is sent after processing the delayed update HTH Damyan Ognyanov Ontotext AD On 11/7/2012 4:55 PM, Broccoli Nico wrote: Hi, in my notifications i see Delayed update #2149 processed ! whats means ? in my program : - autocommit=false - select /construct - delete item - insert same new item (with little change) - commit I can ? or i have to commit the delete operation and after commit the new insert? thanks nico Le informazioni contenute nella presente e-mail potrebbero essere confidenziali e sono dirette unicamente ai destinatari sopra indicati. In caso di ricezione da parte di persona diversa è vietato qualunque tipo di distribuzione o copia. Chi riceva questo messaggio per errore è pregato di inoltrarlo al mittente e di distruggere questa e-mail. This e-mail may contain confidential information and is intended only for the use of the addressee(s) named above. If the reader of this message is not the intended recipient of this message, please note that distribution or copying of this communication is forbidden. Anyone who receives this communication in error should return it immediately to the sender and destroy the message. ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] new owlim build for server or also for a client ?
Hi Nico, If you are talking about an enterprise setup - all masters and all nodes should use one and the same jar - otherwise masters would not recognize the nodes In general it is advisable to use same jar across all your setups to avoid possible version mismatch issues. Damyan On 10/2/2012 10:27 AM, Broccoli Nico wrote: Hi, I have question about new release of owlim build, When you release new build (like 5.2.5512) , i have to install only on the servers or I have to redeploy new jar on all client ? thanks Nico Le informazioni contenute nella presente e-mail potrebbero essere confidenziali e sono dirette unicamente ai destinatari sopra indicati. In caso di ricezione da parte di persona diversa è vietato qualunque tipo di distribuzione o copia. Chi riceva questo messaggio per errore è pregato di inoltrarlo al mittente e di distruggere questa e-mail. This e-mail may contain confidential information and is intended only for the use of the addressee(s) named above. If the reader of this message is not the intended recipient of this message, please note that distribution or copying of this communication is forbidden. Anyone who receives this communication in error should return it immediately to the sender and destroy the message. ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] Owlim-lite within a jar-with-dependencies bundled application?
Hi, It could be that the owlim sail's factory is not being initialized. You could check that by looking what is stored within: /META-INF/services/org.openrdf.sail.config.SailFactory file within your big jar there should be a line like: com.ontotext.trree.owlim_ext.config.OWLIMSailFactory damyan On 9/27/2012 8:34 AM, Barry Bishop wrote: Hello vonhoffen, It's not completely clear to me what you are doing, but I can definitely say that the message Unsupported Sail type occurs only when the owlim-lite jar file is not on the java classpath. Perhaps this might help you to pinpoint the problem? Good luck, barry On 26/09/12 17:09, vonhof...@t-online.de wrote: G'day sirs! I'm having a hard time figuring out the following issue: I have an application using an OWLIM-lite in-memory-repository. I want to bundle the thing into a single |jar-with-dependencies| using |assembly| plugin. As owlim is not available as maven dependency, I installed the owlim-lite.jar into the local repository using |mvn install:install-file ...|. Unfortunately, this does not yield the desired effect. When I run |jar -tf ...| the content clearly shows, that OWLIM-lite jar is included, but I get the (familiar) following exception, indicating, sesame is not aware of the library. |org.openrdf.repository.config.RepositoryConfigException: Unsupported Sail type: swiftowlim:Sail | Does anyone have a clue, how I could resolve the issue? Of course, I'd glady provide more detail if needed. ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] Owlim-lite within a jar-with-dependencies bundled application?
Seems to me that it is a not a classpath issue but rather the one I mentioned earlier. The original message you gave indicates that Sesame framework could not find a suitable Factory that is able to create instances of Owlim-lite sail (with id swiftowlim:Sail) open the jar and see if META-INF/services/org.openrdf.sail.config.SailFactory have a line with the Owlim's implementation. Most probably the sesame file (with the same name) overrides the one from the owlim jar you need to merge those ... HTH Damyan On 9/27/2012 1:33 PM, Laura Hänsel wrote: Thanks for the reply, damyan and barry. What makes me wonder *why exactel* is OWLIM-lite not found on classpath? In pom.xml I've added the owlim-lite-5.2.jar as dependency (which I installed to my local repository) and set the scope to runtime. I've set addClasspath to true. In my IDE it is therefore listed under Maven Dependecies and definately contained inside my jar-with-dependencies generated via assembly plugin. As said, running jar -tf on this jar, lists the OLWIM classes as well... com/ontotext/a/a.class com/ontotext/a/b$a.class com/ontotext/a/b.class com/ontotext/a/c.class com/ontotext/a/d.class com/ontotext/a/e.class com/ontotext/b/a$1.class ... and so on... When running maven dependency:list the owlim-lite-5.2lar is listed as well. OWLIM is the only jar that is causing headaches. E.g. sesame without an owlim-sail works splendid. Did somebody succesfully include Owlim-lite as dependency within a jar-with-dependencies and can provide any hints? Any ideas are well appreciated! Von: damyan dam...@sirma.bg An: Barry Bishop barry.bis...@ontotext.com Cc: vonhof...@t-online.de vonhof...@t-online.de, owlim-discussion@ontotext.com Betreff: Re: [Owlim-discussion] Owlim-lite within a jar-with-dependencies bundled application? Datum: Thu, 27 Sep 2012 07:57:14 +0200 Hi, It could be that the owlim sail's factory is not being initialized. You could check that by looking what is stored within: /META-INF/services/org.openrdf.sail.config.SailFactory file within your big jar there should be a line like: com.ontotext.trree.owlim_ext.config.OWLIMSailFactory damyan On 9/27/2012 8:34 AM, Barry Bishop wrote: Hello vonhoffen, It's not completely clear to me what you are doing, but I can definitely say that the message Unsupported Sail type occurs only when the owlim-lite jar file is not on the java classpath. Perhaps this might help you to pinpoint the problem? Good luck, barry On 26/09/12 17:09, vonhof...@t-online.de [1] wrote: G'day sirs! I'm having a hard time figuring out the following issue: I have an application using an OWLIM-lite in-memory-repository. I want to bundle the thing into a single jar-with-dependencies using assembly plugin. As owlim is not available as maven dependency, I installed the owlim-lite.jar into the local repository using mvn install:install-file Unfortunately, this does not yield the desired effect. When I run jar -tf ... the content clearly shows, that OWLIM-lite jar is included, but I get the (familiar) following exception, indicating, sesame is not aware of the library. org.openrdf.repository.config.RepositoryConfigException: Unsupported Sail type: swiftowlim:Sail Does anyone have a clue, how I could resolve the issue? Of course, I'd glady provide more detail if needed. ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com [2] http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion [3] ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com [4] http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion [5] Links: -- [1] mailto:vonhof...@t-online.de [2] mailto:Owlim-discussion@ontotext.com [3] http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion [4] mailto:Owlim-discussion@ontotext.com [5] http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] ERROR IN PREDICATE STATISTICS
Hi Simon, if you are using/setup your repository through the sesame-workbench - simply start your tomcat, open/access the workbench, select your repository and click 'Query' or 'SPARQL Update' that will cause openrdf-sesame app (to which the workbench is configured to connect) to initialize the repository and during the initialization the missing context or predLists index will be recreated using the data from pos/pso. there is no way to recreate pos and pso indices. Damyan On 9/27/2012 4:52 PM, Rakov, Simon wrote: Hi, Thanks for the instructions...but can you tell me what you mean by simply initialize it? What steps are required to initialize it? Thanks for your prompt reply - I'd like to fix this asap. Is there any way to rebuild pso and pos as well? Thanks again, Yours Simon -- Confidentiality Notice: This message is private and may contain confidential and proprietary information. If you have received this message in error, please notify us and remove it from your system and note that you must not copy, distribute or take any action in reliance on it. Any unauthorized use or disclosure of the contents of this message is not permitted and may be unlawful. -Original Message- From: damyan [mailto:dam...@sirma.bg] Sent: Wednesday, September 26, 2012 4:46 AM To: Blasetti, Luciano (CIOK) Cc: Rakov, Simon; owlim-discussion@ontotext.com; rve...@yarcdata.com Subject: Re: [Owlim-discussion] ERROR IN PREDICATE STATISTICS Hi Luciano, Simon rebuilding context indices requires first to delete them from the storage folder (when repository is down) and then simply initialize it. For the context indices, the files are: pcso, pcso.index, pcos and pcos.index For the predicate list index, the files are: predLists and predLists.index For the predicate statistics (files: predicates and predicates.index), these can be rebuild with the aid of an additional tool that is included within the distribution jar, class name is: com.ontotext.trree.BuildPredicates e.g. something like that should do it having preparing the right classpath: java -cp owlim-lib/*.jar com.ontotext.trree.BuildPredicates repository's storage folder HTH, Damyan Ognyanov Ontotext AD On 9/26/2012 8:55 AM, Blasetti, Luciano (CIOK) wrote: ...Very good question. How to rebuild indexes without reimport the whole repository? From: owlim-discussion-boun...@ontotext.com [owlim-discussion-boun...@ontotext.com] On Behalf Of Rakov, Simon [simon.ra...@astrazeneca.com] Sent: Tuesday, September 25, 2012 5:59 PM To: damyan Cc: owlim-discussion@ontotext.com; rve...@yarcdata.com Subject: Re: [Owlim-discussion] ERROR IN PREDICATE STATISTICS Hi, I do have context indices enabled. Sizes: Pcos hits: 53663768 Pcso hits: 20127229 Pos hits: 482282752 Pso hits: 32098277 PL hits:50179 It looks like pos is much larger than pcos or pso. PL (Predicate Lists) is tiny. How do I rebuild the indexes? Please send me a list of steps. Thanks Simon -- Confidentiality Notice: This message is private and may contain confidential and proprietary information. If you have received this message in error, please notify us and remove it from your system and note that you must not copy, distribute or take any action in reliance on it. Any unauthorized use or disclosure of the contents of this message is not permitted and may be unlawful. -Original Message- From: damyan [mailto:dam...@sirma.bg] Sent: Tuesday, September 25, 2012 11:10 AM To: Rakov, Simon Cc: Barry Bishop; rve...@yarcdata.com; Pavel Mička; owlim-discussion@ontotext.com Subject: Re: [Owlim-discussion] ERROR IN PREDICATE STATISTICS Hi Simon, this is a message received when we detected a mismatch during estimation of the query complexity for a particular statement pattern. And more specifically when the collection size per that statement pattern is calculated to be 0 but we found at least one statement satisfying the pattern. As a possible cause - there could be several but most likely one of the indices is in inconsistent state (or have partial data). Could you check if you are using context indices and the size of these(pcso for instance) is close by (at same order) as for pso/pos ... It could be easily caused when repository is initialized with context indices enabled - then initialized without them but some data is added and then these are again re-enabled. In such scenario, the third time you initialize the repository it will find and use the old context indices but they will not have the data from the previous updates, when they were switched off since these were not maintained when switched off. one way to recover is to rebuild them. HTH Damyan Ognyanov Ontotext AD. On 9/25/2012 5:26 PM, Rakov, Simon wrote: Hi, I am seeing a lot of these in catalina.out: ERROR
Re: [Owlim-discussion] ERROR IN PREDICATE STATISTICS
Hi, - the predicate index should be rebuild while the repository is down, no OWLIM instance should use that storage folder during until it finish. For various technical reasons, predicates rebuild is intentionally not included into the auto recovery through which the context and predLists are recovered/rebuild ... one of the reasons is that these are not mandatory but 'predicates' is fro the 'normal' operation of the repository. HTH Damyan On 9/27/2012 5:39 PM, Rakov, Simon wrote: Hi, Can I run the predicate index build in a separate process while OWLIM is running? Or must it be shut down while com.ontotext.trree.BuildPredicates is running? Does OWLIM *not* rebuild the predicate index when it restarts? Thanks for your help! Simon -- Confidentiality Notice: This message is private and may contain confidential and proprietary information. If you have received this message in error, please notify us and remove it from your system and note that you must not copy, distribute or take any action in reliance on it. Any unauthorized use or disclosure of the contents of this message is not permitted and may be unlawful. -Original Message- From: damyan [mailto:dam...@sirma.bg] Sent: Thursday, September 27, 2012 10:05 AM To: Rakov, Simon Cc: Blasetti, Luciano (CIOK); owlim-discussion@ontotext.com; rve...@yarcdata.com Subject: Re: [Owlim-discussion] ERROR IN PREDICATE STATISTICS Hi Simon, if you are using/setup your repository through the sesame-workbench - simply start your tomcat, open/access the workbench, select your repository and click 'Query' or 'SPARQL Update' that will cause openrdf-sesame app (to which the workbench is configured to connect) to initialize the repository and during the initialization the missing context or predLists index will be recreated using the data from pos/pso. there is no way to recreate pos and pso indices. Damyan On 9/27/2012 4:52 PM, Rakov, Simon wrote: Hi, Thanks for the instructions...but can you tell me what you mean by simply initialize it? What steps are required to initialize it? Thanks for your prompt reply - I'd like to fix this asap. Is there any way to rebuild pso and pos as well? Thanks again, Yours Simon -- Confidentiality Notice: This message is private and may contain confidential and proprietary information. If you have received this message in error, please notify us and remove it from your system and note that you must not copy, distribute or take any action in reliance on it. Any unauthorized use or disclosure of the contents of this message is not permitted and may be unlawful. -Original Message- From: damyan [mailto:dam...@sirma.bg] Sent: Wednesday, September 26, 2012 4:46 AM To: Blasetti, Luciano (CIOK) Cc: Rakov, Simon; owlim-discussion@ontotext.com; rve...@yarcdata.com Subject: Re: [Owlim-discussion] ERROR IN PREDICATE STATISTICS Hi Luciano, Simon rebuilding context indices requires first to delete them from the storage folder (when repository is down) and then simply initialize it. For the context indices, the files are: pcso, pcso.index, pcos and pcos.index For the predicate list index, the files are: predLists and predLists.index For the predicate statistics (files: predicates and predicates.index), these can be rebuild with the aid of an additional tool that is included within the distribution jar, class name is: com.ontotext.trree.BuildPredicates e.g. something like that should do it having preparing the right classpath: java -cp owlim-lib/*.jar com.ontotext.trree.BuildPredicates repository's storage folder HTH, Damyan Ognyanov Ontotext AD On 9/26/2012 8:55 AM, Blasetti, Luciano (CIOK) wrote: ...Very good question. How to rebuild indexes without reimport the whole repository? From: owlim-discussion-boun...@ontotext.com [owlim-discussion-boun...@ontotext.com] On Behalf Of Rakov, Simon [simon.ra...@astrazeneca.com] Sent: Tuesday, September 25, 2012 5:59 PM To: damyan Cc: owlim-discussion@ontotext.com; rve...@yarcdata.com Subject: Re: [Owlim-discussion] ERROR IN PREDICATE STATISTICS Hi, I do have context indices enabled. Sizes: Pcos hits: 53663768 Pcso hits: 20127229 Pos hits: 482282752 Pso hits: 32098277 PL hits:50179 It looks like pos is much larger than pcos or pso. PL (Predicate Lists) is tiny. How do I rebuild the indexes? Please send me a list of steps. Thanks Simon -- Confidentiality Notice: This message is private and may contain confidential and proprietary information. If you have received this message in error, please notify us and remove it from your system and note that you must not copy, distribute or take any action in reliance on it. Any unauthorized use or disclosure
Re: [Owlim-discussion] ERROR IN PREDICATE STATISTICS
Hi Simon, this is a message received when we detected a mismatch during estimation of the query complexity for a particular statement pattern. And more specifically when the collection size per that statement pattern is calculated to be 0 but we found at least one statement satisfying the pattern. As a possible cause - there could be several but most likely one of the indices is in inconsistent state (or have partial data). Could you check if you are using context indices and the size of these(pcso for instance) is close by (at same order) as for pso/pos ... It could be easily caused when repository is initialized with context indices enabled - then initialized without them but some data is added and then these are again re-enabled. In such scenario, the third time you initialize the repository it will find and use the old context indices but they will not have the data from the previous updates, when they were switched off since these were not maintained when switched off. one way to recover is to rebuild them. HTH Damyan Ognyanov Ontotext AD. On 9/25/2012 5:26 PM, Rakov, Simon wrote: Hi, I am seeing a lot of these in catalina.out: ERROR IN PREDICATE STATISTICS: 3546128 15939569 0, size = [D@4426e447 ERROR IN PREDICATE STATISTICS: 3546176 15939569 0, size = [D@1445 ERROR IN PREDICATE STATISTICS: 3546307 15939569 0, size = [D@44a5e9c7 ERROR IN PREDICATE STATISTICS: 3546399 15939569 0, size = [D@68972b06 ERROR IN PREDICATE STATISTICS: 3546463 15939569 0, size = [D@1c89cc8f ERROR IN PREDICATE STATISTICS: 3546546 15939569 0, size = [D@1ad4ceec ERROR IN PREDICATE STATISTICS: 3546561 15939569 0, size = [D@95cf5b7 ERROR IN PREDICATE STATISTICS: 3546592 15939569 0, size = [D@3607c62e ERROR IN PREDICATE STATISTICS: 3546607 15939569 0, size = [D@386411b8 ERROR IN PREDICATE STATISTICS: 3546663 15939569 0, size = [D@31c763f4 ERROR IN PREDICATE STATISTICS: 3546677 15939569 0, size = [D@197341b4 ERROR IN PREDICATE STATISTICS: 3546773 15939569 0, size = [D@5dde9d79 ERROR IN PREDICATE STATISTICS: 3546947 15939569 0, size = [D@4234a314 What do these mean? More importantly, how do I fix them? I'm running OWLIM 5.2.5512-20120921122819, JRE_HOME jdk1.6.0_32, Tomcat 6.0.35, CentOS with kernel Linux 2.6.18-194.el5 #1 SMP Fri Apr 2 14:58:14 EDT 2010 x86_64 x86_64 x86_64 GNU/Linux. Thanks for your help Simon Rakov -- Confidentiality Notice: This message is private and may contain confidential and proprietary information. If you have received this message in error, please notify us and remove it from your system and note that you must not copy, distribute or take any action in reliance on it. Any unauthorized use or disclosure of the contents of this message is not permitted and may be unlawful. -Original Message- From: owlim-discussion-boun...@ontotext.com [mailto:owlim-discussion-boun...@ontotext.com] On Behalf Of Barry Bishop Sent: Monday, September 24, 2012 6:23 PM To: rve...@yarcdata.com; Pavel Mička Cc: owlim-discussion@ontotext.com Subject: Re: [Owlim-discussion] OWLIM ignores binding Hi Pavel, Rob, So it seems this is correct behaviour after all. Perhaps I was too quick to assume something was wrong. I think for anyone used to SQL then it just seems wrong, but is in fact correct. Thanks for spotting this, Rob. And thanks for raising awareness, Pavel. All the best, barry On 24/09/12 18:34, Rob Vesse wrote: I believe this is in fact the correct behavior and in line with the specification, see http://answers.semanticweb.com/questions/17410/semantics-of-sparql-aggregat es for a recent discussion on this with an explanation from Andy Seaborne of the working group as to why this is correct behavior The specific example there was a query with MAX but the same argument applies here (in fact his argument does include treatment of COUNT) Rob On 9/24/12 1:46 AM, Barry Bishop barry.bis...@ontotext.com wrote: Hi Pavel, Yes, the issue does seem to be in Sesame. I have raised this issue: http://www.openrdf.org/issues/browse/SES-1108 I expect it will be taken care of fairly soon. Thanks for letting us know. barry Barry Bishop OWLIM Product Manager Ontotext AD Tel: +43 650 2000 237 email: barry.bis...@ontotext.com skype: bazbishop www.ontotext.com On 24/09/12 10:17, Pavel Mička wrote: Hi, I have found the issue, which is probably in sesame. When I execute the query, but the knowledge base does not contain any axiom, it returns only the value from the aggregation (0) as a result. Which is quite unexpected, as it (in my humble opinion) should return no result (empty result set). When the query is executed and data are present, than it works as expected. Pavel Dne 24.9.2012 8:22, Barry Bishop napsal(a): Hello Pavel, Can you provide some more details, please? Do you mean that you see the expected variable names when calling TupleQueryResult.getBindingNames(), but that calls
Re: [Owlim-discussion] Rollback does not to work using SPARQL Queries?
Hi Navarro, you are using RemoteRepository so each update, is immediately sent to the remote repository at up.execute() and there it is autocommited immediately . what you could do is instead of preparing and executing on each delete/add operation in your service to start collecting all individual updates (into a StringBuilder for instance) and on oc.commit() to prepare and execute the whole list of updates at once. (and just clear the list on rollback, in case an exception is thrown) Your update request can have multiple 'INSERT DATA' or 'DELETE DATA' updates ... HTH, Damyan Ognyanov Ontotext AD On 9/20/2012 11:52 AM, nava...@dfki.uni-kl.de wrote: I want to delete and insert triples from a sesame repository using SPARQL queries, and I want to execute both operations as a single transaction. 1° DELETE 2° INSERT If an exception is thrown during the transaction, rollback is executed... but it seems not to work. The problem is that, if an exception is thrown during the insert query, the rollback is executed, but the previously deleted triples are not recovered (Why?). Here you have some code: I have a class called OwlimConnector which wraps the repository connection and provides some methods to make SPARQL Queries. In the constructor of this class I set up the connection and I set the autocommit to false: RemoteRepositoryManager repos_manager = RemoteRepositoryManager.getInstance(SERVER_URL, USER, PASSWORD); repos_manager.initialize(); Repository ssr = repos_manager.getRepository(REPOSITORY); rconn = ssr.getConnection(); rconn.setAutoCommit(false); In OwlimConnector there is a method called executeUpdate: public void executeUpdate(String queryString) throws RepositoryException, MalformedQueryException, UpdateExecutionException { Update up = rconn.prepareUpdate(QueryLanguage.SPARQL, queryPrefixString + queryString); up.execute(); } and these methods among others: public void commit(){ rconn.commit(); } public void rollback() { rconn.rollback(); } public void close(){ rconn.close(); } On the other hand, I have a web service updateUserGroup wich uses the previous OwlimConnector and a data access object called UserGroupDAO: @PUT @Consumes(MediaType.APPLICATION_XML) public Response updateUserGroup(UserGroup ug) { try { oc = new OwlimConnector(); } catch (OwlimInstantiationException e) { return ResponseFactory.getError(e.getErrorMessage()); } try { UserGroupDAO ugdao = new UserGroupDAO(oc); ugdao.delete(ug.getUri()); ugdao.add(ug); oc.commit(); oc.close(); return ResponseFactory.getOK(); } catch (MandatoryFieldException e) { oc.rollback(); oc.close(); return ResponseFactory.getError(e.getErrorMessage()); } catch (NotExistingResourceException e) { oc.rollback(); oc.close(); return ResponseFactory.getError(e.getErrorMessage()); } catch (Exception e) { oc.rollback(); oc.close(); return ResponseFactory.getError(new GenericException(e).getErrorMessage()); } } 1. What ugdao.delete(ug.getUri()) does is to call the OwlimConnector method executeUpdate: oc.executeUpdate(DELETE { + usergroup + ?p ?v . } WHERE { + usergroup + ?p ?v . }); Here the triples are deleted even though there is no commit! 2. What ugdao.add(ug) does is: To check that ug.getName() is not null or spaces, otherwise the MandatoryFieldException is thrown: if (ug.getName() == null || ug.getName().equals()){ throw new MandatoryFieldException(name); } Then, the data is inserted: oc.executeUpdate(INSERT DATA { + ug.getUri() + a scmu:UserGroup ; scmu:hasName \ + ug.getName() + \ . }); When ug.getName() is null or spaces the MandatoryFieldException exception is thrown and caught by updateUserGroup. Then the rollback is executed but the deleted triples are not recovered. I don´t know why this happens. Any Idea? Thank you very much in advance ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] DELETE WHERE query behaviour
Hi, looks to me as 'expected behavior' - it is the OPTIONAL statement that cause it - since it is not mandatory to produce a solution from the main block of the query, you'll end up with no bindings for ?b ?p2 and ?o2 in the projection so, then the DELETE part of the query will threat the missing bindings as wildcards to issue individual 'remove' operations for each such solution ... HTH, Damyan On 9/18/2012 11:37 AM, Jeni Tennison wrote: Hi, I'm hoping someone here can help me with the following behaviour in OWLIM that seems odd. I can't work out whether it's a bug in the query or in OWLIM. First, set up a couple of triples: BASE http://example.org/ INSERT DATA { GRAPH graph { a p b . c p d . } } Then try to delete everything about a and everything about things related to it through p (ie about b, though note there are no triples about b): BASE http://example.org/ DELETE { a ?p1 ?o1 . ?b ?p2 ?o2 . } WHERE { a ?p1 ?o1 . OPTIONAL { a p ?b . ?b ?p2 ?o2 . } } When I run this update against this data, everything in the triplestore gets deleted. Is this expected behaviour? Thanks, Jeni ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] DELETE WHERE query behaviour
Hi Jerven, you are right. looking further - it seems that it was an issue with the Sesame 2.6.6 - http://www.openrdf.org/issues/browse/SES-1047 and luckily, it has been resolved in 2.6.7. just checked the current behavior using Jeni's queries on owlim-se 5.2.+sesame 2.6.8 and it works right, according to the cited working draft - e.g. does not clear repository contents. So to Jeni - I recommend either upgrading to Sesame 2.6.7 or get/request a new Owlim build that is bundled with Sesame 2.6.8, since there were small API changes to Sesame 2.6.8 that makes it incompatible with the older Owlim releases. Regards, Damyan Ognyanov Ontotext AD On 9/18/2012 1:33 PM, Jerven Bolleman wrote: Hi Damyan, Hmm, this looks odd to me because in the CONSTRUCT case the triple pattern with unbound values does not get generated. i.e. CONSTRUCT { ?a ?p ?o} where {?s ?p ?o} produces no new triples So I would expect DELETE DATA { ?a ?p ?o} where {?s ?p ?o} to not delete any triples. There is also a part in the sparql update 1.1. current last working draft which supports this belief.[1] If any solution produces a triple containing an unbound variable or an illegal RDF construct, such as a literal in a subject or predicate position, then that triple is not included in the output RDF graph. This language was not in the May 2011 draft. Regards, Jerven [1] http://www.w3.org/TR/sparql11-update/#deleteInsert On 09/18/2012 11:09 AM, damyan wrote: Hi, looks to me as 'expected behavior' - it is the OPTIONAL statement that cause it - since it is not mandatory to produce a solution from the main block of the query, you'll end up with no bindings for ?b ?p2 and ?o2 in the projection so, then the DELETE part of the query will threat the missing bindings as wildcards to issue individual 'remove' operations for each such solution ... HTH, Damyan On 9/18/2012 11:37 AM, Jeni Tennison wrote: Hi, I'm hoping someone here can help me with the following behaviour in OWLIM that seems odd. I can't work out whether it's a bug in the query or in OWLIM. First, set up a couple of triples: BASE http://example.org/ INSERT DATA { GRAPH graph { a p b . c p d . } } Then try to delete everything about a and everything about things related to it through p (ie about b, though note there are no triples about b): BASE http://example.org/ DELETE { a ?p1 ?o1 . ?b ?p2 ?o2 . } WHERE { a ?p1 ?o1 . OPTIONAL { a p ?b . ?b ?p2 ?o2 . } } When I run this update against this data, everything in the triplestore gets deleted. Is this expected behaviour? Thanks, Jeni ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] Slow populating of predicateList index after initial load.
Hi Jerven, yes , your observation is right. (re)building the predicate lists index involves full scanning of one of the primary indices. So when the cache for the predicate lists index gets full (whole rebuilding occur in a huge single low level index transaction) it start swapping and writing pages down to the disk. Just for the sake of rebuilding it, you do not need huge amount of cache for the statement collections (*tuple-index-memory*) because each of the pages of the scanned index will be read only once so you could safely dedicate most of it to the *predicate-memory *parameter HTH Damyan Ognyanov Ontotext AD Dear Owlim Developers, I have been trying the following. I first load the UniProt data using just the default minimal indexes. Then I shut owlim down and restart it with a setting to make it build the predicateList index. The data consists of 5221698006 triples with 1146090208 entities. This seems totally bound to the predicate-memory size. Is this correct? I believe this is the case because once this memory is full the speed at which this index grows/is created craters. My current settings are java -Xms30G -Xmx100G -XX:+HeapDumpOnOutOfMemoryError -XX:+UseConcMarkSweepGC -XX:NewSize=128m -XX:MaxNewSize=256m -XX:CMSInitiatingOccupancyFraction=88 -Dexpasy_sparql_entityIndexsize=1547483647 -Dexpasy_sparql_cacheMemory=80G -Dexpasy_sparql_tupleIndexMemory=40G -Dexpasy_sparql_enableContextIndex=false -Dexpasy_sparql_predicateMemory=40G -Dexpasy_sparql_enablePredicateList=true -Dexpasy_sparql_ruleset=empty -Dexpasy_sparql_journaling=true -Dexpasy_sparql_indexCompressionRatio=30 -Dexpasy_sparql_transactionMode=safe -Dexpasy_sparql_transactionIsolation=true I am wondering if there are ways that I can better use the memory available while building this index by reducing the tupleIndexMemory for this stage of building the index or is there something else going on? Regards, Jerven ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] owlim enterprise 5.1 and Something is wrong after committing to the test node
Hi Nico, most probably it would suit you ... do you see the exception only from node Store2 or in some cases it also appear with the other node ... ? Is there anything other unusual that happen simultaneously on that box? cron jobs? unusual erros logged somewhere within /var/log on the 'Store2' node? Damyan On 8/2/2012 4:55 PM, Broccoli Nico wrote: Hi, we have configured worker in different way, to test a bad use of memory, but nothing change, so now i can try to monitor for a while a ping between master and worker using a wget to http://worker-ts-1.bko.vtin.net:8080/openrdf-sesame/repositories/Store2 this test can be usefull ? thanks nico *From:*damyan [mailto:dam...@sirma.bg] *Sent:* giovedì 2 agosto 2012 12:39 *To:* Broccoli Nico *Cc:* owlim-discussion@ontotext.com *Subject:* Re: [Owlim-discussion] owlim enterprise 5.1 and Something is wrong after committing to the test node Hi Nico, this cluster behavior looks very weird to me. The exception you are seeing (Something is wrong after committing to the test node) is thrown if the update on the probe node (on which the update is tested prior to distribute is across the others) cause that node to stop responding to the attempts of the master node to pick its system status (we need to fetch at least its fingerprint and store it so to identify what state to expect from the rest of the nodes from the cluster after the update). To me it is an indication that either the worker node works on the edge of the available memory so GC kicks very regularly and suspend /blocks the normal threads or there is an intermittent network issue within your setup that needs attention... In general, we do 2 kinds of checks on a worker node prior to decide whether it is in 'OFF' state - the first is to try creating and connecting a socket to it from the master, waiting for some floating timeout depending on the current load expected on that node from the cluster statistics. If that fails we try a full check that involves an execution a sparql query against that node. if both fail then it is assumed as 'OFF' but we continue to probe on regular intervals in case it came online again later HTH, Damyan On 8/2/2012 11:46 AM, Broccoli Nico wrote: hi , i have migrated owlim enterprise from 4.3 to 5.1.5208, the last version is very very more stable then before, we are very happy. but we have this problem, the master node sometimes put to off a worker node (this appens less than the old version) but if this appens during the write operation the system, put to off sync state and in the log i found. 2012-08-02 10:27:46,326 RMI TCP Connection(263)-10.172.80.33 Replication started from http://worker-ts-2.bko.vtin.net:8080/openrdf-sesame/repositories/Store2 to http://worker-ts-1.bko.vtin.net:8080/openrdf-sesame/repositories/Store2 on port 8090 INFO 2012-08-02 10:27:46,326 RMI TCP Connection(263)-10.172.80.33 No need of incremental update INFO 2012-08-02 10:27:09,503 Info Node needs update: http://worker-ts-1.bko.vtin.net:8080/openrdf-sesame/repositories/Store2 INFO 2012-08-02 10:27:09,502 Info ON http://worker-ts-1.bko.vtin.net:8080/openrdf-sesame/repositories/Store2 ERROR 2012-08-02 10:27:08,502 repositories/Store25 Error while handling request (500): org.openrdf.repository.RepositoryException: java.lang.RuntimeException: Something is wrong after committing to the test node INFO 2012-08-02 10:27:08,491 pool-1-thread-1 Update transaction finished INFO 2012-08-02 10:27:08,491 pool-1-thread-1 OFF http://worker-ts-1.bko.vtin.net:8080/openrdf-sesame/repositories/Store2 INFO 2012-08-02 10:27:08,490 pool-1-thread-1 Cancelling the whole commit operation due to failure in http://worker-ts-1.bko.vtin.net:8080/openrdf-sesame/repositories/Store2 this is a big problem because we have only 2 worker and to restore the failure worker the helthy worker go to master mode and the cluster are not functional. the same update operation on the owlim SE run well thank Nico Le informazioni contenute nella presente e-mail potrebbero essere confidenziali e sono dirette unicamente ai destinatari sopra indicati. In caso di ricezione da parte di persona diversa è vietato qualunque tipo di distribuzione o copia. Chi riceva questo messaggio per errore è pregato di inoltrarlo al mittente e di distruggere questa e-mail. This e-mail may contain confidential information and is intended only for the use of the addressee(s) named above. If the reader of this message is not the intended recipient of this message, please note that distribution
Re: [Owlim-discussion] TBox queries
Hi Nicola, yes, you could query for such - just express these as SPARQL queries for instance, a query against wordnet to get all the subclasses of a Restriction (wordn-sc:word some wordn-sc:Word) may look like: PREFIX wordn-sc: http://www.w3.org/2006/03/wn/wn20/schema/ PREFIX rdfs: http://www.w3.org/2000/01/rdf-schema# PREFIX owl: http://www.w3.org/2002/07/owl# select * where { ?sub rdfs:subClassOf ?c . ?c a owl:Restriction; owl:onProperty wordn-sc:word; owl:someValuesFrom wordn-sc:Word . } About the supported inference and its limitations, best is to read supported semantics from the OWLIM Primer document http://owlim.ontotext.com/display/OWLIMv50/Primer+Introduction+to+OWLIM#PrimerIntroductiontoOWLIM-SupportedSemantics HTH, Damyan Ognyanov Ontotext AD. On 7/12/2012 10:56 AM, Nicola Vitucci wrote: Hi all, I have another question for you :-) Considering that OWLIM supports the OWL2 QL and RL profiles, what kinds of TBox queries can be performed? Are queries with anonymous classes like find the subclasses/superclasses/equivalent classes of (R some C) possible (with R being a property and C a concept)? Also, are there any limitations or additions to the standard profiles? Thank you for the very good work with OWLIM, I'm appreciating it more and more! Nicola ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] Owlim-lite Inference
Hi Steafno, which ruleset you are using because 'rdfs' or 'empty' do not have the necessary rules/axioms to derive such conclusions? If it is other, then you should relate both of your classes with owl:equivalentClass property or alternatively, make them mutually rdfs:subClassOf to each other... HTH, Damyan Ognyanov Ontotext AD On 7/6/2012 4:28 PM, Stefano Ortona wrote: Hello everybody, I successfully instal the owlim-lite server, load my own ontology and now i'd like to query it via sparql http endpoint using the inference. In particular, i have to class in my ontology A and B and i specified A isEquivalentClass of B. At the moment, if a query: give me all the equivalent class of B the class A is not returned, because there's no explicit axiom that says that. How can I set the inference in order to get A as equivalent class of B? Thank you, Stefano Ortona ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] R: Create new repository with OWL2QL ruleset
Hi Antonio, there is nothing wrong with the OWL-QL, your ontology or the inference owlim made out of your data just the Sesame's workbench 'Types' command issue following SPARQL query: SELECT DISTINCT ?type WHERE { ?subj a ?type } you could check the sesame's org.openrdf.workbench.commands.TypesServlet servlet what exactly is retrieved when clicking on that link through the workbench so it is not a surprise that you get only the Classes fro which there are instances for ... HTH, Damyan Ognyanov Ontotext AD On 4/18/2012 10:18 AM, Antonio Nunziante wrote: Hello, I've attached my test ontology. Is it normal that if I insert any individuals then their types appear into the Types in Repository section? Thank you /-Antonio/ *Da:*Barry Bishop [mailto:barry.bis...@ontotext.com] *Inviato:* mercoledì 18 aprile 2012 00:29 *A:* Antonio Nunziante *Cc:* owlim-discussion@ontotext.com *Oggetto:* Re: [Owlim-discussion] Create new repository with OWL2QL ruleset Hello Antonio, Please can you attach your ontology for us to diagnose. Thanks, barry Barry Bishop OWLIM Product Manager Ontotext AD Tel: +43 650 2000 237 email:barry.bis...@ontotext.com mailto:barry.bis...@ontotext.com www.ontotext.com http://www.ontotext.com On 16/04/12 12:33, Antonio Nunziante wrote: Dear all, I've installed Apache Tomcat 7 and OWLim-Lite 4.3 on Windows 7 (I've followed the Easy Install procedure from http://owlim.ontotext.com/display/OWLIMv43/OWLIM-Lite+Installation). I realized an ontology in Protégé 4.1 (test.owl) and I verified that it is has the OWL 2 QL profile. I would like to create a new OWLim-LITE repository with the OpenRDF workbench: Type: OWLIM-LITE ID: t3 Title:test3 Storage folder: storage Ruleset: OWL2-QL Base URL: http://www.myproject.com/test.owl Entity index size: 20 No Persistence: False Imported RDF files (';' delimited): D:/test.owl; Default namespaces for imports (';' delimited): http://www.myproject.com/test.owl# http://www.myproject.com/test.owl; If I go into the ExploreTypes menu I suppose to find all classes defined in my ontology but I don't see them. I'm able to see them only from the ExploreContext menu by clicking on file://test.owl file:///%5C%5C%5C%5Ctest.owl (I can see all classes and all properties defined in my ontology). Is there any problem with my ontology? Isn't it compliant to the OWL2-QL ruleset? /-Antonio/ ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com mailto:Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] OWLIM 4.3 - Duplicated triples in same context and in different contexts - SPARQL
Hi Fabian, it may look ambiguous but think about triples and quadruples instead - the identity of a triple is based on its subject, predicate and object while the quadruple uses also the context part of it. so a triple put in a context is not equal to a triple put into the default nameless context (e.g. no context) . Then you have two basic retriavals approaches, one looking at your data as unique triples and one looking at it as quadruples. so if you have two statements x p o in context1 and x p o in context2 you may get single result if you are looking at those as triples or two distinct if you look at those as quadruples. The disctinction is made based on the scope of the statement pattern when used within your sparql queries. the duplicates are discarded at load time (based on the above identity) so if you try to add multiple times one and the same triple it will be stored only once. Which means that you may have single triple in the nameless context no matter how many times you add it. The same holds for the triples in a particular context - only single quadruple will be stored per context but you may add multiple times one and the same triple in numerous contexts - all those will be stored separately as unique quadruples. HTH Damyan Ognyanov Ontotext AD On 4/18/2012 9:51 AM, Fabian Cretton wrote: Hi, I understand that, generally speaking, a duplicated triple is just ignored when querying the store. But I need to understand what 'ignored' means. For instance, if I add twice the following triple: x p a a SPARQL count on x p ?value will certainly give 1 (and not 2) But I guess the store has to keep tracks of all those duplicated triples, because if one is removed, maybe the other must stay in the store ? A few questions from tests I have done with OWLIM 4.3: So my first question is: what happens to duplicated triples in a same loaded .ttl file: For instance I load a .ttl file with 2000 lines, one triple per line, and the count of triples in the store is 1000 - it is not a mistake, the others were duplicates. What happened to those duplicates, are they discarded at load time, are they still there but not queriable, are they queriable ? My second question: I load a same file twice, in two different contexts Using either FROM or GRAPH in my SPARQL queries A count of the number of triples in context one is correct. A count of the number of triples in context two is 0. When I delete contexte one - then the same query on context two is correct, the triples are found. My third question: if that behaviour is as expected (and thank you for the explanation), is there no problem for an application to deal with that ? I mean, let say I use triples from a context. Then another context is added with duplicates - suddenly those triples disappear from the first context (at least in sparql queries) Thanks for any answer Fabian Cretton ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion ___ Owlim-discussion mailing list Owlim-discussion@ontotext.com http://ontomail.semdata.org/cgi-bin/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] Documentation for com.ontotext.jena.SesameDataset
Hi Alison, no javadoc is available on SesameDataset - but it is just a wrapper/glue code that connect/transform data between Sesame and Jena data models (statements, nodes, get/put request etc. etc) so it is not something very fancy to look at. About different initialization methods you may look at owlim's online documentation, especially here: http://owlim.ontotext.com/display/OWLIMv43/OWLIM-SE+Installation#OWLIM-SEInstallation-InstallingOWLIMSEwithJenahttp://owlim.ontotext.com/display/OWLIMv43/OWLIM-SE+Installation#OWLIM-SEInstallation-InstantiateOWLIMSEadapterusingtheprovidedAssembler you could find there a section describing how to use Jena's own Assemblers infrastructure to instantiate and use owlim backed sesame dataset. HTH, Damyan Ognyanov Ontotext AD On 1/23/2012 8:26 PM, Alison Callahan wrote: Hello, Is there a Javadoc available for the class com.ontotext.jena.SesameDataset? I am trying to connect to an OWLIM repository using Jena, as described here: http://www.ontotext.com/owlim/access-methods. I would like to know if there are approaches available other than: import com.ontotext.jena.SesameDataset; SesameDataset dataset = new SesameDataset(repositoryConnection); Model model = ModelFactory.createModelForGraph(dataset.getDefaultGraph()); Thanks, Alison ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] easy install template/form used
Hi Paul, it is easy - just a regular XSL file, located in openrdf-workbench/transformations/create-owlim-se.xsl so you may use any text editor for that purpose ... Damyan On 1/18/2012 11:05 AM, Paul Hermans wrote: I wondered if it is possible to modify the form/template used during an easy install with the sesame workbench. If yes, any hints on how. Paul Kind Regards, Paul Hermans - *ProXML bvba* *XML and OWL/RDF services* *(w) www.proxml.be http://www.proxml.be/* *(b) experiences and opinions http://www.proxml.be/users/paul* *(e) p...@proxml.be mailto:p...@proxml.be* *(t) +32 15 23 00 76* (m) +32 473 66 03 20 Narcisweg 17 3140 Keerbergen Belgium ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] adapting a owlim template
Hi Paul (again) the swiftowlim does not have support for 'query-timeout' parameter since it uses the standard Sesame query evaluation. Altough you could use the Sesame's way of doing that by supplying a 'timeout' parameter to the HTTP GET requests through which the queries are evaluated at the sparql endpoint . (not entirely sure about the details - just check the sesame docs for it) about the ERROR: ... owlim:Sail type is for SE version (BigOWLIM) but you need to change that to swiftowlim:Sail instead for the Lite version (SwiftOwlim). HTH, Damyan On 1/18/2012 11:27 AM, Paul Hermans wrote: Hi, I adapted the OWLIM-Lite configuration template by adding: owlim:query-timeout 10 ; # # Sesame configuration template for an OWLIM-Lite repository # @prefix rdfs: http://www.w3.org/2000/01/rdf-schema#. @prefix rep: http://www.openrdf.org/config/repository#. @prefix sr: http://www.openrdf.org/config/repository/sail#. @prefix sail: http://www.openrdf.org/config/sail#. @prefix owlim: http://www.ontotext.com/trree/owlim#. [] a rep:Repository ; rep:repositoryID {%Repository ID|owlim-lite-test%} ; rdfs:label {%Repository title|OWLIM-Lite test repository%} ; rep:repositoryImpl [ rep:repositoryType openrdf:SailRepository ; sr:sailImpl [ sail:sailType owlim:Sail ; owlim:storage-folder {%Storage folder|storage%} ; owlim:query-timeout 10 ; owlim:ruleset {%Rule-set|owl-horst-optimized%} ; owlim:base-URL {%Base URL|http://example.org/owlim#%}; ; owlim:repository-type in-memory-repository ; owlim:entity-index-size {%Entity index size|20%} ; owlim:noPersist {%No Persistence|false%} ; owlim:imports {%Imported RDF files(';' delimited)%} ; owlim:defaultNS {%Default namespaces for imports(';' delimited)%} ; ] ]. Using the sesame console with command 'create owlim-lite.' I have 2 issues: - the query-timeout parameter doesn't appear in the list of settings - at the end I get ' ERROR: Unsupported Sail type: owlim:Sail' ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] Inference Logging
Hi Christian , sorry but there is no such functionality that is conveniently exposed. Altough we do something very similar during the removal of statements to figure out whether an inferred statement is still supported according to some rule in the ruleset. What you could do is to run a set of queries derived from each of the rules in the ruleset. If such a query return whatever solution, then the bindings will tell you which are the exact premises that are present and match the statement you are checking. Then you may dive into further to see what else infers any of the premises (if not explicit). for instance if you have a statement like (ex:Inst rdf:type ex:SomeClass) and like to check whether the rdfs_2 rule support it (this is the exact rule declaration from the pie file): Id: rdfs2 x a y [Constraint a != rdf:type] a rdfs:domain z [Constraint z != rdfs:Resource] --- x rdf:type z then the query looks like that (a join between all the premises and the consequent): select * where { ?x ?a ?y . Filter(?a != rdf:type) . ?a rdfs:domain ?z. filter (?z != rdfs:Resource) . # and add a check for the statement against the consequent ?x rdf:type ?z . filter (?x = ex:Inst ?z = ex:SomeClass) . } limit 1 then if you get this result: [?x = ex:Inst , ?a = ex:Prop , ?y = ex:something, ?z = ex:SomeClass] it means that the statements from which it is inferred by this rule are: [ex:Inst ex:Prop ?y = ex:something] and [ex:Prop rdfs:Domain ex:SomeClass] HTH, Damyan Ognyanov. Ontotext AD On 12/15/2011 10:54 AM, grotheer wrote: Hi everyone, is there any way to find out information for triples generated by reasoning, how the triple was derived? I found out that Sesame currently has no functionality to do this. Perhaps Big-/Swiftowlim can make this possible? Thanks in advance, Christian PS: Sorry for my bad English. ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] How to use NOT EXISTS relationship filter in rule
Hello Miro, the rule: x realestate:sameRealEstateAsCandidate y [Constraint x != y ] x p y [Constraint p != owl:differentFrom, x != y] ... --- x ex:rel y would fire for any relation that links X with Y and is not equal to owl:differentFrom ... so one such relation is (x realestate:sameRealEstateAsCandidate y) that you've just asserted :-) Not knowing your model (ontology) and intended use, my advice could look a bit vague to you ... but you may reject results from such contradictory inference at query time using optionals, e.g: select whatever where { ... ?x realestate:sameRealEstateAsCandidate ?y . optional { ?x realestate:differentRealEstate ?y . ?x someExistingPropertyThatHaveBindingsForFOO ?foo . } FILTER (!bound(?foo)) .. ... } inthe above quert a bound value to ?foo indicates that all the patterns within the optional are satisfied so you could skip all the solutions where ?y is bound to an instance that is NOT to be considered a sameRealEstate to ?x HTH, Damyan Ognyanov Ontotext AD. On 12/1/2011 11:52 AM, Barry Bishop wrote: Hello miro, I think the rule you have created is correct, however you are getting in to a tricky area to do with negation. OWLIM's inferencer can only infer new statements when adding explicit statements - in effect, it assumes monotonicity. Added to this, it is an incremental reasoner and will apply all rules to each individual statement as it is added. Therefore the behaviour you are seeing could well happen depending on the order in which statements are inserted. For example, If you assert the statements in this order: 1. ex:individual1 realestate:sameRealEstateAsCandidate ex:individual2 = the inferencer fires the rule to get ex:individual1 ex:rel ex:individual2 2. ex:individual1 owl:differentFromex:individual2 = doesn't cause any rule to fire, but won't remove any statements either In this order: 1. ex:individual1 owl:differentFromex:individual2 = doesn't cause any rule to fire 2. ex:individual1 realestate:sameRealEstateAsCandidate ex:individual2 = still no rule fires Essentially, I believe the problem to be caused by modelling issues within your ontology. If you think about it, not equal to owl:differentFrom is already getting to be rather double-negative. It seems that you have a model where some real-estates are the same unless you state that they are different. Is it not possible to organise things so that you make owl:sameAs statements about these entities rather than owl:differentFrom statements? I hope this helps, barry On 24/11/11 14:37, Miroslav Líška wrote: Dear sirs, I need to write a rule, that will be satisfied, if there exists one relationship between individuals and one not. For example: x realestate:sameRealEstateAsCandidate y [Constraint x != y ] x p y [Constraint p != owl:differentFrom, x != y] ... --- x ex:rel y So, when there are two individuals, that are in relationship realestate:sameRealEstateAsCandidate, and there is not relationship owl:differentFrom between them, then x ex:rel y. But, when I made a test for following triples ex:individual1 realestate:sameRealEstateAsCandidate ex:individual2 ex:individual1 owl:differentFromex:individual2 Trree created following undesired triple. ex:individual1 ex:rel ex:individual2 Could you please help me in this? I really need this inference, it is one key rules of our matching process. When I looked in the example shown in the start of OWL2 RL pie file, there is wery similar example, thus I belevie I am just making some mistake. Note, that both triples in the premise part are implicit triples. with kindest personal regards miro ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] Questions about strange triple insertion rate changes
Hi Jerven, a lot of data to look at ... though didn't examine it very closely at this point, I like to give you some comments on a possible explanation on the behavior you are observing ... First, the statement storage for each of the main indices (po, pso) is organized as B+ tree where each component of the statement (subject, predicate, etc.) is an integer(40bit) number representing the id of the RDF node. Those Ids are assigned when a new node appear in the data as a component of some RDF statement . So the new nodes introduced by your import process get greater integer values and because those are most probably either subjects or objects of the new statements, those statements are always put at the end of a particular subsection (depending on the ordering used) of the BTrees. Because of the caching, it is more probably that those pages that are about to be altered are found in the cache (the new data is at the end of some sub-sequence because of the natural ordering by ID we are using) so the whole process runs smoothly. When the data you are putting start to reuse some already existing nodes, then the statements you are storing are no longer at the end of such particular subsection of the tree and tend to be randomly distributed across the whole tree and the cache becames inefficient, mainly because the page where you are about to place the new statement is most probably out of it and it needs to be read from the disk. Yes, it is cashed at that point but you probably will not need it anymore after that single operation so the seek/read cost became an issue and the process of data import slows down greatly. One way to reduce that cost is to somehow tweak the order of the statements you are importing (needs some pre-processing to rearrange them in some particular way so that the caching start working efficiently) . For instance, you may start adding the statements at batches organized by a particullar predicate - that way the whole tree subsection that holds all the statements with that particular predicate will be cashed (most of it) so even the statements are a bit random they always will be part of that section. In any way I will look closely at the data you sent to see if something else pop in my mind related to that sudden drop of the throughput of the storage. many thanks for the detailed info you sent, Regards, Damyan Ognyanov Ontotext AD. On 26.7.2011 ?. 09:49 ?., Jerven Bolleman wrote: Dear Owlim developers, I am trying to load all the UniProt data on a 64GB RAM machine. I have a case where I am very pleased with the loading speed of a billion triples but then it just flatlines. I have included a set of graphs which show the relevant behavior and statistics on this machine. Maybe you could have a look at it. You might think that this is due to performance dropping of after loading a billion triples but I have the same problem the otherway round. See attachment For discussion.png) where performance first flatlines taking 32 hours to insert 300 million triples before recovering and loads a billion triples in 5 hours. This is with an empty ruleset. What could cause this behaviour? Regards, Jerven Some data from owlim.properties as written after a sync (insertion of http://www.ontotext.com/owlim/system#flush) Uniform owlim image NumberOfStatements=1039890206 NumberOfExplicitStatements=1039890206 NumberOfEntities=403958694 VersionId=40 BNodeCounter=238 And all the relevant statistics. Original Message Subject: JMX values for ptx-serv01.vital-it.ch at 2011-07-26 Date: Tue, 26 Jul 2011 06:38:24 + (GMT) From: nore...@uniprot.org To: uuw_...@isb-sib.ch Started on 2011-07-25 04:02 JVM Java HotSpot(TM) 64-Bit Server VM Sun Microsystems Inc.(20.1-b02) Runtime name 6...@ptx-serv01.vital-it.ch JVM Arguments -Dwar=/data/sparql_uuw/expasy4j-sparql/dist/expasy4j-sparql.war -Djava.util.logging.config.file=tomcat/conf/logging.properties -Duser.timezone=GMT -Xms45G -Xmx55G -XX:+HeapDumpOnOutOfMemoryError -Djava.io.tmpdir=/data/tmp -Djava.awt.headless=true -Dexpasy_sparql_entityIndexsize=1147483647 -Dexpasy_sparql_cacheMemory=7G -Dexpasy_sparql_tupleIndexMemory=5G -Dshutdown.port=8081 -Dhttp.port=8080 -Dsecure.port=8082 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=6969 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Dexpasy_sparql_commitSize=100 -Duniprot.singlethreaded=true -Dexpasy_sparql_path=/data -Dexpasy_sparql_ruleset=empty -Dexpasy_sparql_journaling=false -Dexpasy_sparql_repositoryFragments=1 -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Dcatalina.base=tomcat/ -Dcatalina.home=tomcat/ Running
Re: [Owlim-discussion] Constraint rule
Hi Christos, You could not do that with the rule engine of Owlim - you may use rules to describe pattens in the RDF graph that, if found, lead to the assertion of a particular statement, not as a way to restrict what kind of statements one may assert in the storage. What could be done is to state that if such statements are asserted with both X and Z as objects then they are should be considered one and the same, e,g X owl:sameAs Z ... if that makes sense to you. So you may add such a rule to the ruleset or even just state that the propety:p from your rule is of type owl:InverseFunctionalProperty. That would trigger the same kind of inference. HTH, Damyan Ognyanov Ontotext On 5.7.2011 г. 14:47 ч., Christos Strubulis wrote: Hello to all, I am trying to make a constraint rule in SwiftOwlim 3.5 but I cannot. I would like to tell the reasoner that when there is an already inferred statement in the KB: x property:p y I do not want another one with same y. One example of my rule is the following: Id: r1 x property:p y [Constraint x != z] z property:p y [Constraint z != x] --- x property:p y I had read in the thread rule format Cut, again that I can have the above behavior using [Cut]: Id: r1 x property:p y [Constraint x != z] [Cut] z property:p y [Constraint z != x] --- x property:p y Any help on this plz... ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] Adding rules to an existing repository.
Hi Danny, in short - you can use only a single ruleset file - so you need to find a way to combine both into a single .pie - the easiest way is to start with one of those we provide with the distribution and alter it accordingly. HTH, Damyan Ognyanov Ontotext AD On 25.3.2011 г. 09:25 ч., Danny Tran wrote: Thanks Ivan! I've read the user guide section 5 and I have a question that isn't answered there: Is it possible to have multiple ruleset files for a repo? When I modified the swiftowlim.ttl file to assert multiple owlim:ruleset, I got an error. Does this mean I have to combine my custom_rules.pie with the builtin_owl2-rl-conf.pie into one ruleset file? Thanks again for your help, Danny On Thu, Mar 24, 2011 at 4:45 AM, Ivan Peikovivan.pei...@ontotext.com wrote: Hi Danny, The SwiftOWLIM user guide has it all described under section 5 (syntax, semantics, examples, etc). After you've gone through it we'll answer any questions about particular rules you might want to implement. Just post them here on the mailing list. Good luck! Cheers, Ivan On Tuesday 22 March 2011 18:51:04 Danny Tran wrote: Can someone point me in the right direction for documentation/discussion forums about adding rules (via .pie file?) to an existing repository? I'm using SwiftOwlim 3.4 Thanks! Danny ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] OWLIM-discussion Digest, Vol 26, Issue 19
Hi Roberto, the exception is not thrown because the query was not processed - it was thrown during query pre-processing when we do a conversion from Jena/ARQ query model to our own for further evaluation - our internal one do not support all the features of Jena/ARQ one so we convert only those pars of the query that we are able to process - everything else is handled by ARQ engine. The stack trace you see is a leftover / debug print that slip in our official release of BO 3.4 and is generated when we encounter a query construct we do not know how to process with our model an let it ARQ proceed with it. I've tried that exact query from your post and it gives me some meaningful results even if only the axioms of owl-horst-optimized ruleset are present: e.g. classes like rdf:List, rdf:Property;rdfs:Class ... etc. HTH, Damyan Ognyanov Ontotext AD On 21.3.2011 г. 11:43 ч., Roberto García wrote: Reoberto can you be a bit more specific, please? for the sake of background, I am not aware of a perfect SPARQL egine Do you mean the current actual recommendation SPATRQL 1.0 or the newer version 1.1? Cheers Naso OK, I'm reattaching the problem details below: We are trying to develop a OWLIM connector for our Linked Data publishing platform Rhizomer (http://rhizomik.net/rhizomer/). First of all, we init the OWLIM repository as shown in the documentation: public void init(ServletConfig config) throws Exception { if (config.getInitParameter(dir_name)!=null) { String basePath =config.getServletContext().getRealPath(config.getInitParameter(dir_name)); OwlimSchemaRepository schema = new OwlimSchemaRepository(); // set the data folder where BigOWLIM will persist its data schema.setDataDir(new File(basePath+/owlim)); // configure BigOWLIM with some parameters schema.setParameter(storage-folder, ./); schema.setParameter(repository-type, file-repository); schema.setParameter(ruleset, rdfs); // wrap it into a Sesame SailRepository SailRepository repository = new SailRepository(schema); // initialize repository.initialize(); RepositoryConnection connection = repository.getConnection(); // finally, create the DatasetGraph instance dataset = new SesameDataset(connection); model = ModelFactory.createModelForGraph(dataset.getDefaultGraph()); } } It works fine: INFO [main] (JCLLoggerAdapter.java:265) - ConnectorServlet successfully initialized! INFO [main] (JCLLoggerAdapter.java:265) - OwlimSchemaRepository: version: 3.4, revision: 3012 INFO [main] (JCLLoggerAdapter.java:265) - Build date: Fri Nov 26 16:11:15 CET 2010 INFO [main] (JCLLoggerAdapter.java:265) - Configured parameter 'ruleset' to 'rdfs' INFO [main] (JCLLoggerAdapter.java:265) - Cache pages for tuples: 4193 INFO [main] (JCLLoggerAdapter.java:265) - Cache pages for predicates: 0 INFO [main] (JCLLoggerAdapter.java:265) - Configured parameter 'storage-folder' to './' INFO [main] (JCLLoggerAdapter.java:265) - Detected unclean shutdown INFO [main] (JCLLoggerAdapter.java:265) - Starting automatic database recovery... INFO [main] (JCLLoggerAdapter.java:265) - Restoring entities from persistence... INFO [main] (JCLLoggerAdapter.java:265) - Done in 65 ms. INFO [main] (JCLLoggerAdapter.java:265) - Repository must be rebuilt. INFO [main] (JCLLoggerAdapter.java:265) - Restoring statements from /Users/roberto/Documents/Proyectos/Rhizomer/src/main/webapp/metadata/owlim/./backup... INFO [main] (JCLLoggerAdapter.java:265) - ruleSet=rdfs, partialRdfs=false, multithread=false INFO [main] (JCLLoggerAdapter.java:265) - NumberOfStatements = 851 INFO [main] (JCLLoggerAdapter.java:265) - NumberOfExplicitStatements = 846 INFO [main] (JCLLoggerAdapter.java:265) - NumberOfEntities = 136 INFO [main] (JCLLoggerAdapter.java:265) - 0 statements overall. ERROR [main] (JCLLoggerAdapter.java:457) - Done in 796 ms. INFO [main] (JCLLoggerAdapter.java:265) - Finished automatic database recovery INFO [main] (JCLLoggerAdapter.java:265) - Restoring entity hash table... INFO [main] (JCLLoggerAdapter.java:265) - Done in 73 ms. INFO [main] (JCLLoggerAdapter.java:265) - Using Hash Entity Pool INFO [main] (JCLLoggerAdapter.java:265) - Configured parameter 'repository-type' to 'file-repository' INFO [main] (JCLLoggerAdapter.java:265) - ruleSet=rdfs, partialRdfs=false, multithread=false INFO [main] (JCLLoggerAdapter.java:265) - Searching for plugins available in the classpath... INFO [main] (JCLLoggerAdapter.java:265) - Registering plugin fts INFO [main] (JCLLoggerAdapter.java:265) - Registering plugin direct INFO [main] (JCLLoggerAdapter.java:265) - Registering plugin rdfrank INFO [main] (JCLLoggerAdapter.java:265) - Registering plugin geospatial INFO [main] (JCLLoggerAdapter.java:265
Re: [Owlim-discussion] Question on Joseki Settings
Hi Cristian, let me explain what is causing this weird behavior - when you create a repository through the sesame console, you are doing it so by using a template file -bigowlim.ttl - but it uses a 'non-default' value (owlimTest-storage to be exact) as a 'default' for the 'storage-folder' config parameter. If you open that template file -you'll see something like : owlim:storage-folder {%Storage folder|owlimTest-storage%} ; where first part (before '|' ) is the hint used by the console and the second part is the default value used wehen you just press enter. So at the end, it will create a subfolder under the ADUNA_OPENRDF_HOME/repositories/repository-id named after that value, e.g: ADUNA_OPENRDF_HOME/repositories/repository-id/owlimTest-storage But the Jena bridge uses the OWLIM's default value (because that parameter is it not set explicitely by the configuration, specified within the joseki's config file) and OWLIM ends configured to use a different subfolder -e.g. 'owlim-storage' - which is the default value used when no such is provvided. So the location where the BigOWLIM indices are stored/looked up/ became: ADUNA_OPENRDF_HOME/repositories/repository-id/owlim-storage Long story-short - to overcome this subfolder mismatch - add the same value that was used while the repository was initially created to the 'storage-folder' parameter within your josekiconfig.ttl e.g. - in such a way that you end up having: otjena:bridge http://www.ontotext.com/trree/owlim#storage-folder owlimTest-storage . statement as part of the joseki ttl's config - e.g. your BigOWLIM dataset configuration should looks like (just put the actual location correctly at the end): ## Initialize BigOWLIM [] ja:loadClass com.ontotext.jena.SesameVocab . otjena:DatasetSesame rdfs:subClassOf ja:RDFDataset . otjena:bridge rdf:type otjena:DatasetSesame ; rdfs:label BigOWLIM repository ; http://www.ontotext.com/trree/owlim#storage-folder owlimTest-storage ; otjena:datasetParam C:/OpenRDF Sesame/repositories/bigowlimTest . or as an alternative, you may use the default one, while creating the repository by simply change the template file or type it explicitly during its creation sorry for that inconvenience, regards, Damyan Ognyanov Ontotext AD - Original Message - From: Christian Brenninkmeijer To: owlim-discussion@ontotext.com Sent: Thursday, February 10, 2011 11:18 AM Subject: [Owlim-discussion] Question on Joseki Settings Hi, I am trying to setup bigowlin to work with Arq through Joseki as I need Sparql1.1 I followed the instructions in Section 2.3 of the Jena Adapter document. But it appears to be completely ignoring what I put in the line otjena:datasetParam ./location . No matter what I put there When I run the query SELECT DISTINCT ?graph { GRAPH ?graph { } } I alayws get the result: http://www.ontotext.com/explicit Same query from http://localhost:8080/openrdf-workbench/ gets me the correct uploaded graph. My Questions are: 1. What value should I put as ./location? 2. Does it matter that I am using more recent Jena than the document did? ver.jena2.6.4/ver.jena ver.arq2.8.7/ver.arq ver.tdb0.8.9/ver.tdb ver.sdb1.3.3/ver.sdb ver.joseki3.4.3/ver.joseki Same Sesame and Lucene versions as the bigowlin download Thanks Christian PS. Yes I did do create bigowlin from the sesameConsole as suggested in the Start quide Yes I did try the created folder in C:/Users/Christian/AppData/Roaming/Aduna/OpenRDF%20Sesame/repositories/ -- Dr Christian Brenninkmeijer Department of Computer Science University of Manchester -- ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] OWLIM-discussion Digest, Vol 25, Issue 4
Hi Robert, it looks to me that you do not need any fancy features to derive the intended inferences - since you have two (mutually exclusive) kind of facts that will be present there is no need to make things overcomplicated. Let me give you a simplified example how you could achieve that using the Examination/Symptom/Diagnosis domain (the example rdf is attached): 1. Lets define a class ex:Symptom which and populate it with few instances: ex:SymptomA, ex:SymptomB and ex:SymptomC 2. Then we could model the presence/absence of some symptom using two additional classes: ex:SymptomPresent and ex:SymptomNotPresent (and optionally define those disjoint) 3. The main idea is to use two (mutually exclusive) properties to state a particular presence or absence of some symptom during a medical examination, lets name those propeties: ex:haveSymptom and ex:doesNothaveSymptom 4. for each of the Symptom instances, we define a pair of subclasses of, repsectively, ex:SymptomPresent and ex:SymptomNotPresent which are modelled as owl:hasValue owl:Restrictions over the above two properties, e.g. for ex:SymptomA, those look like: ex:HaveSymptomA rdfs:subClassOf ex:SymptomPresent ; rdf:type owl:Restriction ; owl:onProperty ex:haveSymptom ; owl:hasValue ex:SymptomA . ex:DoesNOTHaveSymptomA rdfs:subClassOf ex:SymptomNotPresent ; rdf:type owl:Restriction ; owl:onProperty ex:doesNothaveSymptom ; owl:hasValue ex:SymptomA . that way, when you assert a ex:haveSymptom or ex:doesNothaveSymptom relation between something (Examination instance) and a particular Symptom, then that Examination will be classified as instance of some of the above Restrictions. 5. Then you could model a combination of presence/absence of Symptoms as instances of some top ex:Diagnosis class e.g. ex:Diagnosis rdf:type rdfs:Class . ex:Diagnosis_haveAnotB rdf:type ex:Diagnosis ; owl:intersectionOf ( ex:HaveSymptomA ex:DoesNOTHaveSymptomB ) . ex:Diagnosis_haveCnotA rdf:type ex:Diagnosis ; owl:intersectionOf ( ex:HaveSymptomC ex:DoesNOTHaveSymptomA ) . and so on ... Having such model of the domani, then an instance of a medical examination could be used to group together the data about the person examined and the presence / absence of symptoms, which due to the inference, will be classified as instance of a particular Diagnosis, as defined above. If the right relations are asserted, e.g (like these below.: ex:Person rdf:type rdfs:Class . ex:John rdf:type ex:Person . ex:Marry rdf:type ex:Person . ex:Examination rdf:type rdfs:Class . [] rdf:type ex:Examination ; ex:about ex:John ; ex:haveSymptom ex:SymptomA ; ex:doesNothaveSymptom ex:SymptomB . [] rdf:type ex:Examination ; ex:about ex:Marry ; ex:doesNothaveSymptom ex:SymptomA ; ex:haveSymptom ex:SymptomC . You could query about the classified diagnosis using a query that may look like: prefix ex: http://example.org/example# prefix rdfs: http://www.w3.org/2000/01/rdf-schema# prefix rdf:http://www.w3.org/1999/02/22-rdf-syntax-ns# select * where { ?ex a ex:Examination . ?ex ex:about ?person. ?ex a ?diag . ?diag rdf:type ex:Diagnosis . } which gave me the following resultset when I put the attached RDF into a repository preset with owl-horst-optimized ruleset: ex person diag _:node66ex:Johnex:Diagnosis_haveAnotB _:node67ex:Marryex:Diagnosis_haveCnotA Of course, using that approach, you may end with multiple diagnoses for an examination in case some diagnosis is a complete subset of another. Hope that this is of some help to you. Best, Damyan Ognyanov Ontotext AD. - Original Message - From: Buchmann Robert To: owlim-discussion@ontotext.com Sent: Tuesday, February 01, 2011 9:24 PM Subject: Re: [Owlim-discussion] OWLIM-discussion Digest, Vol 25, Issue 4 Hi, From what i understand, the open world assumption means that you cannot infer/draw conclusions from the ABSENCE of triples (because they could be added in the future). In my interpretation this does not mean that you shouldn't draw conclusions from NEGATED triples. Maybe i was vague about what i call negated triples. I think it's more precise to call them FALSE triples: its when a relationship does NOT hold between a subject and an object and i want to explicitly state that, then infer based on that statement. Something like: :TheSun :DoesntOrbitAround :TheEarth (i guess i can express falseness like this...and state that :DoesntOrbit is disjointPropertywith :DoesOrbit? it just popped in my mind right now) However it's a bit too naming-convention-based for my taste. I thought that it would be more elegant to assign a context of :False in Sesame: :TheSun :OrbitsAround :TheEarth (context :False) Since SPARQL allows for filtering based on named graphs (=contexts) it would be very easy to separate the False triples from the True
Re: [Owlim-discussion] inferring data from data with owlim
Hi Rob, the kind of conclusions on which you are after could be derived easily. You have two possible approaches. The first one is to make use of the so called 'propertyChains' the support of which is part of the owl2-rl ruleset. and the second one is to make use of the protons:transitiveOver property which is a kind of special case of a property chain that could be used to relate two properties in a simmilar manner as rdf:type and rdfs:subClassOf are related inbetween. Id: proton_TransitiveOver p protons:transitiveOver q x p y y q z --- x p z But for both approaches you'll need somehow to relate each particular instance of an equiplemnt to some required skill it's usage implies e.g.something like: data:skates ex:implySkill data:skating then you need to state that requires is transitiveOver ex:implySkill . but for the above inference to be derived you'll need also a requires relation between the ice_dancing and the skates that could be infererd by making equipment a subPropertyOf requires. Yes, I know that it is not a clear solution because you will end up with requires asserted between sport instances and the equipments and betwee nthe equipments and the skills bu hope you could distinguish based on the type the entities related with it. Here is an example of how to exploit protons:transitiveOver in your case so to derive such inferences: the data: @prefix ex: http://example.com/ex# . @prefix data: http://example.com/ex# . @prefix rdfs: http://www.w3.org/2000/01/rdf-schema# . @prefix onto: http://proton.semanticweb.org/2005/04/protons# . ex:equipment rdfs:subPropertyOf ex:requires . ex:requires onto:transitiveOver ex:implySkill . data:ice_dancing a ex:Sport ; ex:equipment data:skates . data:skating a ex:Skill . data:skates a ex:Equiplment ; ex:implySkill data:skating . Then you'll get such inferences. The first proposed approach, by using owl2-rl ruleset, should'nt need such 'hack' with the subPropertyOf, but will require a more carefull schema to be defined so to exploit it properly. HTH Damyan Ognyanov Ontotext AD. - Original Message - From: Rob Styles rob.sty...@talis.com To: owlim-discussion@ontotext.com Sent: Friday, January 21, 2011 1:09 PM Subject: [Owlim-discussion] inferring data from data with owlim Hi folks, I wonder if anyone can help me with inference support in Owlim. I have a dataset that I want to infer stuff about at the data, rather than schema, level. The example is as follows. Ice Dancing is a sport that requires you to where skates, that is in the data I have. I want to infer that because Ice Dancing uses skates it require that you to be skilled in skating. Here in RDF: Existing Data: #ice_dancing a ex:Sport ; ex:equipment #skates . #skating a ex:Skill . Inferred Data: #ice_dancing ex:requires #skating . How would I go about describing this in Owl such that Owlim could infer this? I can see how to make Ice Dancing into a skating sport: #SkatingSport a owl:Class ; owl:equivalentClass [ a owl:Class ; owl:intersectionOf ( ex:Sport [ a owl:Restriction ; owl:hasValue #skates ; owl:onProperty ex:equipment ] ) ] . or something like that - but what I want to do is infer an additional property not a class. Anyone able to help with an example? -- rob Rob Styles tel: +44 (0)870 400 5000 fax: +44 (0)870 400 5001 mobile: +44 (0)7971 475 257 irc: irc.freenode.net/mrob,isnick web: http://www.talis.com/ blog: http://www.dynamicorange.com/blog/ blog: http://blogs.talis.com/nodalities/ blog: http://blogs.talis.com/n2/ ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion
[Owlim-discussion] BigOWLIM 3.3 released; already in use by the BBC for the World Cup website
BigOWLIM 3.3 Handles Millions of Queries per Day, Supports OWL 2 RL Reasoning and Provides Unmatched Linked Data Integration, Management and Retrieval Capabilities Ontotext is pleased to announce version 3.3 of BigOWLIM, the World's most scalable semantic repository [3]. The main purpose of this release is to consolidate a number of advanced features, many of which have existed for some time as bespoke developments. These features are now part of the core BigOWLIM product and significantly broaden the application areas in which the repository can be used. We have also dedicated several months to make BigOWLIM more robust and easy to use. The development of this version was influenced by the requirements of FactForge and LinkedLifeData (two of the most advanced linked data portals) and the BBC's 2010 World Cup website - probably the most challenging real-world use case of semantic repositories implemented so far. Within the LarKC project BigOWLIM is used as the data layer in a platform for Web scale reasoning, which features a range of reasoning plug-ins, including the WebPIE massively parallel reasoning system [7,8]. The key characteristics and features of BigOWLIM include: a.. The most efficient semantic repository in the World [2,3], in terms of speed with which it can load, do inferencing, and query the data; b.. Pure Java implementation and fully compatible with Sesame 2, which brings interoperability benefits and support for all popular RDF syntaxes and query languages, including SPARQL; c.. Clustering support brings resilience, failover and horizontally scalable parallel query processing; d.. Customisable reasoning, in addition to RDFS, OWL-Horst, and OWL 2 RL support. BigOWLIM 3.3 is the only semantic repository which provides comprehensive OWL 2 RL support today [5]; e.. Optimized owl:sameAs handling, which delivers dramatic improvements in performance and usability when huge volumes of data from multiple sources are integrated; f.. Full-text search, based on either Lucene or proprietary techniques, for searching RDF data; g.. High performance retraction of statements and their inferences. While forward-chaining and materialisation speeds up query answering, this unique technique removes the performance degradation that materialisation-based systems face when retracting statements; h.. Powerful and expressive consistency/integrity constraint checking mechanisms; i.. RDF rank, similar to Google's PageRank, can be calculated for the nodes in an RDF graph and used for ordering query results by relevance, visualisation and many other purposes; j.. RDF Priming, based upon activation spreading, allows efficient data selection and context-aware query answering for handling huge datasets; k.. Notification mechanism, to allow clients to react to statements in the update stream. These features are already proven at FactForge (previously known as LDSR), where BigOWLIM is used to load 8 of the central LOD [6] datasets (DBPedia, Geonames, Wordnet, Musicbrainz, Freebase, UMBEL, Lingvoj and the CIA World Factbook) in a repository which contains 1.2 billion explicit and 0.8 billion implicit statements. BigOWLIM's owl:sameAs optimization allows FactForge to deal with 'only' 2 billion statements in its indices, while the number of distinct statements retrievable form the repository is 10 billion. This feature allows FactForge to deliver non-inflated query results, while the semantics of owl:sameAs is still fully accounted for during query evaluation. FactForge is a public service that allows users to perform RDF search, execute SPARQL queries, and to explore this data in real-time, adhering to its semantics. FactForge is the only system which provides a solution to the Modigliani test, defined at ReadWriteWeb as the tipping point of the Semantic Web [4]. BigOWLIM is also at the heart of the LinkedLifeData RDF warehouse, which combines 25 of the most popular biomedical databases in a repository that contains more than 4 billion statements. This is the only public service that allows for efficient query evaluation against all of these datasets at once. The latest version of the BigOWLIM repository has been successfully integrated into the high performance Semantic Web publishing stack powering the BBC's 2010 World Cup football website, performing OWL reasoning with continuously changing data and handling millions of page requests per day. Included with version 3.3 is a thoroughly reworked documentation set that includes: a.. User guide - updated with details of new features and all configuration parameters; b.. Primer - updated with examples and recent trends in semantic technologies; c.. Quick start guide - to help those new to BigOWLIM to get set up and running smoothly. Some popular namespace prefixes come predefined within BigOWLIM 3.3 in order to simplify query writing. Such as the prefixes for: the RDF, RDFS,
Re: [Owlim-discussion] Construct query problem
Hi Spyros, it is related to a bug that we already fixed in BigOWLIM (LDSR dataset is hosted within an BigOWLIM instance) but the deployment is delayed due to some hardware problems we experience with the dedicated server at the moment. Once the issues with it are resolved we will deploy the fixed distribution there and will notify you when that happen. regards, Damyan Ognyanov Ontotext AD - Original Message - From: Spyros Kotoulas k...@few.vu.nl To: owlim-discussion@ontotext.com Sent: Tuesday, April 27, 2010 11:02 PM Subject: [Owlim-discussion] Construct query problem Hi All, I am posting the following construct query on the LDSR endpoint and getting back no results: PREFIX fb: http://rdf.freebase.com/ns/ PREFIX dbpedia: http://dbpedia.org/resource/ PREFIX geo-ont: http://www.geonames.org/ontology# PREFIX dbp-ont: http://dbpedia.org/ontology/ CONSTRUCT { ?loc fb:location.location.contains ?building . ?loc geo-ont:parentFeature dbpedia:United_Kingdom . ?building dbp-ont:architect dbpedia:Richard_Norman_Shaw . } WHERE { ?loc fb:location.location.contains ?building . ?loc geo-ont:parentFeature dbpedia:United_Kingdom . ?building dbp-ont:architect dbpedia:Richard_Norman_Shaw } It is one of the example queries but using Construct instead of Select. If the construct contains only one pattern, it works fine (returning one result like the select query). If it contains two or more patterns, I get not results. Is there something wrong with my syntax? -Spyros ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] Using skos:narrower and rdfs:subPropertyOf
Hi Rune, you need to add the skos.rdf into your repository. Automatic additions through handling 'owl:imports' are not supported, so you need to add those manually, if you need to account on the semantics these external ontologies define with respect to your data. HTH, Damyan Ognyanov Ontotext AD. - Original Message - From: Rune Stilling s...@rdfined.dk To: Ivan Peikov ivan.pei...@ontotext.com Cc: owlim-discussion@ontotext.com Sent: Tuesday, April 27, 2010 10:44 PM Subject: Re: [Owlim-discussion] Using skos:narrower and rdfs:subPropertyOf Hi Ivan I'm using owl-max but I haven't imported the skos ontology. What do you mean by import? Should I add the skos.rdf to my repository or should I just add an owl:import statement? \Rune Den 27/04/2010 kl. 16.09 skrev Ivan Peikov: Hi Rune, In order this to work, you need to use a sufficiently powerful ruleset (such as owl-horst or owl-max) and to have imported the skos ontology (the one that defines skos:narrower). Have you done so already? Cheers, Ivan On Tuesday 27 April 2010 16:42:45 Rune Stilling wrote: Hi there I have an owl-taxonomy with some custom named narrow objectproperties. Now I would like to make these properties subproperty of the skos:narrower predicate and thus being able to construct a query like this: SELECT DISTINCT ?resource WHERE { some_top_level_resource skos:narrower ?resource. } The query engine should then be able to infer that my custom narrow predicate is a subproperty of skos:narrower and thus return the relevant ressources. Problem is I can't make it work using (or not using) OWLIM (with Sesame). I add the subproperty relationship like this: owl:ObjectProperty rdf:about=my_predicate rdfs:subPropertyOf rdf:resource=skos;narrower/ /owl:ObjectProperty Isn't this supposed to work (I guess not)? \Rune ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] delete operation in owlim
Hi Dhaval, this is a feature, not a bug - the statements (including the inferred ones) that come from the files listed in the imports parameter of your repository configuration are treated as read-only thus, these are protected from delete operations - just do not put any data that would be deleted through that parameter ... about the missing update/modify statement operations - there is no such since changing any of the triple components (subject, predicate or object) means, actually, that the old triple is removed and a new one is asserted instead ... HTH, Damyan Ognyanov, Ontotext AD - Original Message - From: Dhaval Thakker To: owlim-discussion@ontotext.com Sent: Wednesday, December 09, 2009 3:40 PM Subject: [Owlim-discussion] delete operation in owlim Dear list users, I have been trying to remove (delete) some statements from an ontology (schema) with big-owlim using following code : OwlimSchemaRepository myOwlim = new OwlimSchemaRepository(); myOwlim.setDataDir(repoDir); Repository sesameRepo = new SailRepository(myOwlim); sesameRepo.initialize(); RepositoryConnection sesameCon = sesameRepo.getConnection(); Resource S1 = new URIImpl(subject of statement); URI P1= new URIImpl(predicate of statement); Value O1 = new URIImpl(object of statement); sesameCon.remove(S1, P1,O1); sesameCon.commit(); The above doesn't work, i.e. the deleted statements are still present when queried. However, the same code and settings work while deleting A-box/instances. Any suggestions? Also, on another matter I could not find any code/listings in sesame/bigowlim that can allow me to modify/update a statement, any hints? Regards Dhaval Thakker -- ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] Write operation and Serialization of results
Hi Laurent, couldn't reproduce your first exception - is it possible to isolate it to a small example code so to be able to fix it .. about your second issue related to serialization - I've fixed it and a distribution is available at http://www.ontotext.come/owlim the new version is SwiftOWLIM v3.0.11: http://www.ontotext.com/owlim/swiftowlim-3.0.beta11-sesame-2.0.zip apart from the above fix it also improves the directType, directSubClassOf and directSubPropertyOf handling so that these consider also the equivalent classes and subClass(Property)Of reflexivity correctly regards, Damyan - Original Message - From: Laurent PELLEGRINO laurent.pellegr...@sophia.inria.fr To: owlim-discussion@ontotext.com Sent: Monday, September 14, 2009 12:38 PM Subject: [Owlim-discussion] Write operation and Serialization of results Dear all, I have a problem with write operation on an OWLIM repository. I can perform a query operation but when I try to perform a write operation I get the following exception : [ERROR exceptions.one_way] java.lang.RuntimeException: Connection is closed java.lang.RuntimeException: Connection is closed at com.ontotext.trree.SailConnectionImpl.addStatement(Unknown Source) at org.openrdf.repository.sail.SailRepositoryConnection.addWithoutCommit (SailRepositoryConnection.java:228) at org.openrdf.repository.base.RepositoryConnectionBase.addWithoutCommit (RepositoryConnectionBase.java:549) at org.openrdf.repository.base.RepositoryConnectionBase.add (RepositoryConnectionBase.java:449) at eu.soa4all.dsb.space.proactive.datastorage.rdf.owlim.OWLIMStorage.write (OWLIMStorage.java:88) My write method is the following : public void write(Statement stmt) { RepositoryConnection conn = null; try { conn = this.repository.getConnection(); System.out.println(isOpen= + conn.isOpen()); conn.add(stmt, new URIImpl(spaceURI.toString())); } catch (RepositoryException e) { e.printStackTrace(); } finally { try { conn.close(); } catch (RepositoryException e) { e.printStackTrace(); } } } The sysout return isOpen=true. Does someone has an idea of the problem ? My second problem is about Serialization. I am retrieving Statements from an OWLIM repository. I put each Statement in a Set and i transmit this Set to another JVM on an another machine. Objects need to be Serializable and it seems that Statement are not Serializable. I am cheating by using this kind of method : for (Statement stmt : mySet) { newSet.add(new StatementImpl(new URIImpl(stmt.getSubject ().stringValue()), new URIImpl( stmt.getPredicate().stringValue()), new BNodeImpl (stmt.getObject() .stringValue(; } The problem is that I am not sure that new BNodeImpl(stmt.getObject ().stringValue())) will be the same that stmt.getObject. Is it right ? I will have the same problem with TupleQueryResult. How to Serialize these two kinds of results ? Thanks. Kind Regards Laurent PELLEGRINO ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] Problem getting the direct type of an instance
Hi Stefan, it is very strange to observe such behavior - in swiftowlim we do not use external engine to evaluate queries and all triple pattern requests are handled through getStatements() so there is no reason to get different results from query evaluation and by simply invoking getStataments() - these are routed to one and the same piece of code - Could you check your code related to enumeration of query results - there is a possibility to somehow silently fetch and ignore the first result ... regards, Damyan - Original Message - From: Stefan Nesbigall stefan.nesbig...@dfki.de To: owlim-discussion@ontotext.com Sent: Tuesday, September 08, 2009 1:21 PM Subject: [Owlim-discussion] Problem getting the direct type of an instance Hi every one I have little problem since owlim does not find the direct type of instances. Somewhere in my ontology I have the following instance defined: messemodul:button rdf:about=#RedButton/ My OWLIM system does is able to load the ontology into the triple store. By this RepositoryResultStatement iter = repositoryConn.getStatements(http://134.96.184.229/isreal/messemodul_abox.owl#RedButton;, null, null, true); I get several triple including (http://134.96.184.229/isreal/messemodul_abox.owl#RedButton, http://www.w3.org/1999/02/22-rdf-syntax-ns#type, http://134.96.184.229/isreal/messemodul.owl#button) (http://134.96.184.229/isreal/messemodul_abox.owl#RedButton, http://www.w3.org/1999/02/22-rdf-syntax-ns#type, http://www.w3.org/2002/07/owl#Thing) But when I use this sparql query: SELECT ?pred ?obj WHERE { http://134.96.184.229/isreal/messemodul_abox.owl#RedButton?pred ?obj . } I do not get the first triple saying that RedButton is a button. I just get all the other triples. Using a ask query: ASK { http://134.96.184.229/isreal/messemodul_abox.owl#RedButton http://www.w3.org/1999/02/22-rdf-syntax-ns#type http://134.96.184.229/isreal/messemodul.owl#button . } I get true. Can anyone help? Best regards Stefan ---required by german law Deutsches Forschungszentrum fuer Kuenstliche Intelligenz GmbH Trippstadter Strasse 122, D-67663 Kaiserslautern, Germany Geschaeftsfuehrung: Prof. Dr. Dr. h.c. mult. Wolfgang Wahlster (Vorsitzender) Dr. Walter Olthoff Vorsitzender des Aufsichtsrats: Prof. Dr. h.c. Hans A. Aukes Amtsgericht Kaiserslautern, HRB 2313 - ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] directsubclass bug?
Hi Armando, I've fixed the handling of directType/SubClassOf/SubPropertyOf predicates so to consider owl:equivalentClass and owl:equivalenProperty while performing the task (also the reflexivity of both is considered) so your queries should be much simpler and run just fine using only the system predicates let me k now if you experience eny issues with that feature the new distibution could be downloaded from our site: SwiftOWLIM v3.0.11: http://www.ontotext.com/owlim/swiftowlim-3.0.beta11-sesame-2.0.zip HTH, Damyan - Original Message - From: Armando Stellato To: owlim-discussion@ontotext.com Sent: Saturday, September 05, 2009 7:37 PM Subject: Re: [Owlim-discussion] directsubclass bug? .ops, I forgot to mention my configuration: Owlim 3 beta 10 This is the config in the owlim.ttl file: # # Sesame configuration template for a owlim repository # @prefix rdfs: http://www.w3.org/2000/01/rdf-schema#. @prefix rep: http://www.openrdf.org/config/repository#. @prefix sr: http://www.openrdf.org/config/repository/sail#. @prefix sail: http://www.openrdf.org/config/sail#. @prefix owlim: http://www.ontotext.com/trree/owlim#. [] a rep:Repository ; rep:repositoryID odnamarExample ; rdfs:label Odnamar Example ; rep:repositoryImpl [ rep:repositoryType openrdf:SailRepository ; sr:sailImpl [ sail:sailType swiftowlim:Sail ; owlim:ruleset owl-max ; owlim:partialRDFS true ; owlim:noPersist false ; owlim:storage-folder odnamar-storage ; owlim:base-URL http://www.fao.org/aims/aos/agrovoc#; ; owlim:new-triples-file new-triples-file.nt ; owlim:entity-index-size 20 ; owlim:jobsize 200 ; owlim:repository-type in-memory-repository ; owlim:imports ./src/main/resources/ontologies/owl.rdfs; ; owlim:defaultNS http://www.w3.org/2002/07/owl#;; ] ]. From: Armando Stellato [mailto:stell...@info.uniroma2.it] Sent: Saturday, September 05, 2009 6:35 PM To: 'owlim-discussion@ontotext.com' Subject: directsubclass bug? Hi all, Loaded an empty repository, asked for triples with predicate SESAME:DIRECTSUBCLASSOF and got a lot of triples like: X SESAME:DIRECTSUBCLASSOF X While direct sub class semantics (from its javadoc) clearly states: Class A is a direct subclass of B iff: 1. A is a subclass of B and; 2. A and B are not equa and; 3. there is no class C (unequal A and B) such that A is a subclass of C and C of B. So this seems to clash with condition 2. Is it a bug in owlim? Armando -- ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] OWLIM/Sesame and Query parsing
Hi Laurent, since you are building a single jar out of few other (if I got it right) - could you check the contents of the MATE-INF/service subfolders of the final jar for all the parsing service specific definitions - text files named by the service interface with lines stating specific interface implementations i.e. specifically for a file named META-INF/services/org.openrdf.query.parser.QueryParserFactory with contents: org.openrdf.query.parser.sparql.SPARQLParserFactory if you merge several jars where there is a such file, the last one will override the one from other jars hope this is of some help regards, Damyan - Original Message - From: Laurent PELLEGRINO laurent.pellegr...@sophia.inria.fr To: owlim-discussion@ontotext.com Sent: Monday, July 27, 2009 8:15 PM Subject: Re: [Owlim-discussion] OWLIM/Sesame and Query parsing Thanks for your response. I do same and it works in a JunitTest. However, when I test it in my global application which link jar and create a JAR of all my classes, i get the previous Exception. JAR are in classpath and the problem seems to be the same that the link I previously referenced. RepositoryConnection conn = null; boolean result = false; try { conn = this.repository.getConnection(); try { result = conn.prepareBooleanQuery(language, query).evaluate(); } finally { conn.close(); } } catch (Exception e) { e.printStackTrace(); } return new Boolean(result); Where language is QueryLanguage.SPARQL and query is equals to ASK { ? s ?p ?o } Regards, Laurent Le 27 juil. 09 à 16:13, Damyan Ognyanoff a écrit : Hi, how do you parse the query? The following code works just fine ... BooleanQuery q = repository.getConnection().prepareBooleanQuery(QueryLanguage.SPARQL, ASK { ?S a ?C} ); System.out.println(result is + q.evaluate()); regards, Damyan - Original Message - From: Laurent PELLEGRINO laurent.pellegr...@sophia.inria.fr To: owlim-discussion@ontotext.com Sent: Monday, July 27, 2009 4:25 PM Subject: [Owlim-discussion] OWLIM/Sesame and Query parsing Dear all, I am trying to parse and to execute a SPARQL ASK query in my application. When I do that, I get the following exception : org.openrdf.query.UnsupportedQueryLanguageException: No factory available for query language SPARQL However all the JAR are in the classpath. It is a known problem ? I have searched on the web and I have found a similar subject but it dates back to 2007 : http://www.openrdf.org/forum/mvnforum/viewthread?thread=1410 The solution is to use a more recent Sesame version which corrects this bug. So i have tried with the Sesame 2.3-pr1 version but the problem is always the same. Does someone has an idea ? Thanks. Kind Regards Laurent ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] OWLIM/Sesame and Query parsing
Hi, how do you parse the query? The following code works just fine ... BooleanQuery q = repository.getConnection().prepareBooleanQuery(QueryLanguage.SPARQL, ASK { ?S a ?C} ); System.out.println(result is + q.evaluate()); regards, Damyan - Original Message - From: Laurent PELLEGRINO laurent.pellegr...@sophia.inria.fr To: owlim-discussion@ontotext.com Sent: Monday, July 27, 2009 4:25 PM Subject: [Owlim-discussion] OWLIM/Sesame and Query parsing Dear all, I am trying to parse and to execute a SPARQL ASK query in my application. When I do that, I get the following exception : org.openrdf.query.UnsupportedQueryLanguageException: No factory available for query language SPARQL However all the JAR are in the classpath. It is a known problem ? I have searched on the web and I have found a similar subject but it dates back to 2007 : http://www.openrdf.org/forum/mvnforum/viewthread?thread=1410 The solution is to use a more recent Sesame version which corrects this bug. So i have tried with the Sesame 2.3-pr1 version but the problem is always the same. Does someone has an idea ? Thanks. Kind Regards Laurent ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] owl:complementOf relation
Hi Marta, the straight answer is NO - the support of complementOf requires negation which is not supported by our rule engine. It will made the inference process non-monotonic - e.g. a valid inference could be made invalid after asserting a statement later on. HTH, Damyan - Original Message - From: Marta de Francisco To: owlim-discussion@ontotext.com Sent: Wednesday, July 08, 2009 12:57 PM Subject: [Owlim-discussion] owl:complementOf relation Hi, I'd like to know if one of the versions of owlim (either Swift or Big) offer some support for owl:complementOf relation. Is it possible to model this relation using pie rules? Has anybody tried it? Thanks for the help and best regards, Marta. -- ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] Rules for inference
Hi Stefan, the reason to miss the required inference is that you do no state the right separator ('/' or '#') at the end of your namespaces in Prefixes section. we concatenate exact values of the prefixes defined there with the localnames used in the x : yyy expressions to form a full uri during rules compilation without any validation hope it soles your problem, regards Damyan - Original Message - From: Stefan Nesbigall stefan.nesbig...@dfki.de To: owlim-discussion@ontotext.com Sent: Tuesday, June 30, 2009 12:40 PM Subject: [Owlim-discussion] Rules for inference Hi I want to insert some rules into my ontology, in order to get new statements if these rules trigger. Is there a possibility to insert such rules (if x isInClass A and someProperty(x,y) and ... then y isInClass B) into the OWLIM system in order that they add the statement (y isInClass B) if the body holds. I read the System Documentation and tried to create a custom rule set by adding my rules at the end of the used rule-set. Unfortunately the statements are not build, or recognized when I ask for them by a SPARQL query. In my rule set I added the following to the standart owl-max rule file. in Prefices m : http://134.96.184.229/isreal/messemodul.owl s : http://134.96.184.229/isreal/spatial_ontology.owl at the end of Rules Id: custom_crPill x rdf:type m:pill --- x rdf:type m:released For testing the rules this is just a simple if x isTypeOf class pill then x should also be typeOf class relesed. Is there some example code for such domain specific rules? Please tell me if this is just a TRREE problem, then I can try to find some help there. thanks and best regards Stefan ---required by german law Deutsches Forschungszentrum fuer Kuenstliche Intelligenz GmbH Trippstadter Strasse 122, D-67663 Kaiserslautern, Germany Geschaeftsfuehrung: Prof. Dr. Dr. h.c. mult. Wolfgang Wahlster (Vorsitzender) Dr. Walter Olthoff Vorsitzender des Aufsichtsrats: Prof. Dr. h.c. Hans A. Aukes Amtsgericht Kaiserslautern, HRB 2313 - ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] Missing implicit statements after delete in 3.0b9
Hi Mike, we do have this issue with the official version of swift owlim 3.0 - I've fixed it yesterday (thanks to the feedback from Chris Halaschek) and you could try out the version at http://www.ontotext.com/owlim/swiftowlim-3.0.beta9-sesame-2.0-19-III-09.zip at the beginning of the next week, if there are no more issues showing up, will promote it as current 'stable' one, I've tried to redo the queries after removal and they show up the correct results ... (with the recent version) Could you please check for this issue with the version from the link above ... regards, Damyan - Original Message - From: Micheal Hewett To: owlim-discussion@ontotext.com Sent: Thursday, March 19, 2009 6:24 PM Subject: [Owlim-discussion] Missing implicit statements after delete in 3.0b9 I am using swiftowlim-3.0.beta9-sesame-2.0 Someone last week reported a problem with SwiftOWLIM deleting extra statements. I just joined this discussion group so I can't reference the original message, but I too noticed a problem with SwiftOWLIM incorrectly deleting statements. The problem occurs in the GettingStarted.java program. After the initial load there are 257 explicit statements and 210 implicit ones. After the add/remove test at the end of the program, there are 257 explicit statements and 154 implicit ones, and the query test that initially worked no longer gives the correct results. I would recommend altering the GettingStarted program to re-run the query after the delete to double-check the functionality. Mike Hewett --- Micheal Hewett, PhD CEO, Hewett Research m...@hewettresearch.com -- ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] owlim 2.9.0 with repackaged sesame1?
Hi, yes of course - could you send me the repackaged sesame jar so to be able to produce one ... the only dependencies in trree are to org.openrdf.model and org.openrdf.model.impl packages - but I also need to change the rule compiler to generate code that uses the new package so your custom rules to work at all so I need the modified jat to be able to test that ... regards, Damyan - Original Message - From: Robert Fuller [DERI] robert.ful...@deri.org To: owlim-discussion@ontotext.com Sent: Monday, March 16, 2009 4:11 PM Subject: [Owlim-discussion] owlim 2.9.0 with repackaged sesame1? Hi, I wonder is there any chance of getting a version of trree 2.9.0 built against a repackaged sesame 1? Background for this is a project with dependencies on owlim 2.9.0, but also some dependencies on sesame 2. We'd like to move to owlim 3.* eventually but require more testing at our end. In order to facilitate using both sesame1 and sesame2 in a project we've repackaged sesame1.2.7 with org.openrdf. renamed to org.openrdf1.. With some corresponding package renames I can compile owlim 2.9.0 ok, but I have a runtime problem with trree 2.9.0 which depends on the sesame1 org.openrdf packages. Is there any chance of getting a version of trree built against the repackaged sesame1 which I can make available? Kind regards Robert Fuller Post Doctoral Researcher DERI ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] question about SwiftOWLIM/Sesame integration
Hi Bob, The command create owlim. gave me the error message ERROR: No template called owlim found in C:\Documents and Settings\myusername\Application Data\Aduna\OpenRDF Sesame console\templates, so I realized that the Aduna subdirectory should be called OpenRDF Sesame console, not OpenRDF Sesame. I created it and put owlim.ttl into a templates subdirectory of that. Then, all the other steps happened as you described. no - this means the you are using the console's own storage folder - you need to connect to the openrdf-sesame application first and then to issue the create owlim. command you just created new repository within the console storage which ofcource is not vizible through the workbench web appication so start the tomcat and then run the console while in the console, issue connect http://localhost:8080/openrdf-sesame.; command to connect to the openrdf-sesame running in your tomcat (use here your url and port) and then create the repository with the above command. HTH, Damyan ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] question about SwiftOWLIM/Sesame integration
Hi Bob, 1. copied the owlim-2.9.1\lib\*.lib files to openrdf-sesame-2.2.4\lib I was thinking that you are using SwiftOWLIM v3.0b9 instead, which is Sesame 2.x compatible - the v2.9.1 you are using is for Sesame 1.x so you could not use it with Sesame 2. So download it from http://www.ontotext.com/owlim/ and give it a try. regards, Damyan - Original Message - From: Bob DuCharme b...@snee.com To: Damyan Ognyanoff dam...@sirma.bg Cc: owlim-discussion@ontotext.com Sent: Thursday, February 12, 2009 1:22 AM Subject: Re: [Owlim-discussion] question about SwiftOWLIM/Sesame integration Thanks! Here's what I tried: 1. copied the owlim-2.9.1\lib\*.lib files to openrdf-sesame-2.2.4\lib 2. created a templates subdirectory of the \Documents and Settings\my-username\Application Data\Aduna\OpenRDF Sesame directory. Sesame had already created that directory, so I know that it knows that that directory is there. (Note that that last step on the path was called OpenRDF Sesame and not openrdf-sesame as you described below, if that means anything). 3. copied the owlim.ttl that you supplied into that templates directory 4. restarted Tomcat 5. loaded the data file shown below, which lists given name and surname information for two people using different namespaces to do so, and includes a bit of OWL to say that v:given-name and f:firstName are equivalent properties 6. issued this query, and didn't get Dobalena returned with Mutt, as I did when I had Pellet issue the same query against the data file: select ?ln where { ?s http://xmlns.com/foaf/0.1/surname ?ln } Did the slight difference in the directory name make a difference, or did I miss a step? thanks, Bob !-- data file -- rdf:RDF xmlns:o=urn:schemas-microsoft-com:office:outlook# xmlns:owl=http://www.w3.org/2002/07/owl#; xmlns:f=http://xmlns.com/foaf/0.1/; xmlns:v=http://www.w3.org/2006/vcard/ns#; xmlns:rdf=http://www.w3.org/1999/02/22-rdf-syntax-ns#; rdf:Description rdf:about=http://localhost:2020/addrbook/RichardMutt; f:firstNameRichard/f:firstName f:surnameMutt/f:surname /rdf:Description rdf:Description rdf:about=http://localhost:2020/addrbook/BobDobalena; v:given-nameBob/v:given-name v:family-nameDobalena/v:family-name /rdf:Description owl:DatatypeProperty rdf:about=http://www.w3.org/2006/vcard/ns#family-name; owl:equivalentProperty owl:DatatypeProperty rdf:about=http://xmlns.com/foaf/0.1/surname/ /owl:equivalentProperty /owl:DatatypeProperty /rdf:RDF Damyan Ognyanoff wrote: Hi Bob, there shouldn't be a problem of setting up and use a SwiftOWLIM repository from inside of openrdf-workbench application - all you need is to copy the template ttl file (attached) into ADUNA_DATA/openrdf-sesame/templates folder and that is - feel free to alter the paramaters - do not forget also to place both owlim jars into the lib subfolder of openrdf-sesame webapplication regards, Damyan - Original Message - From: Bob DuCharme b...@snee.com To: owlim-discussion@ontotext.com Sent: Tuesday, February 10, 2009 7:06 PM Subject: [Owlim-discussion] question about SwiftOWLIM/Sesame integration I got SwiftOWLIM installed under Windows XP and I got the getting-started\example.cmd script running easily enough, but I can't figure out how to integrate it with Sesame without writing Java code to the API. Before I got SwiftOWLIM, If I loaded a file of RDF triples and RDFS statements (for example, some rdfs:subPropertyOf properties) into the Sesame repository from the Sesame Workbench, SPARQL queries reflect the metadata added by the RDFS statements. I'd love to be able to add some OWL properties to a set of the same triples and then have their metadata reflected in SPARQL queries from the Workbench, but I can't figure out if SwiftOLIM integration with Sesame reaches that level. Does anyone have any suggestions? thanks, Bob DuCharme snee.com/bobdc.blog @bobdc ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion
Re: [Owlim-discussion] Urgent: Problem with rule!
Hi Marc, your rule is too risky for the goal you are aiming for. It is because you do not know what are the specifics of the property p (the property for which the restriction is all about) with your pizza ontology and just adding that rule to owl-max ruleset - owlim was not able to finish the inference in some reasonable time (20min) - after some debugging I found that most of your properties (hasTopping, hasSpiciness - etc) are functional or inverseFunctional - so with this consequent of your rule, you are forming quite large clusters of equivalent nodes through the inferred sameAs statements (as a side effect from the functional or invercefuntional nature of it). I just commented few fragments of the pizza ontology - all those that define Functionality or inverseFunctionality for the properties used in restriction definitions and got some positive results. but have in mind that these properties have also domain and range and you will end up with an ontology that is in OWL full fragment if that rule stays in your rule set. Probably there is something not right in your approach - you are mixing instances and classes here - your rule states that for each class that is a subclass of an someValues restriction over some property P to hold that the class is related with that property to some other class - so as soon this rule fires your class will become instance to the domain of the property and also the class from the restriction (someValuesFrom argument) will become instance of the range class of that property - then since the property is functional or inversefunctional - and you have at least two restrictions over the same property for several classes - as is the case with the pizza ontology) you are starting to infer unwanted sameAs statements between different classes. could you explain what you are aiming for so to be able to give you some more hints regards, Damyan - Original Message - From: Marc Mültin To: owlim-discussion@ontotext.com Sent: Tuesday, February 03, 2009 7:25 PM Subject: [Owlim-discussion] Urgent: Problem with rule! Hi there, I'm currently working on my diploma thesis, due date is next week friday and I need urgent help from some of you guys. My rule: a rdfs:subClassOfr [Constraint a != r] r rdf:type owl:Restriction r owl:onProperty p p rdf:type owl:ObjectProperty r owl:someValuesFrom c - a p c Having the pizza ontology from http://www.co-ode.org/ontologies/pizza/pizza.owl, I want to reason for example about the following part: --- snip --- owl:Class rdf:about=#Margherita rdfs:label xml:lang=ptMargherita/rdfs:label rdfs:subClassOf owl:Restriction owl:onProperty owl:ObjectProperty rdf:about=#hasTopping/ /owl:onProperty owl:allValuesFrom owl:Class owl:unionOf rdf:parseType=Collection owl:Class rdf:about=#MozzarellaTopping/ owl:Class rdf:about=#TomatoTopping/ /owl:unionOf /owl:Class /owl:allValuesFrom /owl:Restriction /rdfs:subClassOf rdfs:subClassOf owl:Restriction owl:someValuesFrom owl:Class rdf:about=#MozzarellaTopping/ /owl:someValuesFrom owl:onProperty owl:ObjectProperty rdf:about=#hasTopping/ /owl:onProperty /owl:Restriction /rdfs:subClassOf rdfs:subClassOf owl:Restriction owl:onProperty owl:ObjectProperty rdf:about=#hasTopping/ /owl:onProperty owl:someValuesFrom rdf:resource=#TomatoTopping/ /owl:Restriction /rdfs:subClassOf rdfs:subClassOf rdf:resource=#NamedPizza/ ... /owl --- snip ---What I want to do is to get a triple statement like: margherita hasTopping TomatoTopping (with margherita being variable a, hasTopping being variable p and TomatoTopping being variable c).But it doesn't work! If any of you know the software AquaLog (http://technologies.kmi.open.ac.uk/aqualog/), I want AquaLog to be able to answer me the question show me the toppings of margherita, which only works if this explicit triple notation is stated in the owl file (but it's not, it's stated via restrictions as you can see above). That's why I need this rule, to get this extra statement via inference.Where am I wrong?I would really appreciate a quick help!! Thanks in advance!Kind regards, Marc -- ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion
Re: [OWLIM-discussion] Owlim persistency bug?
Hi Michael, could you observe the same behavior also with the latest version? http://www.ontotext.com/owlim/swiftowlim-3.0.beta6-sesame-2.0.zip did you invoke repository's shutdown method (it is called indirectly when you shutdown the repository manager) regards, Damyan - Original Message - From: sti Innsbruck | Michael Fried To: owlim-discussion@ontotext.com Sent: Monday, August 25, 2008 3:16 PM Subject: [OWLIM-discussion] Owlim persistency bug? Hello Owlim Team My name is Michael Fried from Sti Innsbruck and I have a question/bug report regarding owlim persistency. If I try to delete a statement from the store it will be deleted in memory but after a restart of my application the information still exists in my store. The same missbehaviour occured while testing your GettingStarted sample application. I am currently using owlim-beta5-sesame-2.0 and the latest Sesame version. Regards Michael -- ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion_ontotext.com ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion_ontotext.com
Re: [OWLIM-discussion] Treating files with a non .nt extension asNTriples
Treating files with a non .nt extension as NTriplesHi Alistair, since we do not have additional information about the files listed in the imports parameter - we check the extension of the file and in case it's ends with '.nt' we parse it as NTriples - otherwise we assume it is an rdf/xml serialized RDF. This was mainly because there are lot more variation of extensions for RDF/xml serialsedRDF files - .rdf,.rdfs,.owl, .xml, etc. another question - it looks very strange to me that you are attempting to load this .~bak file - it is ...let say ... the older version of the intermediate backup file - new-temp-triples.nt, - it is renamed to ~.bak when its contents are merged with the main storage file - the one pointed by the 'file' parameter - so there is no need to try to add it during the initialization of the sail ... just check its contents against the main storage file and see yourself that everything is there... have a nice day, Damyan Ontotext Lab - Original Message - From: [EMAIL PROTECTED] To: owlim-discussion@ontotext.com Sent: Thursday, April 24, 2008 3:32 PM Subject: [OWLIM-discussion] Treating files with a non .nt extension asNTriples Hi Folks, In my sesame.conf file I'm attempting to load the new-temp-triples.nt.~bak file that is generated by KIM: param name=imports value= ... /space/applications/KIMPlatform/context/default/populated/new-temp-triples.nt.~bak; /space/applications/KIMPlatform/context/default/populated/new-temp-triples.nt;/ param name=defaultNS value= ... http://www.ontotext.com/kim/2005/04/wkb#; http://www.ontotext.com/kim/2005/04/wkb#;/ This gives me an error: [Fatal Error] wkb#:1:8: Element type http: must be followed by either attribute specifications, or /. If, however, I add .nt to the end of the filename it loads fine. This won't solve the problem long-term though because KIM creates a new ~bak file when it analyses a new document. So can I: i) get OWLIM to treat non .nt files as an Ntriple file or ii) get KIM to use a different filename for new-temp-triples.nt.~bak which has .nt extension? Thanks, Alistair Alistair Duke Next Generation Web Research IT Futures Research Centre BT Group Chief Technology Office ___ Office: +44(0) 1473 608192 Mobile: +44(0) 7730 426257 Fax : +44(0) 1473 609832 Email: [EMAIL PROTECTED] British Telecommunications plc Registered office: 81 Newgate Street London EC1A 7AJ Registered in England no. 180 This electronic message contains information from British Telecommunications plc which may be privileged or confidential. The information is intended to be for the use of the individual(s) or entity named above. If you are not the intended recipient be aware that any disclosure, copying, distribution or use of the contents of this information is prohibited. If you have received this electronic message in error, please notify us by telephone or email (to the numbers or address above) immediately. Activity and use of the British Telecommunications plc email system is monitored to secure its effective operation and for other lawful business purposes. Communications using this system will also be monitored and may be recorded to secure effective operation and for other lawful business purposes. -- ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion_ontotext.com ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion_ontotext.com
Re: [OWLIM-discussion] Problem after compiling user defined ruleset
Hi Chris, the custom ruleset was not compiled due to the way we find the right jar to put it into the classpath of the javac - in short the spaces in the path broke it (these were escaped to %20). I've updated the distribution on http://www.ontotext.com/public_html/owlim/v3.0.a/owlim-beta5-sesame-2.0.zip about the partialRDFS=false - the precompiled sets were included in the distribution but for some stupid reason those were never instantiated - the fixes are also part of the above distribution... it also contain a simple check whether to permutate all possible rule variants to choose the best one so to place it in the compiled ruleset - this naive approach caused very slow compilations of custom rulesets that have rules with more than 10 premises ... to avoid that - now one should use -Doptimize.rules=false in the jvm runtime parameters/options - it switches to more simple strategy to achieve the same - but it could fail to select the best option in some border cases ... still needs some more work to replace the old approach completely let me know if the above distribution suits you and works for you... regards, Damyan - Original Message - From: Chris Halaschek [EMAIL PROTECTED] To: Damyan Ognyanoff [EMAIL PROTECTED]; owlim-discussion@ontotext.com Sent: Friday, April 11, 2008 6:40 AM Subject: Problem after compiling user defined ruleset Hi, I'm observing some issues when trying to compile my own ruleset in OWLIM. Currently, I'm running OWLIM 3.0 Beta 4, Sesame 2.0, Tomcat 6, and I've followed the basic instructions to configure OWLIM by copying the OWLIM jars into the necessary Tomcat folders. I've additionally followed the necessary steps provided in http://ontotext.com/pipermail/owlim-discussion_ontotext.com/2008-March/000117.html and have sucessfully used Sesame's console to create a repository backed by OWLIM. The errors seem to be thrown when I then browse to the repository using the Sesame workbench web-app. I've checked the logs and it appears that my new ruleset compiles ok, however, I get classpath errors right after the compilation. I have confirmed that all of the necessary jar files are in the Sesame WEB-INF\lib\ folder in Tomcat, so I'm not sure what the problem could be. It's also strange as it appears that the rules compile ok initially, which would indicate that the classpaths are set up fine. I have included the output in the Tomcat logs at the end of this email. Another related issue I'm observing is that if I simply change the 'partialsRDFS' setting to 'false' in my Sesame repository template, I get the same errors. The template file I'm using (originally taken from the OWLIM distribution) with this minor modification is provided below: # Sesame configuration template for a owlim repository # @prefix rdfs: http://www.w3.org/2000/01/rdf-schema#. @prefix rep: http://www.openrdf.org/config/repository#. @prefix sr: http://www.openrdf.org/config/repository/sail#. @prefix sail: http://www.openrdf.org/config/sail#. @prefix owlim: http://www.ontotext.com/trree/owlim#. [] a rep:Repository ; rep:repositoryID owlim_repository ; rdfs:label Test Repository ; rep:repositoryImpl [ rep:repositoryType openrdf:SailRepository ; sr:sailImpl [ sail:sailType owlim:Sail ; owlim:ruleset owl-max ; owlim:partialRDFS false; owlim:noPersist false ; owlim:storage-folder junit-storage ; owlim:base-URL http://example.com#; ; owlim:new-triples-file new-triples-file.nt ; owlim:entity-index-size 20 ; owlim:jobsize 500 ; owlim:repository-type in-memory-repository ; owlim:defaultNS http://www.w3.org/2002/07/owl#; ] ]. I'm guessing that you have only pre-compiled the rulesets for the case when the 'partialsRDFS' setting is 'true'. One reason why I've tried to change this configuration is because it appears that an owl:Thing subclass assertion is not added for anything of type owl:Class that I load into OWLIM. This is strange as it looks like this should be added by the OWL-Horst rule with id 'owl_Thing1' (in the 'Rules_builtin.pie' ruleset in the OWIM beta 4 release). Perhaps this is not included in the owl-max ruleset when 'partialRDFS' is set to 'true'? Any advice you can offer on these issues would be greatly appreciated. Thanks, Chris -- Christian Halaschek-Wiener, Ph.D. Web page: http://www.mindswap.org/~chris Tomcat Log: -- sNewTriplesFileName=new-triples-file.nt bNoPersist=false ruleSet=owl-max-new, partialRdfs=false Compiled: 'owl-max-new.pie' package1:com/ontotext/trree/owlim_ext/rules/RuntimeInferencerCompiler.class url2= jar:file:/C:/Program%20Files/Apache%20Software%20Foundation/Tomcat%206.0/webapps/openrdf-sesame/WEB-INF/lib/trree-3.0.beta4.jar!/com/ontotext/trree/owlim_ext/rules/RuntimeInferencerCompiler.class TRREE not found in application's CP
Re: [OWLIM-discussion] Owlim 3.0 beta-4 Sesam2 Apache Tomcat
Hi Arnim, (sorry for the late reply) I do not know whether the openrdf-sesame or openrdf-workbench webapps provide an UI to create repositories ... but you could look the the code of the org.openrdf.console.Console class / createRepository(String) method / and do the same yourself - just prepare the (.ttl) configuration, parse it into a Graph instance and then add it to the SYSTEM repository. regards, Damyan - Original Message - From: Arnim Bleier To: owlim-discussion@ontotext.com Sent: Friday, April 04, 2008 7:22 PM Subject: [OWLIM-discussion] Owlim 3.0 beta-4 Sesam2 Apache Tomcat Hi (Damyan), I tried out the Owlim 3.0 beta-4 for sesame 2 http://www.ontotext.com/owlim/v3.0.a/owlim-beta4-sesame-2.0.zip. and followed the instructions in the previous mails. Everything went fine - I can create an owlim repository via the console and access it - thank you so fare. However, is it possible to use the sesame server to create a owlim repository. What do I have to do to cope with the classpath? Best regards, Arnim -- ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion_ontotext.com ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion_ontotext.com
Re: [OWLIM-discussion] Class cast exception in OWLIM 3.0
Hi Chris, it was a bug - the updated distribution (there was typo in the link from the previous mail to the list) http://www.ontotext.com/owlim/v3.0.a/owlim-beta5-sesame-2.0.zip contain also a fix for this issue regards, Damyan - Original Message - From: Chris Halaschek [EMAIL PROTECTED] To: owlim-discussion@ontotext.com Sent: Wednesday, April 09, 2008 10:59 PM Subject: [OWLIM-discussion] Class cast exception in OWLIM 3.0 Hi, I seem to get a class cast exception when browsing my OWLIM KB via the Sesame Workbench web app. Currently, my configuration is as follows: - OWLIM 3.0 Beta 4 - Sesame 2.0 - Tomcat 6 The exception shows up in the OWLIM and Tomcat logs when I browse to various object properties in the KB. I've also tried to issue SPARQL queries for triples involving the object properties in the KB that cause the exception when browsed to in the Workbench web app and no results are returned even though the original OWL ontology contains various assertions involving these properties (clearly, at minimum there should be basic rdf type and subproperty assertions). I looked into our ontology (which is perfectly valid RDF) and was able to isolate the problem to what appears to be interactions between inverse and symmetric properties. Perhaps this is causing a problem when loading the KB into OWLIM (note however, that I do not see any errors related to this in the log files). Below is a trivial ontology that causes the issue. Clearly, one can remove the inverse property assertion for 'http://example.com#sampleInverseProperty' on itself, however this should still be valid RDF and not cause problems for OWLIM (at least that's my understanding). Interestingly, if this assertion is removed, then the problem is resolved. ?xml version=1.0? !DOCTYPE rdf:RDF [ !ENTITY owl http://www.w3.org/2002/07/owl#; !ENTITY rdf http://www.w3.org/1999/02/22-rdf-syntax-ns#; ] rdf:RDF xmlns=http://example.com#; xml:base=http://example.com#; xmlns:owl=http://www.w3.org/2002/07/owl#; xmlns:rdf=http://www.w3.org/1999/02/22-rdf-syntax-ns#; owl:Ontology rdf:about=/ owl:ObjectProperty rdf:about=#sampleProperty owl:inverseOf rdf:resource=#sampleInverseProperty/ /owl:ObjectProperty owl:ObjectProperty rdf:about=#sampleInverseProperty rdf:type rdf:resource=owl;SymmetricProperty/ owl:inverseOf rdf:resource=#sampleInverseProperty/ /owl:ObjectProperty /rdf:RDF Additionally, here is the actual exception thrown when browsing to the property 'http://example.com#sampleInverseProperty': Exeception: - org.springframework.web.util.NestedServletException: Request processing failed; nested exception is java.lang.ClassCastException: org.openrdf.model.impl.URIImpl cannot be cast to org.openrdf.model.Literal org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:472) org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:415) javax.servlet.http.HttpServlet.service(HttpServlet.java:690) javax.servlet.http.HttpServlet.service(HttpServlet.java:803) root cause java.lang.ClassCastException: org.openrdf.model.impl.URIImpl cannot be cast to org.openrdf.model.Literal com.ontotext.trree.owlim_ext.CustomLiteralImpl.getLabel(Unknown Source) org.openrdf.rio.turtle.TurtleWriter.writeLiteral(TurtleWriter.java:355) org.openrdf.rio.turtle.TurtleWriter.writeValue(TurtleWriter.java:302) org.openrdf.rio.turtle.TurtleWriter.handleStatement(TurtleWriter.java:230) org.openrdf.rio.trig.TriGWriter.handleStatement(TriGWriter.java:129) org.openrdf.repository.sail.SailRepositoryConnection.exportStatements(SailRepositoryConnection.java:209) org.openrdf.http.server.repository.statements.ExportStatementsView.render(ExportStatementsView.java:99) org.springframework.web.servlet.DispatcherServlet.render(DispatcherServlet.java:1123) org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:860) org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:774) org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:460) org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:415) javax.servlet.http.HttpServlet.service(HttpServlet.java:690) javax.servlet.http.HttpServlet.service(HttpServlet.java:803) Any help you can offer would be greatly appreciated. Best, Chris -- Christian Halaschek-Wiener, Ph.D. Web page: http://www.mindswap.org/~chris ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion_ontotext.com ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion_ontotext.com
Re: [OWLIM-discussion] OWLIM-Plugin for Sesame 2.0
Hi Thorsten, It is still not stable enough and the documentation I far from complete but the core functionality is there - I have to align the code base with the latest sesame 2.0-beta6 which differ from beta5 and broke it. I hope that will be able to fix it 'till the end of the week and will notify you (and others on this list) for its availability so to give it a try. regards, Damyan - Original Message - From: Thorsten [EMAIL PROTECTED] To: owlim-discussion@ontotext.com Sent: Thursday, October 25, 2007 5:30 PM Subject: [OWLIM-discussion] OWLIM-Plugin for Sesame 2.0 Hello all, can anybody say me, when approximatly owlim 3.0 for sesame 2.0 is done? If not before January 2008 I must use seame 1 and owlim 2.9 Thanks, Thorsten ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion_ontotext.com ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion_ontotext.com
Re: [OWLIM-discussion] trouble with large ontology in Owlim 2.9
Hi John, obviously (from the exception trace) your data makes use of more than 1000 URIs as predicates. In current version, we hardcoded the maximum number of predicates to 1000 - thinking wrongly that it will be sufficient for, virtually, every RDF application in the world. So we are wrong. Can you confirm that you have more than 1000 predicates in your data, otherwise we should look at the inference rules which also could lead to such undesired inference. regards, Damyan Ognyanoff, Ontotext Lab. - Original Message - From: John del Corral [EMAIL PROTECTED] To: OWLIM-discussion@ontotext.com Sent: Tuesday, August 21, 2007 5:39 PM Subject: [OWLIM-discussion] trouble with large ontology in Owlim 2.9 I am having trouble loading a large (400,000 statements) ontology into sesame with the Owlim 2.9.0 SAIL in sesame 1.26.. I use the Add(www) action once I have logged into the repository with the sesame client interface. I enter the URL of our ontology of ntriples, http://iri.columbia.edu/~jdcorral/ingrid/upload23161.nt (~100MB). I have checked the 'verify the data' button, and it checks out ok. From the Sesame client screen, I can watch the progress of the load. I see the total number of statements (439,599), and then the progress of the load. there are usually 100,000 statements processed per 60 sec. When the count gets greater than 200,000, I see in a separate window (one that is monitoring the catalina.out file for our tomcat server) this: Exception in thread Thread-41 java.lang.ArrayIndexOutOfBoundsException: 1000 at com.ontotext.trree.transitivity.PredicateMap.addPredicate(Unknown Source) at com.ontotext.trree.transitivity.Repository.put(Unknown Source) at com.ontotext.trree.transitivity.s.addStatement(Unknown Source) at org.openrdf.sesame.sailimpl.OWLIMSchemaRepository$LocalThreadPool$LocalWorkerThread.doJob(OWLIMSchemaRepository.java:490) at com.ontotext.trree.transitivity.ThreadPool$WorkerThread.run(Unknown Source) Exception in thread Thread-40 java.lang.ArrayIndexOutOfBoundsException: 1000 at com.ontotext.trree.transitivity.PredicateMap.addPredicate(Unknown Source) at com.ontotext.trree.transitivity.Repository.put(Unknown Source) at com.ontotext.trree.transitivity.s.addStatement(Unknown Source) at org.openrdf.sesame.sailimpl.OWLIMSchemaRepository$LocalThreadPool$LocalWorkerThread.doJob(OWLIMSchemaRepository.java:490) at com.ontotext.trree.transitivity.ThreadPool$WorkerThread.run(Unknown Source) Exception in thread Thread-39 java.lang.ArrayIndexOutOfBoundsException: 1000 at com.ontotext.trree.transitivity.PredicateMap.addPredicate(Unknown Source) at com.ontotext.trree.transitivity.Repository.put(Unknown Source) at com.ontotext.trree.transitivity.s.addStatement(Unknown Source) at org.openrdf.sesame.sailimpl.OWLIMSchemaRepository$LocalThreadPool$LocalWorkerThread.doJob(OWLIMSchemaRepository.java:490) at com.ontotext.trree.transitivity.ThreadPool$WorkerThread.run(Unknown Source) Exception in thread Thread-38 java.lang.ArrayIndexOutOfBoundsException: 1000 at com.ontotext.trree.transitivity.PredicateMap.addPredicate(Unknown Source) at com.ontotext.trree.transitivity.Repository.put(Unknown Source) at com.ontotext.trree.transitivity.s.addStatement(Unknown Source) at org.openrdf.sesame.sailimpl.OWLIMSchemaRepository$LocalThreadPool$LocalWorkerThread.doJob(OWLIMSchemaRepository.java:490) at com.ontotext.trree.transitivity.ThreadPool$WorkerThread.run(Unknown Source) I have loaded smaller (75,000 statements) ontologies into this repository, but I get a failure with the large ontology. Could someone else please try to load this large ontology and maybe give me some feedback? Thank you, John -- John del Corral, IRI, Earth Inst. at Columbia Univ., Monell 107 Lamont-Doherty Earth Obs., 61 Route 9W, Palisades, NY 10964 +1 845-680-4437(v) +1 845-680-4864(F) [EMAIL PROTECTED] ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion_ontotext.com ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion_ontotext.com
Re: [OWLIM-discussion] tbox query using OWLIM
hi Qiu, could you try to add: using namespace rdfs = http://www.w3.org/2000/01/rdf-schema# to your queries. RQL engine does not know what is 'rdfs:' and assumes it is a namespace which is different from http://www.w3.org/2000/01/rdf-schema# thus the URIs 'rdfs:subClassOf' and http://www.w3.org/2000/01/rdf-schema#subClassOf are treated as unequal and I think that this is the reason for lack of results. Are the equivalent SeRQL queries also doesn't return any results? HTH, Damyan - Original Message - From: [EMAIL PROTECTED] To: owlim-discussion@ontotext.com Sent: Thursday, May 31, 2007 4:12 PM Subject: [OWLIM-discussion] tbox query using OWLIM Hello! I want to make a simple query on TBox using OWLIM. But I can not get any results, even I know there is some result and I can get such kind of result by other reasoners. So I think there must be something wrong with my query (for other ABox queries, it works fine). By referring to the OWLIM manual http://139.91.183.30:9090/RDF/RQL/Manual.html, I tried the fowlling queries: (1) SELECT X from {X} rdfs:subClassOf {Y} (2) SELECT X from subClassOf(http://vicodi.org/ontology#Building) (3) SELECT X from {X} rdfs:subClassOf vic:Building using namespace vic=http://vicodi.org/ontology# I just want to get all the (inferred) subclasses of a concept. Thank you very much for your help. Regards, Qiu ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion_ontotext.com ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion_ontotext.com
Re: [OWLIM-discussion] Please Help
Hi Lilly, the easiest way is to deploy sesame in to your tomcat, configure a repository that use OWLIM (check the Sesame documentation on how to do that, then the OWLIM sysdoc to setup the sail properly), and query it through Sesame web application. if you need to develop your own web application - look at Sesame's sources to figure out what you need to implement in order to get it running. HTH, Damyan Ognyanoff, Ontotext Lab. - Original Message - From: lily john [EMAIL PROTECTED] To: owlim-discussion@ontotext.com Sent: Thursday, April 26, 2007 10:34 AM Subject: [OWLIM-discussion] Please Help Hello, I upload my OWL file to OWLIM. and now i would like to develop jsp file to query my owl file ...so how i can do that ?? do i have to call OWLIM Library or Sesame Library ... and how ? This is my configuration: win 2000, Tomcat 6, JDK 6, Sesame 1.2.6 and OWL IM 2.8.4. Please Help regards Lilly _ Don't just search. Find. Check out the new MSN Search! http://search.msn.com/ ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion_ontotext.com ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion_ontotext.com
Re: [OWLIM-discussion] Please Help
Hi Lilly, additionally, if you are just looking for a sample snip of code that evaluate a query, you may look at section 7 at OWLIM documentation (2.9rc1 release). There is a such chunk that may be useful for you. Or look at the GettingStarted example code distributed along with the same (2.9rc1) release. regards, Damyan Ognyanoff, Ontotext Lab. - Original Message - From: lily john [EMAIL PROTECTED] To: owlim-discussion@ontotext.com Sent: Thursday, April 26, 2007 10:34 AM Subject: [OWLIM-discussion] Please Help Hello, I upload my OWL file to OWLIM. and now i would like to develop jsp file to query my owl file ...so how i can do that ?? do i have to call OWLIM Library or Sesame Library ... and how ? This is my configuration: win 2000, Tomcat 6, JDK 6, Sesame 1.2.6 and OWL IM 2.8.4. Please Help regards Lilly _ Don't just search. Find. Check out the new MSN Search! http://search.msn.com/ ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion_ontotext.com ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion_ontotext.com
Re: [OWLIM-discussion] literals in rules
Hi Bernd, it is a bug - we fixed it but the release of the fixed distribution will be delayed until tomorrow. the problem is a bit more general since we use a custom syntax for the rule files and it still do not incorporate the proper handling of string constants as literal nodes. Thanks for the feedback, I'll notify you as soon as we update the distribution on the site. Regards, Damyan Ognyanoff, Ontotext Lab. - Original Message - From: Bernd Kiefer [EMAIL PROTECTED] To: owlim-discussion@ontotext.com Sent: Tuesday, April 17, 2007 4:46 PM Subject: [OWLIM-discussion] literals in rules We were trying to use literals in rules, like the following: Id: unsere_regel_2 x rdf:type protonu:Team - x protonu:unserLabel Ein Team but when we try to retrieve these, there is always a NULL pointer instead of the literal, which leads to an exception when we try to inspect the instance in the Sesame web interface. Are we missing something here? Thanks, Bernd Kiefer -- In a world without walls and fences, who needs Windows or Gates? ** Bernd KieferAm Blauberg 16 [EMAIL PROTECTED] 66119 Saarbruecken +49-681/302-5301 (office) +49-681/3904507 (home) ** ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion_ontotext.com ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion_ontotext.com
Re: [OWLIM-discussion] Stack overflow error
Stack overflow errorHi Alistair, try using param name=stackSafe value =true/ as a sail configuration parameter and give it a try. You probably have very large cluster of resources related with a property which is simultaneously of type owl:TransitiveProperty and owl:SymmetricProperty. Damyan. - Original Message - From: [EMAIL PROTECTED] To: owlim-discussion@ontotext.com Sent: Friday, February 23, 2007 1:04 PM Subject: [OWLIM-discussion] Stack overflow error Hi, I'm getting the following error when I try to load in my ontology: Exception in thread main java.lang.StackOverflowError at com.ontotext.trree.Repository$b.init(Unknown Source) at com.ontotext.trree.Repository.getSubjPred(Unknown Source) at com.ontotext.trree.c.b(Unknown Source) at com.ontotext.trree.c.b(Unknown Source) It's a very large ontology (~260Mb of RDF/XML) and initially I had heap space problems. However, now I've increased this to 1.6Gb I'm wondering if the error is still due to lack of memory or a problem with recursion in my ontology. Is there anyway to find out? Thanks, Alistair Alistair Duke Next Generation Web Research BT Group Chief Technology Office ___ Office: +44(0) 1473 608192 Mobile: +44(0) 7730 426257 Fax : +44(0) 1473 609832 Email: [EMAIL PROTECTED] British Telecommunications plc Registered office: 81 Newgate Street London EC1A 7AJ Registered in England no. 180 This electronic message contains information from British Telecommunications plc which may be privileged or confidential. The information is intended to be for the use of the individual(s) or entity named above. If you are not the intended recipient be aware that any disclosure, copying, distribution or use of the contents of this information is prohibited. If you have received this electronic message in error, please notify us by telephone or email (to the numbers or address above) immediately. Activity and use of the British Telecommunications plc email system is monitored to secure its effective operation and for other lawful business purposes. Communications using this system will also be monitored and may be recorded to secure effective operation and for other lawful business purposes. -- ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion_ontotext.com ___ OWLIM-discussion mailing list OWLIM-discussion@ontotext.com http://ontotext.com/mailman/listinfo/owlim-discussion_ontotext.com