- Relax version requirement for python-dateutil
- Update dependencies
- Docker: update dependencies
- Push all operations to the source if there is only one sub-query
- Fix rare decomposition error
- Docker: update Python and dependencies
- Update dependencies
- Update documentation
- Add switch for exiting when checking endpoint accessibility
- Fix reading RDF-based configuration
- Update dependencies in Dockerfile
- Add feature for defining the source descriptions in RDF
- Create source descriptions in RDF
- Read source descriptions from RDF
- Deprecate JSON-based source descriptions
- Update documentation
- Add query timeout feature
- Docker: update Python
- Update dependencies
- Flask
- requests
- Add physical operator NestedHashJoinValues (NHJV)
- Add physical operator NestedHashOptionalValues (NHOV)
- Use NHJV and NHOV for nested hash join and nested hash optional instead of their FILTER variants
- Fix variables in response header for queries with aggregates with alias
- Fix variables included in projected variables for aggregates with alias
- Add more functions to the Config class in order to avoid direct access of its attributes
- Move version information inside the package
- Add favicon to pages served when running DeTrusty as a service
- Complete the string representation of a query to also include GROUP BY, HAVING, ORDER BY, LIMIT, and OFFSET
- Fix variable check for GROUP BY and ORDER BY
- Use StreamHandler for loggers if FileHandler cannot be established
- Fix query result format issue while creating the source descriptions
- Merge parsers
- DeTrusty uses only one parser now, hence,
- Deprecate sparql_one_dot_one parameter of run_query()
- Add support for parsing SPARQL queries with comments
- Fix issue with COUNT(*)
- Add complex expressions
- Update return format to match with the SPARQL specification, i.e., include type and datatype, not just the value
- Fix minor issues in aggregate functions
- Fix implicit grouping
- Fix error of executing a query with no matched source if only rdf:type statement in query
- Fix issue with non-grouped optional variables
- Fix filters
- ... for URIs
- ... over optional variables
- Fix wrong splitting of VALUES clause when using multiple variables
- Throw error if
- projected variables are not grouped or aggregates
- projected variables are not defined in the body
- variables in ORDER BY are not projected
- variables in GROUP BY are not defined in the body
- Add functionality for ordering by multiple variables
- Adjust Xorderby to use datatypes
- Fix argument parsing in create_rdfmts.py
- Docker: update Python
- Change extension of Jinja templates
- Add project URLs to setup.py
- Add support for Python 3.12
- Fix planning of OPTIONAL, i.e., which implementation to choose
- Add documentation to GitHub pages
- Add feature to get source description file via GET request
- Add feature to get query string from file via GET request
- Fix sub-query selectivity
- Update dependencies
- Docker: update Python
- Fix selectivity of sub-queries with filters
- Fix decomposition error for typed molecules including repeated predicates
- Docker: update Python
- Consider more cases for extracting the RDF class from an RML mapping
- Complete the source description using the endpoint if the RML mapping includes template classes
- Update dependencies
- Fix duplicated BIND clause when using NHJF
- Fix query plan JSON for cases where the triples of an endpoint are not a list
- Fix searching endpoints serving predicates with prefixes
- Add operator name for Xfilter
- Fix display of constants in query plan
- Fix filter issue in triple-wise decomposition
- Fix paths for query plan
- Fix query variables when using SERVICE clause
- Docker: update Python and PIP
- Add query plan visualization at route
/query_plan
- Added collecting source descriptions from Wikidata
- Added feature to disable interlinking in source description collection
- Fixed not pushing down BIND in some cases
- Fixed missing module error in
create_rdfmts.py
- Added GROUP BY clause
- Added aggregates
- Added BIND clause
- Added ability to process simple expressions
- Added function
year
- Improved Xunion operator
- Fixed issue for filters with different data types
- Improved the RDF wrapper
- Updated Python base image to 3.11.0
- Fix bug when config file is empty
- Disable caching for YASGUI
- Update YASGUI
- Fix bug where sub-queries with constants where not considered for merging
- Added feature to restrict the metadata collection of an endpoint to specific classes
- Fix quoted special chars in query string
- Added basic authentication with Base64 encoding
- Add possibility to create configuration instance from JSON string
- Add method to save a configuration instance to file
- Update Python base image to 3.9.13 on bullseye
- Fix a type hint for Python versions < 3.10
- Create config object on import of
DeTrusty.Molecule.MTCreation
- Raise exceptions during metadata collection instead of just logging them
- Fix issue when using a list of endpoints and not a dictionary
- Prevent generation of parsetab.py
- Rename log from metadata creation to
.rdfmts.log
- Exclude tests from Docker image
- Fix loggers
- Update dependencies
- Add capability to query private knowledge graphs
- Update RDF Molecule Template creation
- Collect metadata from private endpoints
- Gather metadata from RML mappings
- Fix issue with non-ASCII characters in query
- Add checks (directory exists, file writeable) for the metadata output file before collecting the metadata
- Keep a list of all triple patterns in the decomposer
- Remove Flask from the list of dependencies of the library
- Some changes in order to use DeTrusty as a library and a service
- Fixed use of incorrect set of variables for OPTIONALs
- Fixed request payload to work with the Wikidata endpoint (https://query.wikidata.org/sparql)
- Fixed issue in response header when the SELECT clause included an asterisk (*) to retrieve all variables
- Fix endpoint path behind proxy
- Fix for joining sub-queries at remote source configuration
- Web interface using YASGUI added
- Configuration for joining sub-queries at remote source
- Support for VALUES clause
- Update of installation method
- Update of dependencies
- Support for new decomposition types
- Triple-wise
- Exclusive Groups
- Support for SERVICE clause
- Minor fixes for the use as a service
- First version of DeTrusty as a SPARQL 1.0 federated query engine