Marc The fix for this has been merged
You can grab a snapshot build with a fix per http://jena.apache.org/download/maven.html although it will take an hour or so before this becomes available or build for yourself from master Rob On 05/03/2018, 10:40, "agate.m...@gmail.com" <agate.m...@gmail.com> wrote: On 2018/03/05 10:24:46, Rob Vesse <rve...@dotnetrdf.org> wrote: > FYI your second example has mismatched brackets in the FILTER which leads to a SPARQL parser error once the underlying ParameterizedSparlString bug is fixed > > Rob > > On 04/03/2018, 22:07, "agate.m...@gmail.com" <agate.m...@gmail.com> wrote: > > Here is a piece of code that illustrates the issue and its context described in my previous message : > > public static void main(String[] args){ > String prefixes="PREFIX : <http://purl.bdrc.io/ontology/core/>\n" + > " PREFIX skos: <http://www.w3.org/2004/02/skos/core#>\n" + > " PREFIX text: <http://jena.apache.org/text#>" ; > HashMap<String,String> map=new HashMap<>(); > map.put("L_name", "\"rgyud bla ma\""); > map.put("LG_name", "bo-x-ewts"); > String test1=prefixes+ "select ?comment (GROUP_CONCAT(DISTINCT ?comment_type; SEPARATOR=\" <>" + > "\") AS ?comment_types) ?root_name\n" + > "where {\n" + > " (?root ?score ?root_name) text:query ?L_name .\n" + > " ?comment :workIsAbout ?root;\n" + > " :workGenre ?g .\n" + > " ?g skos:prefLabel ?comment_type .\n" + > "}\n"+ > "group by ?comment ?root_name"; > ParameterizedSparqlString queryStr = new ParameterizedSparqlString(test1); > queryStr.setLiteral("L_name", map.get("L_name"),map.get("LG_name")); > Query q1=queryStr.asQuery(); > String test2=prefixes+ "select ?comment (GROUP_CONCAT(DISTINCT ?comment_type; SEPARATOR=\" <>" + > "\") AS ?comment_types) ?root_name\n" + > "where {\n" + > " (?root ?score ?root_name) text:query ?L_name .\n" + > " ?comment :workIsAbout ?root;\n" + > " :workGenre ?g .\n" + > " ?g skos:prefLabel ?comment_type .\n" + > " FILTER ((contains(?comment_type, \"commentary\" ))\n" + > "}\n" + > "group by ?comment ?root_name"; > ParameterizedSparqlString queryStr2 = new ParameterizedSparqlString(test2); > queryStr2.setLiteral("L_name", map.get("L_name"),map.get("LG_name")); > Query q2=queryStr2.asQuery(); > } > > Marc > > > > > > Thanks a lot Rob. The mismatched brackets come from the wrong minimizing of the actual request !