You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by gi...@apache.org on 2022/08/25 09:22:49 UTC

[jena-site] branch asf-site updated: Updated site from main (60670c721a65a3f10836637e45300293446867e6)

This is an automated email from the ASF dual-hosted git repository.

git-site-role pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/jena-site.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new d966680ee Updated site from main (60670c721a65a3f10836637e45300293446867e6)
d966680ee is described below

commit d966680ee29fbede5d6ccd8286ef720aa26d26b9
Author: jenkins <bu...@apache.org>
AuthorDate: Thu Aug 25 09:22:44 2022 +0000

    Updated site from main (60670c721a65a3f10836637e45300293446867e6)
---
 content/documentation/extras/index.html          |  6 +-
 content/documentation/index.xml                  |  2 +-
 content/documentation/query/index.html           |  5 +-
 content/documentation/query/service.html         | 78 +++++++++++++++++++++++-
 content/documentation/sparql-apis/http-auth.html | 29 +++++++--
 content/documentation/sparql-apis/index.html     | 18 ++----
 content/download/index.html                      | 36 +++++------
 content/download/maven.html                      |  5 ++
 content/index.xml                                |  2 +-
 content/sitemap.xml                              | 16 ++---
 10 files changed, 144 insertions(+), 53 deletions(-)

diff --git a/content/documentation/extras/index.html b/content/documentation/extras/index.html
index bb765f5fd..a76129804 100644
--- a/content/documentation/extras/index.html
+++ b/content/documentation/extras/index.html
@@ -176,10 +176,12 @@
             </div>
             <h1 class="title">Jena Extras - Extra packages for Jena development.</h1>
             
-	<p>Jena Extra modules are modules that provide utilities and larger packages that make Apache Jena
-development or usage easier but that do not fall within the standard Jena framework.</p>
+	<p>Jena Extra modules are modules that provide utilities and larger packages
+that make Apache Jena development or usage easier
+but that do not fall within the standard Jena framework.</p>
 <h2 id="sub-packages">Sub Packages</h2>
 <ul>
+<li><a href="../query/service_enhancer.html">Bulk retrieval and caching with SERVICE clauses</a></li>
 <li><a href="querybuilder/index.html">Query Builder</a></li>
 </ul>
 
diff --git a/content/documentation/index.xml b/content/documentation/index.xml
index d63ad4c55..6352635f4 100644
--- a/content/documentation/index.xml
+++ b/content/documentation/index.xml
@@ -980,7 +980,7 @@ What is an Assembler specification? An Assembler specification is an RDF descrip
       
       <guid>https://jena.apache.org/documentation/extras/</guid>
       <description>Jena Extra modules are modules that provide utilities and larger packages that make Apache Jena development or usage easier but that do not fall within the standard Jena framework.
-Sub Packages  Query Builder  </description>
+Sub Packages  Bulk retrieval and caching with SERVICE clauses Query Builder  </description>
     </item>
     
     <item>
diff --git a/content/documentation/query/index.html b/content/documentation/query/index.html
index 318d1f323..cb376da5e 100644
--- a/content/documentation/query/index.html
+++ b/content/documentation/query/index.html
@@ -244,11 +244,10 @@ application usages</li>
 <li><a href="algebra.html">ARQ and the SPARQL algebra</a></li>
 <li><a href="arq-query-eval.html">Extending ARQ query execution and accessing different storage implementations</a></li>
 <li><a href="custom_aggregates.html">Custom aggregates</a></li>
+<li><a href="service_enhancer.html">Caching and bulk-retrieval for SERVICE</a></li>
 </ul>
 <h2 id="extensions">Extensions</h2>
-<p>Feature of ARQ that go beyond SPARQL syntax. The default query
-language is standard SPARQL. These features require the query to be
-parsed with an explicit declaration of <code>Syntax.syntaxARQ</code>.</p>
+<p>Feature of ARQ that go beyond SPARQL syntax.</p>
 <ul>
 <li><a href="https://w3c.github.io/rdf-star/">RDF-star</a></li>
 <li>Operators and functions
diff --git a/content/documentation/query/service.html b/content/documentation/query/service.html
index b4c7daa9f..aeb8429c9 100644
--- a/content/documentation/query/service.html
+++ b/content/documentation/query/service.html
@@ -227,8 +227,84 @@ Don&rsquo;t ask for the whole of a bookstore just to find a book whose
 title comes from a local RDF file - ask the bookshop a query with
 the title already bound from earlier in the query.</p>
 <h2 id="controlling-service-requests">Controlling <code>SERVICE</code> requests.</h2>
-<p>The <code>SERVICE</code> operation in a SPARQL query may be configured via the Context. The values for configuration can be set in the global context (accessed via
+<p>The <code>SERVICE</code> operation in a SPARQL query may be configured via the Context.
+The values for configuration can be set in the global context (accessed via
 <code>ARQ.getContext()</code>) or in the per-query execution context.</p>
+<p>The prefix <code>arq:</code> is <code>&lt;http://jena.apache.org/ARQ#&gt;</code>.</p>
+<table>
+<thead>
+<tr>
+<th>Symbol</th>
+<th>Java Constant</th>
+<th>Default</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td><code>arq:httpServiceAllowed</code></td>
+<td><code>ARQ.httpServiceAllowed</code></td>
+<td>true</td>
+</tr>
+<tr>
+<td><code>arq:httpQueryClient</code></td>
+<td><code>ARQ.httpQueryClient</code></td>
+<td>System default.</td>
+</tr>
+<tr>
+<td><code>arq:httpServiceSendMode</code></td>
+<td>`ARQ.httpServiceSendMode | unset</td>
+<td></td>
+</tr>
+</tbody>
+</table>
+<h4 id="arqhttpserviceallowed"><code>arq:httpServiceAllowed</code></h4>
+<p>This setting can be used to disable execution of any SERVICE request in query.
+Set to &ldquo;false&rdquo; to prohibit SERVICE requests.</p>
+<h4 id="arqhttpqueryclient"><code>arq:httpQueryClient</code></h4>
+<p>The java.net.http HttpClient object to use for SERVICE execution.</p>
+<h4 id="arqhttpservicesendmode"><code>arq:httpServiceSendMode</code></h4>
+<p>The HTTP operation to use. The value is a string or a <code>QuerySendMode</code> object.</p>
+<p>String settings are:</p>
+<table>
+<thead>
+<tr>
+<th>Setting</th>
+<th>Effect</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>&ldquo;POST&rdquo;</td>
+<td>Use HTTP POST. Same as &ldquo;asPost&rdquo;.</td>
+</tr>
+<tr>
+<td>&ldquo;GET&rdquo;</td>
+<td>Use HTTP GET unconditionally. Same as &ldquo;asGetAlways&rdquo;.</td>
+</tr>
+<tr>
+<td>&ldquo;asGetAlways&rdquo;</td>
+<td>Use HTTP GET.</td>
+</tr>
+<tr>
+<td>&ldquo;asGetWithLimitBody&rdquo;</td>
+<td>Use HTTP GET upto a size limit (usually 2kbytes).</td>
+</tr>
+<tr>
+<td>&ldquo;asGetWithLimitForm&rdquo;</td>
+<td>Use HTTP GET upto a size limit (usually 2kbytes), and use a HTML form for the query.</td>
+</tr>
+<tr>
+<td>&ldquo;asPostForm&rdquo;</td>
+<td>Use HTTP POST and use an HTML form for the query.</td>
+</tr>
+<tr>
+<td>&ldquo;asPost&rdquo;</td>
+<td>Use HTTP POST.</td>
+</tr>
+</tbody>
+</table>
+<h2 id="old-context-setting">Old Context setting</h2>
+<p>Old settings are honored where possible but should not be used:</p>
 <p>The prefix  <code>srv:</code> is the IRI <code>&lt;http://jena.hpl.hp.com/Service#&gt;</code>.</p>
 <table>
 <thead>
diff --git a/content/documentation/sparql-apis/http-auth.html b/content/documentation/sparql-apis/http-auth.html
index 0bc35d65a..b02ee808b 100644
--- a/content/documentation/sparql-apis/http-auth.html
+++ b/content/documentation/sparql-apis/http-auth.html
@@ -211,9 +211,13 @@ first to trigger the challenge and then again with the HTTP authentication
 information.  To make this automatic, the first request must not be a streaming
 request (the stream is not repeatable). All HTTP request generated by Jena are
 repeatable.</p>
-<p>The URL can contain a <code>userinfo</code> part, either the <code>users@host</code> form, or the <code>user:password@host</code> form.
-If just the user is given, the authentication environment is consulted for registered users-password information. If user and password is given, the details as given are used. This latter form is not recommended and should only be used if necessary because the password is in-clear in the SPARQL
-query.</p>
+<p>The URL can contain a <code>userinfo</code> part, either the <code>users@host</code> form, or the
+<code>user:password@host</code> form.  If just the user is given, the authentication
+environment is consulted for registered users-password information. If user and
+password is given, the details as given are used. This latter form is not
+recommended and should only be used if necessary because the password is
+in-clear in the SPARQL query.</p>
+<p>Jena also has <a href="#bearer-authentication">support for bearer authentication</a>.</p>
 <h3 id="jdk-httpclientauthenticator">JDK HttpClient.authenticator</h3>
 <div class="highlight"><pre style="background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4"><code class="language-java" data-lang="java">    <span style="color:#080;font-style:italic">// Basic or Digest - determined when the challenge happens.
 </span><span style="color:#080;font-style:italic"></span>    AuthEnv<span style="color:#666">.</span><span style="color:#b44">get</span><span style="color:#666">().</span><span style="color:#b44">registerUsernamePassword</span><span style="color:#666">(</span>URI<span style="color:#666">.</span><span style="color:#b44">create</span><span style="color:#666">(</span>dataURL<span style="color:#666">),</span> <span style="color:#b44">&#34;user&#34;</span><span style="color:#666">,</span> <sp [...]
@@ -278,9 +282,24 @@ used.</p>
         ResultSet rs <span style="color:#666">=</span> qExec<span style="color:#666">.</span><span style="color:#b44">execSelect</span><span style="color:#666">();</span>
         ResultSetFormatter<span style="color:#666">.</span><span style="color:#b44">out</span><span style="color:#666">(</span>rs<span style="color:#666">);</span>
     <span style="color:#666">}</span>
-</code></pre></div><h2 id="examples">Examples</h2>
+</code></pre></div><h2 id="authentication-examples">Authentication Examples</h2>
 <p><a href="https://github.com/apache/jena/tree/main/jena-examples/src/main/java/arq/examples/auth">jena-examples:arq/examples/auth/</a>.</p>
-
+<h2 id="bearer-authentication">Bearer Authentication</h2>
+<p>Bearer authentication requires that the application to obtain a token to present
+to the server.</p>
+<ul>
+<li><a href="https://tools.ietf.org/html/rfc6750">RFC 6750</a></li>
+<li><a href="https://tools.ietf.org/html/rfc6751">RFC 6751</a></li>
+<li><a href="https://tools.ietf.org/html/rfc7519">JSON Web Tokens (JWT)</a></li>
+<li><a href="https://tools.ietf.org/html/rfc8725">JSON Web Token Best Current Practices</a></li>
+</ul>
+<p>How this token is obtained depends on the deployment environment.</p>
+<p>The application can either register the token to be used:</p>
+<pre><code>    AuthEnv.get().addBearerToken(targetURL, jwtString);
+</code></pre><p>or can provide a token provider for 401 challeneges stating bearer authentication.</p>
+<pre><code>    AuthEnv.get().setBearerTokenProvider( 
+        (uri, challenge)-&gt;{ ... ; return jwtString; });
+</code></pre>
 
         </div>
     </div>
diff --git a/content/documentation/sparql-apis/index.html b/content/documentation/sparql-apis/index.html
index ecb613d5a..8ba196127 100644
--- a/content/documentation/sparql-apis/index.html
+++ b/content/documentation/sparql-apis/index.html
@@ -440,7 +440,7 @@ authentication, has changed.</p>
 <h2 id="service-configuration">SERVICE configuration</h2>
 <p>See below for more on HTTP authentication with <code>SERVICE</code>.</p>
 <p>The configuration of <code>SERVICE</code> operations has changed in Jena 4.3.0 and the
-paramter names have changed.</p>
+parameter names have changed.</p>
 <table>
 <thead>
 <tr>
@@ -456,24 +456,14 @@ paramter names have changed.</p>
 <td>False to disable</td>
 </tr>
 <tr>
-<td><code>arq:serviceParams</code></td>
-<td><code>ARQ.serviceParams</code></td>
-<td>Map</td>
-</tr>
-<tr>
-<td><code>arq:httpQueryTimeout</code></td>
-<td><code>ARQ.httpQueryTimeout</code></td>
-<td>Request timeout (time to completion)</td>
-</tr>
-<tr>
 <td><code>arq:httpQueryClient</code></td>
 <td><code>ARQ.httpQueryCient</code></td>
 <td>An <code>java.net.http.HttpClient</code> object</td>
 </tr>
 <tr>
-<td><code>arq:httpQueryCompression</code></td>
-<td></td>
-<td>no-op</td>
+<td><code>arq:httpServiceSendMode</code></td>
+<td><code>ARQ.httpServiceSendMode</code></td>
+<td>See <a href="../query/service.html">Service documentation</a></td>
 </tr>
 </tbody>
 </table>
diff --git a/content/download/index.html b/content/download/index.html
index 62737c96b..74756035c 100644
--- a/content/download/index.html
+++ b/content/download/index.html
@@ -188,9 +188,9 @@
 </thead>
 <tbody>
 <tr>
-<td><a href="[preferred]jena/source/jena-4.5.0-source-release.zip">jena-4.5.0-source-release.zip</a></td>
-<td align="center"><a href="https://downloads.apache.org/jena/source/jena-4.5.0-source-release.zip.sha512">SHA512</a></td>
-<td align="center"><a href="https://downloads.apache.org/jena/source/jena-4.5.0-source-release.zip.asc">PGP</a></td>
+<td><a href="[preferred]jena/source/jena-4.6.0-source-release.zip">jena-4.6.0-source-release.zip</a></td>
+<td align="center"><a href="https://downloads.apache.org/jena/source/jena-4.6.0-source-release.zip.sha512">SHA512</a></td>
+<td align="center"><a href="https://downloads.apache.org/jena/source/jena-4.6.0-source-release.zip.asc">PGP</a></td>
 </tr>
 </tbody>
 </table>
@@ -206,14 +206,14 @@
 </thead>
 <tbody>
 <tr>
-<td><a href="[preferred]jena/binaries/apache-jena-fuseki-4.5.0.tar.gz">apache-jena-fuseki-4.5.0.tar.gz</a></td>
-<td align="center"><a href="https://downloads.apache.org/jena/binaries/apache-jena-fuseki-4.5.0.tar.gz.sha512">SHA512</a></td>
-<td align="center"><a href="https://downloads.apache.org/jena/binaries/apache-jena-fuseki-4.5.0.tar.gz.asc">PGP</a></td>
+<td><a href="[preferred]jena/binaries/apache-jena-fuseki-4.6.0.tar.gz">apache-jena-fuseki-4.6.0.tar.gz</a></td>
+<td align="center"><a href="https://downloads.apache.org/jena/binaries/apache-jena-fuseki-4.6.0.tar.gz.sha512">SHA512</a></td>
+<td align="center"><a href="https://downloads.apache.org/jena/binaries/apache-jena-fuseki-4.6.0.tar.gz.asc">PGP</a></td>
 </tr>
 <tr>
-<td><a href="[preferred]jena/binaries/apache-jena-fuseki-4.5.0.zip">apache-jena-fuseki-4.5.0.zip</a></td>
-<td align="center"><a href="https://downloads.apache.org/jena/binaries/apache-jena-fuseki-4.5.0.zip.sha512">SHA512</a></td>
-<td align="center"><a href="https://downloads.apache.org/jena/binaries/apache-jena-fuseki-4.5.0.zip.asc">PGP</a></td>
+<td><a href="[preferred]jena/binaries/apache-jena-fuseki-4.6.0.zip">apache-jena-fuseki-4.6.0.zip</a></td>
+<td align="center"><a href="https://downloads.apache.org/jena/binaries/apache-jena-fuseki-4.6.0.zip.sha512">SHA512</a></td>
+<td align="center"><a href="https://downloads.apache.org/jena/binaries/apache-jena-fuseki-4.6.0.zip.asc">PGP</a></td>
 </tr>
 </tbody>
 </table>
@@ -229,14 +229,14 @@ The binary distribution of libraries contains the APIs, SPARQL engine, the TDB n
 </thead>
 <tbody>
 <tr>
-<td><a href="[preferred]jena/binaries/apache-jena-4.5.0.tar.gz">apache-jena-4.5.0.tar.gz</a></td>
-<td align="center"><a href="https://downloads.apache.org/jena/binaries/apache-jena-4.5.0.tar.gz.sha512">SHA512</a></td>
-<td align="center"><a href="https://downloads.apache.org/jena/binaries/apache-jena-4.5.0.tar.gz.asc">PGP</a></td>
+<td><a href="[preferred]jena/binaries/apache-jena-4.6.0.tar.gz">apache-jena-4.6.0.tar.gz</a></td>
+<td align="center"><a href="https://downloads.apache.org/jena/binaries/apache-jena-4.6.0.tar.gz.sha512">SHA512</a></td>
+<td align="center"><a href="https://downloads.apache.org/jena/binaries/apache-jena-4.6.0.tar.gz.asc">PGP</a></td>
 </tr>
 <tr>
-<td><a href="[preferred]jena/binaries/apache-jena-4.5.0.zip">apache-jena-4.5.0.zip</a></td>
-<td align="center"><a href="https://downloads.apache.org/jena/binaries/apache-jena-4.5.0.zip.sha512">SHA512</a></td>
-<td align="center"><a href="https://downloads.apache.org/jena/binaries/apache-jena-4.5.0.zip.asc">PGP</a></td>
+<td><a href="[preferred]jena/binaries/apache-jena-4.6.0.zip">apache-jena-4.6.0.zip</a></td>
+<td align="center"><a href="https://downloads.apache.org/jena/binaries/apache-jena-4.6.0.zip.sha512">SHA512</a></td>
+<td align="center"><a href="https://downloads.apache.org/jena/binaries/apache-jena-4.6.0.zip.asc">PGP</a></td>
 </tr>
 </tbody>
 </table>
@@ -252,9 +252,9 @@ The binary distribution of Fuseki as a WAR file:
 </thead>
 <tbody>
 <tr>
-<td><a href="[preferred]jena/binaries/jena-fuseki-war-4.5.0.war">jena-fuseki-war-4.5.0.war</a></td>
-<td align="center"><a href="https://downloads.apache.org/jena/binaries/jena-fuseki-war-4.5.0.war.sha512">SHA512</a></td>
-<td align="center"><a href="https://downloads.apache.org/jena/binaries/jena-fuseki-war-4.5.0.war.asc">PGP</a></td>
+<td><a href="[preferred]jena/binaries/jena-fuseki-war-4.6.0.war">jena-fuseki-war-4.6.0.war</a></td>
+<td align="center"><a href="https://downloads.apache.org/jena/binaries/jena-fuseki-war-4.6.0.war.sha512">SHA512</a></td>
+<td align="center"><a href="https://downloads.apache.org/jena/binaries/jena-fuseki-war-4.6.0.war.asc">PGP</a></td>
 </tr>
 </tbody>
 </table>
diff --git a/content/download/maven.html b/content/download/maven.html
index 9c628def9..11be1e88e 100644
--- a/content/download/maven.html
+++ b/content/download/maven.html
@@ -257,6 +257,11 @@ structuring Jena development.</p>
     <td><code>jar</code></td>
     <td>ShEx engine for Jena.</td>
   </tr>
+  <tr>
+    <td><code>jena-serviceenhancer</code></td>
+    <td><code>jar</code></td>
+    <td>Bulk retrieval and caching for SERVICE clauses</td>
+  </tr>
   <tr>
     <td><code>jena-querybuilder</code></td>
     <td><code>jar</code></td>
diff --git a/content/index.xml b/content/index.xml
index 5355c1844..3aece85e8 100644
--- a/content/index.xml
+++ b/content/index.xml
@@ -1084,7 +1084,7 @@ What is an Assembler specification? An Assembler specification is an RDF descrip
       
       <guid>https://jena.apache.org/documentation/extras/</guid>
       <description>Jena Extra modules are modules that provide utilities and larger packages that make Apache Jena development or usage easier but that do not fall within the standard Jena framework.
-Sub Packages  Query Builder  </description>
+Sub Packages  Bulk retrieval and caching with SERVICE clauses Query Builder  </description>
     </item>
     
     <item>
diff --git a/content/sitemap.xml b/content/sitemap.xml
index 4183b751c..ae315cf39 100644
--- a/content/sitemap.xml
+++ b/content/sitemap.xml
@@ -84,7 +84,7 @@
   
   <url>
     <loc>https://jena.apache.org/download/</loc>
-    <lastmod>2022-05-01T16:21:01+01:00</lastmod>
+    <lastmod>2022-08-20T12:07:07+01:00</lastmod>
   </url>
   
   <url>
@@ -104,12 +104,12 @@
   
   <url>
     <loc>https://jena.apache.org/documentation/sparql-apis/</loc>
-    <lastmod>2022-02-06T18:02:48+00:00</lastmod>
+    <lastmod>2022-08-20T12:05:43+01:00</lastmod>
   </url>
   
   <url>
     <loc>https://jena.apache.org/documentation/query/</loc>
-    <lastmod>2022-05-31T09:58:44+01:00</lastmod>
+    <lastmod>2022-08-20T12:20:18+01:00</lastmod>
   </url>
   
   <url>
@@ -129,7 +129,7 @@
   
   <url>
     <loc>https://jena.apache.org/documentation/query/service.html</loc>
-    <lastmod>2020-10-23T09:28:24+01:00</lastmod>
+    <lastmod>2022-08-20T12:05:43+01:00</lastmod>
   </url>
   
   <url>
@@ -334,7 +334,7 @@
   
   <url>
     <loc>https://jena.apache.org/download.html</loc>
-    <lastmod>2022-05-01T16:21:01+01:00</lastmod>
+    <lastmod>2022-08-20T12:20:18+01:00</lastmod>
   </url>
   
   <url>
@@ -494,7 +494,7 @@
   
   <url>
     <loc>https://jena.apache.org/documentation/sparql-apis/http-auth.html</loc>
-    <lastmod>2021-11-15T19:40:46+00:00</lastmod>
+    <lastmod>2022-08-20T12:04:21+01:00</lastmod>
   </url>
   
   <url>
@@ -529,7 +529,7 @@
   
   <url>
     <loc>https://jena.apache.org/documentation/extras/</loc>
-    <lastmod>2020-02-28T13:09:12+01:00</lastmod>
+    <lastmod>2022-08-20T12:20:18+01:00</lastmod>
   </url>
   
   <url>
@@ -1139,7 +1139,7 @@
   
   <url>
     <loc>https://jena.apache.org/download/maven.html</loc>
-    <lastmod>2021-09-17T20:43:29+01:00</lastmod>
+    <lastmod>2022-08-20T12:20:18+01:00</lastmod>
   </url>
   
   <url>