- Fixed issue #22 "Error in re-injecting parameters in the graph"
- Upgrade to php 8.3
- Upgrade to MongoDB 4.4.6
- Upgrade to Corese 4.4.1
- Fixed Apache issue occuring under highload by adding custom prefork configuration (docker/build/sparql-micro-service/mpm_prefork.conf)
- Fixed name resolution issue at Apache startup (docker/build/sparql-micro-service/Dockerfile)
- Misc. documentation improvements
- Moved some services to repository https://github.com/frmichel/sparql-micro-services.org
- Support for OAuth2-based authentication, exemplified in services/advanced_examples/oauth2
- Add cache services
- Add shared folder html in Docker deployment
- Documentation improvements
Files AUTHORS, CITATION.cff and codemeta.json to submit the project to Software Heritage and then import it into HAL.
- Fix issue #20: charset was not supported in content type HTTP header
- Minor changes in the Pubmed services
- Upgrade to Corese 4.3.1
- Update Docker build procedure
- Publish Docker images frmichel/corese4sms:v4.3.1 and frmichel/sparql-micro-service:v0.5.3
- Update services for the Macaulay library (new API contract)
- Upgrade to Corese 4.1.6d to fix some concurrency issues. Requires updates in STTL files and some SPARQL queries involving multiple named graphs
- Add details in configuration of Apache/php
- Update Docker images and Dockerfile's
- Deal with non existing service: return HTTP 404 for SPARQL invocation, return error web page for service HTML description
- add service for GBIF occurrences and update demo
- Bug fix: allow empty hydra:mapping section in service description for services withouth any parameter
- Upgrade to PHP 7.1+
- Upgraded to official JsonLD 1.2.0 (no more need for custom fork)
- Upgraded to official EasyRdf 1.0.0 (no more need for custom fork)
- Bug fix. Support Web API with no parameter (issue #15)
- Bug fix. Use curl to query Web APIs to better deal with certificate validation issues
Upgrading from 0.4.3 needs updaging config.ini files: In PHP 7, comments in .ini files can no longer start with a '#', only with a ';' => update all your config.ini files by replacing '#' with ';' on comment lines
Update from 0.4.2:
-
rerun composer to update EasyRdf
-
the custom service.php script of SPARQL micro-services should be updated: due to issue #13, only one value for each service argument can be recieved. Thus, the service.php script should now obtain arguments with:
$param = $customArgs['param'];
instead of:
```$param = $customArgs['param'][0];```
- Allow different strategies for passing multiple values to the Web API (issue #13)
- STTL transformation to generate the html index of services hosted on a server (/src/sparqlms/resources/sms-html-index) + generate schema:DataCatalog markup on index page
- Bug fix. Suppot for multiple values of a custom parameter on the HTTP query string (issue #12)
- In scr/sparqlms/service.php, when invoking the Web API, the service parameters are encoded with rawurlencode rather then urlencode. The main difference is to turn space into '%20' rather than '+'.
- Bug fix. Allow service without a construct.sparql file. (issue #14)
- Update to EasyRdf v0.10.x (untagged) of 2019-11-27 + refactoring
- Enable the deployement of SPARQL micro-services in multiple locations (not only src/sparqlms): see property
services_paths
in/src/sparql/config.ini
- Allow to deploy services with multiple hostnames: the
root_url
property in file/src/sparql/config.ini
can now be overridden using argumentroot_url
passed to the/src/sparqlms/service.php
main script - Added new property
sms:exampleURI
in ServiceDescription graph and updated dynamic HTML description
- Allow HTTP proxy configuration with properties
proxy.*
in/src/sparql/config.ini
(issue #9) - Support of URI dereferencing with services configured using a ServiceDescription graph (was not possible before)
- SPARQL micro-services moved from
/src/sparql
to/service
- Implemented issue #8: generate provenance information
- Mandatory parameter
version
added to the global config.ini file
CONFIGURATION CHANGE requires upgrade of existing micro-services: in this version, files insert.sparql
are removed. Instead, only a construct.sparql
may be defined that replaces the function of both insert.sparql
and construct.sparql
in earlier versions.
Upgrade procedure: simply remove insert.sparql
from services that have both an insert.sparql
and construct.sparql
, or rename insert.sparql
into construct.sparql
and replace the INSERT with CONSTRUCT within the queries themselves.
- New service
eol/getTraitsByName_sd
- New service
flickr/getPhotosByTags_sd
- Configuration parameter
log_level
in main config.ini file
- Removal of files
insert.sparql
. Instead, only aconstruct.sparql
may be defined that replaces the function of bothinsert.sparql
andconstruct.sparql
in versions 0.3.*. - Fix issue #2: Implement http_header config param in the Service Description mode
- Fix issue #3: document rewriting rules for HTML doc generation
- Fix issue #4: support for multiple values of an argument.
- Fix issue #5: pb about cache expiration
- Improve logging with log names
- change namespace of SPARQL micro-service core vocabulary to http://ns.inria.fr/sparql-micro-service#
- change namespace of Web API-specific terms to http://ns.inria.fr/sparql-micro-service/api# in the internal processing of SPARQL micro-services
- update JSON-LD embedded in HTML documentation of a SPARQL micro-service to match requirements of Google's Structured Dataset Testing Tool
- doc refactoring, add service configuration section
- update Docker images and configuration<
- Allow passing arguments of SPARQL micro-services as variables of the graph pattern, along with possily VALUES or FILTER clauses to give the values of these variables
- Generate HTML documentation of a SPARQL micro-service from its SPARQL Service description + JSON-LD embedded markup
- Federated querying (beta): service to split a SPARQL query into a union of invocations (SERVICE clauses) to multiples SPARQL micro-services
- refactoring of code into packages common, sparqlms and sparqlcompose
- refactoring of deployment resources into dedicated folder
- new configuration method using SPARQL Service Description + Hydra + SHACL instead of config.ini file
- new class Configuration to switch automatically between config.ini and Service Description
- new services supporting SPARQL Service Description
- flickr/getPhotosByTaxon_sd
- macaulaylibrary/getAudioByTaxon_sd
- new service macaulaylibrary/getAudioById for URI dereferencing
- change interface of services' custom service.php scripts (see folder
src/sparqlms/manual_config_example
) - update Docker deployment with code version 0.1.0 and a MongoDB container
- comply with composer common structure (remove directory
vendor
, point to own forks of the JsonLD and EasyRDF libraries) - fix typos in TDWG demo
- full demo with STTL for TDWG conference
- support SPARQL query with HTTP POST method
- major refactoring to comply with usual conventions: add namespace, move code from sparql-ms to src/sparqlms
- split code in several classes: Metrology, Cache, Context
- config.ini now mandatory for all SPARQL micro-serivces, service.php may be used to handle more complex cases e.g. when a intermediate service call must be done, or when authentication is required (see manual_config_example).
First decent version of the project.