Fixed Cut.\ ldpatch
authorAlexandre Bertails <bertails@gmail.com>
Fri, 21 Nov 2014 00:38:24 -0500
branchldpatch
changeset 897 b8f83a85dd5c
parent 896 1cfafcb13507
child 898 f76821641fca
Fixed Cut.\
ldpatch.html
--- a/ldpatch.html	Thu Nov 20 23:52:28 2014 -0500
+++ b/ldpatch.html	Fri Nov 21 00:38:24 2014 -0500
@@ -298,7 +298,8 @@
 } .
 
 Bind ?workLocation &lt;#&gt; /schema:workLocation .
-Cut ?workLocation.
+Cut ?workLocation .
+Delete { &lt;#&gt; schema:workLocation ?workLocation } .
 
 UpdateList &lt;#&gt; ex:preferredLanguages 1..2 ( "fr-CH" ) .
 
@@ -555,7 +556,7 @@
         <section id="cut-statement">
           <h2><dfn>Cut</dfn></h2>
           <p>
-              The <a>Cut</a> operation is used to remove one or more triples from the <a>target graph</a> connected to a specific node (either an <a>IRI</a>, or a previously bound variable). The triples being removed correspond to the <a href="http://en.wikipedia.org/wiki/Connectivity_%28graph_theory%29">connected graph</a> whose nodes were accessible from the given node, as well as the triples having this node in the object position. @@ TODO @@
+              The <a>Cut</a> operation is used to remove one or more triples from the <a>target graph</a> connected to a specific RDF node (an IRI or a blank node, potentially through a bound variable). The triples being removed correspond to the <a href="http://en.wikipedia.org/wiki/Connectivity_%28graph_theory%29">connected graph</a> accessible from the given RDF node through blank nodes, and following the direction of the predicates.
           <pre class='example'>
 Cut ?workLocation .
           </pre>
@@ -626,6 +627,7 @@
             <li id="bind-unique-match">If a <a>Bind</a> statement fails to match exactly one node, then a HTTP 422 (Unprocessable Entity) error status code MUST be returned.</li>
             <li id="unicity-constraint-violated">If a <a>Unicity constraint</a> is violated, then a HTTP 422 (Unprocessable Entity) error status code MUST be returned.</li>
             <li id="cut-nothing">If a <a>Cut</a> operation fails to remove any triple, then a HTTP 422 (Unprocessable Entity) error status code MUST be returned.</li>
+            <li id="cut-non-bnode">If a <a>Cut</a> operation is called on a variable not bound to a blank node, then a HTTP 422 (Unprocessable Entity) error status code MUST be returned.</li>
             <li id="delete-non-existing-triple">If a <a>Delete</a> attempts to remove a non-existing triple, then a HTTP 422 (Unprocessable Entity) error status code MUST be returned.</li>
             <li id="updatelist-non-list-argument">If the <a class="internalDFN" href="#grammar-production-subject">subject</a> and <a class="internalDFN" href="#grammar-production-predicate">predicate</a> provided to a <a>UpdateList</a> operation fail to match a collection, then a HTTP 422 (Unprocessable Entity) error status code MUST be returned.</li>
             <li id="wrong-order-for-indexes">If the indexes in a <a>Slice</a> are in the wrong order (e.g. <code>2868..42</code>), then the parsing fails and a 400 (Bad Request) error status code MUST be returned.</li>