SmartDataAnalytics / RdfProcessingToolkit

Command line interface based RDF processing toolkit to run sequences of SPARQL statements ad-hoc on RDF datasets, streams of bindings and streams of named graphs with support for processing JSON, CSV and XML using function extensions
https://smartdataanalytics.github.io/RdfProcessingToolkit/
Other
39 stars 3 forks source link

Service Enhancer breaks literals in service clause #31

Open Aklakan opened 1 year ago

Aklakan commented 1 year ago

This issue actually needs to be fixed at the service enhancer jena plugin - but for now I document it here:

The following example incorrectly uses <env:S> (string substitution) rather than env://S (IRI substitution).

S=https://query.wikidata.org/sparql rpt integrate 'SELECT * { SERVICE <env:S> { <http://www.wikidata.org/entity/Q54837> ?p ?o } }'

This causes a NPE in my service enhancer plugin. The plugin should not interfere and just pass on the execution request to the engine.

Caused by: java.lang.NullPointerException: Cannot invoke "java.util.List.size()" because "opts" is null
    at org.apache.jena.sparql.service.enhancer.impl.ChainingServiceExecutorBulkServiceEnhancer.createExecution(ChainingServiceExecutorBulkServiceEnhancer.java:53) ~[jena-serviceenhancer-4.8.0-SNAPSHOT.jar:4.8.0-SNAPSHOT]
Aklakan commented 19 hours ago

The issue (and some more) are already fixed in https://github.com/Aklakan/jena/tree/se-fixes-2023-11-29 but I still need to separate the addressed issues into separate commits before opening the PR to Jena.