You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@jena.apache.org by Özgür EROĞLU <oe...@gmail.com> on 2013/10/15 21:05:34 UTC
Fuseki with inference and TDB using LUBM test data
Hi all,
I am trying to configure Fuseki with inference and TDB and using a LUBM
generated data for testing. I have searched for similar configurations
(one of which is here) and read the documentation for Fuseki configuration .
Following is my Fuseki configuration :
#------------------------------------------------------------------------------------------------------
# Licensed under the terms of http://www.apache.org/licenses/LICENSE-2.0
@prefix : <#> .
@prefix fuseki: <http://jena.apache.org/fuseki#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix tdb: <http://jena.hpl.hp.com/2008/tdb#> .
@prefix ja: <http://jena.hpl.hp.com/2005/11/Assembler#> .
[] rdf:type fuseki:Server ;
fuseki:services (
<#service1>
) .
# Custom code.
[] ja:loadClass "com.hp.hpl.jena.tdb.TDB" .
# TDB
tdb:DatasetTDB rdfs:subClassOf ja:RDFDataset .
tdb:GraphTDB rdfs:subClassOf ja:Model .
## ---------------------------------------------------------------
## Service with only SPARQL query on an inference model.
## Inference model bbase data in TDB.
<#service1> rdf:type fuseki:Service ;
fuseki:name "ds" ; # http://host/inf
fuseki:serviceQuery "sparql" ; # SPARQL query service
fuseki:serviceUpdate "update" ;
fuseki:serviceQuery "query" ;
fuseki:serviceUpload "upload" ;
fuseki:serviceReadWriteGraphStore "data" ;
fuseki:serviceReadGraphStore "get" ;
fuseki:dataset <#dataset> ;
.
<#dataset> rdf:type ja:RDFDataset ;
ja:defaultGraph <#model_inf> ;
.
<#model_inf> a ja:InfModel ;
ja:baseModel <#tdbGraph> ;
ja:reasoner [
ja:reasonerURL <http://jena.hpl.hp.com/2003/OWLFBRuleReasoner>;
]
.
<#tdbDataset> rdf:type tdb:DatasetTDB ;
tdb:location "/tdb/" ;
.
<#tdbGraph> rdf:type tdb:GraphTDB ;
tdb:dataset <#tdbDataset>
.
#------------------------------------------------------------------------------------------------------
I load a dataset which was generated with LUBM data generator. The
generator is UBA1.7 and the ontology is an owl file named Univ-Bench.
My problem here is that when I run a sparql query that requires
inference, I get no result. For example, although the data includes
triples like
#------------------------------------------------------------------------------------------------------
<http://www.Department14.University0.edu/ResearchGroup0>
<http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
<http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#ResearchGroup> .
<http://www.Department14.University0.edu/ResearchGroup0>
<http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#subOrganizationOf>
<http://www.Department14.University0.edu> .
<http://www.Department14.University0.edu>
<http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#subOrganizationOf>
<http://www.University0.edu> .
#------------------------------------------------------------------------------------------------------
when I run the following sparql query, I get no result(empty resultset).
#------------------------------------------------------------------------------------------------------
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX ub: <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#>
SELECT ?X
WHERE
{?X rdf:type ub:ResearchGroup .
?X ub:subOrganizationOf <http://www.University0.edu>}
#------------------------------------------------------------------------------------------------------
I think Fuseki somehow should know about the ontology (univ-bench). Also
I am not sure whether my Fuseki configuration is ok or not for inference
(e.g. if my reasoner is the right one).
Could someone explain what I am missing here and why I could not get
correct results?
Regards,
Özgür Eroğlu
Re: Fuseki with inference and TDB using LUBM test data
Posted by Özgür EROĞLU <oe...@gmail.com>.
In fact, I still have that prefixin my query, I just forgot to write it
while adding
SELECT *
{ ub:subOrganizationOf ?p ?o }
to my last post. So I was meaning that after loading the ontology I did
not get any results to
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX ub: <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#>
SELECT *
{ ub:subOrganizationOf ?p ?o }
If I load the ontology to TDB with data, then do I have to add ja:schema
part also?
If not why do we need ja:schema line?
Özgür Eroğlu
On 10/17/2013 12:08 AM, Andy Seaborne wrote:
> On 16/10/13 18:26, Özgür EROĞLU wrote:
>> I have removed the TDB and reloaded it first with ontology. I think, at
>> his point, before installing the generated data I should see some
>> results to
>>
>> SELECT *
>> { ub:subOrganizationOf ?p ?o }
>>
>> as in the ontology I have the following triples
>>
>> <http://swat.cse.lehigh.edu/onto/univ-bench.owl#subOrganizationOf>
>
> In your query example in your first message you had:
>
> PREFIX ub: <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#>
>
> so ub:subOrganizationOf is a different URI.
>
> Andy
>
>> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
>> <http://www.w3.org/2002/07/owl#TransitiveProperty> .
>> <http://swat.cse.lehigh.edu/onto/univ-bench.owl#subOrganizationOf>
>> <http://www.w3.org/2000/01/rdf-schema#label> "is part of" .
>> <http://swat.cse.lehigh.edu/onto/univ-bench.owl#subOrganizationOf>
>> <http://www.w3.org/2000/01/rdf-schema#domain>
>> <http://swat.cse.lehigh.edu/onto/univ-bench.owl#Organization> .
>> <http://swat.cse.lehigh.edu/onto/univ-bench.owl#subOrganizationOf>
>> <http://www.w3.org/2000/01/rdf-schema#range>
>> <http://swat.cse.lehigh.edu/onto/univ-bench.owl#Organization> .
>>
>> but I get no results. So I do not understand why this is happening.
>> Should not I see the predicates and objects of the above triples?
>>
>> I am trying to load it with the command
>>
>> s-put http://localhost:3030/ds/data default /JenaTest/ont/univ-bench.nt
>>
>> After this command I load the generated data with again s-put
>>
>> s-put http://localhost:3030/ds/data default /JenaTest/data/all.nt
>>
>> Now I get results both to
>>
>> SELECT *
>> { ub:subOrganizationOf ?p ?o }
>>
>> and
>>
>> SELECT *
>> {?X rdf:type ub:ResearchGroup .
>> ?X ub:subOrganizationOf* <http://www.University0.edu>}
>>
>> But still no results if I use ?X ub:subOrganizationOf
>> <http://www.University0.edu> insted of ?X ub:subOrganizationOf*
>> <http://www.University0.edu>
>>
>>
>>
>>
>> On 10/16/2013 05:51 PM, Andy Seaborne wrote:
>>> On 16/10/13 13:37, Özgür EROĞLU wrote:
>>>> Hi,
>>>>
>>>> Yes, when I run queries that does not require inference, I get
>>>> results.
>>>>
>>>> I think my problem is related to your second question. How can I load
>>>> the ontology into TDB? I load the generated lubm data with s-put,
>>>> should
>>>> I merge data and ontology before loading? At some of the
>>>> configurations
>>>> I have seen on web, there was a line which was smt. like "ja:scheme
>>>> <#sch>" in the fuseki inf-model section of the configuration. Is that
>>>> related?
>>>
>>> Yes.
>>>
>>>>
>>>> SELECT *
>>>> {?X rdf:type ub:ResearchGroup .
>>>> ?X ub:subOrganizationOf* <http://www.University0.edu>}
>>>>
>>>> returns nothing,
>>>
>>> that query imitates transitivity of ub:subOrganizationOf. If it
>>> returns nothing then maybe there is something else going on, not
>>> inference related. You seem to have some inference judging by thw
>>> results below.
>>>
>>> Break the query up into parts, like
>>>
>>> SELECT * {?X rdf:type ub:ResearchGroup .} LIMIT 10
>>>
>>> SELECT * { ?X ub:subOrganizationOf <http://www.University0.edu>}
>>> LIMIT 10
>>>
>>>
>>>
>>>> but
>>>>
>>>> SELECT *
>>>> { ub:subOrganizationOf ?p ?o }
>>>>
>>>> returns
>>>>
>>>> ----------------------------------------------------------------------------------------------------------
>>>>
>>>>
>>>>
>>>> | p |
>>>> o |
>>>> ==========================================================================================================
>>>>
>>>>
>>>>
>>>> | rdf:type |
>>>> rdf:Property |
>>>> | rdf:type |
>>>> <http://www.w3.org/2000/01/rdf-schema#Resource> |
>>>> | <http://www.w3.org/2000/01/rdf-schema#subPropertyOf> |
>>>> ub:subOrganizationOf |
>>>> ----------------------------------------------------------------------------------------------------------
>>>>
>>>>
>>>>
>>>
>>> ub:subOrganizationOf isn't declared to be transitive
>>>
>>>
>>>>
>>>>
>>>>
>>>> Özgür Eroğlu
>>>>
>>>>
>>>> On 10/16/2013 03:08 PM, Andy Seaborne wrote:
>>>>> Hi there,
>>>>>
>>>>> When you run a query that does not require inferenc, do you get any
>>>>> results?
>>>>>
>>>>> Is the ontology loaded into the TDB store?
>>>>>
>>>>> Does this query return anything:
>>>>>
>>>>> SELECT *
>>>>> {?X rdf:type ub:ResearchGroup .
>>>>> ?X ub:subOrganizationOf* <http://www.University0.edu>}
>>>>>
>>>>> and this one:
>>>>>
>>>>> SELECT *
>>>>> { ub:subOrganizationOf ?p ?o }
>>>>>
>>>>> Andy
>>>>>
>>>>>
>>>>>
>>>>> On 15/10/13 20:05, Özgür EROĞLU wrote:
>>>>>> Hi all,
>>>>>>
>>>>>> I am trying to configure Fuseki with inference and TDB and using a
>>>>>> LUBM
>>>>>> generated data for testing. I have searched for similar
>>>>>> configurations
>>>>>> (one of which is here) and read the documentation for Fuseki
>>>>>> configuration .
>>>>>>
>>>>>> Following is my Fuseki configuration :
>>>>>>
>>>>>> #------------------------------------------------------------------------------------------------------
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> # Licensed under the terms of
>>>>>> http://www.apache.org/licenses/LICENSE-2.0
>>>>>>
>>>>>> @prefix : <#> .
>>>>>> @prefix fuseki: <http://jena.apache.org/fuseki#> .
>>>>>> @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
>>>>>>
>>>>>> @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
>>>>>> @prefix tdb: <http://jena.hpl.hp.com/2008/tdb#> .
>>>>>> @prefix ja: <http://jena.hpl.hp.com/2005/11/Assembler#> .
>>>>>>
>>>>>> [] rdf:type fuseki:Server ;
>>>>>> fuseki:services (
>>>>>> <#service1>
>>>>>> ) .
>>>>>>
>>>>>> # Custom code.
>>>>>> [] ja:loadClass "com.hp.hpl.jena.tdb.TDB" .LUBM
>>>>>
>>>>>>
>>>>>> # TDB
>>>>>> tdb:DatasetTDB rdfs:subClassOf ja:RDFDataset .
>>>>>> tdb:GraphTDB rdfs:subClassOf ja:Model .
>>>>>>
>>>>>> ## ---------------------------------------------------------------
>>>>>> ## Service with only SPARQL query on an inference model.
>>>>>> ## Inference model bbase data in TDB.
>>>>>>
>>>>>> <#service1> rdf:type fuseki:Service ;
>>>>>> fuseki:name "ds" ; # http://host/inf
>>>>>> fuseki:serviceQuery "sparql" ; # SPARQL query
>>>>>> service
>>>>>> fuseki:serviceUpdate "update" ;
>>>>>> fuseki:serviceQuery "query" ;
>>>>>> fuseki:serviceUpload "upload" ;
>>>>>> fuseki:serviceReadWriteGraphStore "data" ;
>>>>>> fuseki:serviceReadGraphStore "get" ;
>>>>>> fuseki:dataset <#dataset> ;
>>>>>> .
>>>>>>
>>>>>> <#dataset> rdf:type ja:RDFDataset ;
>>>>>> ja:defaultGraph <#model_inf> ;
>>>>>> .
>>>>>>
>>>>>> <#model_inf> a ja:InfModel ;
>>>>>> ja:baseModel <#tdbGraph> ;
>>>>>> ja:reasoner [
>>>>>> ja:reasonerURL
>>>>>> <http://jena.hpl.hp.com/2003/OWLFBRuleReasoner>;
>>>>>> ]
>>>>>> .
>>>>>>
>>>>>> <#tdbDataset> rdf:type tdb:DatasetTDB ;
>>>>>> tdb:location "/tdb/" ;
>>>>>> .
>>>>>>
>>>>>> <#tdbGraph> rdf:type tdb:GraphTDB ;
>>>>>> tdb:dataset <#tdbDataset>
>>>>>> .
>>>>>> #------------------------------------------------------------------------------------------------------
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> I load a dataset which was generated with LUBM data generator. The
>>>>>> generator is UBA1.7 and the ontology is an owl file named
>>>>>> Univ-Bench.
>>>>>> My problem here is that when I run a sparql query that requires
>>>>>> inference, I get no result. For example, although the data includes
>>>>>> triples like
>>>>>>
>>>>>> #------------------------------------------------------------------------------------------------------
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> <http://www.Department14.University0.edu/ResearchGroup0>
>>>>>> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
>>>>>> <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#ResearchGroup>
>>>>>> .
>>>>>> <http://www.Department14.University0.edu/ResearchGroup0>
>>>>>> <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#subOrganizationOf>
>>>>>>
>>>>>>
>>>>>> <http://www.Department14.University0.edu> .
>>>>>> <http://www.Department14.University0.edu>
>>>>>> <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#subOrganizationOf>
>>>>>>
>>>>>>
>>>>>> <http://www.University0.edu> .
>>>>>> #------------------------------------------------------------------------------------------------------
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> when I run the following sparql query, I get no result(empty
>>>>>> resultset).
>>>>>>
>>>>>> #------------------------------------------------------------------------------------------------------
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
>>>>>> PREFIX ub: <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#>
>>>>>> SELECT ?X
>>>>>> WHERE
>>>>>> {?X rdf:type ub:ResearchGroup .
>>>>>> ?X ub:subOrganizationOf <http://www.University0.edu>}
>>>>>> #------------------------------------------------------------------------------------------------------
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> I think Fuseki somehow should know about the ontology (univ-bench).
>>>>>> Also
>>>>>> I am not sure whether my Fuseki configuration is ok or not for
>>>>>> inference
>>>>>> (e.g. if my reasoner is the right one).
>>>>>>
>>>>>> Could someone explain what I am missing here and why I could not get
>>>>>> correct results?
>>>>>>
>>>>>>
>>>>>> Regards,
>>>>>>
>>>>>> Özgür Eroğlu
>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>
Re: Fuseki with inference and TDB using LUBM test data
Posted by Özgür EROĞLU <oe...@gmail.com>.
Ok I have found the reason for the problem. There seems to be two
different URI for lubm univ-bench.owl from the LUBM site. The one that
is used in the ontology file is
http://swat.cse.lehigh.edu/onto/univ-bench.owl, while the one I had used
to generate data and that is used as prefix in test queries is
http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl.
That makes it imposible to query just ontology properties after
loading it. Changing all to same URI and reloading corrected ontology
solved all.
Thank you very much,
Özgür Eroğlu
On 10/17/2013 12:08 AM, Andy Seaborne wrote:
> On 16/10/13 18:26, Özgür EROĞLU wrote:
>> I have removed the TDB and reloaded it first with ontology. I think, at
>> his point, before installing the generated data I should see some
>> results to
>>
>> SELECT *
>> { ub:subOrganizationOf ?p ?o }
>>
>> as in the ontology I have the following triples
>>
>> <http://swat.cse.lehigh.edu/onto/univ-bench.owl#subOrganizationOf>
>
> In your query example in your first message you had:
>
> PREFIX ub: <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#>
>
> so ub:subOrganizationOf is a different URI.
>
> Andy
>
>> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
>> <http://www.w3.org/2002/07/owl#TransitiveProperty> .
>> <http://swat.cse.lehigh.edu/onto/univ-bench.owl#subOrganizationOf>
>> <http://www.w3.org/2000/01/rdf-schema#label> "is part of" .
>> <http://swat.cse.lehigh.edu/onto/univ-bench.owl#subOrganizationOf>
>> <http://www.w3.org/2000/01/rdf-schema#domain>
>> <http://swat.cse.lehigh.edu/onto/univ-bench.owl#Organization> .
>> <http://swat.cse.lehigh.edu/onto/univ-bench.owl#subOrganizationOf>
>> <http://www.w3.org/2000/01/rdf-schema#range>
>> <http://swat.cse.lehigh.edu/onto/univ-bench.owl#Organization> .
>>
>> but I get no results. So I do not understand why this is happening.
>> Should not I see the predicates and objects of the above triples?
>>
>> I am trying to load it with the command
>>
>> s-put http://localhost:3030/ds/data default /JenaTest/ont/univ-bench.nt
>>
>> After this command I load the generated data with again s-put
>>
>> s-put http://localhost:3030/ds/data default /JenaTest/data/all.nt
>>
>> Now I get results both to
>>
>> SELECT *
>> { ub:subOrganizationOf ?p ?o }
>>
>> and
>>
>> SELECT *
>> {?X rdf:type ub:ResearchGroup .
>> ?X ub:subOrganizationOf* <http://www.University0.edu>}
>>
>> But still no results if I use ?X ub:subOrganizationOf
>> <http://www.University0.edu> insted of ?X ub:subOrganizationOf*
>> <http://www.University0.edu>
>>
>>
>>
>>
>> On 10/16/2013 05:51 PM, Andy Seaborne wrote:
>>> On 16/10/13 13:37, Özgür EROĞLU wrote:
>>>> Hi,
>>>>
>>>> Yes, when I run queries that does not require inference, I get
>>>> results.
>>>>
>>>> I think my problem is related to your second question. How can I load
>>>> the ontology into TDB? I load the generated lubm data with s-put,
>>>> should
>>>> I merge data and ontology before loading? At some of the
>>>> configurations
>>>> I have seen on web, there was a line which was smt. like "ja:scheme
>>>> <#sch>" in the fuseki inf-model section of the configuration. Is that
>>>> related?
>>>
>>> Yes.
>>>
>>>>
>>>> SELECT *
>>>> {?X rdf:type ub:ResearchGroup .
>>>> ?X ub:subOrganizationOf* <http://www.University0.edu>}
>>>>
>>>> returns nothing,
>>>
>>> that query imitates transitivity of ub:subOrganizationOf. If it
>>> returns nothing then maybe there is something else going on, not
>>> inference related. You seem to have some inference judging by thw
>>> results below.
>>>
>>> Break the query up into parts, like
>>>
>>> SELECT * {?X rdf:type ub:ResearchGroup .} LIMIT 10
>>>
>>> SELECT * { ?X ub:subOrganizationOf <http://www.University0.edu>}
>>> LIMIT 10
>>>
>>>
>>>
>>>> but
>>>>
>>>> SELECT *
>>>> { ub:subOrganizationOf ?p ?o }
>>>>
>>>> returns
>>>>
>>>> ----------------------------------------------------------------------------------------------------------
>>>>
>>>>
>>>>
>>>> | p |
>>>> o |
>>>> ==========================================================================================================
>>>>
>>>>
>>>>
>>>> | rdf:type |
>>>> rdf:Property |
>>>> | rdf:type |
>>>> <http://www.w3.org/2000/01/rdf-schema#Resource> |
>>>> | <http://www.w3.org/2000/01/rdf-schema#subPropertyOf> |
>>>> ub:subOrganizationOf |
>>>> ----------------------------------------------------------------------------------------------------------
>>>>
>>>>
>>>>
>>>
>>> ub:subOrganizationOf isn't declared to be transitive
>>>
>>>
>>>>
>>>>
>>>>
>>>> Özgür Eroğlu
>>>>
>>>>
>>>> On 10/16/2013 03:08 PM, Andy Seaborne wrote:
>>>>> Hi there,
>>>>>
>>>>> When you run a query that does not require inferenc, do you get any
>>>>> results?
>>>>>
>>>>> Is the ontology loaded into the TDB store?
>>>>>
>>>>> Does this query return anything:
>>>>>
>>>>> SELECT *
>>>>> {?X rdf:type ub:ResearchGroup .
>>>>> ?X ub:subOrganizationOf* <http://www.University0.edu>}
>>>>>
>>>>> and this one:
>>>>>
>>>>> SELECT *
>>>>> { ub:subOrganizationOf ?p ?o }
>>>>>
>>>>> Andy
>>>>>
>>>>>
>>>>>
>>>>> On 15/10/13 20:05, Özgür EROĞLU wrote:
>>>>>> Hi all,
>>>>>>
>>>>>> I am trying to configure Fuseki with inference and TDB and using a
>>>>>> LUBM
>>>>>> generated data for testing. I have searched for similar
>>>>>> configurations
>>>>>> (one of which is here) and read the documentation for Fuseki
>>>>>> configuration .
>>>>>>
>>>>>> Following is my Fuseki configuration :
>>>>>>
>>>>>> #------------------------------------------------------------------------------------------------------
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> # Licensed under the terms of
>>>>>> http://www.apache.org/licenses/LICENSE-2.0
>>>>>>
>>>>>> @prefix : <#> .
>>>>>> @prefix fuseki: <http://jena.apache.org/fuseki#> .
>>>>>> @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
>>>>>>
>>>>>> @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
>>>>>> @prefix tdb: <http://jena.hpl.hp.com/2008/tdb#> .
>>>>>> @prefix ja: <http://jena.hpl.hp.com/2005/11/Assembler#> .
>>>>>>
>>>>>> [] rdf:type fuseki:Server ;
>>>>>> fuseki:services (
>>>>>> <#service1>
>>>>>> ) .
>>>>>>
>>>>>> # Custom code.
>>>>>> [] ja:loadClass "com.hp.hpl.jena.tdb.TDB" .LUBM
>>>>>
>>>>>>
>>>>>> # TDB
>>>>>> tdb:DatasetTDB rdfs:subClassOf ja:RDFDataset .
>>>>>> tdb:GraphTDB rdfs:subClassOf ja:Model .
>>>>>>
>>>>>> ## ---------------------------------------------------------------
>>>>>> ## Service with only SPARQL query on an inference model.
>>>>>> ## Inference model bbase data in TDB.
>>>>>>
>>>>>> <#service1> rdf:type fuseki:Service ;
>>>>>> fuseki:name "ds" ; # http://host/inf
>>>>>> fuseki:serviceQuery "sparql" ; # SPARQL query
>>>>>> service
>>>>>> fuseki:serviceUpdate "update" ;
>>>>>> fuseki:serviceQuery "query" ;
>>>>>> fuseki:serviceUpload "upload" ;
>>>>>> fuseki:serviceReadWriteGraphStore "data" ;
>>>>>> fuseki:serviceReadGraphStore "get" ;
>>>>>> fuseki:dataset <#dataset> ;
>>>>>> .
>>>>>>
>>>>>> <#dataset> rdf:type ja:RDFDataset ;
>>>>>> ja:defaultGraph <#model_inf> ;
>>>>>> .
>>>>>>
>>>>>> <#model_inf> a ja:InfModel ;
>>>>>> ja:baseModel <#tdbGraph> ;
>>>>>> ja:reasoner [
>>>>>> ja:reasonerURL
>>>>>> <http://jena.hpl.hp.com/2003/OWLFBRuleReasoner>;
>>>>>> ]
>>>>>> .
>>>>>>
>>>>>> <#tdbDataset> rdf:type tdb:DatasetTDB ;
>>>>>> tdb:location "/tdb/" ;
>>>>>> .
>>>>>>
>>>>>> <#tdbGraph> rdf:type tdb:GraphTDB ;
>>>>>> tdb:dataset <#tdbDataset>
>>>>>> .
>>>>>> #------------------------------------------------------------------------------------------------------
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> I load a dataset which was generated with LUBM data generator. The
>>>>>> generator is UBA1.7 and the ontology is an owl file named
>>>>>> Univ-Bench.
>>>>>> My problem here is that when I run a sparql query that requires
>>>>>> inference, I get no result. For example, although the data includes
>>>>>> triples like
>>>>>>
>>>>>> #------------------------------------------------------------------------------------------------------
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> <http://www.Department14.University0.edu/ResearchGroup0>
>>>>>> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
>>>>>> <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#ResearchGroup>
>>>>>> .
>>>>>> <http://www.Department14.University0.edu/ResearchGroup0>
>>>>>> <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#subOrganizationOf>
>>>>>>
>>>>>>
>>>>>> <http://www.Department14.University0.edu> .
>>>>>> <http://www.Department14.University0.edu>
>>>>>> <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#subOrganizationOf>
>>>>>>
>>>>>>
>>>>>> <http://www.University0.edu> .
>>>>>> #------------------------------------------------------------------------------------------------------
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> when I run the following sparql query, I get no result(empty
>>>>>> resultset).
>>>>>>
>>>>>> #------------------------------------------------------------------------------------------------------
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
>>>>>> PREFIX ub: <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#>
>>>>>> SELECT ?X
>>>>>> WHERE
>>>>>> {?X rdf:type ub:ResearchGroup .
>>>>>> ?X ub:subOrganizationOf <http://www.University0.edu>}
>>>>>> #------------------------------------------------------------------------------------------------------
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> I think Fuseki somehow should know about the ontology (univ-bench).
>>>>>> Also
>>>>>> I am not sure whether my Fuseki configuration is ok or not for
>>>>>> inference
>>>>>> (e.g. if my reasoner is the right one).
>>>>>>
>>>>>> Could someone explain what I am missing here and why I could not get
>>>>>> correct results?
>>>>>>
>>>>>>
>>>>>> Regards,
>>>>>>
>>>>>> Özgür Eroğlu
>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>
Re: Fuseki with inference and TDB using LUBM test data
Posted by Andy Seaborne <an...@apache.org>.
On 16/10/13 18:26, Özgür EROĞLU wrote:
> I have removed the TDB and reloaded it first with ontology. I think, at
> his point, before installing the generated data I should see some
> results to
>
> SELECT *
> { ub:subOrganizationOf ?p ?o }
>
> as in the ontology I have the following triples
>
> <http://swat.cse.lehigh.edu/onto/univ-bench.owl#subOrganizationOf>
In your query example in your first message you had:
PREFIX ub: <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#>
so ub:subOrganizationOf is a different URI.
Andy
> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
> <http://www.w3.org/2002/07/owl#TransitiveProperty> .
> <http://swat.cse.lehigh.edu/onto/univ-bench.owl#subOrganizationOf>
> <http://www.w3.org/2000/01/rdf-schema#label> "is part of" .
> <http://swat.cse.lehigh.edu/onto/univ-bench.owl#subOrganizationOf>
> <http://www.w3.org/2000/01/rdf-schema#domain>
> <http://swat.cse.lehigh.edu/onto/univ-bench.owl#Organization> .
> <http://swat.cse.lehigh.edu/onto/univ-bench.owl#subOrganizationOf>
> <http://www.w3.org/2000/01/rdf-schema#range>
> <http://swat.cse.lehigh.edu/onto/univ-bench.owl#Organization> .
>
> but I get no results. So I do not understand why this is happening.
> Should not I see the predicates and objects of the above triples?
>
> I am trying to load it with the command
>
> s-put http://localhost:3030/ds/data default /JenaTest/ont/univ-bench.nt
>
> After this command I load the generated data with again s-put
>
> s-put http://localhost:3030/ds/data default /JenaTest/data/all.nt
>
> Now I get results both to
>
> SELECT *
> { ub:subOrganizationOf ?p ?o }
>
> and
>
> SELECT *
> {?X rdf:type ub:ResearchGroup .
> ?X ub:subOrganizationOf* <http://www.University0.edu>}
>
> But still no results if I use ?X ub:subOrganizationOf
> <http://www.University0.edu> insted of ?X ub:subOrganizationOf*
> <http://www.University0.edu>
>
>
>
>
> On 10/16/2013 05:51 PM, Andy Seaborne wrote:
>> On 16/10/13 13:37, Özgür EROĞLU wrote:
>>> Hi,
>>>
>>> Yes, when I run queries that does not require inference, I get results.
>>>
>>> I think my problem is related to your second question. How can I load
>>> the ontology into TDB? I load the generated lubm data with s-put, should
>>> I merge data and ontology before loading? At some of the configurations
>>> I have seen on web, there was a line which was smt. like "ja:scheme
>>> <#sch>" in the fuseki inf-model section of the configuration. Is that
>>> related?
>>
>> Yes.
>>
>>>
>>> SELECT *
>>> {?X rdf:type ub:ResearchGroup .
>>> ?X ub:subOrganizationOf* <http://www.University0.edu>}
>>>
>>> returns nothing,
>>
>> that query imitates transitivity of ub:subOrganizationOf. If it
>> returns nothing then maybe there is something else going on, not
>> inference related. You seem to have some inference judging by thw
>> results below.
>>
>> Break the query up into parts, like
>>
>> SELECT * {?X rdf:type ub:ResearchGroup .} LIMIT 10
>>
>> SELECT * { ?X ub:subOrganizationOf <http://www.University0.edu>} LIMIT 10
>>
>>
>>
>>> but
>>>
>>> SELECT *
>>> { ub:subOrganizationOf ?p ?o }
>>>
>>> returns
>>>
>>> ----------------------------------------------------------------------------------------------------------
>>>
>>>
>>> | p |
>>> o |
>>> ==========================================================================================================
>>>
>>>
>>> | rdf:type |
>>> rdf:Property |
>>> | rdf:type |
>>> <http://www.w3.org/2000/01/rdf-schema#Resource> |
>>> | <http://www.w3.org/2000/01/rdf-schema#subPropertyOf> |
>>> ub:subOrganizationOf |
>>> ----------------------------------------------------------------------------------------------------------
>>>
>>>
>>
>> ub:subOrganizationOf isn't declared to be transitive
>>
>>
>>>
>>>
>>>
>>> Özgür Eroğlu
>>>
>>>
>>> On 10/16/2013 03:08 PM, Andy Seaborne wrote:
>>>> Hi there,
>>>>
>>>> When you run a query that does not require inferenc, do you get any
>>>> results?
>>>>
>>>> Is the ontology loaded into the TDB store?
>>>>
>>>> Does this query return anything:
>>>>
>>>> SELECT *
>>>> {?X rdf:type ub:ResearchGroup .
>>>> ?X ub:subOrganizationOf* <http://www.University0.edu>}
>>>>
>>>> and this one:
>>>>
>>>> SELECT *
>>>> { ub:subOrganizationOf ?p ?o }
>>>>
>>>> Andy
>>>>
>>>>
>>>>
>>>> On 15/10/13 20:05, Özgür EROĞLU wrote:
>>>>> Hi all,
>>>>>
>>>>> I am trying to configure Fuseki with inference and TDB and using a
>>>>> LUBM
>>>>> generated data for testing. I have searched for similar configurations
>>>>> (one of which is here) and read the documentation for Fuseki
>>>>> configuration .
>>>>>
>>>>> Following is my Fuseki configuration :
>>>>>
>>>>> #------------------------------------------------------------------------------------------------------
>>>>>
>>>>>
>>>>>
>>>>> # Licensed under the terms of
>>>>> http://www.apache.org/licenses/LICENSE-2.0
>>>>>
>>>>> @prefix : <#> .
>>>>> @prefix fuseki: <http://jena.apache.org/fuseki#> .
>>>>> @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
>>>>>
>>>>> @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
>>>>> @prefix tdb: <http://jena.hpl.hp.com/2008/tdb#> .
>>>>> @prefix ja: <http://jena.hpl.hp.com/2005/11/Assembler#> .
>>>>>
>>>>> [] rdf:type fuseki:Server ;
>>>>> fuseki:services (
>>>>> <#service1>
>>>>> ) .
>>>>>
>>>>> # Custom code.
>>>>> [] ja:loadClass "com.hp.hpl.jena.tdb.TDB" .LUBM
>>>>
>>>>>
>>>>> # TDB
>>>>> tdb:DatasetTDB rdfs:subClassOf ja:RDFDataset .
>>>>> tdb:GraphTDB rdfs:subClassOf ja:Model .
>>>>>
>>>>> ## ---------------------------------------------------------------
>>>>> ## Service with only SPARQL query on an inference model.
>>>>> ## Inference model bbase data in TDB.
>>>>>
>>>>> <#service1> rdf:type fuseki:Service ;
>>>>> fuseki:name "ds" ; # http://host/inf
>>>>> fuseki:serviceQuery "sparql" ; # SPARQL query
>>>>> service
>>>>> fuseki:serviceUpdate "update" ;
>>>>> fuseki:serviceQuery "query" ;
>>>>> fuseki:serviceUpload "upload" ;
>>>>> fuseki:serviceReadWriteGraphStore "data" ;
>>>>> fuseki:serviceReadGraphStore "get" ;
>>>>> fuseki:dataset <#dataset> ;
>>>>> .
>>>>>
>>>>> <#dataset> rdf:type ja:RDFDataset ;
>>>>> ja:defaultGraph <#model_inf> ;
>>>>> .
>>>>>
>>>>> <#model_inf> a ja:InfModel ;
>>>>> ja:baseModel <#tdbGraph> ;
>>>>> ja:reasoner [
>>>>> ja:reasonerURL
>>>>> <http://jena.hpl.hp.com/2003/OWLFBRuleReasoner>;
>>>>> ]
>>>>> .
>>>>>
>>>>> <#tdbDataset> rdf:type tdb:DatasetTDB ;
>>>>> tdb:location "/tdb/" ;
>>>>> .
>>>>>
>>>>> <#tdbGraph> rdf:type tdb:GraphTDB ;
>>>>> tdb:dataset <#tdbDataset>
>>>>> .
>>>>> #------------------------------------------------------------------------------------------------------
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> I load a dataset which was generated with LUBM data generator. The
>>>>> generator is UBA1.7 and the ontology is an owl file named Univ-Bench.
>>>>> My problem here is that when I run a sparql query that requires
>>>>> inference, I get no result. For example, although the data includes
>>>>> triples like
>>>>>
>>>>> #------------------------------------------------------------------------------------------------------
>>>>>
>>>>>
>>>>>
>>>>> <http://www.Department14.University0.edu/ResearchGroup0>
>>>>> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
>>>>> <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#ResearchGroup> .
>>>>> <http://www.Department14.University0.edu/ResearchGroup0>
>>>>> <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#subOrganizationOf>
>>>>>
>>>>> <http://www.Department14.University0.edu> .
>>>>> <http://www.Department14.University0.edu>
>>>>> <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#subOrganizationOf>
>>>>>
>>>>> <http://www.University0.edu> .
>>>>> #------------------------------------------------------------------------------------------------------
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> when I run the following sparql query, I get no result(empty
>>>>> resultset).
>>>>>
>>>>> #------------------------------------------------------------------------------------------------------
>>>>>
>>>>>
>>>>>
>>>>> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
>>>>> PREFIX ub: <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#>
>>>>> SELECT ?X
>>>>> WHERE
>>>>> {?X rdf:type ub:ResearchGroup .
>>>>> ?X ub:subOrganizationOf <http://www.University0.edu>}
>>>>> #------------------------------------------------------------------------------------------------------
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> I think Fuseki somehow should know about the ontology (univ-bench).
>>>>> Also
>>>>> I am not sure whether my Fuseki configuration is ok or not for
>>>>> inference
>>>>> (e.g. if my reasoner is the right one).
>>>>>
>>>>> Could someone explain what I am missing here and why I could not get
>>>>> correct results?
>>>>>
>>>>>
>>>>> Regards,
>>>>>
>>>>> Özgür Eroğlu
>>>>>
>>>>>
>>>>
>>>
>>
>
Re: Fuseki with inference and TDB using LUBM test data
Posted by Özgür EROĞLU <oe...@gmail.com>.
I have removed the TDB and reloaded it first with ontology. I think, at
his point, before installing the generated data I should see some
results to
SELECT *
{ ub:subOrganizationOf ?p ?o }
as in the ontology I have the following triples
<http://swat.cse.lehigh.edu/onto/univ-bench.owl#subOrganizationOf>
<http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
<http://www.w3.org/2002/07/owl#TransitiveProperty> .
<http://swat.cse.lehigh.edu/onto/univ-bench.owl#subOrganizationOf>
<http://www.w3.org/2000/01/rdf-schema#label> "is part of" .
<http://swat.cse.lehigh.edu/onto/univ-bench.owl#subOrganizationOf>
<http://www.w3.org/2000/01/rdf-schema#domain>
<http://swat.cse.lehigh.edu/onto/univ-bench.owl#Organization> .
<http://swat.cse.lehigh.edu/onto/univ-bench.owl#subOrganizationOf>
<http://www.w3.org/2000/01/rdf-schema#range>
<http://swat.cse.lehigh.edu/onto/univ-bench.owl#Organization> .
but I get no results. So I do not understand why this is happening.
Should not I see the predicates and objects of the above triples?
I am trying to load it with the command
s-put http://localhost:3030/ds/data default /JenaTest/ont/univ-bench.nt
After this command I load the generated data with again s-put
s-put http://localhost:3030/ds/data default /JenaTest/data/all.nt
Now I get results both to
SELECT *
{ ub:subOrganizationOf ?p ?o }
and
SELECT *
{?X rdf:type ub:ResearchGroup .
?X ub:subOrganizationOf* <http://www.University0.edu>}
But still no results if I use ?X ub:subOrganizationOf
<http://www.University0.edu> insted of ?X ub:subOrganizationOf*
<http://www.University0.edu>
On 10/16/2013 05:51 PM, Andy Seaborne wrote:
> On 16/10/13 13:37, Özgür EROĞLU wrote:
>> Hi,
>>
>> Yes, when I run queries that does not require inference, I get results.
>>
>> I think my problem is related to your second question. How can I load
>> the ontology into TDB? I load the generated lubm data with s-put, should
>> I merge data and ontology before loading? At some of the configurations
>> I have seen on web, there was a line which was smt. like "ja:scheme
>> <#sch>" in the fuseki inf-model section of the configuration. Is that
>> related?
>
> Yes.
>
>>
>> SELECT *
>> {?X rdf:type ub:ResearchGroup .
>> ?X ub:subOrganizationOf* <http://www.University0.edu>}
>>
>> returns nothing,
>
> that query imitates transitivity of ub:subOrganizationOf. If it
> returns nothing then maybe there is something else going on, not
> inference related. You seem to have some inference judging by thw
> results below.
>
> Break the query up into parts, like
>
> SELECT * {?X rdf:type ub:ResearchGroup .} LIMIT 10
>
> SELECT * { ?X ub:subOrganizationOf <http://www.University0.edu>}
> LIMIT 10
>
>
>
>> but
>>
>> SELECT *
>> { ub:subOrganizationOf ?p ?o }
>>
>> returns
>>
>> ----------------------------------------------------------------------------------------------------------
>>
>>
>> | p |
>> o |
>> ==========================================================================================================
>>
>>
>> | rdf:type |
>> rdf:Property |
>> | rdf:type |
>> <http://www.w3.org/2000/01/rdf-schema#Resource> |
>> | <http://www.w3.org/2000/01/rdf-schema#subPropertyOf> |
>> ub:subOrganizationOf |
>> ----------------------------------------------------------------------------------------------------------
>>
>>
>
> ub:subOrganizationOf isn't declared to be transitive
>
>
>>
>>
>>
>> Özgür Eroğlu
>>
>>
>> On 10/16/2013 03:08 PM, Andy Seaborne wrote:
>>> Hi there,
>>>
>>> When you run a query that does not require inferenc, do you get any
>>> results?
>>>
>>> Is the ontology loaded into the TDB store?
>>>
>>> Does this query return anything:
>>>
>>> SELECT *
>>> {?X rdf:type ub:ResearchGroup .
>>> ?X ub:subOrganizationOf* <http://www.University0.edu>}
>>>
>>> and this one:
>>>
>>> SELECT *
>>> { ub:subOrganizationOf ?p ?o }
>>>
>>> Andy
>>>
>>>
>>>
>>> On 15/10/13 20:05, Özgür EROĞLU wrote:
>>>> Hi all,
>>>>
>>>> I am trying to configure Fuseki with inference and TDB and using a
>>>> LUBM
>>>> generated data for testing. I have searched for similar configurations
>>>> (one of which is here) and read the documentation for Fuseki
>>>> configuration .
>>>>
>>>> Following is my Fuseki configuration :
>>>>
>>>> #------------------------------------------------------------------------------------------------------
>>>>
>>>>
>>>>
>>>> # Licensed under the terms of
>>>> http://www.apache.org/licenses/LICENSE-2.0
>>>>
>>>> @prefix : <#> .
>>>> @prefix fuseki: <http://jena.apache.org/fuseki#> .
>>>> @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
>>>>
>>>> @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
>>>> @prefix tdb: <http://jena.hpl.hp.com/2008/tdb#> .
>>>> @prefix ja: <http://jena.hpl.hp.com/2005/11/Assembler#> .
>>>>
>>>> [] rdf:type fuseki:Server ;
>>>> fuseki:services (
>>>> <#service1>
>>>> ) .
>>>>
>>>> # Custom code.
>>>> [] ja:loadClass "com.hp.hpl.jena.tdb.TDB" .LUBM
>>>
>>>>
>>>> # TDB
>>>> tdb:DatasetTDB rdfs:subClassOf ja:RDFDataset .
>>>> tdb:GraphTDB rdfs:subClassOf ja:Model .
>>>>
>>>> ## ---------------------------------------------------------------
>>>> ## Service with only SPARQL query on an inference model.
>>>> ## Inference model bbase data in TDB.
>>>>
>>>> <#service1> rdf:type fuseki:Service ;
>>>> fuseki:name "ds" ; # http://host/inf
>>>> fuseki:serviceQuery "sparql" ; # SPARQL query
>>>> service
>>>> fuseki:serviceUpdate "update" ;
>>>> fuseki:serviceQuery "query" ;
>>>> fuseki:serviceUpload "upload" ;
>>>> fuseki:serviceReadWriteGraphStore "data" ;
>>>> fuseki:serviceReadGraphStore "get" ;
>>>> fuseki:dataset <#dataset> ;
>>>> .
>>>>
>>>> <#dataset> rdf:type ja:RDFDataset ;
>>>> ja:defaultGraph <#model_inf> ;
>>>> .
>>>>
>>>> <#model_inf> a ja:InfModel ;
>>>> ja:baseModel <#tdbGraph> ;
>>>> ja:reasoner [
>>>> ja:reasonerURL
>>>> <http://jena.hpl.hp.com/2003/OWLFBRuleReasoner>;
>>>> ]
>>>> .
>>>>
>>>> <#tdbDataset> rdf:type tdb:DatasetTDB ;
>>>> tdb:location "/tdb/" ;
>>>> .
>>>>
>>>> <#tdbGraph> rdf:type tdb:GraphTDB ;
>>>> tdb:dataset <#tdbDataset>
>>>> .
>>>> #------------------------------------------------------------------------------------------------------
>>>>
>>>>
>>>>
>>>>
>>>> I load a dataset which was generated with LUBM data generator. The
>>>> generator is UBA1.7 and the ontology is an owl file named Univ-Bench.
>>>> My problem here is that when I run a sparql query that requires
>>>> inference, I get no result. For example, although the data includes
>>>> triples like
>>>>
>>>> #------------------------------------------------------------------------------------------------------
>>>>
>>>>
>>>>
>>>> <http://www.Department14.University0.edu/ResearchGroup0>
>>>> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
>>>> <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#ResearchGroup> .
>>>> <http://www.Department14.University0.edu/ResearchGroup0>
>>>> <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#subOrganizationOf>
>>>>
>>>> <http://www.Department14.University0.edu> .
>>>> <http://www.Department14.University0.edu>
>>>> <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#subOrganizationOf>
>>>>
>>>> <http://www.University0.edu> .
>>>> #------------------------------------------------------------------------------------------------------
>>>>
>>>>
>>>>
>>>>
>>>> when I run the following sparql query, I get no result(empty
>>>> resultset).
>>>>
>>>> #------------------------------------------------------------------------------------------------------
>>>>
>>>>
>>>>
>>>> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
>>>> PREFIX ub: <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#>
>>>> SELECT ?X
>>>> WHERE
>>>> {?X rdf:type ub:ResearchGroup .
>>>> ?X ub:subOrganizationOf <http://www.University0.edu>}
>>>> #------------------------------------------------------------------------------------------------------
>>>>
>>>>
>>>>
>>>>
>>>> I think Fuseki somehow should know about the ontology (univ-bench).
>>>> Also
>>>> I am not sure whether my Fuseki configuration is ok or not for
>>>> inference
>>>> (e.g. if my reasoner is the right one).
>>>>
>>>> Could someone explain what I am missing here and why I could not get
>>>> correct results?
>>>>
>>>>
>>>> Regards,
>>>>
>>>> Özgür Eroğlu
>>>>
>>>>
>>>
>>
>
Re: Fuseki with inference and TDB using LUBM test data
Posted by Andy Seaborne <an...@apache.org>.
On 16/10/13 13:37, Özgür EROĞLU wrote:
> Hi,
>
> Yes, when I run queries that does not require inference, I get results.
>
> I think my problem is related to your second question. How can I load
> the ontology into TDB? I load the generated lubm data with s-put, should
> I merge data and ontology before loading? At some of the configurations
> I have seen on web, there was a line which was smt. like "ja:scheme
> <#sch>" in the fuseki inf-model section of the configuration. Is that
> related?
Yes.
>
> SELECT *
> {?X rdf:type ub:ResearchGroup .
> ?X ub:subOrganizationOf* <http://www.University0.edu>}
>
> returns nothing,
that query imitates transitivity of ub:subOrganizationOf. If it returns
nothing then maybe there is something else going on, not inference
related. You seem to have some inference judging by thw results below.
Break the query up into parts, like
SELECT * {?X rdf:type ub:ResearchGroup .} LIMIT 10
SELECT * { ?X ub:subOrganizationOf <http://www.University0.edu>} LIMIT 10
> but
>
> SELECT *
> { ub:subOrganizationOf ?p ?o }
>
> returns
>
> ----------------------------------------------------------------------------------------------------------
>
> | p |
> o |
> ==========================================================================================================
>
> | rdf:type |
> rdf:Property |
> | rdf:type |
> <http://www.w3.org/2000/01/rdf-schema#Resource> |
> | <http://www.w3.org/2000/01/rdf-schema#subPropertyOf> |
> ub:subOrganizationOf |
> ----------------------------------------------------------------------------------------------------------
>
ub:subOrganizationOf isn't declared to be transitive
>
>
>
> Özgür Eroğlu
>
>
> On 10/16/2013 03:08 PM, Andy Seaborne wrote:
>> Hi there,
>>
>> When you run a query that does not require inferenc, do you get any
>> results?
>>
>> Is the ontology loaded into the TDB store?
>>
>> Does this query return anything:
>>
>> SELECT *
>> {?X rdf:type ub:ResearchGroup .
>> ?X ub:subOrganizationOf* <http://www.University0.edu>}
>>
>> and this one:
>>
>> SELECT *
>> { ub:subOrganizationOf ?p ?o }
>>
>> Andy
>>
>>
>>
>> On 15/10/13 20:05, Özgür EROĞLU wrote:
>>> Hi all,
>>>
>>> I am trying to configure Fuseki with inference and TDB and using a LUBM
>>> generated data for testing. I have searched for similar configurations
>>> (one of which is here) and read the documentation for Fuseki
>>> configuration .
>>>
>>> Following is my Fuseki configuration :
>>>
>>> #------------------------------------------------------------------------------------------------------
>>>
>>>
>>> # Licensed under the terms of http://www.apache.org/licenses/LICENSE-2.0
>>>
>>> @prefix : <#> .
>>> @prefix fuseki: <http://jena.apache.org/fuseki#> .
>>> @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
>>>
>>> @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
>>> @prefix tdb: <http://jena.hpl.hp.com/2008/tdb#> .
>>> @prefix ja: <http://jena.hpl.hp.com/2005/11/Assembler#> .
>>>
>>> [] rdf:type fuseki:Server ;
>>> fuseki:services (
>>> <#service1>
>>> ) .
>>>
>>> # Custom code.
>>> [] ja:loadClass "com.hp.hpl.jena.tdb.TDB" .LUBM
>>
>>>
>>> # TDB
>>> tdb:DatasetTDB rdfs:subClassOf ja:RDFDataset .
>>> tdb:GraphTDB rdfs:subClassOf ja:Model .
>>>
>>> ## ---------------------------------------------------------------
>>> ## Service with only SPARQL query on an inference model.
>>> ## Inference model bbase data in TDB.
>>>
>>> <#service1> rdf:type fuseki:Service ;
>>> fuseki:name "ds" ; # http://host/inf
>>> fuseki:serviceQuery "sparql" ; # SPARQL query service
>>> fuseki:serviceUpdate "update" ;
>>> fuseki:serviceQuery "query" ;
>>> fuseki:serviceUpload "upload" ;
>>> fuseki:serviceReadWriteGraphStore "data" ;
>>> fuseki:serviceReadGraphStore "get" ;
>>> fuseki:dataset <#dataset> ;
>>> .
>>>
>>> <#dataset> rdf:type ja:RDFDataset ;
>>> ja:defaultGraph <#model_inf> ;
>>> .
>>>
>>> <#model_inf> a ja:InfModel ;
>>> ja:baseModel <#tdbGraph> ;
>>> ja:reasoner [
>>> ja:reasonerURL
>>> <http://jena.hpl.hp.com/2003/OWLFBRuleReasoner>;
>>> ]
>>> .
>>>
>>> <#tdbDataset> rdf:type tdb:DatasetTDB ;
>>> tdb:location "/tdb/" ;
>>> .
>>>
>>> <#tdbGraph> rdf:type tdb:GraphTDB ;
>>> tdb:dataset <#tdbDataset>
>>> .
>>> #------------------------------------------------------------------------------------------------------
>>>
>>>
>>>
>>> I load a dataset which was generated with LUBM data generator. The
>>> generator is UBA1.7 and the ontology is an owl file named Univ-Bench.
>>> My problem here is that when I run a sparql query that requires
>>> inference, I get no result. For example, although the data includes
>>> triples like
>>>
>>> #------------------------------------------------------------------------------------------------------
>>>
>>>
>>> <http://www.Department14.University0.edu/ResearchGroup0>
>>> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
>>> <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#ResearchGroup> .
>>> <http://www.Department14.University0.edu/ResearchGroup0>
>>> <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#subOrganizationOf>
>>> <http://www.Department14.University0.edu> .
>>> <http://www.Department14.University0.edu>
>>> <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#subOrganizationOf>
>>> <http://www.University0.edu> .
>>> #------------------------------------------------------------------------------------------------------
>>>
>>>
>>>
>>> when I run the following sparql query, I get no result(empty resultset).
>>>
>>> #------------------------------------------------------------------------------------------------------
>>>
>>>
>>> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
>>> PREFIX ub: <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#>
>>> SELECT ?X
>>> WHERE
>>> {?X rdf:type ub:ResearchGroup .
>>> ?X ub:subOrganizationOf <http://www.University0.edu>}
>>> #------------------------------------------------------------------------------------------------------
>>>
>>>
>>>
>>> I think Fuseki somehow should know about the ontology (univ-bench). Also
>>> I am not sure whether my Fuseki configuration is ok or not for inference
>>> (e.g. if my reasoner is the right one).
>>>
>>> Could someone explain what I am missing here and why I could not get
>>> correct results?
>>>
>>>
>>> Regards,
>>>
>>> Özgür Eroğlu
>>>
>>>
>>
>
Re: Fuseki with inference and TDB using LUBM test data
Posted by Özgür EROĞLU <oe...@gmail.com>.
Hi,
Yes, when I run queries that does not require inference, I get results.
I think my problem is related to your second question. How can I load
the ontology into TDB? I load the generated lubm data with s-put, should
I merge data and ontology before loading? At some of the configurations
I have seen on web, there was a line which was smt. like "ja:scheme
<#sch>" in the fuseki inf-model section of the configuration. Is that
related?
SELECT *
{?X rdf:type ub:ResearchGroup .
?X ub:subOrganizationOf* <http://www.University0.edu>}
returns nothing, but
SELECT *
{ ub:subOrganizationOf ?p ?o }
returns
----------------------------------------------------------------------------------------------------------
| p | o |
==========================================================================================================
| rdf:type | rdf:Property |
| rdf:type | <http://www.w3.org/2000/01/rdf-schema#Resource> |
| <http://www.w3.org/2000/01/rdf-schema#subPropertyOf> | ub:subOrganizationOf |
----------------------------------------------------------------------------------------------------------
Özgür Eroğlu
On 10/16/2013 03:08 PM, Andy Seaborne wrote:
> Hi there,
>
> When you run a query that does not require inferenc, do you get any
> results?
>
> Is the ontology loaded into the TDB store?
>
> Does this query return anything:
>
> SELECT *
> {?X rdf:type ub:ResearchGroup .
> ?X ub:subOrganizationOf* <http://www.University0.edu>}
>
> and this one:
>
> SELECT *
> { ub:subOrganizationOf ?p ?o }
>
> Andy
>
>
>
> On 15/10/13 20:05, Özgür EROĞLU wrote:
>> Hi all,
>>
>> I am trying to configure Fuseki with inference and TDB and using a LUBM
>> generated data for testing. I have searched for similar configurations
>> (one of which is here) and read the documentation for Fuseki
>> configuration .
>>
>> Following is my Fuseki configuration :
>>
>> #------------------------------------------------------------------------------------------------------
>>
>>
>> # Licensed under the terms of http://www.apache.org/licenses/LICENSE-2.0
>>
>> @prefix : <#> .
>> @prefix fuseki: <http://jena.apache.org/fuseki#> .
>> @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
>>
>> @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
>> @prefix tdb: <http://jena.hpl.hp.com/2008/tdb#> .
>> @prefix ja: <http://jena.hpl.hp.com/2005/11/Assembler#> .
>>
>> [] rdf:type fuseki:Server ;
>> fuseki:services (
>> <#service1>
>> ) .
>>
>> # Custom code.
>> [] ja:loadClass "com.hp.hpl.jena.tdb.TDB" .LUBM
>
>>
>> # TDB
>> tdb:DatasetTDB rdfs:subClassOf ja:RDFDataset .
>> tdb:GraphTDB rdfs:subClassOf ja:Model .
>>
>> ## ---------------------------------------------------------------
>> ## Service with only SPARQL query on an inference model.
>> ## Inference model bbase data in TDB.
>>
>> <#service1> rdf:type fuseki:Service ;
>> fuseki:name "ds" ; # http://host/inf
>> fuseki:serviceQuery "sparql" ; # SPARQL query service
>> fuseki:serviceUpdate "update" ;
>> fuseki:serviceQuery "query" ;
>> fuseki:serviceUpload "upload" ;
>> fuseki:serviceReadWriteGraphStore "data" ;
>> fuseki:serviceReadGraphStore "get" ;
>> fuseki:dataset <#dataset> ;
>> .
>>
>> <#dataset> rdf:type ja:RDFDataset ;
>> ja:defaultGraph <#model_inf> ;
>> .
>>
>> <#model_inf> a ja:InfModel ;
>> ja:baseModel <#tdbGraph> ;
>> ja:reasoner [
>> ja:reasonerURL
>> <http://jena.hpl.hp.com/2003/OWLFBRuleReasoner>;
>> ]
>> .
>>
>> <#tdbDataset> rdf:type tdb:DatasetTDB ;
>> tdb:location "/tdb/" ;
>> .
>>
>> <#tdbGraph> rdf:type tdb:GraphTDB ;
>> tdb:dataset <#tdbDataset>
>> .
>> #------------------------------------------------------------------------------------------------------
>>
>>
>>
>> I load a dataset which was generated with LUBM data generator. The
>> generator is UBA1.7 and the ontology is an owl file named Univ-Bench.
>> My problem here is that when I run a sparql query that requires
>> inference, I get no result. For example, although the data includes
>> triples like
>>
>> #------------------------------------------------------------------------------------------------------
>>
>>
>> <http://www.Department14.University0.edu/ResearchGroup0>
>> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
>> <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#ResearchGroup> .
>> <http://www.Department14.University0.edu/ResearchGroup0>
>> <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#subOrganizationOf>
>> <http://www.Department14.University0.edu> .
>> <http://www.Department14.University0.edu>
>> <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#subOrganizationOf>
>> <http://www.University0.edu> .
>> #------------------------------------------------------------------------------------------------------
>>
>>
>>
>> when I run the following sparql query, I get no result(empty resultset).
>>
>> #------------------------------------------------------------------------------------------------------
>>
>>
>> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
>> PREFIX ub: <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#>
>> SELECT ?X
>> WHERE
>> {?X rdf:type ub:ResearchGroup .
>> ?X ub:subOrganizationOf <http://www.University0.edu>}
>> #------------------------------------------------------------------------------------------------------
>>
>>
>>
>> I think Fuseki somehow should know about the ontology (univ-bench). Also
>> I am not sure whether my Fuseki configuration is ok or not for inference
>> (e.g. if my reasoner is the right one).
>>
>> Could someone explain what I am missing here and why I could not get
>> correct results?
>>
>>
>> Regards,
>>
>> Özgür Eroğlu
>>
>>
>
Re: Fuseki with inference and TDB using LUBM test data
Posted by Andy Seaborne <an...@apache.org>.
Hi there,
When you run a query that does not require inferenc, do you get any results?
Is the ontology loaded into the TDB store?
Does this query return anything:
SELECT *
{?X rdf:type ub:ResearchGroup .
?X ub:subOrganizationOf* <http://www.University0.edu>}
and this one:
SELECT *
{ ub:subOrganizationOf ?p ?o }
Andy
On 15/10/13 20:05, Özgür EROĞLU wrote:
> Hi all,
>
> I am trying to configure Fuseki with inference and TDB and using a LUBM
> generated data for testing. I have searched for similar configurations
> (one of which is here) and read the documentation for Fuseki
> configuration .
>
> Following is my Fuseki configuration :
>
> #------------------------------------------------------------------------------------------------------
>
> # Licensed under the terms of http://www.apache.org/licenses/LICENSE-2.0
>
> @prefix : <#> .
> @prefix fuseki: <http://jena.apache.org/fuseki#> .
> @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
>
> @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
> @prefix tdb: <http://jena.hpl.hp.com/2008/tdb#> .
> @prefix ja: <http://jena.hpl.hp.com/2005/11/Assembler#> .
>
> [] rdf:type fuseki:Server ;
> fuseki:services (
> <#service1>
> ) .
>
> # Custom code.
> [] ja:loadClass "com.hp.hpl.jena.tdb.TDB" .LUBM
>
> # TDB
> tdb:DatasetTDB rdfs:subClassOf ja:RDFDataset .
> tdb:GraphTDB rdfs:subClassOf ja:Model .
>
> ## ---------------------------------------------------------------
> ## Service with only SPARQL query on an inference model.
> ## Inference model bbase data in TDB.
>
> <#service1> rdf:type fuseki:Service ;
> fuseki:name "ds" ; # http://host/inf
> fuseki:serviceQuery "sparql" ; # SPARQL query service
> fuseki:serviceUpdate "update" ;
> fuseki:serviceQuery "query" ;
> fuseki:serviceUpload "upload" ;
> fuseki:serviceReadWriteGraphStore "data" ;
> fuseki:serviceReadGraphStore "get" ;
> fuseki:dataset <#dataset> ;
> .
>
> <#dataset> rdf:type ja:RDFDataset ;
> ja:defaultGraph <#model_inf> ;
> .
>
> <#model_inf> a ja:InfModel ;
> ja:baseModel <#tdbGraph> ;
> ja:reasoner [
> ja:reasonerURL <http://jena.hpl.hp.com/2003/OWLFBRuleReasoner>;
> ]
> .
>
> <#tdbDataset> rdf:type tdb:DatasetTDB ;
> tdb:location "/tdb/" ;
> .
>
> <#tdbGraph> rdf:type tdb:GraphTDB ;
> tdb:dataset <#tdbDataset>
> .
> #------------------------------------------------------------------------------------------------------
>
>
> I load a dataset which was generated with LUBM data generator. The
> generator is UBA1.7 and the ontology is an owl file named Univ-Bench.
> My problem here is that when I run a sparql query that requires
> inference, I get no result. For example, although the data includes
> triples like
>
> #------------------------------------------------------------------------------------------------------
>
> <http://www.Department14.University0.edu/ResearchGroup0>
> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>
> <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#ResearchGroup> .
> <http://www.Department14.University0.edu/ResearchGroup0>
> <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#subOrganizationOf>
> <http://www.Department14.University0.edu> .
> <http://www.Department14.University0.edu>
> <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#subOrganizationOf>
> <http://www.University0.edu> .
> #------------------------------------------------------------------------------------------------------
>
>
> when I run the following sparql query, I get no result(empty resultset).
>
> #------------------------------------------------------------------------------------------------------
>
> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
> PREFIX ub: <http://www.lehigh.edu/~zhp2/2004/0401/univ-bench.owl#>
> SELECT ?X
> WHERE
> {?X rdf:type ub:ResearchGroup .
> ?X ub:subOrganizationOf <http://www.University0.edu>}
> #------------------------------------------------------------------------------------------------------
>
>
> I think Fuseki somehow should know about the ontology (univ-bench). Also
> I am not sure whether my Fuseki configuration is ok or not for inference
> (e.g. if my reasoner is the right one).
>
> Could someone explain what I am missing here and why I could not get
> correct results?
>
>
> Regards,
>
> Özgür Eroğlu
>
>