<docbook><section><title>VirtJenaSPARQLExample2</title><para> </para>
<title> Virtuoso Jena Provider - SPARQL Example 2</title> Virtuoso Jena Provider - SPARQL Example 2
<programlisting>import com.hp.hpl.jena.query.*;
import com.hp.hpl.jena.rdf.model.RDFNode;

import virtuoso.jena.driver.*;

public class VirtuosoSPARQLExample2 {

	/**
	 * Executes a SPARQL query against a virtuoso url and prints results.
	 */
	public static void main(String[] args) {

		String url;
		if(args.length == 0)
		    url = &quot;jdbc:virtuoso://localhost:1111&quot;;
		else
		    url = args[0];

/*			STEP 1			*/
		VirtGraph graph = new VirtGraph (&quot;Example2&quot;, url, &quot;dba&quot;, &quot;dba&quot;);

/*			STEP 2			*/
/*		Load data to Virtuoso		*/
		graph.clear ();

		System.out.print (&quot;Begin read from &#39;http://www.w3.org/People/Berners-Lee/card#i&#39;  &quot;);
		graph.read(&quot;http://www.w3.org/People/Berners-Lee/card#i&quot;, &quot;RDF/XML&quot;);
		System.out.println (&quot;\t\t\t Done.&quot;);

		System.out.print (&quot;Begin read from &#39;http://demo.openlinksw.com/dataspace/person/demo#this&#39;  &quot;);
		graph.read(&quot;http://demo.openlinksw.com/dataspace/person/demo#this&quot;, &quot;RDF/XML&quot;);
		System.out.println (&quot;\t Done.&quot;);

		System.out.print (&quot;Begin read from &#39;http://kidehen.idehen.net/dataspace/person/kidehen#this&#39;  &quot;);
		graph.read(&quot;http://kidehen.idehen.net/dataspace/person/kidehen#this&quot;, &quot;RDF/XML&quot;);
		System.out.println (&quot;\t Done.&quot;);


/*			STEP 3			*/
/*		Select only from VirtGraph	*/
		Query sparql = QueryFactory.create(&quot;SELECT ?s ?p ?o WHERE { ?s ?p ?o }&quot;);

/*			STEP 4			*/
		VirtuosoQueryExecution vqe = VirtuosoQueryExecutionFactory.create (sparql, graph);

		ResultSet results = vqe.execSelect();
		while (results.hasNext()) {
			QuerySolution result = results.nextSolution();
		    RDFNode graph_name = result.get(&quot;graph&quot;);
		    RDFNode s = result.get(&quot;s&quot;);
		    RDFNode p = result.get(&quot;p&quot;);
		    RDFNode o = result.get(&quot;o&quot;);
		    System.out.println(graph_name + &quot; { &quot; + s + &quot; &quot; + p + &quot; &quot; + o + &quot; . }&quot;);
		}

		System.out.println(&quot;graph.getCount() = &quot; + graph.getCount());
	}
}
</programlisting><para> </para>
</section></docbook>