Adopted container hierarchy and merged Indirect Container into Container
authorsspeiche
Mon, 17 Feb 2014 14:47:33 -0500
changeset 491 16d872a712b6
parent 490 282ab2d9f7c3
child 492 2565ca2d5587
Adopted container hierarchy and merged Indirect Container into Container
images/ldpc-basic.png
images/ldpc1.png
images/ldpr2.png
ldp.html
ldp.ttl
Binary file images/ldpc-basic.png has changed
Binary file images/ldpc1.png has changed
Binary file images/ldpr2.png has changed
--- a/ldp.html	Mon Feb 17 13:41:55 2014 -0500
+++ b/ldp.html	Mon Feb 17 14:47:33 2014 -0500
@@ -7,6 +7,7 @@
 	TODO: Consider incorporating RDF Document into our Terms http://www.w3.org/TR/rdf11-concepts/#dfn-rdf-document
 	TODO: Once the membership* names stabilize, take a pass through for "membership consistent value", membership-constant-URI
      and see if there is a friendlier 	way to phrase it.
+    TODO: Consider how to not have to explicitly list parent classes.
 	TODO: Paging intro: add 3rd example showing header link	age amongst pages and (HEAD on) the base resource.
      Maybe also insert HEAD on base as new first example instead of relying on text alone.
 	TODO: The ReSpec SPARQL QUERY link is http://www.w3.org/TR/rdf-sparql-query/ , which has highlighted text
@@ -24,7 +25,6 @@
 <html>
   <head>
     <title>Linked Data Platform 1.0</title>
-    <!-- Changed by: , 07-Feb-2014 -->
     <meta http-equiv='Content-Type' content='text/html;charset=utf-8'/>
     <!-- 
       === NOTA BENE ===
@@ -329,12 +329,14 @@
 	any resources [[!WEBARCH]], not only documents.
 	<p></p></dd>
 	
+	<!-- TODO: Remove LDP-IC definitions
 	<dt><dfn>Linked Data Platform Indirect Container</dfn> (<abbr title="Linked Data Platform Indirect Container">LDP-IC</abbr>)</dt>
 	<dd>A <a title="Linked Data Platform Container">LDPC</a> that is similar to a <a title="Linked Data Platform Direct Container">LDP-DC</a>
 	and is capable of having <a title="Membership">members</a> whose URIs are based
 	on the content of its <a title="Containment">contained</a> documents rather than the URIs assigned to those documents.
 	<p></p></dd>
-		
+	-->
+		 
 	<dt><dfn>Membership</dfn></dt>
 	<dd>The relationship linking an LDP-RS (LDPCs are also LDP-RSs) and its member LDPRs.  
 	There often is a linked LDPC that assists with managing the member LDPRs.<p></p></dd>
@@ -595,7 +597,7 @@
     <p>The LDP-NRs and LDP-RSs are simply sub-types of LDPRs, as illustrated in <a href="#fig-ldpr-class"></a>.</p>  
     <figure id="fig-ldpr-class">
        <img src="images/ldpr2.png" alt="Class Diagram of Linked Data Platform Resource" />
-       <figcaption>Class relationship of types of LDPRs</figcaption>
+       <figcaption>Class relationship of types of Linked Data Platform Resources</figcaption>
      </figure>
 	
 </section>
@@ -1336,19 +1338,18 @@
 	form <code>(&lt;&gt;, foaf:primaryTopic, topic-URI)</code> to inform the server which URI to use 
 	(<code>topic-URI</code>) in the new membership triple.</p>
 	
-	<p>This type of container is also referred to as an <a title="Linked Data Platform Indirect Container">LDP Indirect Container</a>. 
+	<p>This type of container is also referred to as a <a title="Linked Data Platform Container">LDP Container</a>. 
 	It is similar to a an <a title="Linked Data Platform Direct Container">LDP Direct Container</a> 
 	but it provides an indirection to add (via a create request) as member any resource, 
 	such as a URI representing a real-world object,
 	that is different from the document that is created.</p>
 
-	<p><a href="#fig-ldpc-types"></a> illustrates the 3 types: Basic, Direct and Indirect, along
-	with their relationship to types of LDPRs.  It is not expected that there will be a container
-	with a <code>rdf:type</code> solely of <code>ldp:Container</code>.</p>
+	<p><a href="#fig-ldpc-types"></a> illustrates the 3 types: Container, Basic Container and Direct Container, along
+	with their class relationship to types of LDPRs.</p>
 	
 	 <figure id="fig-ldpc-types">
         <img src="images/ldpc1.png" alt="Types of Linked Data Platform Containers" />
-        <figcaption>Types of Linked Data Platform Containers</figcaption>
+        <figcaption>Class relationship of types of Linked Data Platform Containers</figcaption>
     </figure>
 
 <div class="ldp-issue-pending">
@@ -1361,12 +1362,10 @@
 	<table border="1" id="ldpc-mbrcntdiff">
 		<thead><tr><th rowspan="2">Completed Request</th><th colspan="2">Effects</th></tr>
 		       <tr class="oddrow"><th>Membership</th><th>Containment</th></tr></thead>
-		<tr><td>LDPR created in LDPC (any subtype)</td><td>New triple based on type of container (see following rows)</td><td>New triple: 
-			(LDPC, ldp:contains, LDPR)</td></tr>
 		<tr><td>LDPR created in LDP-BC</td><td>New triple: (LDPC, ldp:contains, LDPR)</td><td>Same</td></tr>
 		<tr><td>LDPR created in LDP-DC</td><td>New triple links LDP-RS to created LDPR. LDP-RS URI may be same as LDP-DC</td>
 			<td>New triple: (LDPC, ldp:contains, LDPR)</td></tr>
-		<tr><td>LDPR created in LDP-IC</td><td>New triple links LDP-RS to content indicated URI</td>
+		<tr><td>LDPR created in LDPC</td><td>New triple links LDP-RS to content indicated URI</td>
 			<td>New triple: (LDPC, ldp:contains, LDPR)</td></tr>
 		<tr><td>LDPR is deleted</td><td>Triples may be removed</td><td>Triples are removed
 			</td></tr>
@@ -1412,7 +1411,7 @@
 Content-Type: text/turtle; charset=UTF-8
 ETag: "_87e52ce291112"
 Content-Length: 325
-Link: &lt;http://www.w3.org/ns/ldp/Container&gt;; rel="type"
+Link: &lt;http://www.w3.org/ns/ldp#Container&gt;; rel="type"
 Preference-Applied: return=representation 
 
 @prefix dcterms: &lt;http://purl.org/dc/terms/&gt;.
@@ -1537,23 +1536,21 @@
 	<section id="ldpc-typecontainer"><h2 class="normal">The representation of a LDPC MUST have an <code>rdf:type</code>
 		of only one of:
 		<ul>
+		<li><code>ldp:Container</code> for <a title="">Linked Data Platform Container</a></li>
+		<li><code>ldp:DirectContainer</code> for <a title="">Linked Data Platform Direct Container</a></li>
 		<li><code>ldp:BasicContainer</code> for <a title="">Linked Data Platform Basic Container</a></li>
-		<li><code>ldp:DirectContainer</code> for <a title="">Linked Data Platform Direct Container</a></li>
-		<li><code>ldp:IndirectContainer</code> for <a title="">Linked Data Platform Indirect Container</a></li>
 		</ul>
 		Non-normative note: <a href="#ldp-rdfconcepts-extra-triples-types">LDPCs
 		might have additional types</a>, like any <a title="Linked Data Platform RDF Source">LDP-RS</a>.
 	</h2></section><!-- Was 5.2.7 / #ldpc-5_2_7 -->
 	
-
-	
 	<section id="ldpc-nordfcontainertypes"><h2 class="normal">LDPC representations SHOULD NOT use RDF container types <code>rdf:Bag</code>,
 		<code>rdf:Seq</code> or <code>rdf:List</code>.
 	</h2></section><!-- Was 5.2.8 / #ldpc-5_2_8 -->
 	
 	<section id="ldpc-mbrpred"><h2 class="normal">
 		<a title="Linked Data Platform Direct Container">LDP Direct Containers</a>
-		and <a title="Linked Data Platform Indirect Container">LDP Indirect Containers</a>
+		and <a title="Linked Data Platform Container">LDP Containers</a>
 		SHOULD use the <code>ldp:member</code> predicate as an LDPC's <a title="Membership predicate">membership predicate</a>
 		if there is no obvious predicate from an application vocabulary to use 
 		(<a title="Linked Data Platform Basic Container">LDP-BCs</a> <a href="#ldpc-containtriple-basic">always use <code>ldp:contains</code></a>).
@@ -1569,7 +1566,7 @@
 	</h2></section><!-- Was 5.2.3 / #ldpc-5_2_3 -->
 	
 	<section id="ldpc-containres"><h2 class="normal">Each <a title="Linked Data Platform Direct Container">LDP Direct Container</a>
-		and <a title="Linked Data Platform Indirect Container">LDP Indirect Container</a> representation MUST contain exactly one triple 
+		and <a title="Linked Data Platform Container">LDP Container</a> representation MUST contain exactly one triple 
 		whose subject is the LDPC URI, 
 		whose predicate is the <code>ldp:membershipResource</code>, 
 		and whose object is the LDPC's <var>membership-constant-URI</var>.
@@ -1585,7 +1582,7 @@
 	</section><!-- Was 5.2.4 / #ldpc-5_2_4 -->
 	
 	<section id="ldpc-containtriples"><h2 class="normal">Each <a title="Linked Data Platform Direct Container">LDP Direct Container</a>
-		and <a title="Linked Data Platform Indirect Container">LDP Indirect Container</a> representation MUST contain exactly one triple 
+		and <a title="Linked Data Platform Container">LDP Container</a> representation MUST contain exactly one triple 
 		whose subject is the LDPC URI, 
 		and whose predicate is either <code>ldp:hasMemberRelation</code> or <code>ldp:isMemberOfRelation</code>. 
 		The object of the triple is constrained by other sections, such as
@@ -1595,8 +1592,8 @@
 		pattern used by the container.
 	</h2><!-- Was 5.2.5 / #ldpc-5_2_5 -->
 	
-	<section id="ldpc-containtriple-relation"><h2 class="normal">LDPCs (<a title="Linked Data Platform Direct Container">Direct</a>
-		and <a title="Linked Data Platform Indirect Container">Indirect</a> Containers only) 
+	<section id="ldpc-containtriple-relation"><h2 class="normal">LDPCs (<a title="Linked Data Platform Direct Container">LDP Direct Containers</a>
+		and <a title="Linked Data Platform Container">LDP Containers</a> only) 
 		whose <a title="Membership triples">membership triple</a> 
 		pattern is <var>( membership-constant-URI , membership-predicate , member-derived-URI )</var> MUST
 		contain exactly one triple
@@ -1613,8 +1610,8 @@
 		</h2></section>
 	</section><!-- Was 5.2.5.1 / #ldpc-5_2_5_1 -->
 	
-	<section id="ldpc-containtriple-byrelation"><h2 class="normal">LDPCs (<a title="Linked Data Platform Direct Container">Direct</a>
-		and <a title="Linked Data Platform Indirect Container">Indirect</a> Containers only) 
+	<section id="ldpc-containtriple-byrelation"><h2 class="normal">LDPCs (<a title="Linked Data Platform Direct Container">LDP Direct Containers</a>
+		and <a title="Linked Data Platform Container">LDP Containers</a> only) 
 		whose <a title="Membership triples">membership triple</a> 
 		pattern is <var>( member-derived-URI , membership-predicate , membership-constant-URI )</var> MUST
 		contain exactly one triple
@@ -1625,7 +1622,7 @@
 	</section>
 
 	<section id="ldpc-indirectmbr"><h2 class="normal">
-		LDP <a title="Linked Data Platform Indirect Container">Indirect</a> Containers 
+		<a title="Linked Data Platform Container">LDP Containers</a>
 		MUST contain exactly one triple whose
 	    subject is the LDPC URI, 
 		whose predicate is <code>ldp:insertedContentRelation</code>, and 
@@ -1713,8 +1710,7 @@
 		The first list entry provides the primary
 		sorting criterion, any second entry provides a secondary criterion used to order members considered
 		equal according to the primary criterion, and so on.
-		<!-- Convert cases like this to a sectionRef -->
-		See section <a href="#ldpc-ordering" class="sectionRef"></a> for
+		See <a href="#ldpc-ordering" class="sectionRef"></a> for
 		an example.
 	</h2></section><!-- Was 5.3.2 / #ldpc-5_3_2 -->
 	
@@ -1805,7 +1801,7 @@
 		When a successful HTTP <code>POST</code> request to a LDPC results in the creation of an LDPR, 
 		the LDPC MUST update its membership triples to reflect that addition, and the resulting 
 		membership triple MUST be consistent with any LDP-defined predicates it exposes.
-		A Direct or Indirect container's membership triples MAY also be modified via 
+		A <a title="Linked Data Platform Direct Container">LDP Direct Container</a> or <a title="Linked Data Platform Container">LDP Container</a>'s membership triples MAY also be modified via 
 		through other means. 
 	</h2></section><!-- Was 5.4.2 / #ldpc-5_4_2 -->
 	
@@ -2576,6 +2572,7 @@
 <!-- <blockquote><em><a href="http://www.w3.org/TR/2013/WD-ldp-20130930/">Candidate Recommendation Draft</a></em></blockquote> wah -->
 <!-- <blockquote><em><a href="http://www.w3.org/TR/2013/WD-ldp-20130730/">Last Call Draft</a></em></blockquote> -->
 <ul>
+	<li>2014-02-17 - Adopted container hierarchy and merged Indirect Container into Container (SS) </li>
 	<li>2014-02-17 - Adopted new resource types: LDP RDF Source (LDP-RS) (was LDP RDF Resource) and LDP Non-RDF Source (LDP-NR) (was LDP Binary Resource) (SS)</li>
 	<li>2014-02-17 - Adopted new predicate names: ldp:membershipResource, ldp:hasMemberRelation and ldp:isMemberOfRelation (SS) </li>
 	<li>2014-02-12 - Updated LDPR Post reference to Put, which had implied that clients could PUT (to an LDPC) to create an LDPR (JA)</li>
--- a/ldp.ttl	Mon Feb 17 13:41:55 2014 -0500
+++ b/ldp.ttl	Mon Feb 17 14:47:33 2014 -0500
@@ -57,7 +57,7 @@
 
 :BasicContainer
     a rdfs:Class;
-	rdfs:subClassOf :Container;
+	rdfs:subClassOf :DirectContainer;
 	rdfs:comment "An LDPC that uses a predefined predicate to simply link to its contained resources.";
 	vs:term_status "unstable";
 	rdfs:isDefinedBy :;
@@ -70,16 +70,6 @@
 	vs:term_status "unstable";
 	rdfs:isDefinedBy :;
 	rdfs:label "DirectContainer".
-
-:IndirectContainer
-    a rdfs:Class;
-	rdfs:subClassOf :Container;
-	rdfs:comment "An LDPC that is similar to a LDP-DC but it allows an indirection with the ability to 
-		list as member a resource, such as a URI representing a real-world object, that is different 
-		from the resource that is created.";
-	vs:term_status "unstable";
-	rdfs:isDefinedBy :;
-	rdfs:label "IndirectContainer".
 	
 :containerSortCriteria
  	a rdf:Property;