I don't think there is an rdf:id property? You haven't provided the
namespace for it, but you shouldn't be introducing your own terms in
the RDF namespace.

On Fri, Jul 8, 2016 at 9:20 PM, Sorin Gheorghiu
<[email protected]> wrote:
> Hi Andy,
>
> Following your answer, I succeeded to delete the whole tuples using:
>
>  DELETE {?s ?p ?o] WHERE
>     ?s ?p ?o .
>     ?s rdf:id ?value .
>     FILTER (?value IN ( { ( '10' ) ( '20' ) ( '30' ) }
>  }
>
> The initial question wasn't related to blank nodes, I used a wrong dummy
> _:prop
>
> Thank you,
> Sorin
>
>
>
>
>
> Am 07.07.2016 um 20:55 schrieb Andy Seaborne:
>>
>> On 07/07/16 15:13, Sorin Gheorghiu wrote:
>>>
>>> Hi,
>>>
>>> while attempting to remove some triples, I noticed that VALUES is not
>>> supported, here an example:
>>>
>>> DELETE WHERE {
>>>    VALUES (?value) { ( '10' ) ( '20' ) ( '30' ) }
>>>    ?s ?p ?o .
>>>    ?s _:prop ?value .
>>> }
>>
>>
>> DELETE WHERE is a shorthand for the full form of DELETE:
>>
>> DELETE { X } WHERE { X }
>>
>> which places restrictions on X to be a template for the first { X }.
>> Templates (c.f. CONSTRUCT) does not allow VALUES.
>>
>>
>>  DELETE {
>>     VALUES (?value) { ( '10' ) ( '20' ) ( '30' ) }
>>     ?s ?p ?o .
>>     ?s _:prop ?value .
>>  }
>> WHERE {
>>  ?s ?p ?o .
>>   ?s _:prop ?value .
>> }
>>
>> DELETE WHERE {
>>  ?s ?p ?o .
>>  ?s _:prop '10' , '20' , '30 .
>> }
>>
>> because it is a single variable VALUES.
>>
>>>
>>> although SELECT works with multiple values:
>>>
>>> SELECT * WHERE {
>>>    VALUES (?value) { ( '10' ) ( '20' ) ( '30' ) }
>>>    ?s ?p ?o .
>>>    ?s _:prop ?value .
>>> }
>>>
>>> I would assume VALUES is not supported by SPARQL 1.1, but at least
>>> DELETE using the |IN| function in a |FILTER| clause should be supported
>>> according to example 6 from
>>> https://www.w3.org/TR/2013/REC-sparql11-update-20130321/
>>
>>
>> ?? I don't see this example in the spec.
>>
>>>
>>> DELETE WHERE {
>>>    ?s ?p ?o .
>>>    ?s _:prop ?value .
>>>    FILTER(?value IN("10","20","30"))
>>> }
>>
>>
>> Example 6 is:
>>
>> DELETE
>>  { ?book ?p ?v }
>> WHERE
>>  { ?book dc:date ?date .
>>    FILTER ( ?date > "1970-01-01T00:00:00-02:00"^^xsd:dateTime )
>>    ?book ?p ?v
>>  }
>>
>> which is the full form.
>>
>>     Andy
>>
>> Oh - and _:prop (a blank node as property) is not legal either. It gets
>> weird otherwise ...
>>
>>>
>>> Regards,
>>> Sorin
>>>
>>>
>>>
>>
>
> --
> Sorin Gheorghiu             Tel: +49 7531 88-3198
> Universität Konstanz        Raum: B703
> 78464 Konstanz              [email protected]
>
> - KIM: Abteilung Contentdienste -
>

Reply via email to