Repository navigation
SPARQL Anything 1.3.0 brings the engine in line with the Façade-X specification (v0.1). It supports the new Façade-X namespaces, renames fx:root to fx:Root while keeping backward compatibility, and adds a test suite that keeps the implementation aligned with the spec.
New in this release: xml:lang support for XML, automatic delimiter detection for TSV, preservation of base on output, and JSON numbers that keep their lexical form (exponent values are now typed xsd:double). The CLI also gains a --help option.
Most of the work went into hardening, driven by acceptance testing of the release candidates. Highlights:
- CLI: correct handling of multiple
-vbinding sets, proper non-zero exit codes on errors, acceptance of all documented RDF format names in-f, and-l <URL>now loads into the default graph. - Formats:
.jsonldfiles are read correctly, JSON slicing works withslice.size> 1,.svgzis decompressed, and archive and HTTP options behave as documented. - Data model: containers from different data sources no longer share blank nodes.
Documentation grows with new guides on slicing, the --profile option, parametric queries, and contributing as a developer. Releases are also leaner on Maven Central from now on: release candidates go to the snapshots repository, and published artifacts carry only the required checksums.
As part of this release we had 46 issues closed.
Bugs
- #663 Fix failing S3 integration test due to inaccessible MinIO image in CI
- #675 [CLI] -o with multiple -v binding sets overwrites output (only first gets a suffix)
- #677 [CLI] With multiple -v binding sets and no -o, only the first result is printed
- #684 [v1.3.0-RC2]
queryoption: NPE when the referenced query is not a classpath resource - #685 [v1.3.0-RC2] JSON slicing breaks with
slice.size> 1 (parse errors, NPE, silent data loss) - #687 [v1.3.0-RC2]
-vfails with NPE for JSON and XML result-set files - #688 [v1.3.0-RC2] CLI cannot read
.jsonldfiles: the custom JSON language overrides JSON-LD - #689 [v1.3.0-RC2]
archive-formatoption is ignored when the archive URL has an extension - #690 [v1.3.0-RC2]
-frejects documented RDF format names (TURTLE, NTRIPLES, NQUADS, JSONLD, JSONLD11) - #692 [v1.3.0-RC2] CLI exits with code 0 on syntax errors, unknown options and failed slices
- #695 Java 21 Windows build fails since cd88d28
- #696 [v1.3.0-RC2] RDF triplifier ignores
content,commandandread-from-std-in - #697 [v1.3.0-RC2] Containers of different data sources share blank nodes (archive.matches merges files under one root)
- #698 [v1.3.0-RC2] HTTP options:
.Nsuffixes not stripped, payload sent chunked,http.redirect falseignored - #699 [v1.3.0-RC2]
.svgzfiles are not decompressed - #700 [v1.3.0-RC2]
-l <URL>: remote RDF is loaded in a named graph, not the default graph
Documentations
- #336 [Documentation] Add section on slicing
- #579 [Documentation] add tutorial for parametric queries / Basil variables
- #604 Add documentation on
--profileoption - #638 [doc] "working-with-graph-nodes" is a bad grouping
- #645 [Documentation] Guide for developers
- #668 [Documentation] Automatically translate #N references to GH links
- !673 [Documentation] Add section on slicing (#336)
- !674 [Documentation] Add documentation on --profile option (#604)
- #678 [Documentation] Improve documentation workflow (remove redundant files...)
- #693 [v1.3.0-RC2] Documentation inconsistencies found by the acceptance tests (1.3.0)
Features
- #571 preserve
baseon output - #657 Automatically set delimiter for TSV
- #659 Support new Facade-X namespaces from the specification
- #667 [XML] Support for xml:lang
Improvements
- #357 Review Lang mappings between JSON and JSONLD when the expected content is RDF
- #606 Refactor
fx:rootintofx:Root - !653 Bump pymdown-extensions from 10.21.3 to 11.0.1 in /docs
- #658 Keep current development aligned with FX specifications (v0.1) via tests
- #662 [JSON] Keep the lexical form of numbers; type exponent numbers xsd:double
- #664 SLF4J warning on tests
- #665 Multiple XML comments in pom
- #681 fx:root vs fx:Root backward compatibility in v1.3.0
- #694 [v1.3.0-RC2] Add CLI option --help