Hi Mark! The DESCRIBE queries are actually graph queries -- the result of DESCRIBE query evaluation is a set of statements. That is, you can use the repository connection method for preparing a graph query. Actually you might use the more general prepareQuery() method which will return an instance of the GraphQuery interface.
Cheers, Ivan On Tuesday 29 December 2009 01:51:20 Mark Larkin wrote: > How does one execute a DESCRIBE query. I see examples of Tuple and Graph > queries in the user guide, but I don't see how to prepare/evaluate a > DESCRIBE query. > > > > Mark Larkin > > > > > > From: Atanas Kiryakov [mailto:[email protected]] > Sent: Friday, December 25, 2009 7:10 AM > To: [email protected]; Mark Larkin > Subject: Re: [Owlim-discussion] Walking the Ontology > > > > Dear Mark > > > > first: Merry Christmas to all OWLIM fans! > > > > I am afraid that there is no support for such functionality. Generally, > one can do SPARQL DESCRIBE queries, which return connected graphs, which > include the URIs bound in the process of query evaluation plus their > "surrounding" - sort of molecules, which are likely to differ from one > engine to another, because the specifications leaves it quite > undetermined. > > > > SPARQL DESCRIBE is more limited than the functionality that you are > sking for as long as: > > - you get the "surrounding" sub-graphs with respect to *any* properties > > - it is not recursive, i.e. you are getting the immediate neighbouhood, > where the individual(s) of intrest appear as subjects. > > > > It is not clear from your email, but I assume you expect some sort of > "recursive closure". Please, confirm > > > > After all, I would recommend you to implement the algorithm on your own, > accessing the repository through the Sesame APIs. Working directly with > the SAIL methods (e.g. getStatements...) should be really fast if you > are working with embedded Sesame/OWLIM (the standard option). This way > you get maximum flexibility and good speed. You will be able to decide > on your own: > > - wether you want to traverse over inferred statements > > - do you handle blank nodes in some special way? > > - do you have time and volume constraints and what should happen when > you reach them > > > > On the negative side, you will have to take care to avoid loops and few > other things of the same sort, but for relatively small result sets, > this is doable with a simple hash-set > > > > Regards > > Naso > > > > ---------------------------------------------------------- > Atanas Kiryakov > Executive Director of Ontotext AD, http://www.ontotext.com > Sirma Group, http://www.sirma.bg > Phone: (+359 2) 974 61 44; Fax: 975 3226 > ---------------------------------------------------------- > Fortes fortuna adiuvat. > > ----- Original Message ----- > > From: Mark Larkin <mailto:[email protected]> > > To: [email protected] > > Sent: Wednesday, December 23, 2009 5:09 PM > > Subject: [Owlim-discussion] Walking the Ontology > > > > Are there methods that allow one to walk a populated Ontology? > Utilmately I would like to extract a submodel associated with a > particular node or individual. > > > > For example, given a populated Ontology (Schema+Data), I would > like to find all nodes that connect to a particular individual via a > series of properties. > > > > I know I can write algorithms for this, but I can't help to > think that there may already be methods in the Seame API that do this. > > > > I understand there are Tuple and Graph Queries, but these don't > actually return a connected subgraph. > > > > Mark Larkin > > > > > > > > > > > > > ________________________________ > > > _______________________________________________ > OWLIM-discussion mailing list > [email protected] > http://ontotext.com/mailman/listinfo/owlim-discussion _______________________________________________ OWLIM-discussion mailing list [email protected] http://ontotext.com/mailman/listinfo/owlim-discussion
