- From: Martynas Jusevičius <martynas@atomgraph.com>
- Date: Fri, 4 Mar 2022 19:56:13 +0100
- To: public-sparql-dev@w3.org
- Cc: Andy Seaborne <andy@apache.org>
Hi, I need to create a property with an rdf:List value, if the property doesn't exist, or append an item to the existing list. That seemed to exactly match the case "Add an element to the end of a list" in Andy's document "Updating RDF Lists with SPARQL": https://afs.github.io/rdf-lists-sparql#a-nameadd-lastaadd-an-element-to-the-end-of-a-list However, it didn't work in my case when the list length was equal to 1. Then I tried running the SPARQL update from the document on an empty Fuseki dataset and sure enough, it works for all cases except when the list length is 1. Here's the resulting dataset: <http://example/x3> <http://example/p> ( 1 2 3 98 ) . <http://example/x2> <http://example/p> ( 1 2 98 ) . <http://example/x1> <http://example/p> ( 1 ) . <http://example/x0> <http://example/p> ( 99 ) . I think this is due to the property path pattern ?list rdf:rest+ ?elt which does not match lists of length 1. Can someone confirm this and provide a complete version with a fix? The document should probably be updated, too. Thanks. Martynas atomgraph.com
Received on Friday, 4 March 2022 18:56:37 UTC