This is a diff between 1.5 and 1.6 revisions:

1035a1049
< con.prepareGraphQuery(QueryLanguage.SPARQL, "CONSTRUCT * FROM WHERE {x} p {y}").evaluate(turtleWriter);
1034d1049
> con.prepareGraphQuery(QueryLanguage.SPARQL, "CONSTRUCT * FROM WHERE {x} p {y}").evaluate(turtleWriter);
1028a1042
< …
1027d1042
>
1009a1023
< // … do something with the resulting statement here.
1008d1023
> // do something with the resulting statement here.
1001a1016
< in that it is an object that iterates over the query results. However, for graph queries the query results are RDF statements,
< so a <code><nowiki>GraphQueryResult</nowiki></code> iterates over <code><nowiki>Statement</nowiki></code> objects:
1000d1014
> in that it is an object that iterates over the query results. However, for graph queries the query results
> are RDF statements, so a <code><nowiki>GraphQueryResult</nowiki></code> iterates over
> <code><nowiki>Statement</nowiki></code> objects:
956a969
< String queryString = "SELECT * FROM WHERE {x} p {y}";
955d969
> String queryString = "SELECT * FROM WHERE {x} p {y}";
945a958
< …
944d958
>
933a949
< An alternative to producing a <code><nowiki>TupleQueryResult</nowiki></code> is to supply an object that implements the
< <code><nowiki>TupleQueryResultHandler</nowiki></code> interface to the query's <code><nowiki>evaluate()</nowiki></code>
< method. The main difference is that when using a return object, the caller has control over when the next answer is retrieved,
< whereas with the use of a handler, the connection simply pushes answers to the handler object as soon as it has them available.
932d945
> An alternative to producing a <code><nowiki>TupleQueryResult</nowiki></code> is to supply an object that
> implements the <code><nowiki>TupleQueryResultHandler</nowiki></code> interface to the query's
> <code><nowiki>evaluate()</nowiki></code> method. The main difference is that when using a return object,
> the caller has control over when the next answer is retrieved, whereas with the use of a handler, the
> connection simply pushes answers to the handler object as soon as it has them available.
927a943
< It is important to invoke the <code><nowiki>close()</nowiki></code> operation on the <code><nowiki>TupleQueryResult</nowiki></code>,
< after we are done with it. A <code><nowiki>TupleQueryResult</nowiki></code> evaluates lazily and keeps resources (such as connections
< to the underlying database) open. Closing the <code><nowiki>TupleQueryResult</nowiki></code> frees up these resources. Do not forget
< that iterating over a result may cause exceptions! The best way to make sure no connections are kept open unnecessarily is to invoke
< <code><nowiki>close()</nowiki></code> in the <code><nowiki>finally</nowiki></code> clause.
926d937
> It is important to invoke the <code><nowiki>close()</nowiki></code> operation on the
> <code><nowiki>TupleQueryResult</nowiki></code>, after we are done with it. A
> <code><nowiki>TupleQueryResult</nowiki></code> evaluates lazily and keeps resources (such as connections
> to the underlying database) open. Closing the <code><nowiki>TupleQueryResult</nowiki></code> frees up
> these resources. Do not forget that iterating over a result may cause exceptions! The best way to make
> sure no connections are kept open unnecessarily is to invoke <code><nowiki>close()</nowiki></code> in
> the <code><nowiki>finally</nowiki></code> clause.
921a931
< // do something interesting with the values here…
920d931
> // do something interesting with the values here
900a910
< // do something interesting with the query variable values here…
899d910
> // do something interesting with the query variable values here
854a864
< … // do something with the result
853d864
> // do something with the result
846a856
< String queryString = "SELECT x, y FROM WHERE {x} p {y}";
845d856
> String queryString = "SELECT x, y FROM WHERE {x} p {y}";
838a848
< …
837d848
>
817a828
< Note: Although Eclipse RDF4J 2 currently supports two query languages: <nowiki>SeRQL</nowiki> and SPARQL, the Virtuoso
< provider only supports the W3C SPARQL specification at this time.
816d827
> Note: Although Eclipse RDF4J 2 currently supports two query languages: <nowiki>SeRQL</nowiki> and SPARQL,
> the Virtuoso RDF4J Provider only supports the W3C SPARQL specification at this time.
783a793
< More information on other available methods can be found in the javadoc reference of the
782d793
> More information on other available methods can be found in the <code>javadoc</code> reference of the
747a757
< …
746d757
>
722a732
<
667a678
< to use the API, can be found in the [[http://docs.rdf4j.org/programming/][Eclipse RDF4J Programmers guide]].
666d678
> to use the API, can be found in the [[http://docs.rdf4j.org/programming/][Eclipse RDF4J Programmers guide]].
660a671
< PASSED:19 FAILED:0
659d671
> PASSED:18 FAILED:0
654a669
< == TEST 19: : Start
< Sending describe query
< == TEST 19: : End
< PASSED: TEST 19
<
650a666
< Sending construct query
649d666
> Sending describe query
645a661
< Sending ask query
644d661
> Sending construct query
640a656
< Retrieving triple store size
639d656
> Sending ask query
635a651
< Retrieving graph ids
634d651
> Retrieving triple store size
630a646
< Writing the statements to file: (/Users/hwilliams/src/git/vos-7-develop/binsrc/sesame4/results.n3.txt)
629d646
> Retrieving graph ids
625a641
< Retrieving statement (http://myopenlink.net/dataspace/person/kidehen http://myopenlink.net/foaf/name null)
624d641
> Writing the statements to file: (/Users/src/virtuoso-opensource/binsrc/sesame2/results.n3.txt)
620a636
< Retrieving namespaces
619d636
> Retrieving statement (http://myopenlink.net/dataspace/person/kidehen http://myopenlink.net/foaf/name null)
615a631
< Statement exists (by hasStatement())
614d631
> Retrieving namespaces
610a626
< Statement exists (by resultset size)
609d626
> Statement exists (by hasStatement())
605a621
< Statement does not exists
604d621
> Statement exists (by resultset size)
600a616
< Selecting property
599d616
> Statement does not exists
595a611
< Casted value type
594d611
> Selecting property
590a606
< Loading single triple
589d606
> Casted value type
585a601
< Loading UNICODE single triple
584d601
> Loading single triple
580a596
< Loading data from file: virtuoso_driver/data.nt
579d596
> Loading UNICODE single triple
575a591
< Clearing triple store
574d591
> Loading data from file: virtuoso_driver/data.nt
568a586
< Loading data from URL: http://dbpedia.org/data/Berlin.rdf
< log4j:WARN No appenders could be found for logger (org.openrdf.rio.RDFParserRegistry).
< log4j:WARN Please initialize the log4j system properly.
567d586
> Clearing triple store
563d581
> Loading data from URL: http://www.openlinksw.com/dataspace/person/kidehen@openlinksw.com/foaf.rdf
554a571
< 1 Run the <code>[[http://download3.openlinksw.com/uda/virtuoso/rdfproviders/sesame/40/VirtuosoTest.java][VirtuosoTest]]</code>
553d571
> 1 Run the <code>[[http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtSesame2Provider?att=VirtuosoTest.java][VirtuosoTest]]</code>
548a569
< * <code>openrdf-sesame-4.0.0-onejar.jar</code>
< * <code>slf4j-api-1.7.10.jar</code>
< * <code>commons-io-2.4.jar</code>
< * <code>virtjdbc4.jar</code>
< * <code>virt_sesame4.jar</code>
547d564
> * <code>openrdf-sesame-2.1.2-onejar.jar</code>
> * <code>slf4j-api-1.5.0.jar</code>
> * <code>slf4j-jdk14-1.5.0.jar</code>
> * <code>commons-io-2.0.jar</code>
> * <code>virtjdbc3.jar</code>
> * <code>virt_sesame2.jar</code>
531a547
< * Note: we recommend adding the following to the connect string, to use utf-8 and row-auto-commit:
530d547
> * Note: we recommend adding the following to the connect string, to use <code>utf-8</code> and <code>row-auto-commit</code>:
521a542
< 1 Ensure that full paths to the following files, or equivalents for your version of Sesame, are all included in the active <code>CLASSPATH</code> setting --
< * <code>openrdf-sesame-4.0.0-onejar.jar</code>
< * <code>slf4j-api-1.7.10.jar</code>
< * <code>commons-io-2.4.jar</code>
< * <code>virtjdbc4.jar</code>
< * <code>virt_sesame4.jar</code>
520d535
> 1 Ensure that full paths to the following files, or equivalents for your version of Sesame, are all
> included in the active <code>CLASSPATH</code> setting --
> * <code>openrdf-sesame-2.1.2-onejar.jar</code>
> * <code>slf4j-api-1.5.0.jar</code>
> * <code>slf4j-jdk14-1.5.0.jar</code>
> * <code>commons-io-2.0.jar</code>
> * <code>virtjdbc3.jar</code>
> * <code>virt_sesame2.jar</code>
517a531
< ---+++ Sesame 4 Sample Program
516d531
> ---+++ Sesame 2 Sample Program
514a528
< PASSED:18 FAILED:0
513d528
> PASSED:19 FAILED:0
512d522
> == TEST 19: : Start
> Sending describe query
> == TEST 19: : End
> PASSED: TEST 19
>
509a518
< Sending describe query
508d518
> Sending construct query
504a513
< Sending construct query
503d513
> Sending ask query
499a508
< Sending ask query
498d508
> Retrieving triple store size
494a503
< Retrieving triple store size
493d503
> Retrieving graph ids
489a498
< Retrieving graph ids
488d498
> Writing the statements to file: (/Users/hwilliams/src/git/vos-7-develop/binsrc/sesame4/results.n3.txt)
484a493
< Writing the statements to file: (/Users/src/virtuoso-opensource/binsrc/sesame2/results.n3.txt)
483d493
> Retrieving statement (http://myopenlink.net/dataspace/person/kidehen http://myopenlink.net/foaf/name null)
479a488
< Retrieving statement (http://myopenlink.net/dataspace/person/kidehen http://myopenlink.net/foaf/name null)
478d488
> Retrieving namespaces
474a483
< Retrieving namespaces
473d483
> Statement exists (by hasStatement())
469a478
< Statement exists (by hasStatement())
468d478
> Statement exists (by resultset size)
464a473
< Statement exists (by resultset size)
463d473
> Statement does not exists
459a468
< Statement does not exists
458d468
> Selecting property
454a463
< Selecting property
453d463
> Casted value type
449a458
< Casted value type
448d458
> Loading single triple
444a453
< Loading single triple
443d453
> Loading UNICODE single triple
439a448
< Loading UNICODE single triple
438d448
> Loading data from file: virtuoso_driver/data.nt
434a443
< Loading data from file: virtuoso_driver/data.nt
433d443
> Clearing triple store
429a438
< Clearing triple store
428d436
> Loading data from URL: http://dbpedia.org/data/Berlin.rdf
> log4j:WARN No appenders could be found for logger (org.openrdf.rio.RDFParserRegistry).
> log4j:WARN Please initialize the log4j system properly.
424a431
< Loading data from URL: http://www.openlinksw.com/dataspace/person/kidehen@openlinksw.com/foaf.rdf
414a422
< 1 Run the <code>[[http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtSesame2Provider?att=VirtuosoTest.java][VirtuosoTest]]</code>
413d422
> 1 Run the <code>[[http://download3.openlinksw.com/uda/virtuoso/rdfproviders/sesame/40/VirtuosoTest.java][VirtuosoTest]]</code>
407a420
< * <code>openrdf-sesame-2.1.2-onejar.jar</code>
< * <code>slf4j-api-1.5.0.jar</code>
< * <code>slf4j-jdk14-1.5.0.jar</code>
< * <code>commons-io-2.0.jar</code>
< * <code>virtjdbc3.jar</code>
< * <code>virt_sesame2.jar</code>
406d416
> * <code>openrdf-sesame-4.0.0-onejar.jar</code>
> * <code>slf4j-api-1.7.10.jar</code>
> * <code>commons-io-2.4.jar</code>
> * <code>virtjdbc4.jar</code>
> * <code>virt_sesame4.jar</code>
390a399
< * Note: we recommend adding the following to the connect string, to use utf-8 and row-auto-commit:
389d399
> * Note: we recommend adding the following to the connect string, to use <code>utf-8</code> and <code>row-auto-commit</code>:
379a394
< 1 Ensure that full paths to the following files, or equivalents for your version of Sesame, are all included in the active <code>CLASSPATH</code> setting --
< * <code>openrdf-sesame-2.1.2-onejar.jar</code>
< * <code>slf4j-api-1.5.0.jar</code>
< * <code>slf4j-jdk14-1.5.0.jar</code>
< * <code>commons-io-2.0.jar</code>
< * <code>virtjdbc3.jar</code>
< * <code>virt_sesame2.jar</code>
378d388
> 1 Ensure that full paths to the following files, or equivalents for your version of Sesame, are all
> included in the active <code>CLASSPATH</code> setting --
> * <code>openrdf-sesame-4.0.0-onejar.jar</code>
> * <code>slf4j-api-1.7.10.jar</code>
> * <code>commons-io-2.4.jar</code>
> * <code>virtjdbc4.jar</code>
> * <code>virt_sesame4.jar</code>
375a384
< ---+++ Sesame 2 Sample Program
374d384
> ---+++ Sesame 4 Sample Program
343a352
< Create the <nop>JavaDoc files for the provider with the following command <code>./gradlew javadoc</code>, which will create the file in the <code>doc</code> directory:
342d351
> Create the <nop>JavaDoc files for the provider with the following command <code>./gradlew javadoc</code>,
> which will create the file in the <code>doc</code> directory:
141a149
< Run the RDF4J provider testsuite with the <code>./gradlew clean testClasses test</code> command:
140d149
> Run the RDF4J provider testsuite with the <code>./gradlew clean testClasses test</code> command:
138a146
< ?.
137d146
> .
126a134
< ?.
125d134
> .
124a132
< By default the Testsuite will try connect to a Virtuoso instance on the <code>localhost:1111</code> and <code>dba/dba</code> uid/pwd. If an instance running with different values is then used to edit the <code>./build.gradle</code> file set accordingly:
123d130
> By default the Testsuite will try connect to a Virtuoso instance on the <code>localhost:1111</code> using
> the <code>dba/dba</code> uid/pwd. If an instance running with different values is then used to edit the
> <code>./build.gradle</code> file, set accordingly:
73a79
< Rebuild Virtuoso RDF4J provider file virt_rdf4j.jar with the <code>./gradlew clean Build -x test</code> command:
72d79
> Rebuild Virtuoso RDF4J provider file virt_rdf4j.jar with the <code>./gradlew clean Build -x test</code> command:
69a75
< 1 Ensure that the <code>rdf4j_provider/lib</code>directory lib contains the required <code>virtjdbc4_2.jar</code> Virtuoso JDBC Driver JAR file. If not it can be obtained from, [[http://download3.openlinksw.com/uda/virtuoso/jdbc/virtjdbc4.jar][virtjdbc4_2.jar]].
68d73
> 1 Ensure that the <code>rdf4j_provider/lib</code>directory lib contains the required <code>virtjdbc4_2.jar</code>
> Virtuoso JDBC Driver JAR file. If not it can be obtained from,
> [[http://download3.openlinksw.com/uda/virtuoso/jdbc/virtjdbc4.jar][virtjdbc4_2.jar]].
63a67
< 1 Extract the Virtuoso RDF4J Provider and testsuite archive [[http://download3.openlinksw.com/uda/virtuoso/rdfproviders/rdf4j/2/rdf4j_provider.zip][rdf4j_provider.zip]].
62d66
> 1 Extract the Virtuoso RDF4J Provider and testsuite archive
> [[http://download3.openlinksw.com/uda/virtuoso/rdfproviders/rdf4j/2/rdf4j_provider.zip][rdf4j_provider.zip]].
50a53
< $ java -jar virt_rdf4j.jar
49d53
> $ java -jar virt_rdf4j.jar
47a51
< You should download the Virtuoso Eclipse RDF4J Provider JAR archive for the version of Eclipse RDF4J being used, Virtuoso JDBC Driver, Eclipse RDF4J
< Framework and associated classes and sample programs from our [[VOSDownload][download page]]. Note the version of the Eclipse RDF4J Provider (virt&#95;rdf4j.jar or virt&#95;sesameX.jar) can be determined with the commands:
46d47
> You should download the Virtuoso Eclipse RDF4J Provider JAR archive for the version of Eclipse RDF4J
> being used, Virtuoso JDBC Driver, Eclipse RDF4J Framework and associated classes and sample programs
> from our [[VOSDownload][download page]]. Note the version of the Eclipse RDF4J Provider
> (<code><nowiki>virt_rdf4j.jar</nowiki></code> or <code><nowiki>virt_sesameX.jar</nowiki></code>) can
> be determined with the commands:
44a44
< on the default SQL port 1111 ie <code>localhost:1111</code>. In addition, the relevant
43d44
> on the default SQL port <code>1111</code>, i.e., <code>localhost:1111</code>. In addition, the relevant
30a31
< The Providers has been tested against the latest currently available versions,
< [[http://rdf4j.org/download.docbook?view][Eclipse RDF4J]] 2.1 and the older Sesame 2.6.x, 2.7.x, 2.8.x, 4.x releases.
29d30
> The Providers have been tested against the latest currently available versions &mdash;
> [[http://rdf4j.org/download.docbook?view][Eclipse RDF4J]] 2.1 and the older Sesame 2.6.x, 2.7.x, 2.8.x, 4.x releases.
25a26
< the Eclipse RDF4J Framework, allowing users of Virtuoso to leverage the Eclipse RDF4J framework to
< modify, query, and reason with the Virtuoso quad store using the Java language. The Eclipse RDF4J
24d25
> the Eclipse RDF4J Framework, allowing users of Virtuoso to leverage the Eclipse RDF4J framework to
> modify, query, and reason with the Virtuoso quad store using the Java language. The Eclipse RDF4J
22a22
< ---++What is the Virtuoso Eclipse RDF4J Provider
21d22
> ---++ What is the Virtuoso Eclipse RDF4J Provider
18a18
< database or even on a remote server. More generally: Eclipse RDF4J provides an application
17d18
> database or even on a remote server. More generally: Eclipse RDF4J provides an application
9a9
< ---++What is Eclipse RDF4J
8d9
> ---++ What is Eclipse RDF4J