Clarify Link context URIs, member creation media types, prep for other changes
authorJohn Arwe
Mon, 08 Sep 2014 13:12:31 -0400
changeset 800 89d99b066aca
parent 797 aa3aeb3c1d5b
child 801 a4623989a4b9
Clarify Link context URIs, member creation media types, prep for other changes
ldp.html
--- a/ldp.html	Wed Sep 03 09:22:52 2014 -0400
+++ b/ldp.html	Mon Sep 08 13:12:31 2014 -0400
@@ -589,8 +589,11 @@
 	
 	<section id="ldpr-gen-pubclireqs"><h2 class="normal"><a title="LDP server">LDP servers</a> MUST 
 		publish any constraints on <a title="LDP client">LDP clients’</a> ability to 
-		create or update LDPRs, by adding a Link header with <code>rel='describedby'</code> 
-		[[!RFC5988]] to all responses to requests which fail due to violation of 
+		create or update LDPRs, by adding a Link header with
+		an appropriate context URI,
+		a link relation of <code>describedby</code>,
+		and a target URI identifying a set of constraints
+		[[!RFC5988]], to all responses to requests that fail due to violation of 
 		those constraints.  For example, a server that refuses resource creation 
 		requests via HTTP PUT, POST, or PATCH would return this <code>Link</code> header on its 
 		4xx responses to such requests.
@@ -598,6 +601,9 @@
 		defines nor constrains the representation of the link's target resource.  Natural language 
 		constraint documents are therefore permitted, 
 		although machine-readable ones facilitate better client interactions.
+		The appropriate context URI can vary based on the request's semantics and method;
+		unless the response is otherwise
+		constrained, the default (the effective request URI) SHOULD be used.
 	</h2></section><!-- Was 4.2.13 / #ldpr-4_2_13 -->
 
 </section>
@@ -791,7 +797,8 @@
 		but there is no requirement to materialize this triple in the LDP-RS representation.
 	</h2></section>
 	
-	<section id="ldprs-gen-atleast1rdftype"><h2 class="normal"><a title="Linked Data Platform RDF Source">LDP-RSs</a> representations SHOULD have at least one <code>rdf:type</code>
+	<section id="ldprs-gen-atleast1rdftype"><h2 class="normal"><a title="Linked Data Platform RDF Source">LDP-RSs</a> representations SHOULD 
+		have at least one <code>rdf:type</code>
 		set explicitly.  This makes the representations much more useful to
 		client applications that don’t support inferencing.
 	</h2></section><!-- Was 4.2.5 / #ldpr-4_2_5 -->
@@ -1529,6 +1536,7 @@
 		RDF representation in the request entity body MUST honor the client's requested interaction model(s). 
 		If any requested interaction model cannot be honored, the server MUST fail the request.
 	</h2><!-- Was 5.4.4 / #ldpc-5_4_4 -->
+	<blockquote>
 	<ul>
 	<li>If the request header specifies <a href="#ldpr-gen-linktypehdr">a LDPR interaction model</a>, then the server MUST handle subsequent 
 	requests to the newly created resource's URI as if it is a LDPR
@@ -1542,14 +1550,16 @@
 		when creating a resource as servers use to advertise it on responses.
 	</p>
 	<p>Note: A consequence of <a href="#ldpc-post-createrdf">this</a> is that LDPCs can be used to create LDPCs, if the server supports doing so.</p>
+	</blockquote>
 	</section>
 	
-	<section id="ldpc-post-turtle"><h2 class="normal"><a title="LDP server">LDP servers</a> MUST accept a request entity body with a request header
-	    of <code>Content-Type</code> with value of <code>text/turtle</code> [[!turtle]].
+	<section id="ldpc-post-turtle"><h2 class="normal"><a title="LDP server">LDP servers</a> MUST 
+		allow clients to create new members by enclosing a request entity body with a 
+	    <code>Content-Type</code> request header whose value is <code>text/turtle</code> [[!turtle]].
 	</h2></section><!-- Was 5.4.5 / #ldpc-5_4_5 -->
 	
 	<section id="ldpc-post-contenttype"><h2 class="normal"><a title="LDP server">LDP servers</a> SHOULD use the <code>Content-Type</code> request header 
-		to determine the representation format when the request has an entity body. 
+		to determine the request representation's format when the request has an entity body. 
 	</h2></section><!-- Was 5.4.6 / #ldpc-5_4_6 -->
 	
 	<section id="ldpc-post-rdfnullrel"><h2 class="normal">In RDF representations, <a title="LDP server">LDP servers</a> MUST interpret the null relative
@@ -1586,9 +1596,12 @@
 	<a title="Linked Data Platform Non-RDF Source">LDP-NR</a> (HTTP status code of 
 	201-Created and URI indicated by <code>Location</code> response header), <a title="LDP server">LDP servers</a> MAY create an associated 
 	<a title="Linked Data Platform RDF Source">LDP-RS</a>
-	to contain data about the newly created LDP-NR.  If a LDP server creates this associated <a title="Linked Data Platform RDF Source">LDP-RS</a> it MUST indicate
-	its location on the HTTP response using the HTTP <code>Link</code> response header with link relation <code>describedby</code>
-	and <code>href</code> to be the URI of the associated LDP-RS resource [[!RFC5988]].
+	to contain data about the newly created LDP-NR.  
+	If a LDP server creates this associated <a title="Linked Data Platform RDF Source">LDP-RS</a>, it MUST indicate
+	its location in the response by adding a HTTP <code>Link</code> header with 
+	a context URI identifying the newly created <a title="Linked Data Platform Non-RDF Source">LDP-NR</a> (instead of the effective request URI),
+	a link relation value of <code>describedby</code>,
+	and a target URI identifying the associated LDP-RS resource [[!RFC5988]].
 	</h2></section><!-- Was 5.4.12 / #ldpc-5_4_12 -->
 	
 	<section id="ldpc-post-acceptposthdr"><h2 class="normal"><a title="LDP server">LDP servers</a> that support <code>POST</code> MUST
@@ -1607,8 +1620,9 @@
 		specifications such as LDP.
 	</h2></section><!-- Was 5.4.13 / #ldpc-5_4_13 -->
 	
-	<section id="ldpc-post-jsonld"><h2 class="normal"><a title="LDP server">LDP servers</a> SHOULD accept a request entity body with a request header
-	    of <code>Content-Type</code> with value of <code>application/ld+json</code> [[!JSON-LD]].
+	<section id="ldpc-post-jsonld"><h2 class="normal"><a title="LDP server">LDP servers</a> SHOULD 
+		allow clients to create new members by enclosing a request entity body with a 
+	    <code>Content-Type</code> request header whose value is <code>application/ld+json</code> [[!JSON-LD]].
 	</h2></section><!-- new -->
 	
 </section>
@@ -2509,26 +2523,26 @@
 </p>
 
 <h2>Summary</h2>
-<p>Summary of notable changes from the <a href="http://www.w3.org/TR/2014/WD-ldp-20140311/">previous public working draft</a>.</p>
+<p>Summary of notable changes from the <a href="http://www.w3.org/TR/2014/CR-ldp-20140619/">previous public working draft</a>.</p>
 <ul>
-	<li>Resolved Last Call 2 comments</li>
-	<li>Removed references to RDF named graphs</li>
-	<li>Rename empty-container triples to minimal-container triples</li>
-	<li>Duplication (with intent to supersede) of the <code>describedby</code> relation type IANA registration, incorporating POWDER's relevant errata</li>
-	<li>Clarify definitions of membership and containment triples to avoid impression that they must be (stored as) part of the LDP-RS's state.</li>
-	<li>Servers should offer/accept JSON-LD representations of LDP-RSs</li>
-	<li>Updated all HTTP and Prefer-draft references to newly assigned RFC numbers, with associated BNF hits</li>
+	<li>Indirect containers are AT RISK</li>
+	<li>Turtle is no longer required for an LDP-RS when the Accept header is absent</li>
+	<li>JSON-LD is required for an LDP-RS, AT RISK</li>
+	<li></li>
 </ul>
 
 <h2>Detailed history</h2>
 <!-- <blockquote><em><a href="http://www.w3.org/TR/2013/WD-ldp-20130930/">Candidate Recommendation Draft</a></em></blockquote> -->
 <ul>
-	<li>2014-07-20 - Added test coverage utility to annotate spec with test cases covering them, to be removed before publishing (SS)</li>
 </ul>
 
-<blockquote><em><a href="http://www.w3.org/TR/2014/CR-ldp-20140619">Candidate Recommendation Draft</a></em></blockquote> -->
+<blockquote><em><a href="http://www.w3.org/TR/2014/WD-ldp-20140916">Last Call Working Draft 3</a></em></blockquote> -->
 <ul>
+	<li>2014-09-08 - Clarify that Turtle/JSON-LD on LDPC POST are required only when the semantic is "create new member" (JA) </li>
+	<li>2014-09-08 - Constraints 4xx responses remind them to choose context URI consciously (JA) </li>
+	<li>2014-09-08 - LDP-NR creation clarify context URI needed is not the default, per today's mtg resolution (JA) </li>
 	<li>2014-08-04 - Fuss with o:value in examples for Sandro to remain consistent with Paging spec (JA) </li>
+	<li>2014-07-20 - Added test coverage utility to annotate spec with test cases covering them, to be removed before publishing (SS)</li>
 </ul>
 
 <blockquote><em><a href="http://www.w3.org/TR/2014/CR-ldp-20140619">Candidate Recommendation Draft</a></em></blockquote> -->