hartig opened a new pull request, #2501:
URL: https://github.com/apache/jena/pull/2501

   The lack of built-in support for generic types of composite values such as 
lists and maps has been a long-standing issue for RDF and SPARQL. Together with 
a few other colleagues at the Amazon Neptune team we have developed an approach 
to represent lists and maps as literals in RDF data, and to extend SPARQL with 
features related to such literals. These extensions of SPARQL include:
   * an aggregation function to produce these composite values (FOLD),
   * functions to operate on these composite values in expressions, and
   * a new operator (UNFOLD) to unfold such composite values into their 
individual components.
   
   We have created a [complete formal specification of the 
approach](https://w3id.org/awslabs/neptune/SPARQL-CDTs/spec/latest.html) and a 
comprehensive test suite for implementers, which can be found in our Github 
repo: https://github.com/awslabs/SPARQL-CDTs
   
   ... and I have implemented a complete integration of this approach into 
Jena, as can be found in this PR. We would like to contribute this 
implementation to Jena if you are interested, and I will be more than happy to 
assist you with getting the PR ready to be merged.
   
   Perhaps before you dive into the aforementioned specification, you may take 
a look at our [short 
paper](http://olafhartig.de/files/HartigEtAl_SPARQLCDTs_PosterPaper2024.pdf), 
in which we provide a slightly more extensive motivation for this work and a 
(very!) brief summary of the approach. After that, [Section 2  of the 
specification](https://awslabs.github.io/SPARQL-CDTs/spec/latest.html#description)
 provides a more detailed informal description of the different parts of the 
approach.
   
   I am happy to answer any questions that you may have, both about the 
approach in general and about the implementation in this PR. Also, if you have 
issues with some parts of the specification, feel free to create an issue in 
the aforementioned Github repo. (And in case you are wondering, yes we are 
planning to file the approach as a [SPARQL Enhancement Proposal 
(SEP)](https://github.com/w3c/sparql-dev/tree/main/SEP) for the [SPARQL-dev 
Community Group](https://www.w3.org/groups/cg/sparql-dev/)).
   
   ----
   
    - [ ] Tests are included.
    - [ ] Documentation change and updates are provided for the [Apache Jena 
website](https://github.com/apache/jena-site/)
    - [ ] Commits have been squashed to remove intermediate development commit 
messages.
    - [ ] Key commit messages start with the issue number (GH-xxxx)
   
   By submitting this pull request, I acknowledge that I am making a 
contribution to the Apache Software Foundation under the terms and conditions 
of the [Contributor's 
Agreement](https://www.apache.org/licenses/contributor-agreements.html).
   
   ----
   
   See the [Apache Jena "Contributing" 
guide](https://github.com/apache/jena/blob/main/CONTRIBUTING.md).
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to