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

andy pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/jena.git

commit ff27e3df401ca5cbff414906d64ad9d026e16d7f
Author: Andy Seaborne <[email protected]>
AuthorDate: Sun May 4 10:34:24 2025 +0100

    Format white space
---
 .../apache/jena/sparql/lang/LabelToNodeMap.java    |  46 +++---
 .../apache/jena/sparql/lang/ParserSPARQL10.java    |  30 ++--
 .../apache/jena/sparql/lang/ParserSPARQL11.java    |  24 +--
 .../jena/sparql/lang/ParserSPARQL11Update.java     |  18 +--
 .../apache/jena/sparql/lang/ParserSPARQL12.java    |  24 +--
 .../jena/sparql/lang/ParserSPARQL12Update.java     |  18 +--
 .../apache/jena/sparql/lang/QueryParserBase.java   |  22 +--
 .../org/apache/jena/sparql/lang/SPARQLParser.java  |  14 +-
 .../apache/jena/sparql/lang/SPARQLParserBase.java  | 122 +++++++--------
 .../jena/sparql/lang/SPARQLParserFactory.java      |   2 +-
 .../org/apache/jena/sparql/lang/UpdateParser.java  |  12 +-
 .../jena/sparql/lang/UpdateParserFactory.java      |   2 +-
 .../jena/sparql/lang/UpdateParserRegistry.java     |  46 +++---
 .../org/apache/jena/sparql/lang/TestUnescape.java  |  56 +++----
 .../org/apache/jena/sparql/lang/TestVarScope.java  | 165 +++++++++++----------
 15 files changed, 302 insertions(+), 299 deletions(-)

diff --git 
a/jena-arq/src/main/java/org/apache/jena/sparql/lang/LabelToNodeMap.java 
b/jena-arq/src/main/java/org/apache/jena/sparql/lang/LabelToNodeMap.java
index 532f6c168b..a7d2bb93bd 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/lang/LabelToNodeMap.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/lang/LabelToNodeMap.java
@@ -18,15 +18,15 @@
 
 package org.apache.jena.sparql.lang;
 
-import java.util.HashMap ;
-import java.util.Map ;
-import java.util.Set ;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Set;
 
-import org.apache.jena.graph.Node ;
-import org.apache.jena.graph.NodeFactory ;
+import org.apache.jena.graph.Node;
+import org.apache.jena.graph.NodeFactory;
 import org.apache.jena.riot.lang.LabelToNode;
-import org.apache.jena.sparql.ARQConstants ;
-import org.apache.jena.sparql.core.VarAlloc ;
+import org.apache.jena.sparql.ARQConstants;
+import org.apache.jena.sparql.core.VarAlloc;
 
 
 /** Map from _:* form to bNodes or variables.
@@ -36,13 +36,13 @@ import org.apache.jena.sparql.core.VarAlloc ;
 public class LabelToNodeMap
 {
 
-    private Map<String, Node> bNodeLabels = new HashMap<>() ;
+    private Map<String, Node> bNodeLabels = new HashMap<>();
 
     // Variables or bNodes?
     // True means variables (query pattern)
     // False means blank node (construct template)
-    boolean generateVars = false ;
-    VarAlloc allocator = null ;
+    boolean generateVars = false;
+    VarAlloc allocator = null;
 
     /**
      * Create blank nodes, with the same blank node returned for the same 
label.
@@ -52,7 +52,7 @@ public class LabelToNodeMap
      */
     @Deprecated
     public static LabelToNodeMap createBNodeMap()
-    { return new LabelToNodeMap(false, null) ; }
+    { return new LabelToNodeMap(false, null); }
 
     /**
      * Create variables (Var), starting from zero each time This means that 
parsing a
@@ -62,32 +62,32 @@ public class LabelToNodeMap
      * @return LabelToNodeMap
      */
     public static LabelToNodeMap createVarMap()
-    { return new LabelToNodeMap(true, new 
VarAlloc(ARQConstants.allocParserAnonVars) ) ; }
+    { return new LabelToNodeMap(true, new 
VarAlloc(ARQConstants.allocParserAnonVars) ); }
 
     private LabelToNodeMap(boolean genVars, VarAlloc allocator) {
-        generateVars = genVars ;
-        this.allocator = allocator ;
+        generateVars = genVars;
+        this.allocator = allocator;
     }
 
-    public Set<String> getLabels()  { return bNodeLabels.keySet() ; }
+    public Set<String> getLabels()  { return bNodeLabels.keySet(); }
 
     public Node asNode(String label) {
-        Node n = bNodeLabels.get(label) ;
+        Node n = bNodeLabels.get(label);
         if ( n != null )
-            return n ;
-        n = allocNode() ;
-        bNodeLabels.put(label, n) ;
-        return n ;
+            return n;
+        n = allocNode();
+        bNodeLabels.put(label, n);
+        return n;
     }
 
     public Node allocNode() {
         if ( generateVars )
-            return allocAnonVariable() ;
-        return NodeFactory.createBlankNode() ;
+            return allocAnonVariable();
+        return NodeFactory.createBlankNode();
     }
 
     private Node allocAnonVariable() {
-        return allocator.allocVar() ;
+        return allocator.allocVar();
     }
 
     public void clear() {
diff --git 
a/jena-arq/src/main/java/org/apache/jena/sparql/lang/ParserSPARQL10.java 
b/jena-arq/src/main/java/org/apache/jena/sparql/lang/ParserSPARQL10.java
index 1474ca4777..e0c7999b3e 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/lang/ParserSPARQL10.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/lang/ParserSPARQL10.java
@@ -18,22 +18,22 @@
 
 package org.apache.jena.sparql.lang;
 
-import java.io.Reader ;
-import java.io.StringReader ;
+import java.io.Reader;
+import java.io.StringReader;
 
-import org.apache.jena.atlas.logging.Log ;
-import org.apache.jena.query.Query ;
-import org.apache.jena.query.QueryException ;
-import org.apache.jena.query.QueryParseException ;
-import org.apache.jena.query.Syntax ;
-import org.apache.jena.shared.JenaException ;
-import org.apache.jena.sparql.lang.sparql_10.SPARQLParser10 ;
-import org.apache.jena.sparql.syntax.Element ;
-import org.apache.jena.sparql.syntax.Template ;
+import org.apache.jena.atlas.logging.Log;
+import org.apache.jena.query.Query;
+import org.apache.jena.query.QueryException;
+import org.apache.jena.query.QueryParseException;
+import org.apache.jena.query.Syntax;
+import org.apache.jena.shared.JenaException;
+import org.apache.jena.sparql.lang.sparql_10.SPARQLParser10;
+import org.apache.jena.sparql.syntax.Element;
+import org.apache.jena.sparql.syntax.Template;
 
 public class ParserSPARQL10 extends SPARQLParser
 {
-    private interface Action { void exec(SPARQLParser10 parser) throws 
Exception ; }
+    private interface Action { void exec(SPARQLParser10 parser) throws 
Exception; }
 
     @Override
     protected Query parse$(final Query query, String queryString) {
@@ -67,8 +67,8 @@ public class ParserSPARQL10 extends SPARQLParser
 
     // All throwable handling.
     private static void perform(Query query, String string, Action action) {
-        Reader in = new StringReader(string) ;
-        SPARQLParser10 parser = new SPARQLParser10(in) ;
+        Reader in = new StringReader(string);
+        SPARQLParser10 parser = new SPARQLParser10(in);
         try {
             query.setStrict(true);
             parser.setQuery(query);
@@ -92,7 +92,7 @@ public class ParserSPARQL10 extends SPARQLParser
             throw new QueryParseException(err.getMessage(), err, -1, -1);
         } catch (Throwable th) {
             Log.warn(ParserSPARQL10.class, "Unexpected throwable: ", th);
-            throw new QueryException(th.getMessage(), th) ;
+            throw new QueryException(th.getMessage(), th);
         }
     }
 }
diff --git 
a/jena-arq/src/main/java/org/apache/jena/sparql/lang/ParserSPARQL11.java 
b/jena-arq/src/main/java/org/apache/jena/sparql/lang/ParserSPARQL11.java
index f40b04f009..fc0b8fea77 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/lang/ParserSPARQL11.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/lang/ParserSPARQL11.java
@@ -18,22 +18,22 @@
 
 package org.apache.jena.sparql.lang;
 
-import java.io.Reader ;
-import java.io.StringReader ;
+import java.io.Reader;
+import java.io.StringReader;
 
-import org.apache.jena.atlas.logging.Log ;
-import org.apache.jena.query.Query ;
-import org.apache.jena.query.QueryException ;
-import org.apache.jena.query.QueryParseException ;
-import org.apache.jena.query.Syntax ;
-import org.apache.jena.shared.JenaException ;
-import org.apache.jena.sparql.lang.sparql_11.SPARQLParser11 ;
-import org.apache.jena.sparql.syntax.Element ;
-import org.apache.jena.sparql.syntax.Template ;
+import org.apache.jena.atlas.logging.Log;
+import org.apache.jena.query.Query;
+import org.apache.jena.query.QueryException;
+import org.apache.jena.query.QueryParseException;
+import org.apache.jena.query.Syntax;
+import org.apache.jena.shared.JenaException;
+import org.apache.jena.sparql.lang.sparql_11.SPARQLParser11;
+import org.apache.jena.sparql.syntax.Element;
+import org.apache.jena.sparql.syntax.Template;
 
 public class ParserSPARQL11 extends SPARQLParser
 {
-    private interface Action { void exec(SPARQLParser11 parser) throws 
Exception ; }
+    private interface Action { void exec(SPARQLParser11 parser) throws 
Exception; }
 
     @Override
     protected Query parse$(final Query query, String queryString) {
diff --git 
a/jena-arq/src/main/java/org/apache/jena/sparql/lang/ParserSPARQL11Update.java 
b/jena-arq/src/main/java/org/apache/jena/sparql/lang/ParserSPARQL11Update.java
index ae9a1b66a6..e76e1503cf 100644
--- 
a/jena-arq/src/main/java/org/apache/jena/sparql/lang/ParserSPARQL11Update.java
+++ 
b/jena-arq/src/main/java/org/apache/jena/sparql/lang/ParserSPARQL11Update.java
@@ -18,16 +18,16 @@
 
 package org.apache.jena.sparql.lang;
 
-import java.io.Reader ;
+import java.io.Reader;
 
-import org.apache.jena.atlas.logging.Log ;
-import org.apache.jena.query.QueryException ;
-import org.apache.jena.query.QueryParseException ;
-import org.apache.jena.shared.JenaException ;
+import org.apache.jena.atlas.logging.Log;
+import org.apache.jena.query.QueryException;
+import org.apache.jena.query.QueryParseException;
+import org.apache.jena.shared.JenaException;
 import org.apache.jena.sparql.core.Prologue;
-import org.apache.jena.sparql.lang.sparql_11.SPARQLParser11 ;
-import org.apache.jena.sparql.modify.UpdateSink ;
-import org.apache.jena.update.UpdateException ;
+import org.apache.jena.sparql.lang.sparql_11.SPARQLParser11;
+import org.apache.jena.sparql.modify.UpdateSink;
+import org.apache.jena.update.UpdateException;
 
 public class ParserSPARQL11Update extends UpdateParser
 {
@@ -35,7 +35,7 @@ public class ParserSPARQL11Update extends UpdateParser
 
     @Override
     protected void executeParse(UpdateSink sink, Prologue prologue, Reader r) {
-        SPARQLParser11 parser = null ;
+        SPARQLParser11 parser = null;
         try {
             parser = new SPARQLParser11(r);
             parser.setUpdate(prologue, sink);
diff --git 
a/jena-arq/src/main/java/org/apache/jena/sparql/lang/ParserSPARQL12.java 
b/jena-arq/src/main/java/org/apache/jena/sparql/lang/ParserSPARQL12.java
index a2baddb724..6db50ca3a7 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/lang/ParserSPARQL12.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/lang/ParserSPARQL12.java
@@ -18,22 +18,22 @@
 
 package org.apache.jena.sparql.lang;
 
-import java.io.Reader ;
-import java.io.StringReader ;
+import java.io.Reader;
+import java.io.StringReader;
 
-import org.apache.jena.atlas.logging.Log ;
-import org.apache.jena.query.Query ;
-import org.apache.jena.query.QueryException ;
-import org.apache.jena.query.QueryParseException ;
-import org.apache.jena.query.Syntax ;
-import org.apache.jena.shared.JenaException ;
-import org.apache.jena.sparql.lang.sparql_12.SPARQLParser12 ;
-import org.apache.jena.sparql.syntax.Element ;
-import org.apache.jena.sparql.syntax.Template ;
+import org.apache.jena.atlas.logging.Log;
+import org.apache.jena.query.Query;
+import org.apache.jena.query.QueryException;
+import org.apache.jena.query.QueryParseException;
+import org.apache.jena.query.Syntax;
+import org.apache.jena.shared.JenaException;
+import org.apache.jena.sparql.lang.sparql_12.SPARQLParser12;
+import org.apache.jena.sparql.syntax.Element;
+import org.apache.jena.sparql.syntax.Template;
 
 public class ParserSPARQL12 extends SPARQLParser
 {
-    private interface Action { void exec(SPARQLParser12 parser) throws 
Exception ; }
+    private interface Action { void exec(SPARQLParser12 parser) throws 
Exception; }
 
     @Override
     protected Query parse$(final Query query, String queryString) {
diff --git 
a/jena-arq/src/main/java/org/apache/jena/sparql/lang/ParserSPARQL12Update.java 
b/jena-arq/src/main/java/org/apache/jena/sparql/lang/ParserSPARQL12Update.java
index ced6ba56bc..40313c8b8b 100644
--- 
a/jena-arq/src/main/java/org/apache/jena/sparql/lang/ParserSPARQL12Update.java
+++ 
b/jena-arq/src/main/java/org/apache/jena/sparql/lang/ParserSPARQL12Update.java
@@ -18,16 +18,16 @@
 
 package org.apache.jena.sparql.lang;
 
-import java.io.Reader ;
+import java.io.Reader;
 
-import org.apache.jena.atlas.logging.Log ;
-import org.apache.jena.query.QueryException ;
-import org.apache.jena.query.QueryParseException ;
-import org.apache.jena.shared.JenaException ;
+import org.apache.jena.atlas.logging.Log;
+import org.apache.jena.query.QueryException;
+import org.apache.jena.query.QueryParseException;
+import org.apache.jena.shared.JenaException;
 import org.apache.jena.sparql.core.Prologue;
-import org.apache.jena.sparql.lang.sparql_12.SPARQLParser12 ;
-import org.apache.jena.sparql.modify.UpdateSink ;
-import org.apache.jena.update.UpdateException ;
+import org.apache.jena.sparql.lang.sparql_12.SPARQLParser12;
+import org.apache.jena.sparql.modify.UpdateSink;
+import org.apache.jena.update.UpdateException;
 
 public class ParserSPARQL12Update extends UpdateParser
 {
@@ -35,7 +35,7 @@ public class ParserSPARQL12Update extends UpdateParser
 
     @Override
     protected void executeParse(UpdateSink sink, Prologue prologue, Reader r) {
-        SPARQLParser12 parser = null ;
+        SPARQLParser12 parser = null;
         try {
             parser = new SPARQLParser12(r);
             parser.setUpdate(prologue, sink);
diff --git 
a/jena-arq/src/main/java/org/apache/jena/sparql/lang/QueryParserBase.java 
b/jena-arq/src/main/java/org/apache/jena/sparql/lang/QueryParserBase.java
index 122a2d2e9b..398273125f 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/lang/QueryParserBase.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/lang/QueryParserBase.java
@@ -59,18 +59,18 @@ import org.slf4j.LoggerFactory;
 /** Base class parsers, mainly SPARQL related */
 public class QueryParserBase {
 
-    protected final Node XSD_TRUE       = NodeConst.nodeTrue ;
-    protected final Node XSD_FALSE      = NodeConst.nodeFalse ;
+    protected final Node XSD_TRUE       = NodeConst.nodeTrue;
+    protected final Node XSD_FALSE      = NodeConst.nodeFalse;
 
-    protected final Node nRDFtype       = NodeConst.nodeRDFType ;
+    protected final Node nRDFtype       = NodeConst.nodeRDFType;
 
-    protected final Node nRDFnil        = NodeConst.nodeNil ;
-    protected final Node nRDFfirst      = NodeConst.nodeFirst ;
-    protected final Node nRDFrest       = NodeConst.nodeRest ;
+    protected final Node nRDFnil        = NodeConst.nodeNil;
+    protected final Node nRDFfirst      = NodeConst.nodeFirst;
+    protected final Node nRDFrest       = NodeConst.nodeRest;
 
-    protected final Node nRDFsubject    = RDF.Nodes.subject ;
-    protected final Node nRDFpredicate  = RDF.Nodes.predicate ;
-    protected final Node nRDFobject     = RDF.Nodes.object ;
+    protected final Node nRDFsubject    = RDF.Nodes.subject;
+    protected final Node nRDFpredicate  = RDF.Nodes.predicate;
+    protected final Node nRDFobject     = RDF.Nodes.object;
 
     protected final Node nRDFreifies = RDF.Nodes.reifies;
 
@@ -215,7 +215,7 @@ public class QueryParserBase {
     // Because of Java (Java strings have surrogate pairs) we only detect 
singleton surrogates.
     protected void checkString(String string, int line, int column) {
         // Checks for bare surrogate pairs.
-        for ( int i = 0 ; i < string.length() ; i++ ) {
+        for ( int i = 0; i < string.length(); i++ ) {
             // Not "codePointAt" which does surrogate processing.
             char ch = string.charAt(i);
 
@@ -667,7 +667,7 @@ public class QueryParserBase {
         int len = s.length();
         StringBuilder sb = new StringBuilder();
 
-        for ( int i = 0 ; i < len ; i++ ) {
+        for ( int i = 0; i < len; i++ ) {
             char ch = s.charAt(i);
             // Keep line and column numbers.
             switch (ch) {
diff --git 
a/jena-arq/src/main/java/org/apache/jena/sparql/lang/SPARQLParser.java 
b/jena-arq/src/main/java/org/apache/jena/sparql/lang/SPARQLParser.java
index a0122b240a..27d5e9b958 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/lang/SPARQLParser.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/lang/SPARQLParser.java
@@ -18,9 +18,9 @@
 
 package org.apache.jena.sparql.lang;
 
-import org.apache.jena.query.Query ;
-import org.apache.jena.query.QueryParseException ;
-import org.apache.jena.query.Syntax ;
+import org.apache.jena.query.Query;
+import org.apache.jena.query.QueryParseException;
+import org.apache.jena.query.Syntax;
 
 /** This class provides the root of lower level access to all the parsers.
  *  Each subclass hides the details of the per-language exception handlers and 
other
@@ -30,13 +30,13 @@ import org.apache.jena.query.Syntax ;
 public abstract class SPARQLParser
 {
     public final Query parse(Query query, String queryString) throws 
QueryParseException {
-        Query parsedQuery = parse$(query, queryString) ;
-        validateParsedQuery(parsedQuery) ;
+        Query parsedQuery = parse$(query, queryString);
+        validateParsedQuery(parsedQuery);
         parsedQuery.resetResultVars();
-        return parsedQuery ;
+        return parsedQuery;
     }
 
-    protected abstract Query parse$(Query query, String queryString) throws 
QueryParseException ;
+    protected abstract Query parse$(Query query, String queryString) throws 
QueryParseException;
 
     public static boolean canParse(Syntax syntaxURI) {
         return SPARQLParserRegistry.get().containsFactory(syntaxURI);
diff --git 
a/jena-arq/src/main/java/org/apache/jena/sparql/lang/SPARQLParserBase.java 
b/jena-arq/src/main/java/org/apache/jena/sparql/lang/SPARQLParserBase.java
index 4af45c042f..13d4aaa47c 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/lang/SPARQLParserBase.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/lang/SPARQLParserBase.java
@@ -18,19 +18,19 @@
 
 package org.apache.jena.sparql.lang;
 
-import java.util.* ;
-
-import org.apache.jena.graph.Node ;
-import org.apache.jena.query.Query ;
-import org.apache.jena.query.QueryParseException ;
-import org.apache.jena.sparql.ARQInternalErrorException ;
-import org.apache.jena.sparql.core.Prologue ;
-import org.apache.jena.sparql.core.Var ;
-import org.apache.jena.sparql.engine.binding.Binding ;
+import java.util.*;
+
+import org.apache.jena.graph.Node;
+import org.apache.jena.query.Query;
+import org.apache.jena.query.QueryParseException;
+import org.apache.jena.sparql.ARQInternalErrorException;
+import org.apache.jena.sparql.core.Prologue;
+import org.apache.jena.sparql.core.Var;
+import org.apache.jena.sparql.engine.binding.Binding;
 import org.apache.jena.sparql.engine.binding.BindingBuilder;
-import org.apache.jena.sparql.modify.UpdateSink ;
-import org.apache.jena.sparql.modify.request.* ;
-import org.apache.jena.update.Update ;
+import org.apache.jena.sparql.modify.UpdateSink;
+import org.apache.jena.sparql.modify.request.*;
+import org.apache.jena.update.Update;
 
 /** Class that has all the parse event operations and other query/update 
specific things */
 public class SPARQLParserBase extends QueryParserBase {
@@ -44,37 +44,37 @@ public class SPARQLParserBase extends QueryParserBase {
         setPrologue(q);
     }
 
-    public Query getQuery() { return query ; }
+    public Query getQuery() { return query; }
 
     // The ARQ parser is both query and update languages.
 
 //    // ---- SPARQL/Update (Submission)
-//    private UpdateRequest requestSubmission = null ;
+//    private UpdateRequest requestSubmission = null;
 //
-//    protected UpdateRequest getUpdateRequestSubmission() { return 
requestSubmission ; }
+//    protected UpdateRequest getUpdateRequestSubmission() { return 
requestSubmission; }
 //    public void setUpdateRequest(UpdateRequest request)
 //    {
-//        setPrologue(request) ;
-//        this.requestSubmission = request ;
+//        setPrologue(request);
+//        this.requestSubmission = request;
 //        // And create a query because we may have nested selects.
-//        this.query = new Query () ;
+//        this.query = new Query ();
 //    }
 
-    private UpdateSink sink = null ;
+    private UpdateSink sink = null;
 
     // Places to push settings across points where we reset.
-    private boolean oldBNodesAreVariables ;
-    private boolean oldBNodesAreAllowed ;
+    private boolean oldBNodesAreVariables;
+    private boolean oldBNodesAreAllowed;
 
     // Count of subSelect nesting.
     // Level 0 is top level.
     // Level -1 is not in a pattern WHERE clause.
-    private int queryLevel = -1 ;
-    private Deque<Set<String>>    stackPreviousLabels = new ArrayDeque<>() ;
-    private Deque<LabelToNodeMap> stackCurrentLabels = new ArrayDeque<>() ;
+    private int queryLevel = -1;
+    private Deque<Set<String>>    stackPreviousLabels = new ArrayDeque<>();
+    private Deque<LabelToNodeMap> stackCurrentLabels = new ArrayDeque<>();
 
     public void setUpdate(Prologue prologue, UpdateSink sink) {
-        this.sink = sink ;
+        this.sink = sink;
         this.query = new Query();
         setPrologue(prologue);
     }
@@ -88,10 +88,10 @@ public class SPARQLParserBase extends QueryParserBase {
     protected void finishUpdateRequest()   {}
 
 //    protected void startBasicGraphPattern()
-//    { activeLabelMap.clear() ; }
+//    { activeLabelMap.clear(); }
 //
 //    protected void endBasicGraphPattern()
-//    { oldLabels.addAll(activeLabelMap.getLabels()) ; }
+//    { oldLabels.addAll(activeLabelMap.getLabels()); }
 
     protected void startUpdateOperation()  {}
     protected void finishUpdateOperation() {}
@@ -176,9 +176,9 @@ public class SPARQLParserBase extends QueryParserBase {
     private static UpdateVisitor v = new UpdateVisitorBase() {
         @Override
         public void visit(UpdateModify mod) {
-            SyntaxVarScope.checkElement(mod.getWherePattern()) ;
+            SyntaxVarScope.checkElement(mod.getWherePattern());
         }
-    } ;
+    };
 
     private void verifyUpdate(Update update) {
         update.visit(v);
@@ -194,13 +194,13 @@ public class SPARQLParserBase extends QueryParserBase {
 
     protected void pushQuery() {
         if ( query == null )
-            throw new ARQInternalErrorException("Parser query object is null") 
;
-        stack.push(query) ;
+            throw new ARQInternalErrorException("Parser query object is null");
+        stack.push(query);
     }
 
     protected void startSubSelect(int line, int col) {
         pushQuery();
-        query = newSubQuery(getPrologue()) ;
+        query = newSubQuery(getPrologue());
     }
 
     protected Query newSubQuery(Prologue progloue) {
@@ -214,89 +214,89 @@ public class SPARQLParserBase extends QueryParserBase {
     }
 
     protected Query endSubSelect(int line, int column) {
-        Query subQuery = query ;
+        Query subQuery = query;
         if ( ! subQuery.isSelectType() )
-            throwParseException("Subquery not a SELECT query", line, column) ;
+            throwParseException("Subquery not a SELECT query", line, column);
         popQuery();
-        return subQuery ;
+        return subQuery;
     }
 
-    private List<Var> variables = null ;
-    private List<Binding> values = null ;
+    private List<Var> variables = null;
+    private List<Binding> values = null;
     private BindingBuilder rowBuilder;
-    private int currentColumn = -1 ;
+    private int currentColumn = -1;
 
     // Trailing VALUES.
     protected void startValuesClause(int line, int col) {
-        variables = new ArrayList<>() ;
-        values = new ArrayList<>() ;
+        variables = new ArrayList<>();
+        values = new ArrayList<>();
         rowBuilder = Binding.builder();
     }
 
     protected void finishValuesClause(int line, int col)
     {
-        getQuery().setValuesDataBlock(variables, values) ;
+        getQuery().setValuesDataBlock(variables, values);
     }
 
     // ElementData. VALUES in the WHERE clause.
     protected void startInlineData(List<Var> vars, List<Binding> rows, int 
line, int col) {
-        variables = vars ;
-        values = rows ;
+        variables = vars;
+        values = rows;
         rowBuilder = Binding.builder();
     }
 
     protected void finishInlineData(int line, int col)
     {}
 
-    protected void emitDataBlockVariable(Var v)                     { 
variables.add(v) ; }
+    protected void emitDataBlockVariable(Var v)                     { 
variables.add(v); }
 
     protected void startDataBlockValueRow(int line, int col) {
         rowBuilder.reset();
-        currentColumn = -1 ;
+        currentColumn = -1;
     }
 
     protected void emitDataBlockValue(Node n, int line, int col) {
-        currentColumn++ ;
+        currentColumn++;
 
         if ( currentColumn >= variables.size() )
             // Exception will be thrown later when we have the complete row 
count.
-            return ;
+            return;
 
-        Var v = variables.get(currentColumn) ;
+        Var v = variables.get(currentColumn);
         if ( n != null && ! n.isConcrete() ) {
-            String msg = QueryParseException.formatMessage("Term is not 
concrete: "+n, line, col) ;
-            throw new QueryParseException(msg, line, col) ;
+            String msg = QueryParseException.formatMessage("Term is not 
concrete: "+n, line, col);
+            throw new QueryParseException(msg, line, col);
         }
         if ( n != null )
-            rowBuilder.add(v, n) ;
+            rowBuilder.add(v, n);
     }
 
     protected void finishDataBlockValueRow(int line, int col) {
         //if ( variables.size() != currentValueRow().size() )
         if ( currentColumn+1 != variables.size() )
         {
-            String msg = String.format("Mismatch: %d variables but %d 
values",variables.size(), currentColumn+1) ;
-            msg = QueryParseException.formatMessage(msg, line, col) ;
-            throw new QueryParseException(msg, line , col) ;
+            String msg = String.format("Mismatch: %d variables but %d 
values",variables.size(), currentColumn+1);
+            msg = QueryParseException.formatMessage(msg, line, col);
+            throw new QueryParseException(msg, line , col);
         }
         values.add(rowBuilder.build());
     }
 
     private void pushLabelState() {
         // Hide used labels already tracked.
-        stackPreviousLabels.push(previousLabels) ;
-        stackCurrentLabels.push(activeLabelMap) ;
-        previousLabels = new HashSet<>() ;
-        activeLabelMap.clear() ;
+        stackPreviousLabels.push(previousLabels);
+        stackCurrentLabels.push(activeLabelMap);
+        previousLabels = new HashSet<>();
+        activeLabelMap.clear();
     }
 
     private void popLabelState() {
-        previousLabels = stackPreviousLabels.pop() ;
+        previousLabels = stackPreviousLabels.pop();
         activeLabelMap = stackCurrentLabels.pop();
     }
 
     private void clearLabelState() {
-        activeLabelMap.clear() ;
-        previousLabels.clear() ;
+        activeLabelMap.clear();
+        previousLabels.clear();
     }
 }
diff --git 
a/jena-arq/src/main/java/org/apache/jena/sparql/lang/SPARQLParserFactory.java 
b/jena-arq/src/main/java/org/apache/jena/sparql/lang/SPARQLParserFactory.java
index eeb85061a3..d7aa6526cb 100644
--- 
a/jena-arq/src/main/java/org/apache/jena/sparql/lang/SPARQLParserFactory.java
+++ 
b/jena-arq/src/main/java/org/apache/jena/sparql/lang/SPARQLParserFactory.java
@@ -18,7 +18,7 @@
 
 package org.apache.jena.sparql.lang;
 
-import org.apache.jena.query.Syntax ;
+import org.apache.jena.query.Syntax;
 
 public interface SPARQLParserFactory
 {
diff --git 
a/jena-arq/src/main/java/org/apache/jena/sparql/lang/UpdateParser.java 
b/jena-arq/src/main/java/org/apache/jena/sparql/lang/UpdateParser.java
index 8f6382424c..1a1f4fc8dc 100644
--- a/jena-arq/src/main/java/org/apache/jena/sparql/lang/UpdateParser.java
+++ b/jena-arq/src/main/java/org/apache/jena/sparql/lang/UpdateParser.java
@@ -19,16 +19,16 @@
 package org.apache.jena.sparql.lang;
 
 import java.io.FileReader;
-import java.io.InputStream ;
-import java.io.Reader ;
+import java.io.InputStream;
+import java.io.Reader;
 import java.io.StringReader;
 
 import org.apache.jena.atlas.logging.Log;
-import org.apache.jena.query.QueryParseException ;
-import org.apache.jena.query.Syntax ;
+import org.apache.jena.query.QueryParseException;
+import org.apache.jena.query.Syntax;
 import org.apache.jena.sparql.core.Prologue;
-import org.apache.jena.sparql.modify.UpdateSink ;
-import org.apache.jena.util.FileUtils ;
+import org.apache.jena.sparql.modify.UpdateSink;
+import org.apache.jena.util.FileUtils;
 
 /** 
  * This class provides the root of lower level access to all the update 
parsers.
diff --git 
a/jena-arq/src/main/java/org/apache/jena/sparql/lang/UpdateParserFactory.java 
b/jena-arq/src/main/java/org/apache/jena/sparql/lang/UpdateParserFactory.java
index 72b05af19a..b42ba6b013 100644
--- 
a/jena-arq/src/main/java/org/apache/jena/sparql/lang/UpdateParserFactory.java
+++ 
b/jena-arq/src/main/java/org/apache/jena/sparql/lang/UpdateParserFactory.java
@@ -18,7 +18,7 @@
 
 package org.apache.jena.sparql.lang;
 
-import org.apache.jena.query.Syntax ;
+import org.apache.jena.query.Syntax;
 
 public interface UpdateParserFactory
 {
diff --git 
a/jena-arq/src/main/java/org/apache/jena/sparql/lang/UpdateParserRegistry.java 
b/jena-arq/src/main/java/org/apache/jena/sparql/lang/UpdateParserRegistry.java
index 69710d68c2..c96bf350b7 100644
--- 
a/jena-arq/src/main/java/org/apache/jena/sparql/lang/UpdateParserRegistry.java
+++ 
b/jena-arq/src/main/java/org/apache/jena/sparql/lang/UpdateParserRegistry.java
@@ -18,15 +18,15 @@
 
 package org.apache.jena.sparql.lang;
 
-import java.util.HashMap ;
-import java.util.Map ;
+import java.util.HashMap;
+import java.util.Map;
 
-import org.apache.jena.query.Syntax ;
+import org.apache.jena.query.Syntax;
 
 public class UpdateParserRegistry
 {
     // the map contains the registered factories hashed by the syntaxes
-    private Map<Syntax, UpdateParserFactory> factories = new HashMap<>() ;
+    private Map<Syntax, UpdateParserFactory> factories = new HashMap<>();
 
     // Singleton
     static UpdateParserRegistry registry = null;
@@ -39,30 +39,30 @@ public class UpdateParserRegistry
     private UpdateParserRegistry() {}
 
     private static synchronized void init() {
-        UpdateParserRegistry reg = new UpdateParserRegistry() ;
+        UpdateParserRegistry reg = new UpdateParserRegistry();
 
         reg.add(Syntax.syntaxSPARQL_11,
                 new UpdateParserFactory() {
             @Override
-            public boolean accept( Syntax syntax ) { return 
Syntax.syntaxSPARQL_11.equals(syntax) ; }
+            public boolean accept( Syntax syntax ) { return 
Syntax.syntaxSPARQL_11.equals(syntax); }
             @Override
-            public UpdateParser create( Syntax syntax ) { return new 
ParserSPARQL11Update() ; } }) ;
+            public UpdateParser create( Syntax syntax ) { return new 
ParserSPARQL11Update(); } });
 
         reg.add(Syntax.syntaxSPARQL_12,
                 new UpdateParserFactory() {
             @Override
-            public boolean accept( Syntax syntax ) { return 
Syntax.syntaxSPARQL_12.equals(syntax) ; }
+            public boolean accept( Syntax syntax ) { return 
Syntax.syntaxSPARQL_12.equals(syntax); }
             @Override
-            public UpdateParser create( Syntax syntax ) { return new 
ParserSPARQL12Update() ; } }) ;
+            public UpdateParser create( Syntax syntax ) { return new 
ParserSPARQL12Update(); } });
 
         reg.add(Syntax.syntaxARQ,
                 new UpdateParserFactory() {
             @Override
-            public boolean accept(Syntax syntax ) { return 
Syntax.syntaxARQ.equals(syntax) ; }
+            public boolean accept(Syntax syntax ) { return 
Syntax.syntaxARQ.equals(syntax); }
             @Override
-            public UpdateParser create ( Syntax syntax ) { return new 
ParserARQUpdate() ; } }) ;
+            public UpdateParser create ( Syntax syntax ) { return new 
ParserARQUpdate(); } });
 
-        registry = reg ;
+        registry = reg;
     }
 
     /** Return a suitable factory for the given syntax
@@ -72,7 +72,7 @@ public class UpdateParserRegistry
      */
 
     public static UpdateParserFactory findFactory(Syntax syntax)
-    { return get().getFactory(syntax) ; }
+    { return get().getFactory(syntax); }
 
     /** Return a suitable parser for the given syntax
      *
@@ -81,7 +81,7 @@ public class UpdateParserRegistry
      */
 
     public static UpdateParser parser(Syntax syntax)
-    { return get().createParser(syntax) ; }
+    { return get().createParser(syntax); }
 
     /** Return a suitable parser factory for the given syntax
      *
@@ -90,7 +90,7 @@ public class UpdateParserRegistry
      */
 
     public UpdateParserFactory getFactory(Syntax syntax)
-    { return factories.get(syntax) ; }
+    { return factories.get(syntax); }
 
     /** Return a suitable parser for the given syntax
      *
@@ -99,8 +99,8 @@ public class UpdateParserRegistry
      */
 
     public UpdateParser createParser(Syntax syntax) {
-        UpdateParserFactory f = getFactory(syntax) ;
-        return ( f != null ) ? f.create(syntax) : null ;
+        UpdateParserFactory f = getFactory(syntax);
+        return ( f != null ) ? f.create(syntax) : null;
     }
 
     /** Register the given parser factory for the specified syntax.
@@ -108,7 +108,7 @@ public class UpdateParserRegistry
      *  given one.
      */
     public static void addFactory(Syntax syntax, UpdateParserFactory f)
-    { get().add(syntax, f) ; }
+    { get().add(syntax, f); }
 
     /** Register the given parser factory for the specified syntax.
      *  If another factory is registered for the syntax it is replaced by the
@@ -118,23 +118,23 @@ public class UpdateParserRegistry
     {
         if ( ! f.accept(syntax) )
             throw new IllegalArgumentException( "The given parser factory does 
not accept the specified syntax." );
-        factories.put(syntax, f) ;
+        factories.put(syntax, f);
     }
 
     /** Unregister the parser factory associated with the given syntax */
     public static void removeFactory(Syntax syntax)
-    { get().remove(syntax) ; }
+    { get().remove(syntax); }
 
     /** Unregister the parser factory associated with the given syntax */
     public void remove(Syntax syntax)
-    { factories.remove(syntax) ; }
+    { factories.remove(syntax); }
 
     /** Checks whether a parser factory is registered for the given syntax */
     public static boolean containsParserFactory(Syntax syntax)
-    { return get().containsFactory(syntax) ; }
+    { return get().containsFactory(syntax); }
 
     /** Checks whether a parser factory is registered for the given syntax */
     public boolean containsFactory(Syntax syntax)
-    { return factories.containsKey(syntax) ; }
+    { return factories.containsKey(syntax); }
 
 }
diff --git 
a/jena-arq/src/test/java/org/apache/jena/sparql/lang/TestUnescape.java 
b/jena-arq/src/test/java/org/apache/jena/sparql/lang/TestUnescape.java
index 1bd3765806..a80e241dcd 100644
--- a/jena-arq/src/test/java/org/apache/jena/sparql/lang/TestUnescape.java
+++ b/jena-arq/src/test/java/org/apache/jena/sparql/lang/TestUnescape.java
@@ -21,37 +21,37 @@ package org.apache.jena.sparql.lang;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.fail;
 
-import org.apache.jena.query.QueryParseException ;
-import org.junit.Test ;
+import org.apache.jena.query.QueryParseException;
+import org.junit.Test;
 
 public class TestUnescape
 {
-    @Test public void testEsc01() { execTest("x\\uabcd", "x\uabcd") ; }
-    @Test public void testEsc02() { execTest("\\uabcdx", "\uabcdx") ; }
-    @Test public void testEsc03() { execTest("1234\\uabcd1234", 
"1234\uabcd1234") ; }
-    @Test public void testEsc04() { execTestFail("\\X") ; }
-    @Test public void testEsc05() { execTestFail("\\Xz") ; }
-    @Test public void testEsc06() { execTestFail("a\\X") ; }
-    
-    @Test public void testEscUni01() { execTestFail("\\uabck") ; }
-    @Test public void testEscUni02() { execTestFail("\\uab") ; }
-    @Test public void testEscUni03() { execTestFail("\\uabc") ; }
-    @Test public void testEscUni04() { execTestFail("\\ua") ; }
-    @Test public void testEscUni05() { execTestFail("\\u") ; }
-    @Test public void testEscUni06() { execTestFail("\\") ; }
-    @Test public void testEscUni07() { execTest("\\u0020", " ") ; }
-    @Test public void testEscUni08() { execTest("\\uFFFF", "\uFFFF") ; }
-    @Test public void testEscUni09() { execTest("\\u0000", "\u0000") ; }
-    @Test public void testEscUni10() { execTestFail("\\U0000") ; }
-    @Test public void testEscUni11() { execTestFail("\\U0000A") ; }
-    @Test public void testEscUni12() { execTestFail("\\U0000AB") ; }
-    @Test public void testEscUni13() { execTestFail("\\U0000ABC") ; }
-    @Test public void testEscUni14() { execTest("\\U0000ABCD", "\uABCD") ; }
-    @Test public void testEscUni15() { execTestFail("\\U0000") ; }
-    @Test public void testEscUni16() { execTest("\\U00000000", "\u0000") ; }
-    @Test public void testEscUni17() { execTest("x\\tx\\nx\\r", "x\tx\nx\r") ; 
}
-    @Test public void testEscUni18() { execTest("x\\t\\n\\r", "x\t\n\r") ; }
-    
+    @Test public void testEsc01() { execTest("x\\uabcd", "x\uabcd"); }
+    @Test public void testEsc02() { execTest("\\uabcdx", "\uabcdx"); }
+    @Test public void testEsc03() { execTest("1234\\uabcd1234", 
"1234\uabcd1234"); }
+    @Test public void testEsc04() { execTestFail("\\X"); }
+    @Test public void testEsc05() { execTestFail("\\Xz"); }
+    @Test public void testEsc06() { execTestFail("a\\X"); }
+
+    @Test public void testEscUni01() { execTestFail("\\uabck"); }
+    @Test public void testEscUni02() { execTestFail("\\uab"); }
+    @Test public void testEscUni03() { execTestFail("\\uabc"); }
+    @Test public void testEscUni04() { execTestFail("\\ua"); }
+    @Test public void testEscUni05() { execTestFail("\\u"); }
+    @Test public void testEscUni06() { execTestFail("\\"); }
+    @Test public void testEscUni07() { execTest("\\u0020", " "); }
+    @Test public void testEscUni08() { execTest("\\uFFFF", "\uFFFF"); }
+    @Test public void testEscUni09() { execTest("\\u0000", "\u0000"); }
+    @Test public void testEscUni10() { execTestFail("\\U0000"); }
+    @Test public void testEscUni11() { execTestFail("\\U0000A"); }
+    @Test public void testEscUni12() { execTestFail("\\U0000AB"); }
+    @Test public void testEscUni13() { execTestFail("\\U0000ABC"); }
+    @Test public void testEscUni14() { execTest("\\U0000ABCD", "\uABCD"); }
+    @Test public void testEscUni15() { execTestFail("\\U0000"); }
+    @Test public void testEscUni16() { execTest("\\U00000000", "\u0000"); }
+    @Test public void testEscUni17() { execTest("x\\tx\\nx\\r", "x\tx\nx\r"); }
+    @Test public void testEscUni18() { execTest("x\\t\\n\\r", "x\t\n\r"); }
+
     private void execTestFail(String input) {
         try {
             String s = QueryParserBase.unescapeStr(input);
diff --git 
a/jena-arq/src/test/java/org/apache/jena/sparql/lang/TestVarScope.java 
b/jena-arq/src/test/java/org/apache/jena/sparql/lang/TestVarScope.java
index 6bc712e9d7..b0f0c3ee93 100644
--- a/jena-arq/src/test/java/org/apache/jena/sparql/lang/TestVarScope.java
+++ b/jena-arq/src/test/java/org/apache/jena/sparql/lang/TestVarScope.java
@@ -18,129 +18,132 @@
 
 package org.apache.jena.sparql.lang;
 
-import org.apache.jena.query.Query ;
-import org.apache.jena.query.QueryException ;
-import org.apache.jena.query.QueryFactory ;
-import org.junit.Test ;
+import org.apache.jena.query.Query;
+import org.apache.jena.query.QueryException;
+import org.apache.jena.query.QueryFactory;
+import org.junit.Test;
 
 public class TestVarScope
 {
     private static void scope(String queryStr)
     {
-        Query query = QueryFactory.create(queryStr) ;
+        Query query = QueryFactory.create(queryStr);
     }
-    
-    @Test public void scope_01() { scope("SELECT ?x { ?s ?p ?o }") ; }
-    @Test public void scope_02() { scope("SELECT ?s { ?s ?p ?o }") ; }
-    
-    @Test public void scope_03() { scope("SELECT (?o+1 AS ?x) { ?s ?p ?o }") ; 
}
-    
+
+    @Test public void scope_01() { scope("SELECT ?x { ?s ?p ?o }"); }
+    @Test public void scope_02() { scope("SELECT ?s { ?s ?p ?o }"); }
+
+    @Test public void scope_03() { scope("SELECT (?o+1 AS ?x) { ?s ?p ?o }"); }
+
     @Test(expected=QueryException.class)
-    public void scope_04() { scope("SELECT (?o+1 AS ?o) { ?s ?p ?o }") ; }
-    
+    public void scope_04() { scope("SELECT (?o+1 AS ?o) { ?s ?p ?o }"); }
+
     @Test(expected=QueryException.class)
-    public void scope_05() { scope("SELECT (?o+1 AS ?x) (?o+1 AS ?x) { ?s ?p 
?o }") ; }
+    public void scope_05() { scope("SELECT (?o+1 AS ?x) (?o+1 AS ?x) { ?s ?p 
?o }"); }
+
+    @Test public void scope_06() { scope("SELECT (?z+1 AS ?x) { ?s ?p ?o } 
GROUP BY (?o+5 AS ?z)"); }
 
-    @Test public void scope_06() { scope("SELECT (?z+1 AS ?x) { ?s ?p ?o } 
GROUP BY (?o+5 AS ?z)") ; }
-    
     @Test(expected=QueryException.class)
-    public void scope_07() { scope("SELECT (?o+1 AS ?x) { ?s ?p ?o } GROUP BY 
(?o+5 AS ?x)") ; }
+    public void scope_07() { scope("SELECT (?o+1 AS ?x) { ?s ?p ?o } GROUP BY 
(?o+5 AS ?x)"); }
 
-    @Test public void scope_08() { scope("SELECT (count(*) AS ?X) (?X+1 AS ?Z) 
{ ?s ?p ?o }") ; }
+    @Test public void scope_08() { scope("SELECT (count(*) AS ?X) (?X+1 AS ?Z) 
{ ?s ?p ?o }"); }
+
+    @Test public void scope_09() { scope("SELECT (count(*) AS ?X) (?X+?o AS 
?Z) { ?s ?p ?o } GROUP BY ?o"); }
+
+    @Test public void scope_10() { scope("SELECT (?o+1 AS ?x) { ?s ?p ?o MINUS 
{ ?s ?p ?x} } "); }
 
-    @Test public void scope_09() { scope("SELECT (count(*) AS ?X) (?X+?o AS 
?Z) { ?s ?p ?o } GROUP BY ?o") ; }
-    
-    @Test public void scope_10() { scope("SELECT (?o+1 AS ?x) { ?s ?p ?o MINUS 
{ ?s ?p ?x} } ") ; }
-    
     @Test(expected=QueryException.class)
-    public void scope_15() { scope("SELECT (?o+1 AS ?x) { { SELECT (123 AS ?x) 
{?s ?p ?o } } } ") ; }
-    
+    public void scope_15() { scope("SELECT (?o+1 AS ?x) { { SELECT (123 AS ?x) 
{?s ?p ?o } } } "); }
+
     @Test(expected=QueryException.class)
-    public void scope_16() { scope("SELECT (?o+1 AS ?o) { { SELECT (123 AS ?x) 
{?s ?p ?o } } } ") ; }
+    public void scope_16() { scope("SELECT (?o+1 AS ?o) { { SELECT (123 AS ?x) 
{?s ?p ?o } } } "); }
 
     @Test(expected=QueryException.class)
-    public void scope_17() { scope("SELECT (?o+1 AS ?o) { { SELECT (123 AS ?x) 
{?s ?p ?o FILTER(?x > 57)} } } ") ; }
+    public void scope_17() { scope("SELECT (?o+1 AS ?o) { { SELECT (123 AS ?x) 
{?s ?p ?o FILTER(?x > 57)} } } "); }
+
+    @Test public void scope_20() { scope("SELECT ?x { ?x ?p ?o } GROUP BY 
?x"); }
 
-    @Test public void scope_20() { scope("SELECT ?x { ?x ?p ?o } GROUP BY ?x") 
; }
-    
     @Test (expected=QueryException.class)
-    public void scope_21() { scope("SELECT ?o { ?x ?p ?o } GROUP BY ?x") ; }
+    public void scope_21() { scope("SELECT ?o { ?x ?p ?o } GROUP BY ?x"); }
 
     @Test(expected=QueryException.class)
-    public void scope_22() { scope("SELECT * { ?s ?p ?o BIND(5 AS ?o) }") ; }
-    
-    @Test public void scope_23() { scope("SELECT * { ?s ?p ?o { BIND(5 AS ?o) 
} }") ; }
- 
+    public void scope_22() { scope("SELECT * { ?s ?p ?o BIND(5 AS ?o) }"); }
+
+    @Test public void scope_23() { scope("SELECT * { ?s ?p ?o { BIND(5 AS ?o) 
} }"); }
+
     @Test(expected=QueryException.class)
-    public void scope_24() { scope("SELECT * { { ?s ?p ?o } BIND(5 AS ?o) }") 
; }
-    
-    @Test public void scope_25() { scope("SELECT * { { ?s ?p ?o } { BIND(5 AS 
?o) } }") ; }
-    
-    @Test public void scope_26() { scope("SELECT * { ?s ?p ?o OPTIONAL{?s ?p2 
?o2} BIND(?o2+5 AS ?z) }") ; }
+    public void scope_24() { scope("SELECT * { { ?s ?p ?o } BIND(5 AS ?o) }"); 
}
+
+    @Test public void scope_25() { scope("SELECT * { { ?s ?p ?o } { BIND(5 AS 
?o) } }"); }
+
+    @Test public void scope_26() { scope("SELECT * { ?s ?p ?o OPTIONAL{?s ?p2 
?o2} BIND(?o2+5 AS ?z) }"); }
 
     @Test(expected=QueryException.class)
-    public void scope_27() { scope("SELECT * { ?s ?p ?o OPTIONAL{?s ?p2 ?o2} 
BIND(5 AS ?o2) }") ; }
+    public void scope_27() { scope("SELECT * { ?s ?p ?o OPTIONAL{?s ?p2 ?o2} 
BIND(5 AS ?o2) }"); }
 
     @Test(expected=QueryException.class)
-    public void scope_28() { scope("SELECT * { { ?s ?p ?o OPTIONAL{?s ?p2 ?o2} 
} BIND(?o+5 AS ?o2) }") ; }
+    public void scope_28() { scope("SELECT * { { ?s ?p ?o OPTIONAL{?s ?p2 ?o2} 
} BIND(?o+5 AS ?o2) }"); }
 
     @Test(expected=QueryException.class)
-    public void scope_29() { scope("SELECT * { ?s ?p ?o OPTIONAL{?s ?p2 ?o2} 
BIND(5 AS ?o) }") ; }
+    public void scope_29() { scope("SELECT * { ?s ?p ?o OPTIONAL{?s ?p2 ?o2} 
BIND(5 AS ?o) }"); }
 
     @Test(expected=QueryException.class)
-    public void scope_30() { scope("SELECT * { { ?s ?p ?o } OPTIONAL{?s ?p2 
?o2} BIND(5 AS ?o) }") ; }
-    
+    public void scope_30() { scope("SELECT * { { ?s ?p ?o } OPTIONAL{?s ?p2 
?o2} BIND(5 AS ?o) }"); }
+
     @Test(expected=QueryException.class)
-    public void scope_34() { scope("SELECT * { { ?s ?p ?o } UNION {?s ?p2 ?o2} 
BIND(5 AS ?o) }") ; }
-    
+    public void scope_34() { scope("SELECT * { { ?s ?p ?o } UNION {?s ?p2 ?o2} 
BIND(5 AS ?o) }"); }
+
     @Test
-    public void scope_35() { scope("SELECT * { ?s1 ?p1 ?z { ?s ?p ?z } UNION { 
BIND(5 AS ?z) } }") ; }
-    
+    public void scope_35() { scope("SELECT * { ?s1 ?p1 ?z { ?s ?p ?z } UNION { 
BIND(5 AS ?z) } }"); }
+
     // Subqueries
-    
+
     @Test(expected=QueryException.class)
-    public void scope_50() { scope("SELECT * { SELECT (?o+1 AS ?o) { ?s ?p ?o 
}}") ; }
-    
+    public void scope_50() { scope("SELECT * { SELECT (?o+1 AS ?o) { ?s ?p ?o 
}}"); }
+
     @Test
-    public void scope_51()
-    {
-        scope("SELECT ?y { " +
-                       "{ { SELECT (?x AS ?y) { ?s ?p ?x } } } UNION { { 
SELECT (?x AS ?y) { ?s ?p ?x } } }" +
-                       "}") ;
+    public void scope_51() {
+        scope("SELECT ?y { " + "{ { SELECT (?x AS ?y) { ?s ?p ?x } } } UNION { 
{ SELECT (?x AS ?y) { ?s ?p ?x } } }" + "}");
     }
-    
-    @Test(expected=QueryException.class)
-    public void scope_52()
-    {
-        scope("SELECT ?y { " +
-                "{ { SELECT (?o+1 AS ?x) (?o+1 AS ?x) { ?s ?p ?o } } UNION { 
?s ?p ?x } }" +
-                "}") ;
+
+    @Test(expected = QueryException.class)
+    public void scope_52() {
+        scope("SELECT ?y { " + "{ { SELECT (?o+1 AS ?x) (?o+1 AS ?x) { ?s ?p 
?o } } UNION { ?s ?p ?x } }" + "}");
     }
-    
-    @Test(expected=QueryException.class)
-    public void scope_63()
-    {
+
+    @Test(expected = QueryException.class)
+    public void scope_63() {
         // Check nested things get checked.
-        scope("SELECT * { { ?s ?p ?o } UNION { ?s ?p ?o1 BIND(5 AS ?o1) } }") ;
+        scope("SELECT * { { ?s ?p ?o } UNION { ?s ?p ?o1 BIND(5 AS ?o1) } }");
     }
-    
-    @Test(expected=QueryException.class)
-    public void scope_64()
-    {
+
+    @Test(expected = QueryException.class)
+    public void scope_64() {
         // Check nested things get checked.
-        scope("SELECT * { { { ?s ?p ?o1 BIND(5 AS ?o1) } } }") ;
+        scope("SELECT * { { { ?s ?p ?o1 BIND(5 AS ?o1) } } }");
     }
-        
-    @Test(expected=QueryException.class)
-    public void scope_65()
-    {
-        scope("SELECT ( (?x+1) AS ?x ) {}") ;
+
+    @Test(expected = QueryException.class)
+    public void scope_65() {
+        scope("SELECT ( (?x+1) AS ?x ) {}");
     }
 
+    @Test(expected = QueryException.class)
+    public void scope_66() {
+        scope("SELECT ( (?x+1) AS ?y)  (2 AS ?x) {}");
+    }
 
-    @Test(expected=QueryException.class)
-    public void scope_66()
-    {
-        scope("SELECT ( (?x+1) AS ?y)  (2 AS ?x) {}") ;
+    // GH-3164
+    @Test public void scope_70() {
+        String qsVarScope = """
+                SELECT ?s (MIN(?v) as ?min) WHERE { ?s <value> ?v }
+                GROUP BY ?s
+                VALUES ?min { 2 5 }
+                """;
+        scope(qsVarScope);
+    }
+
+    @Test public void scope_71() {
+        scope("SELECT (MIN(?v) as ?min) WHERE {} VALUES ?min { 2 5 }");
     }
 }


Reply via email to