Re: [Commons RDF] process data fom apache jena Dataset

Fred Hauschel <[email protected]>
Newsgroups gmane.comp.jakarta.commons.user
Message-ID <[email protected]>
I'm still confused, but that seems to be one solution:

importjava.util.UUID;

importorg.apache.commons.rdf.api.Graph;

importorg.apache.commons.rdf.api.IRI;

importorg.apache.commons.rdf.jena.JenaGraph;

importorg.apache.commons.rdf.jena.JenaRDF;

importorg.apache.jena.query.Dataset;

importorg.apache.jena.query.ReadWrite;

importorg.apache.jena.rdf.model.Model;

importorg.apache.jena.tdb.TDBFactory;

publicclassTest {

publicstaticvoidmain(String[] args) {

JenaRDF jenaRDF= newJenaRDF();

IRI namePredicate= jenaRDF.createIRI("https://schema.org/name");

String graphNameAsString= "http://example.com/myGraph";

IRI myGraphNameAsIri= jenaRDF.createIRI(graphNameAsString);

Dataset jenaDataset= TDBFactory.createDataset("target/test");

// READ TDB dataset

org.apache.commons.rdf.api.Dataset commonsDataset4Read= 
jenaRDF.asDataset(jenaDataset);

Graph myCommonsGraph4Read= 
commonsDataset4Read.getGraph(myGraphNameAsIri).orElseThrow();

myCommonsGraph4Read.stream().forEach(quad->System.out.println("commonsQuad: 
"+ quad));

// Write TDB dataset

jenaDataset.begin(ReadWrite.WRITE);

org.apache.commons.rdf.api.Dataset commonsDataset4Write= 
jenaRDF.asDataset(jenaDataset);

Graph commonsRdfGraph4Write= 
commonsDataset4Write.getGraph(myGraphNameAsIri).orElseThrow();

IRI randomSubject= jenaRDF.createIRI("http://example.com/"+ 
UUID.randomUUID().toString());

commonsRdfGraph4Write.add(randomSubject, namePredicate, 
jenaRDF.createLiteral("Bob"));

Model jenaModel= ((JenaGraph)commonsRdfGraph4Write).asJenaModel();

jenaDataset.addNamedModel(graphNameAsString, jenaModel);

jenaDataset.commit();

jenaDataset.end();

}

}

Fredy

On 17.02.24 18:25, Fred Hauschel wrote:
>
> Hi there,
>
> is it possible to load a dataset from TDB into a 
> org.apache.commons.rdf.api.Dataset ?
>
> Dataset dataset= TDBFactory.createDataset(directory);
>
> in common, how to convert between org.apache.commons.rdf.* and other 
> stores for readsing and writing ?
>
> Thanks Fredy
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.