This version adds more support of query optimization, which is necessary for running some queries involving property paths.
RDF 1.2
- RDF 1.2 LL(1) Parser
- Preserve 1.1 version of parser, using
use11
option. Update script for use11 and profile options.
- Preserve 1.1 version of parser, using
- RDF 1.2 PEG Parser
- Unescape codepoints in input rather than on terminals.
- Fix problems with using the 1.1 parser in script/tc.
Testing
- Update test locations.
- Automatically skip missing test manifests.
- Test SEP-0004 even though it's not implemented.
- Test on Ruby 3.4.
- Use Rackup::Server instead of the defunct Rack::Server. Still no good testing strategy. (Fixes #51.)
- Update dependencies.
- Depend on sinatra ~> 4.0 rather than 3.1.
Other
- Use optimize option in SPARQL.parse and SPARQL::Algebra.parse to run optimizer, if specified.
- Add some path optimmization for reverse and first/rest chains involving path*.
- Work on freezing/detecting frozen bnodes in INSERT DATA.
- Note some problem cases on filters in OPTIONAL.
- Group Concat adds language if all operands have the same language.
- Updates for Rack/Sinatra.
- Add
host_authorization
option to SPARQL Server application, needed for testing, at least. - Support 'x' and 'q' flags in regular expressions.