Hello Andy and Jena,
      Thanks for your kindly reply.
      Ok, I will try it first.

      Another question, is there any small examples that show me how to 
implements StorageRDF.
      or  any interface for external-storage. 
      I also want to try to store and query the data in a  RDMS-backend or a 
KV-based strorage.
      If there any examples I can follow, I can take baby steps and try to make 
it. 
      TDB/TDB2 may be a good  example, but it looks a little hard for me .

      
> On Jan 13, 2022, at 2:58 AM, Andy Seaborne <a...@apache.org> wrote:
> 
> It's hard too understand cold but this looks odd to me:
> 
> 
> In App.java@
> 
>        DgraphDB db = new DgraphDB(dsg, new DatasetPrefixesDgraphDB());
>        Dataset dataset = DatasetFactory.wrap(db);
>        Model myMod = dataset.getDefaultModel();
> ...
>        Dataset ds = DatasetFactory.create(myMod);
>        ds.asDatasetGraph().setDefaultGraph(infgraph);
> ---------
> 
> If using StorageRDF, then I'd the dataset to be built with DatasetGraphStorage
> 
> (see TDB2)
> 
> 
> setDefaultGraph, slightly contrary to name, is a copy. It is a bit of legacy 
> hangover.
> 
> I'd expect:
>     StorageDgraphDB Dg_dsg =
>            new StorageDgraphDB(txnSystem, tripleTable, quadTable);
>     DatasetGragh dsg1 =
>           new DatasetGraphStorage(Dg_dsg,
>                                   new DatasetPrefixesDgraphDB(),
>                                   txnSystem);
> 
> And inference:
>    Graph g = dsg1.getDefaultGraph();
>    InfGraph infgraph = reasoner.bind(g);
>    infgraph.setDerivationLogging(true);
> 
> create a layer:
> 
>    DatasetGraph dsg2 = DatasetGraphFactory.wrap(g);
> 
>    FusekiServer server = FusekiServer.create()
>                .add("/ds", dsg2)
> 
> (untested)
> 
>        Andy
> 
> 
> On 12/01/2022 14:39, brain wrote:
>> Hi Andy and Jena,
>>     So glad to see you here.
>>     I just upload my code to GitHub 
>> https://github.com/analyticservicedev/dgraph-jena 
>> <https://github.com/analyticservicedev/dgraph-jena>
>>     It’s short and a little  dirty .
>>     I have  `class DgraphTripleTable implements TripleStore`.
>>     And do CRUD with add() delete() find() or findXxxMethods()
>>     Then I have DgraphTripleTable in  `class StorageDgraphDB implements 
>> StorageRDF`
>>     And then wrap the StorageDgraphDB with ds= DatasetFactory.wrap(db);
>>     Finally, I have FusekiServer.create().add("/ds", 
>> ds).port(6384).build().start()
>>     I have a test file in src/test/java/com/jena/app/Inf.java
>>     There are three methods named main tdbmain memoryMain
>>     for different storage  backend:  Dgraph 、 TDB、 Memory
>>    Could you check my code and give me some advice to help me make it run?
>>   Thank you very much.
>>> On Jan 12, 2022, at 9:45 PM, Andy Seaborne <a...@apache.org> wrote:
>>> 
>>> 
>>> On 12/01/2022 09:10, brain wrote:
>>>> Hello,
>>>>      I need some help.
>>>>      With this guide, 
>>>> https://jena.apache.org/documentation/fuseki2/fuseki-embedded.html, 
>>>> <https://jena.apache.org/documentation/fuseki2/fuseki-embedded.html,>
>>>>      I created an embeded-fuseki server to provide a SPARQL service .
>>>>      I make an implemention of `org.apache.jena.dboe.storage.StorageRDF` 
>>>> interface  in Java, so I can store rdf triples with my own storage 
>>>> engine(a distributed database). And it works. I can query the rdfs with 
>>>> SPARQL.
>>>>        However, I have some problems.
>>>>      When I try to change my model  to a  `InfGraph` , the reasoner can't 
>>>> works. It must be some bugs in my code. but I can't find it .
>>>>      Is there any guide or something else to help me fix the bug .
>>>>      Our data stored in a distributed database. We want to do SPARQL Query 
>>>> and Inference.
>>>>  Thanks
>>> 
>>> Hi there,
>>> 
>>> Could you give some details of your setup?
>>> 
>>> + How do you query with RDFS?
>>> 
>>> + What level of inferencing are you setting for the InfGraph?
>>> 
>>> + Are you using an assembler or setting up the InGraph with code?
>>> 
>>> If it is RDFS you are wanting, there's a different approach that might work 
>>> better for you:
>>> 
>>> https://jena.apache.org/documentation/rdfs/
>>> 
>>> This is fixed schema, data-centric (so it is not full RDFS reasoning - 
>>> there are no axiomatic triples, and iyt assumes that vocabulary like 
>>> subproperty or subclass isn't being subproperty'ed.)
>>> 
>>> But keeps no in-memory state from the data itself so it scales and you can 
>>> directly update the data and see new inferred triples.
>>> 
>>>    Andy
>>> 
> 



Reply via email to