Thanks, Soroka,

No, it doesn’t. If I remove –update, the server just starts in read-only mode, 
but the result is the same.

And I’m also sure that –update doesn’t override –file, because the config file 
is being read, even though the data and rules files are being ignored – if I 
put some erroneous symbols in new_config.ttl, I get an error and the server 
doesn’t start.

S. 


On 3/23/17, 12:57 PM, "A. Soroka" <[email protected]> wrote:

    I may be mixing up issues here, but I suspect that --update may override 
--file=<config>. Can you quickly try again without the --update flag?
    
    ---
    A. Soroka
    The University of Virginia Library
    
    > On Mar 23, 2017, at 3:55 PM, Dimov, Stefan <[email protected]> wrote:
    > 
    > Thanks, Andy,
    > 
    > Now my config file looks like this:
    > 
    > 
    > @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#> .
    > @prefix ao:      <http://ao.com> .
    > 
    > 
    > [] rdf:type fuseki:Server ;
    >   fuseki:services (
    >       <#mainservice>
    >   ) .
    > 
    > <#mainservice> rdf:type fuseki:Service ;
    >    fuseki:name                       "mainservice" ;  
    >    fuseki:serviceQuery               "sparql"      ;   
    >    fuseki:serviceQuery               "query"       ;   
    >    fuseki:serviceUpdate              "update"      ;   
    >    fuseki:serviceUpload              "upload"      ;   
    >    fuseki:serviceReadWriteGraphStore "data"        ;   
    >    fuseki:serviceReadGraphStore      "get"         ;   
    >    fuseki:dataset                    <#ao>         ;
    >    .
    > 
    > ### In-memory, initially empty.
    > ## This database set-up allows OWL inference.
    > <#ao> rdf:type ja:RDFDataset ;
    >                ja:defaultGraph <#infGraph> .
    > 
    > <#infGraph>  rdf:type ja:InfModel ;
    >             ja:reasoner [  ja:reasonerURL 
<http://jena.hpl.hp.com/2003/GenericRuleReasoner> ;
    >                            ja:rulesFrom <file:Data/inference_rules.rules> 
; ] .
    > 
    > <#data> rdf:type ja:MemoryModel ;
    >     ja:content [ja:externalContent <file:Data/graph.nt>] ;
    >     .
    > 
    > 
    > 
    > Unfortunately, it doesn’t work. Both files inference_rulesss.rules and 
graph.nt are being ignored. (I’ve put them into: <fuseki_home>/Data folder). I 
tried different formats for <file:Data/inference_rulesss.rules>, like 
<file://Data/inference_rulesss.rules> or <Data/inference_rulesss.rules>, but it 
didn’t work.
    > 
    > Also, you said that in the command line:
    > 
    >       ./fuseki-server --update --file=config_new.ttl /mainservice
    > 
    > I don’t not need the /mainservice, but when I try to start the service 
with:
    > 
    >       ./fuseki-server --update --file=config_new.ttl
    > 
    > I get:
    > 
    >           No dataset path name given
    > 
    > and the server doesn’t start.
    > 
    > Regards,
    > Stefan
    > 
    > 
    > On 3/23/17, 1:43 AM, "Andy Seaborne" <[email protected]> wrote:
    > 
    > 
    >    On 22/03/17 20:07, Dimov, Stefan wrote:
    >> Hi all,
    >> 
    >> I'm new to Apache Jena and Fuseki. I've installed Apache Jena Fuseki as 
a standalone server and I'm trying to define a very simple inference rule and 
seemingly, I'm not configuring it correctly. My configuration file 
config_new.ttl looks like this:
    >> 
    >> 
    >> @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#> .
    >> @prefix ao:      <http://ao.com> .
    >> 
    >> [] rdf:type fuseki:Server ;
    >>   fuseki:services (
    >>       <#mainservice>
    >>   ) .
    >> 
    >> <#mainservice> rdf:type fuseki:Service ;
    >>    fuseki:name                       "mainservice" ;
    >>    fuseki:serviceQuery               "sparql"      ;
    >>    fuseki:serviceQuery               "query"       ;
    >>    fuseki:serviceUpdate              "update"      ;
    >>    fuseki:serviceUpload              "upload"      ;
    >>    fuseki:serviceReadWriteGraphStore "data"        ;
    >>    fuseki:serviceReadGraphStore      "get"         ;
    >>    fuseki:dataset                    <#ao>         ;
    >>   .
    >> 
    >> ### In-memory, initially empty.
    >> ## This database set-up allows OWL inference.
    >> <#ao> rdf:type ja:MemoryModel ;
    >>                ja:defaultGraph <#infGraph> .
    > 
    >    As already mentioned on StackOverflow, this is wrong.  You must put 
    >    graphs in a dataset.
    > 
    >    <#ao> rdf:type ja:RDFDataset ;
    > 
    >> 
    >> <#infGraph>  rdf:type ja:InfModel ;
    >>             ja:reasoner [ ja:rulesFrom <file:inference_rules.rules> ; ] .
    > 
    >    Try adding a reasoner:
    > 
    >    ja:reasoner
    >             [ ja:reasonerURL 
    >    <http://jena.hpl.hp.com/2003/GenericRuleReasoner> ;
    >               ja:rulesFrom <inference_rules.rules>
    >             ] ;
    > 
    >    and make sure inference_rules.rules is accessible in the right 
location 
    >    to the server.
    > 
    >    and put in a base graph:
    > 
    >    <#infGraph> rdf:type ja:InfModel ;
    >       ja:baseModel <#data> ;
    >       ja:reasoner
    >           [ ja:reasonerURL
    >                   <http://jena.hpl.hp.com/2003/GenericRuleReasoner> ;
    >             ja:rulesFrom <...>
    >           ] ;
    >       .
    > 
    >    <#data> rdf:type ja:MemoryModel ;
    >         ja:content [ja:externalContent <initial_data.ttl>] ;
    >         .
    > 
    > 
    > 
    >> 
    >> 
    >> I'm starting the server from a console with:
    >> 
    >> ./fuseki-server --update --file=config_new.ttl /mainservice
    > 
    >    You do not need the /mainservice -- it is in the config file at 
fuseki:name
    > 
    >    (examples not checked - hopefully someone can confirm/correct them)
    > 
    >         Andy
    > 
    >> 
    >> 
    >> It's starting and I am able to upload some data and query it 
successfully from the web-page, but seemingly it doesn't read the file 
inference_rules.rules. Even if the file name is wrong or the file doesn't exist 
or the contents of the file is incorrect, I don't get any errors and the rule 
is not working.
    >> What am I missing?
    >> There's a second question here. Apparently, I'm not there yet, but let 
me put here the contents of inference_rules.rules. I'm trying to define a 
simple transitive rule - if (A is a B) and (B is a C), then A is a C:
    >> 
    >> 
    >> @prefix rdf: http://www.w3.org/1999/02/22-rdf-syntax-ns#
    >> @prefix ex: http://example.com/
    >> @prefix xs: http://www.w3.org/2001/XMLSchema#
    >> @prefix ao: http://ao.com/
    >> 
    >> [isA:
    >> (?a ao:isA ?b)
    >> (?b ao:isA ?c)
    >>                 ->
    >>                 (?a ao:isA ?c)
    >>         ]
    >> 
    >> 
    >> Did I define it correctly?
    >> 
    >> Regards,
    >> S.
    >> 
    > 
    > 
    
    

Reply via email to