be sure to check this too:
http://www.image.ece.ntua.gr/papers/684.pdf
+
http://image.ntua.gr/~achort/rapid.zip

If something significant comes out of your study, it would be really nice
to publish/blog/discuss it.


On Thu, May 23, 2013 at 1:31 PM, Bahador(reza)? OFOGHI
<[email protected]>wrote:

> Thanks so much Olivier, I need to go and experiment with these. will let
> you and others know what works best for this problem.
>
> BO
>
> Bahador(reza)? OFOGHI, PhD
> Major: Information Technology
>
>
>
> ________________________________
> From: Olivier Rossel <[email protected]>
> To: [email protected]; Bahador(reza)? OFOGHI <[email protected]>
> Sent: Thursday, 23 May 2013 8:05 PM
> Subject: Re: Owl Ontology and TDB Individuals
>
>
> While browsing the net, I just read that REQUIEM is an attempt by the OWL2
> gurus to develop a query rewriter.
> http://www.cs.ox.ac.uk/isg/tools/Requiem/
>
> Sounds uber cool.
> I would definitely appreciate any feedback about that tool.
>
>
> On Thu, May 23, 2013 at 10:45 AM, Olivier Rossel
> <[email protected]>wrote:
>
> > in that case, you need some inference at one time or another.
> > two strategies:
> >  Strat 1: materialize the infered triples[1], inject in the DB, and then
> > query with the regular SPARQL engine (:ok for very small datasets, and
> > slow-changing data). for reasonably big data, you can use the OWL2-RL
> > subset of OWL2. as far as i know, an implementation of OWL2-RL exists
> with
> > drools, and you can play with it in protege or eulerGUI.
> >  Strat 2: rewrite the query according to the data structure and run on
> > your existing dataset (:the current trade off for big data on top of
> OWL).
> > for that, you must use  the OWL2-QL subset of OWL2. DBs such as stardog
> or
> > OWLIM handle such query rewriting, i do not know if fuseki has such a
> query
> > rewriter.
> >
> > as far as i understand, this is the global picture of OWL2+RDF.
> > i let the local gurus correct the above statements.
> >
> >
> > [1]: in our example, one infered tripe would be :DATA rdf:type :C
> >
> >
> > On Thu, May 23, 2013 at 1:53 AM, Bahador(reza)? OFOGHI <
> > [email protected]> wrote:
> >
> >> Yes, I would like to retrieve :DATA since in myOntology, there is this
> >> subClassOf relationship that can be traveresed by the reasoner.
> >>
> >> thanks.
> >> BO
> >>
> >>
> >> ________________________________
> >>  From: Olivier Rossel <[email protected]>
> >> To: [email protected]; Bahador(reza)? OFOGHI <[email protected]>
> >> Sent: Wednesday, 22 May 2013 6:54 PM
> >> Subject: Re: Owl Ontology and TDB Individuals
> >>
> >>
> >> Let's take an example to clarify.
> >>
> >> myOntology.owl:
> >> :SC rdfs:subClassOf :C
> >>
> >> myData.rdf:
> >> :DATA rdf:type :SC
> >>
> >> You want to retrieve all resources of type :C
> >> So you craft a SPARQL query for that:
> >> SELECT * WHERE {?s rdf:type :C}
> >>
> >> Do you expect such a query to return :DATA, or not?
> >>
> >>
> >> On Wed, May 22, 2013 at 12:47 AM, Bahador(reza)? OFOGHI <
> >> [email protected]
> >> > wrote:
> >>
> >> > Inference would be on concepts and based on the relationships between
> >> > them. Data will then be fecthed accordingly since they are instances
> of
> >> the
> >> > concepts, isn't it? I am not aware of whether it is generally possible
> >> to
> >> > do inference on data.
> >> >
> >> >
> >> > Bahador(reza)? OFOGHI, PhD
> >> > Major: Information Technology
> >> >
> >> >
> >> >
> >> > ________________________________
> >> >  From: Olivier Rossel <[email protected]>
> >> > To: [email protected]; Bahador(reza)? OFOGHI <[email protected]
> >
> >> > Sent: Tuesday, 21 May 2013 10:16 PM
> >> > Subject: Re: Owl Ontology and TDB Individuals
> >> >
> >> >
> >> > Is it inference on data themselves? Or on concepts only?
> >> >
> >> >
> >> > On Tue, May 21, 2013 at 11:54 AM, Bahador(reza)? OFOGHI <
> >> > [email protected]
> >> > > wrote:
> >> >
> >> > > Thanks Olivier,
> >> > >
> >> > > In fact, I do need to make use of inference in the OWL ontology.
> This
> >> is
> >> > a
> >> > > big ontology (being merged with some other ontologies) only one part
> >> of
> >> > > which is the names I have described. In this case, would you/anyone
> >> else
> >> > > have any ideas how I might be able to get this done.
> >> > >
> >> > > thanks again
> >> > > Bahador
> >> > >
> >> > >
> >> > >
> >> > > ________________________________
> >> > > From: Olivier Rossel <[email protected]>
> >> > > To: [email protected]; Bahador(reza)? OFOGHI <
> [email protected]
> >> >
> >> > > Sent: Tuesday, 21 May 2013 7:42 PM
> >> > > Subject: Re: Owl Ontology and TDB Individuals
> >> > >
> >> > >
> >> > > Basically, you do not have to load both the OWL and the RDF in the
> DB.
> >> > > Such a RDF:
> >> > > :nameNumberOne a :NAME.
> >> > > :nameNumberOne :has_a :namePartNumberOne .
> >> > > :nameNumberOne :has_a :namePartNumberTwo .
> >> > >
> >> > > will load just fine in Fuseki.
> >> > > You can then query it without having to load the OWL in the DB.
> >> > > (RDF databases are mostly schemaless).
> >> > >
> >> > > The OWL is here just to be understood by the domain expert who
> >> > > creates the query.
> >> > >
> >> > > (Note: in an inference-aware DB, it *is* interesting to load both
> the
> >> OWL
> >> > > and the RDF together, but I do not think you have the need for
> >> > inference).
> >> > >
> >> > >
> >> > > On Tue, May 21, 2013 at 3:22 AM, Bahador(reza)? OFOGHI
> >> > > <[email protected]>wrote:
> >> > >
> >> > > > THanks Andy and David,
> >> > > >
> >> > > > I have now looked at this and I still have questions!
> >> > > >
> >> > > > 1- when you say transactions will not work across a mixture of
> >> graphs
> >> > in
> >> > > a
> >> > > > dataset, does that mean that I will not be able to query and/or
> use
> >> > > > reasoners on this dataset?
> >> > > > 2- if not, then what would be the best solution to keep an RDF/XML
> >> > > > ontology which will have thousands of individuals? I would have
> >> > thought I
> >> > > > could create the structure ontology (the OWL file) and keep it
> >> separate
> >> > > > from the data file (as in TDB) that will be assigned to the OWL
> >> > ontology
> >> > > > nodes. I am new to this field and I appreciate any hints.
> >> > > >
> >> > > > To make it more clear or refresh your memory, here is the problem
> I
> >> am
> >> > > > trying to solve:
> >> > > >
> >> > > > I have created an ontology in OWL somewhere in which I have a node
> >> > named
> >> > > > NAME which includes subparts of the name in NAME_PART1, ...,
> >> > NAME_PARTn.
> >> > > I
> >> > > > have a large CSV data file that has (many) records of names and
> the
> >> n
> >> > > name
> >> > > > parts. I will have to convert the CSV file into an RDF dataset
> >> (which I
> >> > > > will find a way for, should not be too complicated). Then, I need
> to
> >> > > make a
> >> > > > connection between the RDF dataset of these records and the OWL
> >> > ontology
> >> > > > that keeps the relationships between the concept nodes, e.g., NAME
> >> > has_a
> >> > > > NAME_PART1.
> >> > > >
> >> > > > Given that I have the two OWL and RDF files ready, what would I
> >> have to
> >> > > do
> >> > > > next to be able to query over the NAMEs and NAME_PARTs. What does
> it
> >> > take
> >> > > > to glue the two files?
> >> > > >
> >> > > > kind regards,
> >> > > > Bahador
> >> > > >
> >> > > >
> >> > > >
> >> > > > ________________________________
> >> > > >  From: David Jordan <[email protected]>
> >> > > > To: "[email protected]" <[email protected]>
> >> > > > Sent: Thursday, 16 May 2013 5:13 AM
> >> > > > Subject: RE: Owl Ontology and TDB Individuals
> >> > > >
> >> > > >
> >> > > > OK, now with your clarification it makes sense to me and is what I
> >> > > > expected.
> >> > > >
> >> > > >
> >> > > > -----Original Message-----
> >> > > > From: Andy Seaborne [mailto:[email protected]]
> >> > > > Sent: Wednesday, May 15, 2013 3:03 PM
> >> > > > To: [email protected]
> >> > > > Subject: Re: Owl Ontology and TDB Individuals
> >> > > >
> >> > > > On 15/05/13 18:47, David Jordan wrote:
> >> > > > > Andy, Please clarify something. In this reply, you state * Put
> the
> >> > > > > ontology in one named graph and the individuals in another one,
> or
> >> > the
> >> > > > > default graph, and hence in the same database? * You can put a
> >> single
> >> > > > > graph from TDB into a general dataset or just work with that one
> >> > graph
> >> > > > > (transactions will not work across a mixture of graphs in a
> >> dataset).
> >> > > > >
> >> > > > > You then reference the online docs that state: It is possible to
> >> use
> >> > > > > just one of the graphs from the dataset. A common way of working
> >> with
> >> > > > > one graph is to use the default graph of the dataset.
> >> > > >
> >> > > >
> >> > > >          Dataset dataset = DatasetFactory.createMem() ;
> >> > > >          Dataset tdb = TDBFactory.createDataset() ;
> >> > > >
> >> > > >    // Pick one graph/model out of the dataset.
> >> > > >          Model m1 = tdb.getNamedModel("http://example/tdb/graph";)
> ;
> >> > > >          dataset.addNamedModel("http://example/individuals";, m1)
> ;
> >> > > >
> >> > > >    // A model with completely different storage
> >> > > >          Model m2 = ModelFactory.createDefaultModel() ;
> >> > > >          dataset.addNamedModel("http://example/ontology";, m2) ;
> >> > > >
> >> > > > ... a dataset with a mix of model storage implementations.
> >> > > >
> >> > > > >
> >> > > > > My code uses the interface com.hp.hpl.jena.query.Dataset. It
> >> allows
> >> > me
> >> > > > > to start/stop transactions and to access named models. I can
> >> access
> >> > > > > multiple named models. Isn't a model a graph in the database?
> >> > > > > Isn't a graph == model == graph ? You say that "transactions
> will
> >> not
> >> > > > > work across a mixture of graphs in a dataset". So a given
> >> > > > > com.hp.hpl.jena.query.Dataset object, while it can return
> multiple
> >> > > > > named Models, you cannot use them in the same transaction?
> >> > > >
> >> > > > then
> >> > > >
> >> > > >          dataset.begin(ReadWrite.READ) ;
> >> > > >
> >> > > > ==> exception. "Transactions not supported"
> >> > > >
> >> > > > > When you said "a general dataset", are you referring to the
> >> default
> >> > > > > model/graph, which is stored in a triple table in SDB and
> >> essentially
> >> > > > > is using the single default graph managed by TDB/SDB?
> >> > > >
> >> > > > The kind of dataset returned by DatasetFactory.createMem()
> >> > > >
> >> > > > > Some of the wording used, both in the documentation and in your
> >> > reply,
> >> > > > > seem vague to me, with multiple interpretations. I don't believe
> >> the
> >> > > > > single sentence "It is possible to use just one of the graphs
> from
> >> > the
> >> > > > > dataset." is true.
> >> > > >
> >> > > > Could you suggest improvements?
> >> > > >
> >> > > >    Andy
> >> > > >
> >> > >
> >> >
> >>
> >
> >
>

Reply via email to