Mercurial > hg > TripleStoreManager
diff src/de/mpiwg/itgroup/triplestoremanager/tools/GenerateLandingPage.java @ 3:6c8dac2c5214
New tools export graph and generate landing page of an echo ressource
author | dwinter |
---|---|
date | Thu, 21 Jun 2012 12:24:29 +0200 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/de/mpiwg/itgroup/triplestoremanager/tools/GenerateLandingPage.java Thu Jun 21 12:24:29 2012 +0200 @@ -0,0 +1,67 @@ +package de.mpiwg.itgroup.triplestoremanager.tools; + +import java.io.FileWriter; +import java.io.IOException; + +import org.openrdf.model.Resource; +import org.openrdf.model.Statement; +import org.openrdf.model.Value; +import org.openrdf.model.impl.ContextStatementImpl; +import org.openrdf.model.impl.URIImpl; +import org.openrdf.query.Binding; +import org.openrdf.query.BindingSet; +import org.openrdf.query.MalformedQueryException; +import org.openrdf.query.QueryEvaluationException; +import org.openrdf.query.TupleQueryResult; +import org.openrdf.rio.RDFHandlerException; +import org.openrdf.rio.trig.TriGWriter; + +import de.mpiwg.itgroup.triplestoremanager.exceptions.TripleStoreHandlerException; +import de.mpiwg.itgroup.triplestoremanager.owl.TripleStoreHandler; + +public class GenerateLandingPage { + + /** + * @param args + */ + + public static void main(String args[]) throws TripleStoreHandlerException, MalformedQueryException, QueryEvaluationException, RDFHandlerException, IOException { + //TripleStoreHandler th = new TripleStoreHandler( + // "jdbc:virtuoso://virtuoso.mpiwg-berlin.mpg.de:1112", args[0], args[1]); + + + FileWriter fw = new FileWriter("/tmp/lp.ttl"); + TriGWriter turtleWriter = new TriGWriter(fw); + turtleWriter.startRDF(); + if (args.length<3){ + System.out.println("Usage: connection String user password"); + System.out.println("eg: jdbc:virtuoso://virtuoso.mpiwg-berlin.mpg.de:1111 user password"); + System.exit(1); + } + TripleStoreHandler th = new TripleStoreHandler( + args[0], args[1], args[2]); + + String qs = String.format("select ?entity where {?entity a <http://ontologies.mpiwg-berlin.mpg.de/general/IndexMeta>}"); + + TupleQueryResult res = th.querySPARQL(qs); + + + while(res.hasNext()){ + BindingSet bs = res.next(); + Binding entity = bs.getBinding("entity"); + + URIImpl y = new URIImpl("http://ontologies.mpiwg-berlin.mpg.de/general/hasLandingPage"); + URIImpl z =(URIImpl)entity.getValue(); + URIImpl z2= new URIImpl(z.toString().replace("/indexMeta", "")); + + URIImpl g = new URIImpl("http://indexMeta_ECHOE_landingPages"); + + Statement stm = new ContextStatementImpl((Resource)entity.getValue(), y, z2,g); + + turtleWriter.handleStatement(stm); + } + turtleWriter.endRDF(); + fw.close(); + } +} +