ldp.html
author John Arwe
Sat, 08 Feb 2014 13:11:14 -0500
changeset 473 1557b3c92200
parent 472 00f0d6677c0c
child 474 a074b88f9b68
permissions -rw-r--r--
Add Prefer header examples, define new URIs from -126 in ttl, tweak acks per Arnaud
471
5aabdca8ea7b fixed definition of prefer ommit
Arnaud Le Hors <lehors@us.ibm.com>
parents: 470
diff changeset
     1
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
     2
<!DOCTYPE html>
194
b6d66196a02d Fixed biblirefs, consistency items and moved editor todo into comments
sspeiche
parents: 192
diff changeset
     3
<!-- 
b6d66196a02d Fixed biblirefs, consistency items and moved editor todo into comments
sspeiche
parents: 192
diff changeset
     4
 Editor TODO:
417
a7cdde712c1f Updated editor TODOs and a minor editorial updates
sspeiche
parents: 416
diff changeset
     5
   - Search "TODO" within this document.
a7cdde712c1f Updated editor TODOs and a minor editorial updates
sspeiche
parents: 416
diff changeset
     6
   - Once companion documents (best practices, primer) have URLs, link to them.  Search on "companion".
373
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
     7
   - Once the membership* names stabilize, take a pass through for "membership consistent value", membership-constant-URI
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
     8
     and see if there is a friendlier way to phrase it.
395
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
     9
   - Paging intro: add 3rd example showing header linkage amongst pages and (HEAD on) the base resource.
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
    10
     Maybe also insert HEAD on base as new first example instead of relying on text alone.
417
a7cdde712c1f Updated editor TODOs and a minor editorial updates
sspeiche
parents: 416
diff changeset
    11
   - The ReSpec SPARQL QUERY link is http://www.w3.org/TR/rdf-sparql-query/ , which has highlighted text
222
1db581afd1ec Added informative section 4.1 , therefore shifting all sections by one 4.1->4.2, etc
sspeiche
parents: 221
diff changeset
    12
	referring readers to SPARQL 1.1.  Which normative reference do we want?
216
c2913c5cf917 ISSUE-53 4.2.2 changed MUST to SHOULD
sspeiche
parents: 215
diff changeset
    13
 Various pre-LC comments:
415
12864dde579d Resolve ACTION-112 Update spec to reflect 10/28 resolution for Issue-81 part 1: new predicate names
John Arwe
parents: 414
diff changeset
    14
    - 5.2.5.1 For a given triple T with a subject C of the LDPC and predicate of ldp:containsRelation, 
12864dde579d Resolve ACTION-112 Update spec to reflect 10/28 resolution for Issue-81 part 1: new predicate names
John Arwe
parents: 414
diff changeset
    15
	  5.2.5.2 For a given triple T with a subject C of the LDPC and predicate of ldp:containedByRelation, 
229
8ddd81e6113c Various minor editorial fixups
sspeiche
parents: 228
diff changeset
    16
	  5.2.10 Some LDPC's have membership object's that are not directly URIs minted upon LDPC member creation, 
8ddd81e6113c Various minor editorial fixups
sspeiche
parents: 228
diff changeset
    17
	  (JohnA) I found these particularly hard to read.  And I perpetrated the SortCollation paragraphs.  
8ddd81e6113c Various minor editorial fixups
sspeiche
parents: 228
diff changeset
    18
	  Links to examples might be an 80-20 solution. 
232
c38de2977a87 Editorial changes from feedback from Sergio
sspeiche
parents: 231
diff changeset
    19
	- 5.3.1: I'd change the link to the example ("as in the example") to refer the concrete example #, I think example 9. 
c38de2977a87 Editorial changes from feedback from Sergio
sspeiche
parents: 231
diff changeset
    20
	  Currently does not work when printing.
325
e0790fa85b77 Removing old working files
sspeiche
parents: 311
diff changeset
    21
 Misc during LC comments:
e0790fa85b77 Removing old working files
sspeiche
parents: 311
diff changeset
    22
    - http://lists.w3.org/Archives/Public/public-ldp/2013Aug/0002.html
e0790fa85b77 Removing old working files
sspeiche
parents: 311
diff changeset
    23
      #1 Should update example in 5.1.3 to be more clear on what the request vs base URI is.  Also example is missing ldp:nextPage.
194
b6d66196a02d Fixed biblirefs, consistency items and moved editor todo into comments
sspeiche
parents: 192
diff changeset
    24
 -->
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    25
<html>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    26
  <head>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    27
    <title>Linked Data Platform 1.0</title>
471
5aabdca8ea7b fixed definition of prefer ommit
Arnaud Le Hors <lehors@us.ibm.com>
parents: 470
diff changeset
    28
    <!-- Changed by: , 07-Feb-2014 -->
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    29
    <meta http-equiv='Content-Type' content='text/html;charset=utf-8'/>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    30
    <!-- 
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    31
      === NOTA BENE ===
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    32
      For the three scripts below, if your spec resides on dev.w3 you can check them
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    33
      out in the same tree and use relative links so that they'll work offline,
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    34
     -->
443
02e1a65a8776 Set maxTocLevel=2 properly with fix from respec
sspeiche
parents: 439
diff changeset
    35
    <script src='https://www.w3.org/Tools/respec/respec-w3c-common' class='remove' async></script> 
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    36
    <script class='remove'>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    37
      var respecConfig = {
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    38
          // specification status (e.g. WD, LCWD, NOTE, etc.). If in doubt use ED.
274
8db905ebe0ba Basic preparation for edits unto LC draft
sspeiche
parents: 238
diff changeset
    39
          specStatus:           "ED",
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    40
          
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    41
          // the specification's short name, as in http://www.w3.org/TR/short-name/
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    42
          shortName:            "ldp",
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    43
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    44
          // if your specification has a subtitle that goes below the main
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    45
          // formal title, define it here
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    46
          // subtitle   :  "an excellent document",
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    47
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    48
          // if you wish the publication date to be other than today, set this
384
adfc713130ec add status code 209, change existing 303 usage to use it
John Arwe
parents: 374
diff changeset
    49
          publishDate:  "",
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    50
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    51
          // if the specification's copyright date is a range of years, specify
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    52
          // the start date here:
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    53
          // copyrightStart: "2005"
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    54
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    55
          // if there is a previously published draft, uncomment this and set its YYYY-MM-DD date
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    56
          // and its maturity status
274
8db905ebe0ba Basic preparation for edits unto LC draft
sspeiche
parents: 238
diff changeset
    57
          previousPublishDate:  "2013-07-30",
8db905ebe0ba Basic preparation for edits unto LC draft
sspeiche
parents: 238
diff changeset
    58
          previousMaturity:  	"LC",
8db905ebe0ba Basic preparation for edits unto LC draft
sspeiche
parents: 238
diff changeset
    59
          previousURI: 			"http://www.w3.org/TR/2013/WD-ldp-20130730/",
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    60
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    61
          // if there a publicly available Editor's Draft, this is the link
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    62
          edDraftURI:           "http://www.w3.org/2012/ldp/hg/ldp.html",
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    63
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    64
          // if this is a LCWD, uncomment and set the end of its review period
234
992015a0d3cd Setting all LC status items for prep for publication
sspeiche
parents: 233
diff changeset
    65
          lcEnd: "2013-09-02",
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
    66
          
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
    67
          // Only include h1 and h2 level
443
02e1a65a8776 Set maxTocLevel=2 properly with fix from respec
sspeiche
parents: 439
diff changeset
    68
          maxTocLevel: 2,
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    69
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    70
          // if you want to have extra CSS, append them to this list
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    71
          // it is recommended that the respec.css stylesheet be kept
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    72
          //extraCSS:             ["https://dvcs.w3.org/hg/ldpwg/css/respec.css"],
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    73
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    74
          // editors, add as many as you like
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    75
          // only "name" is required
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    76
          editors:  [
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    77
              { name: "Steve Speicher", url: "http://stevespeicher.blogspot.com",
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    78
                company: "IBM Corporation", companyURL: "http://ibm.com/" },
33
3c8c101f3f97 2012-12-28 - Fixed Typos. Separated some compound rules like 4.1.5. Rewording for clarity: 4.1.10,
John Arwe <johnarwe@us.ibm.com>
parents: 21
diff changeset
    79
              { name: "John Arwe", url: "https://www.ibm.com/developerworks/mydeveloperworks/groups/service/html/allcommunities?userid=120000CAW7",
3c8c101f3f97 2012-12-28 - Fixed Typos. Separated some compound rules like 4.1.5. Rewording for clarity: 4.1.10,
John Arwe <johnarwe@us.ibm.com>
parents: 21
diff changeset
    80
                company: "IBM Corporation", companyURL: "http://ibm.com/" },
237
6871b9ac5339 Fixed various link checker bugs
sspeiche
parents: 235
diff changeset
    81
			  {name: "Ashok Malhotra", url: "mailto:ashok.malhotra@oracle.com",
99
Ashok Malhotra <Ashok.Malhotra@Oracle.com>
parents: 98
diff changeset
    82
			    company: "Oracle Corporation", companyURL: "http://www.oracle.com" },
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    83
          ],
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    84
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    85
          // authors, add as many as you like. 
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    86
          // This is optional, uncomment if you have authors as well as editors.
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    87
          // only "name" is required. Same format as editors.
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    88
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    89
          //authors:  [
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    90
          //    { name: "Your Name", url: "http://example.org/",
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    91
          //      company: "Your Company", companyURL: "http://example.com/" },
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    92
          //],
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    93
          
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    94
          // name of the WG
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    95
          wg:           "Linked Data Platform Working Group",
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    96
          
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    97
          // URI of the public WG page
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    98
          wgURI:        "http://www.w3.org/2012/ldp",
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    99
          
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   100
          // name (without the @w3c.org) of the public mailing to which comments are due
234
992015a0d3cd Setting all LC status items for prep for publication
sspeiche
parents: 233
diff changeset
   101
          wgPublicList: "public-ldp-comments",
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   102
          
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   103
          // URI of the patent status for this WG, for Rec-track documents
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   104
          // !!!! IMPORTANT !!!!
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   105
          // This is important for Rec-track documents, do not copy a patent URI from a random
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   106
          // document unless you know what you're doing. If in doubt ask your friendly neighbourhood
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   107
          // Team Contact.
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   108
          wgPatentURI:  "http://www.w3.org/2004/01/pp-impl/55082/status",
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   109
          doRDFa: "1.1",
386
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   110
			localBiblio:  {
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   111
				"HTTPBIS-SEMANTICS": {
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   112
					title:    "Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content"
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   113
				,   href:     "http://tools.ietf.org/html/draft-ietf-httpbis-p2-semantics/"
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   114
				,   authors:  [
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   115
						"R. Fielding"
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   116
					,   "J. Reschke"
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   117
					]
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   118
				,   status:   "In Last Call"
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   119
				,   publisher:  "IETF"
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   120
				},
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   121
				"RFC2817": {
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   122
					title:    "Upgrading to TLS Within HTTP/1.1"
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   123
				,   href:     "http://tools.ietf.org/html/rfc2817"
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   124
				,   authors:  [
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   125
						"R. Khare"
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   126
					,   "S. Lawrence"
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   127
					]
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   128
				,   status:   "Proposed Standard"
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   129
				,   publisher:  "IETF"
412
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   130
				},
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   131
				"RFC5005": {
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   132
					title:    "Feed Paging and Archiving"
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   133
				,   href:     "http://tools.ietf.org/html/rfc5005"
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   134
				,   authors:  [
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   135
						"M. Nottingham"
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   136
					]
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   137
				,   status:   "Proposed Standard"
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   138
				,   publisher:  "IETF"
386
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   139
				}
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   140
			},
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   141
      };
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   142
    </script>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   143
    <style type="text/css">
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   144
    	div.rule {padding-top: 1em;}
124
6f1d7304f03f create different styles to differentiate issues based on their status: open, pending, closed
Arnaud Le Hors <lehors@us.ibm.com>
parents: 122
diff changeset
   145
    	div.ldp-issue-open {
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   146
	    	border-color: #E05252;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   147
			background: #FBE9E9;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   148
			padding: 0.5em;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   149
			margin: 1em 0;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   150
			position: relative;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   151
			clear: both;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   152
			border-left-width: .5em;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   153
			border-left-style: solid;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   154
    	}
124
6f1d7304f03f create different styles to differentiate issues based on their status: open, pending, closed
Arnaud Le Hors <lehors@us.ibm.com>
parents: 122
diff changeset
   155
    	div.ldp-issue-pending {
6f1d7304f03f create different styles to differentiate issues based on their status: open, pending, closed
Arnaud Le Hors <lehors@us.ibm.com>
parents: 122
diff changeset
   156
	    	border-color: #FAF602;
6f1d7304f03f create different styles to differentiate issues based on their status: open, pending, closed
Arnaud Le Hors <lehors@us.ibm.com>
parents: 122
diff changeset
   157
			background: #F7F6BC;
6f1d7304f03f create different styles to differentiate issues based on their status: open, pending, closed
Arnaud Le Hors <lehors@us.ibm.com>
parents: 122
diff changeset
   158
			padding: 0.5em;
6f1d7304f03f create different styles to differentiate issues based on their status: open, pending, closed
Arnaud Le Hors <lehors@us.ibm.com>
parents: 122
diff changeset
   159
			margin: 1em 0;
6f1d7304f03f create different styles to differentiate issues based on their status: open, pending, closed
Arnaud Le Hors <lehors@us.ibm.com>
parents: 122
diff changeset
   160
			position: relative;
6f1d7304f03f create different styles to differentiate issues based on their status: open, pending, closed
Arnaud Le Hors <lehors@us.ibm.com>
parents: 122
diff changeset
   161
			clear: both;
6f1d7304f03f create different styles to differentiate issues based on their status: open, pending, closed
Arnaud Le Hors <lehors@us.ibm.com>
parents: 122
diff changeset
   162
			border-left-width: .5em;
6f1d7304f03f create different styles to differentiate issues based on their status: open, pending, closed
Arnaud Le Hors <lehors@us.ibm.com>
parents: 122
diff changeset
   163
			border-left-style: solid;
6f1d7304f03f create different styles to differentiate issues based on their status: open, pending, closed
Arnaud Le Hors <lehors@us.ibm.com>
parents: 122
diff changeset
   164
    	}
6f1d7304f03f create different styles to differentiate issues based on their status: open, pending, closed
Arnaud Le Hors <lehors@us.ibm.com>
parents: 122
diff changeset
   165
    	div.ldp-issue-closed {
6f1d7304f03f create different styles to differentiate issues based on their status: open, pending, closed
Arnaud Le Hors <lehors@us.ibm.com>
parents: 122
diff changeset
   166
	    	border-color: #009900;
6f1d7304f03f create different styles to differentiate issues based on their status: open, pending, closed
Arnaud Le Hors <lehors@us.ibm.com>
parents: 122
diff changeset
   167
			background: #BCF7CF;
6f1d7304f03f create different styles to differentiate issues based on their status: open, pending, closed
Arnaud Le Hors <lehors@us.ibm.com>
parents: 122
diff changeset
   168
			padding: 0.5em;
6f1d7304f03f create different styles to differentiate issues based on their status: open, pending, closed
Arnaud Le Hors <lehors@us.ibm.com>
parents: 122
diff changeset
   169
			margin: 1em 0;
6f1d7304f03f create different styles to differentiate issues based on their status: open, pending, closed
Arnaud Le Hors <lehors@us.ibm.com>
parents: 122
diff changeset
   170
			position: relative;
6f1d7304f03f create different styles to differentiate issues based on their status: open, pending, closed
Arnaud Le Hors <lehors@us.ibm.com>
parents: 122
diff changeset
   171
			clear: both;
6f1d7304f03f create different styles to differentiate issues based on their status: open, pending, closed
Arnaud Le Hors <lehors@us.ibm.com>
parents: 122
diff changeset
   172
			border-left-width: .5em;
6f1d7304f03f create different styles to differentiate issues based on their status: open, pending, closed
Arnaud Le Hors <lehors@us.ibm.com>
parents: 122
diff changeset
   173
			border-left-style: solid;
6f1d7304f03f create different styles to differentiate issues based on their status: open, pending, closed
Arnaud Le Hors <lehors@us.ibm.com>
parents: 122
diff changeset
   174
    	}
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   175
    	div.ldp-issue-title {
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   176
    	    color: #E05252;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   177
    	    padding-right: 1em;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   178
            min-width: 7.5em;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   179
    	}
184
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   180
		.atrisk {
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   181
			padding:    1em;
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   182
			margin: 1em 0em 0em;
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   183
			border: 1px solid #f00;
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   184
			background: #ffc;
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   185
		}
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   186
		.atrisktext {
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   187
			/* content:    "Feature At Risk"; */
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   188
			display:    block;
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   189
			width:  150px;
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   190
			margin: -1.5em 0 0.5em 0;
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   191
			font-weight:    bold;
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   192
			border: 1px solid #f00;
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   193
			background: #fff;
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   194
			padding:    3px 1em;
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   195
		}
437
631936d65086 Fixed formating with >h2 formatting
sspeiche
parents: 436
diff changeset
   196
		.normal { 
631936d65086 Fixed formating with >h2 formatting
sspeiche
parents: 436
diff changeset
   197
			font-weight: normal;
631936d65086 Fixed formating with >h2 formatting
sspeiche
parents: 436
diff changeset
   198
			font: normal 100% sans-serif;
631936d65086 Fixed formating with >h2 formatting
sspeiche
parents: 436
diff changeset
   199
		}
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   200
		
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   201
    </style>
33
3c8c101f3f97 2012-12-28 - Fixed Typos. Separated some compound rules like 4.1.5. Rewording for clarity: 4.1.10,
John Arwe <johnarwe@us.ibm.com>
parents: 21
diff changeset
   202
    <style type="text/css" media="all">
3c8c101f3f97 2012-12-28 - Fixed Typos. Separated some compound rules like 4.1.5. Rewording for clarity: 4.1.10,
John Arwe <johnarwe@us.ibm.com>
parents: 21
diff changeset
   203
    	code {
3c8c101f3f97 2012-12-28 - Fixed Typos. Separated some compound rules like 4.1.5. Rewording for clarity: 4.1.10,
John Arwe <johnarwe@us.ibm.com>
parents: 21
diff changeset
   204
    	    font-weight:bold;
120
edf269bcce8a Issue-64 change ?non-member-properties into Link header with extension relation type
John Arwe
parents: 116
diff changeset
   205
			font-size:larger;
33
3c8c101f3f97 2012-12-28 - Fixed Typos. Separated some compound rules like 4.1.5. Rewording for clarity: 4.1.10,
John Arwe <johnarwe@us.ibm.com>
parents: 21
diff changeset
   206
    	}
3c8c101f3f97 2012-12-28 - Fixed Typos. Separated some compound rules like 4.1.5. Rewording for clarity: 4.1.10,
John Arwe <johnarwe@us.ibm.com>
parents: 21
diff changeset
   207
		 /* ReSpec uses color ff4500 for code elements, which does not print well on some black & white printers
120
edf269bcce8a Issue-64 change ?non-member-properties into Link header with extension relation type
John Arwe
parents: 116
diff changeset
   208
		    and is a little hard to read for some folks even on-line. 
edf269bcce8a Issue-64 change ?non-member-properties into Link header with extension relation type
John Arwe
parents: 116
diff changeset
   209
			The default code font size was also somewhat too small/hard to read.
edf269bcce8a Issue-64 change ?non-member-properties into Link header with extension relation type
John Arwe
parents: 116
diff changeset
   210
		*/
33
3c8c101f3f97 2012-12-28 - Fixed Typos. Separated some compound rules like 4.1.5. Rewording for clarity: 4.1.10,
John Arwe <johnarwe@us.ibm.com>
parents: 21
diff changeset
   211
    </style>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   212
  </head>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   213
<body>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   214
<section id='abstract'>
215
da72115eb40b Various updates per review of Raul
sspeiche
parents: 213
diff changeset
   215
This document describes a set of best practices and simple approach for a read-write Linked Data architecture, based on
78
539b6b098ee8 Comments received from David Woods: abstract, paging informative (part 1)
sspeiche
parents: 77
diff changeset
   216
HTTP access to web resources that describe their state using the <abbr title="Resource Description Framework">RDF</abbr>
539b6b098ee8 Comments received from David Woods: abstract, paging informative (part 1)
sspeiche
parents: 77
diff changeset
   217
data model.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   218
</section>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   219
 
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   220
<section class="informative" id="intro">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   221
<h1>Introduction</h1>
373
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   222
	<p>This specification describes the use
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   223
	of HTTP for accessing, updating, creating and deleting resources from
215
da72115eb40b Various updates per review of Raul
sspeiche
parents: 213
diff changeset
   224
	servers that expose their resources as Linked Data.  It provides clarifications
373
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   225
	and extensions of the rules of Linked Data [[LINKED-DATA]]:</p>
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   226
	<ol>
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   227
		<li>Use URIs as names for things</li>
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   228
		<li>Use HTTP URIs so that people can look up those names</li>
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   229
		<li>When someone looks up a URI, provide useful information, using the standards
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   230
			(RDF*, <abbr title="SPARQL Protocol and RDF Query Language">SPARQL</abbr>)
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   231
		</li>
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   232
		<li>Include links to other URIs, so that they can discover more things</li>
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   233
	</ol>
415
12864dde579d Resolve ACTION-112 Update spec to reflect 10/28 resolution for Issue-81 part 1: new predicate names
John Arwe
parents: 414
diff changeset
   234
	<p>This specification discusses standard HTTP and RDF techniques  
12864dde579d Resolve ACTION-112 Update spec to reflect 10/28 resolution for Issue-81 part 1: new predicate names
John Arwe
parents: 414
diff changeset
   235
	used when constructing clients and servers that 
395
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   236
	create, read, and write <a title="Linked Data Platform Resource">Linked Data Platform Resources</a>.
373
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   237
	A companion document discusses best practices that you 
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   238
	should use, and anti-patterns you should avoid, when constructing these clients and servers.
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   239
	</p> 
395
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   240
	<p>This specification provides a widely re-usable pattern to deal with large resources.  
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   241
	Depending on the server’s capabilities, a GET request on a <a title="Paged resource">resource</a> can
464
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
   242
	be redirected to a <a title="Single-page resource">subset of the resource (one page)</a>, that provides access to subsequent pages 
415
12864dde579d Resolve ACTION-112 Update spec to reflect 10/28 resolution for Issue-81 part 1: new predicate names
John Arwe
parents: 414
diff changeset
   243
	(see <a href="#ldpr-Paging" class="sectionRef"></a>). 
12864dde579d Resolve ACTION-112 Update spec to reflect 10/28 resolution for Issue-81 part 1: new predicate names
John Arwe
parents: 414
diff changeset
   244
	</p>
373
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   245
	<p>This specification defines a special type of <a>Linked Data Platform Resource</a>: a 
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   246
	<a title="Linked Data Platform Container">Container</a>.  Containers are very useful 
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   247
	in building application models involving collections of resources, often homogeneous ones. 
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   248
	For example, universities offer a collection of classes 
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   249
	and have a collection of faculty members, each faculty member teaches a collection of courses, and so on. 
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   250
	This specification discusses how to work with containers.  Resources can be added to containers  
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   251
	using standard HTTP operations like 
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   252
	POST (see <a href="#ldpc-HTTP_POST" class="sectionRef"></a>).</p>
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   253
	<p>The intention of this specification is to enable additional rules and layered groupings of rules as 
204
04f24555e6aa Added wording re. model to Introduction
Ashok Malhotra <Ashok.Malhotra@Oracle.com>
parents: 202
diff changeset
   254
	additional specifications.  The scope is intentionally narrow to provide a set of key rules for 
04f24555e6aa Added wording re. model to Introduction
Ashok Malhotra <Ashok.Malhotra@Oracle.com>
parents: 202
diff changeset
   255
	reading and writing Linked Data that most, if not all, other specifications will depend upon and 
208
0cd38b1b5d41 Various editorial cleanups in intro
sspeiche
parents: 207
diff changeset
   256
	implementations will support.</p>
439
28beff0a4f89 Updated reference to LDP BPG editor's draft and added ref to LDP-UCR
sspeiche
parents: 438
diff changeset
   257
	<p>For context and background, it could be useful to read <a href="#bib-LDP-UCR">Linked Data Platform Use Case and Requirements</a> [[LDP-UCR]] 
28beff0a4f89 Updated reference to LDP BPG editor's draft and added ref to LDP-UCR
sspeiche
parents: 438
diff changeset
   258
	and <a href="#base-specs" class="sectionRef"></a>.</p>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   259
</section>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   260
	
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   261
<section id="terms">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   262
<h1>Terminology</h1>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   263
33
3c8c101f3f97 2012-12-28 - Fixed Typos. Separated some compound rules like 4.1.5. Rewording for clarity: 4.1.10,
John Arwe <johnarwe@us.ibm.com>
parents: 21
diff changeset
   264
<p>Terminology is based on W3C's Architecture of the World Wide Web [[WEBARCH]] and Hyper-text Transfer Protocol [[HTTP11]].
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   265
</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   266
  <dl class="glossary">
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   267
	<dt>Link</dt>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   268
	<dd>A relationship between two resources when one resource (representation) refers to the other resource by means
33
3c8c101f3f97 2012-12-28 - Fixed Typos. Separated some compound rules like 4.1.5. Rewording for clarity: 4.1.10,
John Arwe <johnarwe@us.ibm.com>
parents: 21
diff changeset
   269
		of a URI [[WEBARCH]].
3c8c101f3f97 2012-12-28 - Fixed Typos. Separated some compound rules like 4.1.5. Rewording for clarity: 4.1.10,
John Arwe <johnarwe@us.ibm.com>
parents: 21
diff changeset
   270
		<p></p></dd>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   271
							
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   272
	<dt>Linked Data</dt>
33
3c8c101f3f97 2012-12-28 - Fixed Typos. Separated some compound rules like 4.1.5. Rewording for clarity: 4.1.10,
John Arwe <johnarwe@us.ibm.com>
parents: 21
diff changeset
   273
	<dd>As defined by Tim Berners-Lee [[LINKED-DATA]].<p></p></dd>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   274
	
449
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
   275
	<dt>Client</dt>
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
   276
	<dd>A program that establishes connections for the purpose of sending requests [[HTTP11]].<p></p></dd>
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
   277
	
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
   278
	<dt>Server</dt>
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
   279
	<dd>An application
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
   280
		program that accepts connections in order to service requests by
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
   281
		sending back responses. 
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
   282
		<p>Any given program may be capable of being
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
   283
		both a client and a server; our use of these terms refers only to
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
   284
		the role being performed by the program for a particular
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
   285
		connection, rather than to the program's capabilities in general.
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
   286
		Likewise, any server may act as an origin server, proxy, gateway,
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
   287
		or tunnel, switching behavior based on the nature of each request
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
   288
		[[HTTP11]]. </p></dd>
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
   289
	
331
2e0bbaef0442 fixed a few minor respec errors
sspeiche
parents: 325
diff changeset
   290
	<dt><dfn>Linked Data Platform Resource</dfn> (<abbr title="Linked Data Platform Resource">LDPR</abbr>)</dt>
461
64c0ca32c9e6 Cleanup from Action-123 add LDPR-RR and LDPR-BR
John Arwe
parents: 460
diff changeset
   291
	<dd>A HTTP resource whose state is represented in any way that conforms to the simple lifecycle
215
da72115eb40b Various updates per review of Raul
sspeiche
parents: 213
diff changeset
   292
		patterns and conventions in <a href="#ldpr" class="sectionRef"></a>.<p></p></dd>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   293
		
448
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   294
	<dt><dfn>Linked Data Platform RDF Resource</dfn> (<abbr title="Linked Data Platform RDF Resource">LDP-RR</abbr>)</dt>
458
241a71502265 Cleanup terminology
John Arwe
parents: 456
diff changeset
   295
	<dd>An <a title="Linked Data Platform Resource">LDPR</a> whose state is represented in RDF, corresponding to
456
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
   296
	an RDF <a href="http://www.w3.org/TR/rdf11-concepts/#dfn-named-graph">named graph</a> [[rdf11-concepts]].
448
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   297
	<p></p></dd>	
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   298
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   299
	<dt><dfn>Linked Data Platform Binary Resource</dfn> (<abbr title="Linked Data Platform Binary Resource">LDP-BR</abbr>)</dt>
461
64c0ca32c9e6 Cleanup from Action-123 add LDPR-RR and LDPR-BR
John Arwe
parents: 460
diff changeset
   300
	<dd>A <a title="Linked Data Platform Resource">LDPR</a> whose state is <em>not</em> represented in RDF.
64c0ca32c9e6 Cleanup from Action-123 add LDPR-RR and LDPR-BR
John Arwe
parents: 460
diff changeset
   301
	These are binary or text documents that do not have useful RDF representations.
448
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   302
	<p></p></dd>
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   303
		
331
2e0bbaef0442 fixed a few minor respec errors
sspeiche
parents: 325
diff changeset
   304
	<dt><dfn>Linked Data Platform Container</dfn> (<abbr title="Linked Data Platform Container">LDPC</abbr>)</dt>
461
64c0ca32c9e6 Cleanup from Action-123 add LDPR-RR and LDPR-BR
John Arwe
parents: 460
diff changeset
   305
	<dd>An LDPR representing a collection of <a title="Membership">member</a> resources and/or <a title="Containment">contained</a>
64c0ca32c9e6 Cleanup from Action-123 add LDPR-RR and LDPR-BR
John Arwe
parents: 460
diff changeset
   306
	documents (information resources [[!WEBARCH]])
64c0ca32c9e6 Cleanup from Action-123 add LDPR-RR and LDPR-BR
John Arwe
parents: 460
diff changeset
   307
	that responds to client requests for creation, modification, and/or enumeration of its members and documents, 
64c0ca32c9e6 Cleanup from Action-123 add LDPR-RR and LDPR-BR
John Arwe
parents: 460
diff changeset
   308
	and that conforms to the simple lifecycle
64c0ca32c9e6 Cleanup from Action-123 add LDPR-RR and LDPR-BR
John Arwe
parents: 460
diff changeset
   309
	patterns and conventions in <a href="#ldpc" class="sectionRef"></a>.
33
3c8c101f3f97 2012-12-28 - Fixed Typos. Separated some compound rules like 4.1.5. Rewording for clarity: 4.1.10,
John Arwe <johnarwe@us.ibm.com>
parents: 21
diff changeset
   310
	<p></p></dd>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   311
	
449
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
   312
	<dt><dfn>Linked Data Platform Basic Container</dfn> (<abbr title="Linked Data Platform Basic Container">LDP-BC</abbr>)</dt>
466
7b840138bdf1 editorial cleanup; substantive hits to ldpc delete, remove reqt for direct containers to materialize insertedContentRelation (since it's value is fixed)
John Arwe
parents: 465
diff changeset
   313
	<dd>A <a title="Linked Data Platform Container">LDPC</a> that uses a single pre-defined predicate to link to both
461
64c0ca32c9e6 Cleanup from Action-123 add LDPR-RR and LDPR-BR
John Arwe
parents: 460
diff changeset
   314
	its <a title="Containment">contained</a> and <a title="Membership">member</a> documents (information resources) [[!WEBARCH]].
449
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
   315
	<p></p></dd>
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
   316
	
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
   317
	<dt><dfn>Linked Data Platform Direct Container</dfn> (<abbr title="Linked Data Platform Direct Container">LDP-DC</abbr>)</dt>
466
7b840138bdf1 editorial cleanup; substantive hits to ldpc delete, remove reqt for direct containers to materialize insertedContentRelation (since it's value is fixed)
John Arwe
parents: 465
diff changeset
   318
	<dd>A <a title="Linked Data Platform Container">LDPC</a> that has the flexibility of choosing what form its 
461
64c0ca32c9e6 Cleanup from Action-123 add LDPR-RR and LDPR-BR
John Arwe
parents: 460
diff changeset
   319
	<a title="Membership triples">membership triples</a> take, and allows <a title="Membership">members</a> to be 
64c0ca32c9e6 Cleanup from Action-123 add LDPR-RR and LDPR-BR
John Arwe
parents: 460
diff changeset
   320
	any resources [[!WEBARCH]], not only documents.
449
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
   321
	<p></p></dd>
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
   322
	
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
   323
	<dt><dfn>Linked Data Platform Indirect Container</dfn> (<abbr title="Linked Data Platform Indirect Container">LDP-IC</abbr>)</dt>
466
7b840138bdf1 editorial cleanup; substantive hits to ldpc delete, remove reqt for direct containers to materialize insertedContentRelation (since it's value is fixed)
John Arwe
parents: 465
diff changeset
   324
	<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>
461
64c0ca32c9e6 Cleanup from Action-123 add LDPR-RR and LDPR-BR
John Arwe
parents: 460
diff changeset
   325
	and is capable of accepting creation requests that result in <a title="Membership">members</a> being added based
64c0ca32c9e6 Cleanup from Action-123 add LDPR-RR and LDPR-BR
John Arwe
parents: 460
diff changeset
   326
	on the content of its <a title="Containment">contained</a> documents rather than the URIs assigned to those documents.
451
f68e4a59fba1 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 450
diff changeset
   327
	<p></p></dd>
449
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
   328
		
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
   329
	<dt><dfn>Membership</dfn></dt>
461
64c0ca32c9e6 Cleanup from Action-123 add LDPR-RR and LDPR-BR
John Arwe
parents: 460
diff changeset
   330
	<dd>The relationship linking an LDP-RR (LDPCs are also LDP-RRs) and its member LDPRs.  
64c0ca32c9e6 Cleanup from Action-123 add LDPR-RR and LDPR-BR
John Arwe
parents: 460
diff changeset
   331
	There often is a linked LDPC that assists with managing the member LDPRs.<p></p></dd>
449
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
   332
120
edf269bcce8a Issue-64 change ?non-member-properties into Link header with extension relation type
John Arwe
parents: 116
diff changeset
   333
	<dt><dfn>Membership triples</dfn></dt>
33
3c8c101f3f97 2012-12-28 - Fixed Typos. Separated some compound rules like 4.1.5. Rewording for clarity: 4.1.10,
John Arwe <johnarwe@us.ibm.com>
parents: 21
diff changeset
   334
	<dd>A set of triples in an LDPC's state that lists its members.
373
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   335
		A container's membership triples all have one of the following patterns:
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   336
		<table style="margin-left: +3em">
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   337
		<tr>
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   338
		<td style="padding:0 0 0 +2ex"> <var style="background:#DDDDDD">membership-constant-URI</var> </td>
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   339
		<td style="padding:0 0 0 +2ex"> <var>membership-predicate</var> </td>
415
12864dde579d Resolve ACTION-112 Update spec to reflect 10/28 resolution for Issue-81 part 1: new predicate names
John Arwe
parents: 414
diff changeset
   340
		<td style="padding:0 0 0 +2ex"> <var style="background:#CCFFFF">member-derived-URI</var> </td>
373
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   341
		</tr>
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   342
		<tr>
415
12864dde579d Resolve ACTION-112 Update spec to reflect 10/28 resolution for Issue-81 part 1: new predicate names
John Arwe
parents: 414
diff changeset
   343
		<td style="padding:0 0 0 +2ex"> <var style="background:#CCFFFF">member-derived-URI</var> </td>
373
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   344
		<td style="padding:0 0 0 +2ex"> <var>membership-predicate</var> </td>
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   345
		<td style="padding:0 0 0 +2ex"> <var style="background:#DDDDDD">membership-constant-URI</var> </td>
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   346
		</tr>
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   347
		</table>
415
12864dde579d Resolve ACTION-112 Update spec to reflect 10/28 resolution for Issue-81 part 1: new predicate names
John Arwe
parents: 414
diff changeset
   348
		The difference between the two is simply which position member-derived-URI occupies, which is usually
373
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   349
		driven by the choice of <var>membership-predicate</var>.  Most predicates have a natural forward direction
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   350
		inherent in their name, and existing vocabularies contain useful examples that read naturally in
453
a70c321daf12 ACTION-120 (Part 3) Added ldp:member
sspeiche
parents: 452
diff changeset
   351
		each direction.  <code>ldp:member</code> and <code>dcterms:isPartOf</code> are representative examples.
373
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   352
		<p>
415
12864dde579d Resolve ACTION-112 Update spec to reflect 10/28 resolution for Issue-81 part 1: new predicate names
John Arwe
parents: 414
diff changeset
   353
		Each container exposes properties (see <a href="#ldpc-general" class="sectionRef"></a>)
12864dde579d Resolve ACTION-112 Update spec to reflect 10/28 resolution for Issue-81 part 1: new predicate names
John Arwe
parents: 414
diff changeset
   354
		that allow clients to determine which pattern it
373
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   355
		uses, what the actual <var>membership-predicate</var> and <var>membership-constant-URI</var> values are, 
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   356
		and (for containers that allow the creation of new members) what value is used
415
12864dde579d Resolve ACTION-112 Update spec to reflect 10/28 resolution for Issue-81 part 1: new predicate names
John Arwe
parents: 414
diff changeset
   357
		for the <var>member-derived-URI</var> based on the client's input to the 
373
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   358
		creation process.</p>
33
3c8c101f3f97 2012-12-28 - Fixed Typos. Separated some compound rules like 4.1.5. Rewording for clarity: 4.1.10,
John Arwe <johnarwe@us.ibm.com>
parents: 21
diff changeset
   359
	<p></p></dd>
3c8c101f3f97 2012-12-28 - Fixed Typos. Separated some compound rules like 4.1.5. Rewording for clarity: 4.1.10,
John Arwe <johnarwe@us.ibm.com>
parents: 21
diff changeset
   360
	
120
edf269bcce8a Issue-64 change ?non-member-properties into Link header with extension relation type
John Arwe
parents: 116
diff changeset
   361
	<dt><dfn>Membership predicate</dfn></dt>
edf269bcce8a Issue-64 change ?non-member-properties into Link header with extension relation type
John Arwe
parents: 116
diff changeset
   362
	<dd>The predicate of all a LDPC's <a title="Membership triples">membership triples</a>.
edf269bcce8a Issue-64 change ?non-member-properties into Link header with extension relation type
John Arwe
parents: 116
diff changeset
   363
	<p></p></dd>
edf269bcce8a Issue-64 change ?non-member-properties into Link header with extension relation type
John Arwe
parents: 116
diff changeset
   364
	
465
26eb1d6d4fd6 fixing things found proofing SS updates and a few of Arnaud's email comments
John Arwe
parents: 464
diff changeset
   365
	<dt><dfn>Containment</dfn></dt>
26eb1d6d4fd6 fixing things found proofing SS updates and a few of Arnaud's email comments
John Arwe
parents: 464
diff changeset
   366
	<dd>The relationship binding an LDPC to LDPRs whose lifecycle it controls and is aware of.  The
26eb1d6d4fd6 fixing things found proofing SS updates and a few of Arnaud's email comments
John Arwe
parents: 464
diff changeset
   367
	lifecycle of the contained LDPR is limited by the lifecycle of the containing LDPC;
26eb1d6d4fd6 fixing things found proofing SS updates and a few of Arnaud's email comments
John Arwe
parents: 464
diff changeset
   368
	that is, a contained LDPR cannot be created (through LDP-defined means) before its containing LDPC exists.
26eb1d6d4fd6 fixing things found proofing SS updates and a few of Arnaud's email comments
John Arwe
parents: 464
diff changeset
   369
	<p></p></dd>
26eb1d6d4fd6 fixing things found proofing SS updates and a few of Arnaud's email comments
John Arwe
parents: 464
diff changeset
   370
26eb1d6d4fd6 fixing things found proofing SS updates and a few of Arnaud's email comments
John Arwe
parents: 464
diff changeset
   371
	<dt><dfn>Containment triples</dfn></dt>
26eb1d6d4fd6 fixing things found proofing SS updates and a few of Arnaud's email comments
John Arwe
parents: 464
diff changeset
   372
	<dd>
26eb1d6d4fd6 fixing things found proofing SS updates and a few of Arnaud's email comments
John Arwe
parents: 464
diff changeset
   373
	A set of triples in an LDPC's state, maintained by the LDPC, that lists documents created by the LDPC but not yet deleted.
26eb1d6d4fd6 fixing things found proofing SS updates and a few of Arnaud's email comments
John Arwe
parents: 464
diff changeset
   374
	These triples <strong>always</strong> have the form: <var>( LDPC URI, ldp:contains , document-URI )</var>.
26eb1d6d4fd6 fixing things found proofing SS updates and a few of Arnaud's email comments
John Arwe
parents: 464
diff changeset
   375
	<p></p></dd>
26eb1d6d4fd6 fixing things found proofing SS updates and a few of Arnaud's email comments
John Arwe
parents: 464
diff changeset
   376
412
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   377
	<dt><dfn>Non-member resource</dfn></dt>
415
12864dde579d Resolve ACTION-112 Update spec to reflect 10/28 resolution for Issue-81 part 1: new predicate names
John Arwe
parents: 414
diff changeset
   378
	<dd>A HTTP resource associated with a LDPC by a server for the purpose of enabling clients to
412
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   379
	retrieve a subset of the LDPC's state, namely the subset that omits the LDPC's membership triples.
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   380
	In other words, the union of the non-member resource's state and the LDPC's membership triples
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   381
	exactly equals the LDPC's state.
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   382
	<p></p></dd>
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   383
	
395
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   384
	<dt><dfn>Paged resource</dfn></dt>
464
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
   385
	<dd>A LDP-RR whose representation may be too large to fit in a single HTTP response, for which an
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
   386
	LDP server offers a sequence of single-page <a title="Linked Data Platform RDF Resource">LDP-RRs</a>.  
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
   387
	When the representations of the sequence's resources
412
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   388
	are combined by a client, the client has a (potentially incomplete or incoherent) copy of the paged resource's
464
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
   389
	state.  If a paged resource <var>P</var> is a LDP-RR and is broken into a sequence of pages
395
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   390
	(single-page resources) <var>P<sub>1</sub>, P<sub>2</sub>, ...,P<sub>n</sub></var>,
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   391
	the representation of each <var>P<sub>i</sub></var> contains
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   392
	a subset of the triples in <var>P</var>.
464
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
   393
	LDP allows paging of resources other than <a title="Linked Data Platform RDF Resource">LDP-RRs</a>, 
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
   394
	but does not specify how clients combine
412
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   395
	their representations.  See <a href="#ldpr-Paging" class="sectionRef"></a> for additional details.  For readers
415
12864dde579d Resolve ACTION-112 Update spec to reflect 10/28 resolution for Issue-81 part 1: new predicate names
John Arwe
parents: 414
diff changeset
   396
	familiar with paged feeds [[RFC5005]], a paged resource is similar to a logical feed.
413
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   397
	Any resource could be considered to be a paged resource consisting of exactly one page, 
412
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   398
	although there is no known advantage in doing so.
395
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   399
	<p></p></dd>
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   400
	
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   401
	<dt><dfn>Single-page resource</dfn></dt>
464
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
   402
	<dd>One of a sequence of related <a title="Linked Data Platform RDF Resource">LDP-RRs</a>
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
   403
	<var>P<sub>1</sub>, P<sub>2</sub>, ...,P<sub>n</sub></var>, 
395
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   404
	each of which contains a subset of the state
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   405
	of another resource <var>P</var>.  <var>P</var> is called the paged resource.
412
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   406
	For readers
415
12864dde579d Resolve ACTION-112 Update spec to reflect 10/28 resolution for Issue-81 part 1: new predicate names
John Arwe
parents: 414
diff changeset
   407
	familiar with paged feeds [[RFC5005]], a single-page resource is similar to a feed document and the same
412
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   408
	coherency/completeness considerations apply.
413
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   409
	<a href="#ldpr-pagingGET-sequences-change">LDP provides no guarantees that the sequence is stable</a>.
416
166375df8bf8 Various editorial and validation fixes
sspeiche
parents: 415
diff changeset
   410
	<p>
395
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   411
	Note: the choice of terms was designed to help authors and readers clearly differentiate between
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   412
	the <a title="Paged resource"><em>resource being paged</em></a>, and the 
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   413
	<a title="Single-page resource"><em>individual page resources</em></a>, 
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   414
	in cases where both are mentioned in
413
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   415
	close proximity.  
225
3836f2670382 Added term page resource
sspeiche
parents: 224
diff changeset
   416
	<p></p></dd>
3836f2670382 Added term page resource
sspeiche
parents: 224
diff changeset
   417
	
412
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   418
	<dt><dfn>first page link</dfn></dt>
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   419
	<dd>A link to the first <a title="Single-page resource">single-page resource</a>
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   420
	of a <a title="Paged resource">paged resource</a> <var>P</var>.  Syntactically, a
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   421
	HTTP <code>Link &lt;<var>P<sub>1</sub></var>&gt;; rel='first'</code>
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   422
	header [[!RFC5988]].
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   423
	<p></p></dd>
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   424
	
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   425
	<dt><dfn>next page link</dfn></dt>
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   426
	<dd>A link to the next <a title="Single-page resource">single-page resource</a> 
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   427
	of a <a title="Paged resource">paged resource</a> <var>P</var>.  Syntactically, a
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   428
	HTTP <code>Link &lt;<var>P<sub>i</sub></var>&gt;; rel='next'</code>
415
12864dde579d Resolve ACTION-112 Update spec to reflect 10/28 resolution for Issue-81 part 1: new predicate names
John Arwe
parents: 414
diff changeset
   429
	header [[!RFC5988]] where the target URI is <var>P<sub>i=2...n</sub></var>.
412
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   430
	<p></p></dd>
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   431
	
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   432
	<dt><dfn>last page link</dfn></dt>
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   433
	<dd>A link to the last <a title="Single-page resource">single-page resource</a>
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   434
	of a <a title="Paged resource">paged resource</a> <var>P</var>.  Syntactically, a
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   435
	HTTP <code>Link &lt;<var>P<sub>n</sub></var>&gt;; rel='last'</code>
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   436
	header [[!RFC5988]].
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   437
	<p></p></dd>
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   438
	
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   439
	<dt><dfn>previous page link</dfn></dt>
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   440
	<dd>A link to the previous <a title="Single-page resource">single-page resource</a> 
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   441
	of a <a title="Paged resource">paged resource</a> <var>P</var>.  Syntactically, a
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   442
	HTTP <code>Link &lt;<var>P<sub>i</sub></var>&gt;; rel='prev'</code>
415
12864dde579d Resolve ACTION-112 Update spec to reflect 10/28 resolution for Issue-81 part 1: new predicate names
John Arwe
parents: 414
diff changeset
   443
	header [[!RFC5988]] where the target URI is <var>P<sub>i=1...n-1</sub></var>.
33
3c8c101f3f97 2012-12-28 - Fixed Typos. Separated some compound rules like 4.1.5. Rewording for clarity: 4.1.10,
John Arwe <johnarwe@us.ibm.com>
parents: 21
diff changeset
   444
	<p></p></dd>
175
bcc13fba2593 issue-58 action 87 warnings about inlining
John Arwe
parents: 174
diff changeset
   445
	
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   446
  </dl>
33
3c8c101f3f97 2012-12-28 - Fixed Typos. Separated some compound rules like 4.1.5. Rewording for clarity: 4.1.10,
John Arwe <johnarwe@us.ibm.com>
parents: 21
diff changeset
   447
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   448
<section id="conventions">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   449
<h2>Conventions Used in This Document</h2>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   450
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   451
	<p>Sample resource representations are provided in <code>text/turtle</code>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   452
		format [[TURTLE]].</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   453
	<p>Commonly used namespace prefixes:</p>
93
598be81efe5f Expanded on wording for 4.3 to be more consistent
sspeiche
parents: 92
diff changeset
   454
	<pre style="word-wrap: break-word; white-space: pre-wrap;">	@prefix dcterms: &lt;http://purl.org/dc/terms/&gt;.
452
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
   455
	@prefix foaf:     &lt;http://xmlns.com/foaf/0.1/&gt;.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   456
	@prefix rdf:     &lt;http://www.w3.org/1999/02/22-rdf-syntax-ns#&gt;.
42
2aeef316040a ISSUE-25 made changes for composition model
sspeiche
parents: 40
diff changeset
   457
	@prefix ldp:     &lt;http://www.w3.org/ns/ldp#&gt;.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   458
	@prefix xsd:     &lt;http://www.w3.org/2001/XMLSchema#&gt;.</pre>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   459
</section>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   460
</section>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   461
    
71
5a2794d3ab13 ISSUE-31 Added a more complete conformance section, motived by SPARQL 1.1
sspeiche
parents: 69
diff changeset
   462
<section id='conformance'>
5a2794d3ab13 ISSUE-31 Added a more complete conformance section, motived by SPARQL 1.1
sspeiche
parents: 69
diff changeset
   463
373
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   464
<p>LDP uses the term <b><dfn>informative</dfn></b> as a synonym for non-normative.</p>
72
73a5766e4794 ISSUE-29 - Use relative URIs in examples
sspeiche
parents: 71
diff changeset
   465
<p>The status of the sections of Linked Data Platform 1.0 (this document) is as follows:</p>
71
5a2794d3ab13 ISSUE-31 Added a more complete conformance section, motived by SPARQL 1.1
sspeiche
parents: 69
diff changeset
   466
<ul>
463
ae72388dbb82 start action-127 paging use of [23]xx response code; also changed 'informative' to 'non-normative' so sandro is happy[ier]
John Arwe
parents: 462
diff changeset
   467
  <li>1. Introduction: <b>non-normative</b></li>
222
1db581afd1ec Added informative section 4.1 , therefore shifting all sections by one 4.1->4.2, etc
sspeiche
parents: 221
diff changeset
   468
  <li>2. Terminology: <b>normative</b></li>
71
5a2794d3ab13 ISSUE-31 Added a more complete conformance section, motived by SPARQL 1.1
sspeiche
parents: 69
diff changeset
   469
  <li>3. Conformance: <b>normative</b></li>
5a2794d3ab13 ISSUE-31 Added a more complete conformance section, motived by SPARQL 1.1
sspeiche
parents: 69
diff changeset
   470
  <li>4. Linked Data Platform Resources: <b>normative</b></li>
5a2794d3ab13 ISSUE-31 Added a more complete conformance section, motived by SPARQL 1.1
sspeiche
parents: 69
diff changeset
   471
  <li>5. Linked Data Platform Containers: <b>normative</b></li>
194
b6d66196a02d Fixed biblirefs, consistency items and moved editor todo into comments
sspeiche
parents: 192
diff changeset
   472
  <li>6. HTTP Header Definitions: <b>normative</b></li>
463
ae72388dbb82 start action-127 paging use of [23]xx response code; also changed 'informative' to 'non-normative' so sandro is happy[ier]
John Arwe
parents: 462
diff changeset
   473
  <li>A. Acknowledgements: <b>non-normative</b></li> 
234
992015a0d3cd Setting all LC status items for prep for publication
sspeiche
parents: 233
diff changeset
   474
  <li>B.1 Normative references: <b>normative</b></li>
463
ae72388dbb82 start action-127 paging use of [23]xx response code; also changed 'informative' to 'non-normative' so sandro is happy[ier]
John Arwe
parents: 462
diff changeset
   475
  <li>B.2 Non-normative references: <b>non-normative</b></li>
71
5a2794d3ab13 ISSUE-31 Added a more complete conformance section, motived by SPARQL 1.1
sspeiche
parents: 69
diff changeset
   476
</ul>
5a2794d3ab13 ISSUE-31 Added a more complete conformance section, motived by SPARQL 1.1
sspeiche
parents: 69
diff changeset
   477
447
f7f6d5fe3313 Fix up conformance section to use new LDP client section
sspeiche
parents: 443
diff changeset
   478
<p>A conforming <b><dfn>LDP client</dfn></b> is a conforming HTTP client [[!HTTP11]] that follows the rules defined by LDP in
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   479
<a href="#ldpclient" class="sectionRef"></a>.
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   480
</p>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   481
447
f7f6d5fe3313 Fix up conformance section to use new LDP client section
sspeiche
parents: 443
diff changeset
   482
<p>A conforming <b><dfn>LDP server</dfn></b> is a conforming HTTP server [[!HTTP11]] that follows the rules defined by LDP in 
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   483
<a href="#ldpr" class="sectionRef"></a> when it is serving LDPRs, and also
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   484
<a href="#ldpc" class="sectionRef"></a> when it is serving LDPCs.
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   485
LDP does not constrain its behavior when serving other HTTP resources.
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   486
</p>
71
5a2794d3ab13 ISSUE-31 Added a more complete conformance section, motived by SPARQL 1.1
sspeiche
parents: 69
diff changeset
   487
</section>
5a2794d3ab13 ISSUE-31 Added a more complete conformance section, motived by SPARQL 1.1
sspeiche
parents: 69
diff changeset
   488
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   489
<section id="ldpclient">
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   490
<h1>Linked Data Platform Clients</h1>
438
5fc5b459c993 Removed redudant reqs that have been moved to 4. Linked Data Platform Clients
sspeiche
parents: 437
diff changeset
   491
<p>All of the following are conformance rules for <a title="LDP server">LDP Clients</a>.
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   492
</p>
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   493
<section><h2>General</h2>
470
eb040e50a66f ACTION-126: Add Prefer header, adjusted for TallTed's results
John Arwe
parents: 469
diff changeset
   494
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   495
	<section id="ldp-cli-multitype"><h2 class="normal">In the absence of special knowledge of the application or domain, 
466
7b840138bdf1 editorial cleanup; substantive hits to ldpc delete, remove reqt for direct containers to materialize insertedContentRelation (since it's value is fixed)
John Arwe
parents: 465
diff changeset
   496
		<a title="LDP client">LDP clients</a> MUST assume that any LDP-RR can have multiple values for <code>rdf:type</code>.
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   497
	</h2></section> <!-- Was 4.3.5 / #ldpr-4_3_5 -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   498
	
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   499
	<section id="ldpr-cli-typeschange"><h2 class="normal">In the absence of special knowledge of the application or domain, 
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   500
		<a title="LDP client">LDP clients</a> MUST assume that the <code>rdf:type</code> values
466
7b840138bdf1 editorial cleanup; substantive hits to ldpc delete, remove reqt for direct containers to materialize insertedContentRelation (since it's value is fixed)
John Arwe
parents: 465
diff changeset
   501
		of a given LDP-RR can change over time.
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   502
	</h2></section> <!-- Was 4.3.6 / #ldpr-4_3_6 -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   503
	
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   504
	<section id="ldpr-cli-openpreds"><h2 class="normal"><a title="LDP client">LDP clients</a> SHOULD always assume that the set of predicates for a
466
7b840138bdf1 editorial cleanup; substantive hits to ldpc delete, remove reqt for direct containers to materialize insertedContentRelation (since it's value is fixed)
John Arwe
parents: 465
diff changeset
   505
		LDP-RR of a particular type at an arbitrary server is open, in the
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   506
		sense that different resources of the same type may not all have the
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   507
		same set of predicates in their triples, and the set of predicates that
466
7b840138bdf1 editorial cleanup; substantive hits to ldpc delete, remove reqt for direct containers to materialize insertedContentRelation (since it's value is fixed)
John Arwe
parents: 465
diff changeset
   508
		are used in the state of any one LDP-RR is not limited to any pre-defined
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   509
		set.
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   510
	</h2></section> <!-- Was 4.5.3 / #ldpr-ldpr-4_5_3 -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   511
	
466
7b840138bdf1 editorial cleanup; substantive hits to ldpc delete, remove reqt for direct containers to materialize insertedContentRelation (since it's value is fixed)
John Arwe
parents: 465
diff changeset
   512
	<section id="ldpr-cli-preservetriples"><h2 class="normal">
7b840138bdf1 editorial cleanup; substantive hits to ldpc delete, remove reqt for direct containers to materialize insertedContentRelation (since it's value is fixed)
John Arwe
parents: 465
diff changeset
   513
		A <a title="LDP client">LDP client</a> MUST preserve all triples retrieved from an LDP-RR using HTTP <code>GET</code> that
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   514
		it doesn’t change whether it understands the predicates or not, when
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   515
		its intent is to perform an update using HTTP <code>PUT</code>.  The use of HTTP
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   516
		<code>PATCH</code> instead of HTTP <code>PUT</code> for update avoids this burden for clients
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   517
		[[RFC5789]].
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   518
	</h2></section> <!-- Was 4.5.5 / #ldpr-ldpr-4_5_5 -->
470
eb040e50a66f ACTION-126: Add Prefer header, adjusted for TallTed's results
John Arwe
parents: 469
diff changeset
   519
	
eb040e50a66f ACTION-126: Add Prefer header, adjusted for TallTed's results
John Arwe
parents: 469
diff changeset
   520
	<section id="ldpr-cli-can-hint"><h2 class="normal">
eb040e50a66f ACTION-126: Add Prefer header, adjusted for TallTed's results
John Arwe
parents: 469
diff changeset
   521
		<a title="LDP client">LDP clients</a> MAY 
eb040e50a66f ACTION-126: Add Prefer header, adjusted for TallTed's results
John Arwe
parents: 469
diff changeset
   522
		provide LDP-defined hints that allow servers to optimize the content of responses.
eb040e50a66f ACTION-126: Add Prefer header, adjusted for TallTed's results
John Arwe
parents: 469
diff changeset
   523
		<a href="#prefer-parameters" class="sectionRef"></a> defines hints that apply to 
eb040e50a66f ACTION-126: Add Prefer header, adjusted for TallTed's results
John Arwe
parents: 469
diff changeset
   524
		<a title="Linked Data Platform RDF Resource">LDP-RRs</a>.
eb040e50a66f ACTION-126: Add Prefer header, adjusted for TallTed's results
John Arwe
parents: 469
diff changeset
   525
	</h2></section> 
eb040e50a66f ACTION-126: Add Prefer header, adjusted for TallTed's results
John Arwe
parents: 469
diff changeset
   526
	
eb040e50a66f ACTION-126: Add Prefer header, adjusted for TallTed's results
John Arwe
parents: 469
diff changeset
   527
	<section id="ldpr-cli-hints-ignorable"><h2 class="normal">
eb040e50a66f ACTION-126: Add Prefer header, adjusted for TallTed's results
John Arwe
parents: 469
diff changeset
   528
		<a title="LDP client">LDP clients</a> MUST 
eb040e50a66f ACTION-126: Add Prefer header, adjusted for TallTed's results
John Arwe
parents: 469
diff changeset
   529
		be capable of processing responses formed by an LDP server that ignores hints,
eb040e50a66f ACTION-126: Add Prefer header, adjusted for TallTed's results
John Arwe
parents: 469
diff changeset
   530
		including LDP-defined hints.
eb040e50a66f ACTION-126: Add Prefer header, adjusted for TallTed's results
John Arwe
parents: 469
diff changeset
   531
	</h2></section> 
eb040e50a66f ACTION-126: Add Prefer header, adjusted for TallTed's results
John Arwe
parents: 469
diff changeset
   532
	
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   533
</section>
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   534
</section> <!-- Client constraints -->
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   535
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   536
<section id="ldpr">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   537
<h1>Linked Data Platform Resources</h1>
222
1db581afd1ec Added informative section 4.1 , therefore shifting all sections by one 4.1->4.2, etc
sspeiche
parents: 221
diff changeset
   538
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   539
<section class="informative" id="ldpr-informative">
466
7b840138bdf1 editorial cleanup; substantive hits to ldpc delete, remove reqt for direct containers to materialize insertedContentRelation (since it's value is fixed)
John Arwe
parents: 465
diff changeset
   540
<h2>Introduction</h2>
33
3c8c101f3f97 2012-12-28 - Fixed Typos. Separated some compound rules like 4.1.5. Rewording for clarity: 4.1.10,
John Arwe <johnarwe@us.ibm.com>
parents: 21
diff changeset
   541
	<p>Linked Data Platform Resources (<dfn><abbr title="Linked Data Platform Resources">LDPRs</abbr></dfn>) are HTTP resources
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   542
		that conform to the simple patterns and conventions in this section.
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   543
		HTTP requests to access, modify, create or delete LDPRs are accepted
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   544
		and processed by <a title="LDP server">LDP servers</a>. Most LDPRs are domain-specific resources
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   545
		that contain data for an entity in some domain, which could be
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   546
		commercial, governmental, scientific, religious, or other.</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   547
	<p>Some of the rules defined in this document provide
33
3c8c101f3f97 2012-12-28 - Fixed Typos. Separated some compound rules like 4.1.5. Rewording for clarity: 4.1.10,
John Arwe <johnarwe@us.ibm.com>
parents: 21
diff changeset
   548
		clarification and refinement of the base Linked Data rules [[LINKED-DATA]];
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   549
		others address additional needs.</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   550
	<p>The rules for Linked Data Platform Resources address basic
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   551
		questions such as:</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   552
	<ul>
231
38d1a7faf1c4 Various editorial comments from PA
sspeiche
parents: 230
diff changeset
   553
		<li>What resource representations should be used?</li>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   554
		<li>How is optimistic collision detection handled for updates?</li>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   555
		<li>What should client expectations be for changes to linked-to resources,
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   556
				such as type changes?</li>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   557
		<li>What can servers do to ease the burden of constraints for resource
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   558
				creation?</li>
464
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
   559
		<li>How	do I GET the representation of a large resource broken up into pages?</li>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   560
	</ul>
463
ae72388dbb82 start action-127 paging use of [23]xx response code; also changed 'informative' to 'non-normative' so sandro is happy[ier]
John Arwe
parents: 462
diff changeset
   561
	<p>Additional non-normative guidance is available in the <a
439
28beff0a4f89 Updated reference to LDP BPG editor's draft and added ref to LDP-UCR
sspeiche
parents: 438
diff changeset
   562
			href="https://dvcs.w3.org/hg/ldpwg/raw-file/default/ldp-bp/ldp-bp.html"
28beff0a4f89 Updated reference to LDP BPG editor's draft and added ref to LDP-UCR
sspeiche
parents: 438
diff changeset
   563
			class="external"
28beff0a4f89 Updated reference to LDP BPG editor's draft and added ref to LDP-UCR
sspeiche
parents: 438
diff changeset
   564
			title="LDP Best Practices and Guidelines"
28beff0a4f89 Updated reference to LDP BPG editor's draft and added ref to LDP-UCR
sspeiche
parents: 438
diff changeset
   565
			rel="nofollow">LDP Best Practices and Guidelines editor's draft</a> that addresses
37
3e92cccfe6a3 edits to 4., 4.1.2, 4.1.6, http method support (aside from GET on LDPRs, and HEAD, HTTP governs), 5.2.1 clarify, 5.3.2/5.3.3 allow 3xx
John Arwe <johnarwe@us.ibm.com>
parents: 33
diff changeset
   566
		questions such as:</p>
3e92cccfe6a3 edits to 4., 4.1.2, 4.1.6, http method support (aside from GET on LDPRs, and HEAD, HTTP governs), 5.2.1 clarify, 5.3.2/5.3.3 allow 3xx
John Arwe <johnarwe@us.ibm.com>
parents: 33
diff changeset
   567
	<ul>
3e92cccfe6a3 edits to 4., 4.1.2, 4.1.6, http method support (aside from GET on LDPRs, and HEAD, HTTP governs), 5.2.1 clarify, 5.3.2/5.3.3 allow 3xx
John Arwe <johnarwe@us.ibm.com>
parents: 33
diff changeset
   568
		<li>What literal value types should be used?</li>
3e92cccfe6a3 edits to 4., 4.1.2, 4.1.6, http method support (aside from GET on LDPRs, and HEAD, HTTP governs), 5.2.1 clarify, 5.3.2/5.3.3 allow 3xx
John Arwe <johnarwe@us.ibm.com>
parents: 33
diff changeset
   569
		<li>Are there some typical vocabularies that should be reused?</li>
3e92cccfe6a3 edits to 4., 4.1.2, 4.1.6, http method support (aside from GET on LDPRs, and HEAD, HTTP governs), 5.2.1 clarify, 5.3.2/5.3.3 allow 3xx
John Arwe <johnarwe@us.ibm.com>
parents: 33
diff changeset
   570
	</ul>
373
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   571
	<p>The following sections define the conformance rules for LDP servers when serving LDPRs.
464
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
   572
		This document also explains <a href="#ldpr-Paging">how a server paginates an LDP-RR's representation</a> if it gets too big.
463
ae72388dbb82 start action-127 paging use of [23]xx response code; also changed 'informative' to 'non-normative' so sandro is happy[ier]
John Arwe
parents: 462
diff changeset
   573
		Companion non-normative documents describe additional guidelines for use when interacting with LDPRs. 
373
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
   574
	</p>
448
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   575
	<p>An LDP server manages two kinds of <a title="Linked Data Platform Resources">LDPRs</a>, those resources who whose state 
461
64c0ca32c9e6 Cleanup from Action-123 add LDPR-RR and LDPR-BR
John Arwe
parents: 460
diff changeset
   576
	is represented using RDF (LDP-RR) and those using other formats (LDP-BR).  LDP-RRs have the unique
64c0ca32c9e6 Cleanup from Action-123 add LDPR-RR and LDPR-BR
John Arwe
parents: 460
diff changeset
   577
	quality that their representation is based on RDF, which addresses a number of use cases from web metadata, open data 
64c0ca32c9e6 Cleanup from Action-123 add LDPR-RR and LDPR-BR
John Arwe
parents: 460
diff changeset
   578
	models, machine processable information, and automated processing by software agents [[!RDF-CONCEPTS]].  LDP-BRs are almost anything
64c0ca32c9e6 Cleanup from Action-123 add LDPR-RR and LDPR-BR
John Arwe
parents: 460
diff changeset
   579
	on the Web today: images, HTML pages, word processing documents, spreadsheets, etc. and LDP-RRs hold 
64c0ca32c9e6 Cleanup from Action-123 add LDPR-RR and LDPR-BR
John Arwe
parents: 460
diff changeset
   580
	metadata associated with LDP-BRs in some cases.
448
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   581
	</p>
451
f68e4a59fba1 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 450
diff changeset
   582
    <figure id="fig-ldpr-types">
448
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   583
        <img src="images/ldpr1.png" alt="Sample separation of Linked Data Platform Resource" />
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   584
        <figcaption>Samples of different types of LDPRs</figcaption>
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   585
    </figure>
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   586
    <p>The LDP-BRs and LDP-RRs are simply sub-types of LDPRs, as illustrated in <a href="#fig-ldpr-class"></a>.</p>  
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   587
    <figure id="fig-ldpr-class">
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   588
       <img src="images/ldpr2.png" alt="Class Diagram of Linked Data Platform Resource" />
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   589
       <figcaption>Class relationship of types of LDPRs</figcaption>
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   590
     </figure>
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   591
	
222
1db581afd1ec Added informative section 4.1 , therefore shifting all sections by one 4.1->4.2, etc
sspeiche
parents: 221
diff changeset
   592
</section>
1db581afd1ec Added informative section 4.1 , therefore shifting all sections by one 4.1->4.2, etc
sspeiche
parents: 221
diff changeset
   593
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   594
<section id="ldpr-general">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   595
<h2>General</h2>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   596
		
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   597
	<section id="ldpr-gen-http"><h2 class="normal"><a title="LDP server">LDP servers</a> MUST at least be HTTP/1.1 conformant servers [[!HTTP11]].
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   598
	</h2></section><!-- Was 4.2.1 / #ldpr-4_2_1 -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   599
	
448
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   600
	<section id="ldpr-gen-rdf"><h2 class="normal"><a title="LDP server">LDP servers</a> MUST provide an RDF representation for <a title="Linked Data Platform RDF Resource">LDP-RRs</a>. 
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   601
	The HTTP <code>Request-URI</code> of the LDP-RR is typically the subject of most triples in the response.
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   602
	</h2></section><!-- Was 4.2.2 / #ldpr-4_2_2 -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   603
	
448
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   604
	<section id="ldpr-gen-binary"><h2 class="normal"><a title="LDP server">LDP servers</a> MAY host a mixture of LDPRs, <a title="Linked Data Platform RDF Resource">LDP-RRs</a>
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   605
	and <a title="Linked Data Platform Binary Resource">LDP-BRs</a>. For example, it
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   606
		is common for <a title="LDP server">LDP servers</a> to need to host binary or text resources
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   607
		that do not have useful RDF representations.</h2></section><!-- Was 4.2.3 / #ldpr-4_2_3 -->
69
0f9825dea52b Updating some simple formatting, reorganizing open issues and todos
sspeiche
parents: 68
diff changeset
   608
448
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   609
	<section id="ldpr-gen-reusevocab"><h2 class="normal"><a title="Linked Data Platform RDF Resource">LDP-RRs</a> SHOULD reuse existing vocabularies instead of creating
33
3c8c101f3f97 2012-12-28 - Fixed Typos. Separated some compound rules like 4.1.5. Rewording for clarity: 4.1.10,
John Arwe <johnarwe@us.ibm.com>
parents: 21
diff changeset
   610
		their own duplicate vocabulary terms.  In addition to this general rule, some specific cases are
3c8c101f3f97 2012-12-28 - Fixed Typos. Separated some compound rules like 4.1.5. Rewording for clarity: 4.1.10,
John Arwe <johnarwe@us.ibm.com>
parents: 21
diff changeset
   611
		covered by other conformance rules.
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   612
	</h2></section><!-- Was 4.2.4 / #ldpr-4_2_4 -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   613
	
448
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   614
	<section id="ldpr-gen-reusevocabsuchas"><h2 class="normal"><a title="Linked Data Platform RDF Resource">LDP-RRs</a> predicates SHOULD use standard vocabularies such as Dublin Core
188
8eaaca309617 Various editorial clean up items from editor todo list
sspeiche
parents: 187
diff changeset
   615
		[[!DC-TERMS]], RDF [[!RDF-CONCEPTS]] and RDF Schema [[!RDF-SCHEMA]], whenever
33
3c8c101f3f97 2012-12-28 - Fixed Typos. Separated some compound rules like 4.1.5. Rewording for clarity: 4.1.10,
John Arwe <johnarwe@us.ibm.com>
parents: 21
diff changeset
   616
		possible.
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   617
	</h2></section><!-- Was 4.2.4.1 / #ldpr-4_2_4_1 -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   618
	
448
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   619
	<section id="ldpr-gen-atleast1rdftype"><h2 class="normal"><a title="Linked Data Platform RDF Resource">LDP-RRs</a> representations SHOULD have at least one <code>rdf:type</code>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   620
		set explicitly.  This makes the representations much more useful to
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   621
		client applications that don’t support inferencing.
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   622
	</h2></section><!-- Was 4.2.5 / #ldpr-4_2_5 -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   623
	
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   624
	<section id="ldpr-gen-etags"><h2 class="normal"><a title="LDP server">LDP server</a> responses MUST use entity tags (either 
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   625
		weak or strong ones) as response <code>ETag</code> header values.
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   626
	</h2></section><!-- Was 4.2.8 / #ldpr-4_2_8 -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   627
	
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   628
	<section id="ldpr-gen-linktypehdr"><h2 class="normal"><a title="LDP server">LDP servers</a>
434
83b656184387 Action-122 close ISSUE-91, by adding that for an LDPC the link header is type=LDPC
John Arwe
parents: 433
diff changeset
   629
		exposing LDPRs 
149
3f5f825f1155 issue-57 How can a client determine that it is in communication with an LDP server?
John Arwe
parents: 134
diff changeset
   630
		MUST advertise their LDP support by exposing a HTTP <code>Link</code> header
454
4a28a15ee8fd ACTION-120 (complete) Updated LDPC general, GET and POST sections
sspeiche
parents: 453
diff changeset
   631
		with a target URI of <code>http://www.w3.org/ns/ldp#Resource</code>, and
402
935e1e08d2bb Fix some typos around paging, move to single quotes for link relations per 5988
John Arwe
parents: 395
diff changeset
   632
		a link relation type of <code>type</code> (that is, <code>rel='type'</code>)
149
3f5f825f1155 issue-57 How can a client determine that it is in communication with an LDP server?
John Arwe
parents: 134
diff changeset
   633
		in all responses to requests made 
434
83b656184387 Action-122 close ISSUE-91, by adding that for an LDPC the link header is type=LDPC
John Arwe
parents: 433
diff changeset
   634
		to the LDPR's HTTP <code>Request-URI</code>. 
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   635
	</h2></section><!-- Was 4.2.10 / #ldpr-4_2_10 -->
454
4a28a15ee8fd ACTION-120 (complete) Updated LDPC general, GET and POST sections
sspeiche
parents: 453
diff changeset
   636
	
4a28a15ee8fd ACTION-120 (complete) Updated LDPC general, GET and POST sections
sspeiche
parents: 453
diff changeset
   637
	<!-- TODO: Is this RDFResource or just Resource?  Language gets odd in section #ldpc-post-createrdf , where it says "then the server MUST create
4a28a15ee8fd ACTION-120 (complete) Updated LDPC general, GET and POST sections
sspeiche
parents: 453
diff changeset
   638
	an LDPR".  If client sent a JPEG and type=#RDFResource, what should the server do?  If the more generic #Resource, seems to catch
4a28a15ee8fd ACTION-120 (complete) Updated LDPC general, GET and POST sections
sspeiche
parents: 453
diff changeset
   639
	what is intended -->
434
83b656184387 Action-122 close ISSUE-91, by adding that for an LDPC the link header is type=LDPC
John Arwe
parents: 433
diff changeset
   640
	<blockquote>
83b656184387 Action-122 close ISSUE-91, by adding that for an LDPC the link header is type=LDPC
John Arwe
parents: 433
diff changeset
   641
		<p>
83b656184387 Action-122 close ISSUE-91, by adding that for an LDPC the link header is type=LDPC
John Arwe
parents: 433
diff changeset
   642
		Note: 
83b656184387 Action-122 close ISSUE-91, by adding that for an LDPC the link header is type=LDPC
John Arwe
parents: 433
diff changeset
   643
		The HTTP <code>Link</code> header is the method by which servers assert their support for the LDP specification 
83b656184387 Action-122 close ISSUE-91, by adding that for an LDPC the link header is type=LDPC
John Arwe
parents: 433
diff changeset
   644
		on a specific resource in a way that clients can inspect dynamically at run-time.   
83b656184387 Action-122 close ISSUE-91, by adding that for an LDPC the link header is type=LDPC
John Arwe
parents: 433
diff changeset
   645
		This is <strong>not</strong> equivalent to the
83b656184387 Action-122 close ISSUE-91, by adding that for an LDPC the link header is type=LDPC
John Arwe
parents: 433
diff changeset
   646
		presence of a <var>(subject-URI, <code>rdf:type</code>, <code>ldp:Resource</code>)</var> triple in an RDF resource.
83b656184387 Action-122 close ISSUE-91, by adding that for an LDPC the link header is type=LDPC
John Arwe
parents: 433
diff changeset
   647
		The presence of this header asserts that the server complies with the LDP specification's constraints on 
83b656184387 Action-122 close ISSUE-91, by adding that for an LDPC the link header is type=LDPC
John Arwe
parents: 433
diff changeset
   648
		HTTP interactions with LDPRs, that is
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   649
		it asserts that the resource <a href="#ldpr-gen-tags">has Etags</a>, <a href="#ldpr-gen-rdf">has an RDF representation</a>, and so on,
434
83b656184387 Action-122 close ISSUE-91, by adding that for an LDPC the link header is type=LDPC
John Arwe
parents: 433
diff changeset
   650
		which is not true of all Web resources served as RDF media types.
83b656184387 Action-122 close ISSUE-91, by adding that for an LDPC the link header is type=LDPC
John Arwe
parents: 433
diff changeset
   651
		</p>
83b656184387 Action-122 close ISSUE-91, by adding that for an LDPC the link header is type=LDPC
John Arwe
parents: 433
diff changeset
   652
		<p>
83b656184387 Action-122 close ISSUE-91, by adding that for an LDPC the link header is type=LDPC
John Arwe
parents: 433
diff changeset
   653
		Note: 
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   654
		<a href="#ldpr-gen-binary">A LDP server can host a mixture of LDPRs and other resources</a>, and therefore there is no implication
192
221002315344 Removed 4.1.5 and various formatting issues
sspeiche
parents: 191
diff changeset
   655
		that LDP support advertised on one HTTP <code>Request-URI</code> means that other 
221002315344 Removed 4.1.5 and various formatting issues
sspeiche
parents: 191
diff changeset
   656
		resources on the same server are also LDPRs.  Each HTTP <code>Request-URI</code> needs to be 
434
83b656184387 Action-122 close ISSUE-91, by adding that for an LDPC the link header is type=LDPC
John Arwe
parents: 433
diff changeset
   657
		individually inspected, in the absence of outside information.
83b656184387 Action-122 close ISSUE-91, by adding that for an LDPC the link header is type=LDPC
John Arwe
parents: 433
diff changeset
   658
		</p>
83b656184387 Action-122 close ISSUE-91, by adding that for an LDPC the link header is type=LDPC
John Arwe
parents: 433
diff changeset
   659
	</blockquote>
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   660
	
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   661
	<section id="ldpr-gen-noinferencing"><h2 class="normal"><a title="LDP server">LDP servers</a>
152
938e7d21cc10 issue-78 inferencing levels add 4.1.13
John Arwe
parents: 151
diff changeset
   662
		MUST NOT require LDP clients to implement inferencing in order to recognize the subset
215
da72115eb40b Various updates per review of Raul
sspeiche
parents: 213
diff changeset
   663
		of content defined by LDP.  Other specifications built on top of LDP may require clients
188
8eaaca309617 Various editorial clean up items from editor todo list
sspeiche
parents: 187
diff changeset
   664
		to implement inferencing [[!RDF-CONCEPTS]].  The practical implication is that all content defined by LDP
152
938e7d21cc10 issue-78 inferencing levels add 4.1.13
John Arwe
parents: 151
diff changeset
   665
		must be explicitly represented. 
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   666
	</h2></section><!-- Was 4.2.11 / #ldpr-4_2_11 -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   667
	
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   668
	<section id="ldpr-gen-defbaseuri"><h2 class="normal"><a title="LDP server">LDP servers</a> MUST assign the default 
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   669
		base-URI for [[!RFC3987]] relative-URI resolution to be the HTTP 
224
39ca65760446 Removed 5.4.8.1 and added 4.2.12 to better handle base/rel URI
sspeiche
parents: 223
diff changeset
   670
		<code>Request-URI</code> when the resource already exists, and to the URI of the created resource when the request results 
39ca65760446 Removed 5.4.8.1 and added 4.2.12 to better handle base/rel URI
sspeiche
parents: 223
diff changeset
   671
		in the creation of a new resource.
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   672
	</h2></section><!-- Was 4.2.12 / #ldpr-4_2_12 -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   673
	
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   674
	<section id="ldpr-gen-pubclireqs"><h2 class="normal"><a title="LDP server">LDP servers</a> MUST 
393
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   675
		publish any constraints on <a title="LDP client">LDP clients’</a> ability to 
402
935e1e08d2bb Fix some typos around paging, move to single quotes for link relations per 5988
John Arwe
parents: 395
diff changeset
   676
		create or update LDPRs, by adding a Link header with <code>rel='describedby'</code> 
393
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   677
		[[!POWDER-DR]] to all responses to requests which fail due to violation of 
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   678
		those constraints.  For example, a server that refuses resource creation 
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   679
		requests via HTTP PUT, POST, or PATCH would return this <code>Link</code> header on its 
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   680
		4xx responses to such requests.
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   681
		The same <code>Link</code> header MAY be provided on other responses.  LDP neither 
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   682
		defines nor constrains the representation of the link's target resource; 
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   683
		as stated in [[POWDER-DR]], the target might (or might not) be a POWDER 
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   684
		document.  Natural language constraint documents are therefore permitted, 
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   685
		although machine-readable ones facilitate better client interactions.
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   686
	</h2></section><!-- Was 4.2.13 / #ldpr-4_2_13 -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   687
	
464
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
   688
	<section id="ldpr-page-large"><h2 class="normal"><a title="LDP server">LDP servers</a> SHOULD allow clients to retrieve large LDP-RRs in
395
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   689
		pages.
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   690
		See <a href="#ldpr-Paging" class="sectionRef"></a> for additional requirements associated with <a title="Paged resource">paged resources</a>.
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   691
	</h2></section><!-- Was 4.2.14 / #ldpr-4_2_14 -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   692
	
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   693
	<section id="ldpr-split-any"><h2 class="normal"><a title="LDP server">LDP servers</a> MAY 
464
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
   694
		treat any resource (LDP-RR or not) as a <a title="Paged resource">paged resource</a>. 
395
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   695
		See <a href="#ldpr-Paging" class="sectionRef"></a> for additional details.
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   696
	</h2></section><!-- Was 4.2.15 / #ldpr-4_2_15 -->
152
938e7d21cc10 issue-78 inferencing levels add 4.1.13
John Arwe
parents: 151
diff changeset
   697
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   698
</section>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   699
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   700
<section id="ldpr-HTTP_GET">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   701
<h2>HTTP GET</h2>
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   702
	<section id="ldpr-get-must"><h2 class="normal"><a title="LDP server">LDP servers</a> MUST support the HTTP <code>GET</code> Method for LDPRs.
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   703
	</h2></section><!-- Was 4.3.1 / #ldpr-4_3_1 -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   704
	
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   705
	<section id="ldpr-get-options"><h2 class="normal"><a title="LDP server">LDP servers</a> MUST support the HTTP response headers defined in 
228
ec118c66c122 Moved 4.7.2 (from HEAD) to 4.3.2 (GET), shifted rest of GET section by one
sspeiche
parents: 227
diff changeset
   706
		<a href="#ldpr-HTTP_OPTIONS" class="sectionRef"></a>.
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   707
	</h2></section><!-- Was 4.3.2 / #ldpr-4_3_2 -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   708
	
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   709
	<section id="ldpr-get-turtle"><h2 class="normal"><a title="LDP server">LDP servers</a> MUST provide a <code>text/turtle</code>
448
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   710
		representation of the requested <a title="Linked Data Platform RDF Resource">LDP-RR</a> [[!TURTLE]].
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   711
	</h2></section><!-- Was 4.3.3 / #ldpr-4_3_3 -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   712
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   713
</section>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   714
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   715
<section id="ldpr-HTTP_POST">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   716
<h2>HTTP POST</h2>
192
221002315344 Removed 4.1.5 and various formatting issues
sspeiche
parents: 191
diff changeset
   717
	<p>This specification adds no new requirements on HTTP <code>POST</code> for LDPRs 
200
aebd1e464817 Small editorial cleanup changes
John Arwe
parents: 199
diff changeset
   718
		even when the LDPR supports that method.  This specification does not impose any
393
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   719
		new requirement to support that method, and [[!HTTP11]] makes it optional.
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   720
	</p>
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   721
	<p>Clients can create LDPRs via <code>POST</code> (<a href="#ldpc-HTTP_POST" class="sectionRef"></a>) or
215
da72115eb40b Various updates per review of Raul
sspeiche
parents: 213
diff changeset
   722
		<code>PUT</code> (<a href="#ldpc-HTTP_PUT" class="sectionRef"></a>) to a LDPC, see those 
393
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   723
		sections for more details.  Any server-imposed constraints on LDPR creation or update  
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   724
		<a href="#ldpr-gen-pubclireqs">must be advertised</a> to clients.
417
a7cdde712c1f Updated editor TODOs and a minor editorial updates
sspeiche
parents: 416
diff changeset
   725
	<!-- TODO: movethis content into an intro/overview section and add PATCH. -->
393
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   726
	</p>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   727
</section>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   728
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   729
<section id="ldpr-HTTP_PUT">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   730
<h2>HTTP PUT</h2>
192
221002315344 Removed 4.1.5 and various formatting issues
sspeiche
parents: 191
diff changeset
   731
	<p>This specification imposes the following new requirements on HTTP <code>PUT</code> for LDPRs 
37
3e92cccfe6a3 edits to 4., 4.1.2, 4.1.6, http method support (aside from GET on LDPRs, and HEAD, HTTP governs), 5.2.1 clarify, 5.3.2/5.3.3 allow 3xx
John Arwe <johnarwe@us.ibm.com>
parents: 33
diff changeset
   732
		only when the LDPR supports that method.  This specification does not impose any
393
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   733
		new requirement to support that method, and [[!HTTP11]] makes it optional.
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   734
		Any server-imposed constraints on LDPR creation or update  
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   735
		<a href="#ldpr-gen-pubclireqs">must be advertised</a> to clients.
393
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   736
	</p>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   737
		
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   738
	<section id="ldpr-put-replaceall"><h2 class="normal">If a HTTP <code>PUT</code> is accepted on an existing resource, 
389
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   739
		<a title="LDP server">LDP servers</a> MUST
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   740
		replace the entire persistent state of the identified resource with
61
2f8a2d58e65c ISSUE-11 - 4.4.1 Relaxed the MUST ignore dc:modified/creator to MAY
sspeiche
parents: 60
diff changeset
   741
		the entity representation in the body of the request. 
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   742
		<a title="LDP server">LDP servers</a> MAY ignore server managed properties such as <code>dcterms:modified</code> 
61
2f8a2d58e65c ISSUE-11 - 4.4.1 Relaxed the MUST ignore dc:modified/creator to MAY
sspeiche
parents: 60
diff changeset
   743
		and <code>dcterms:creator</code> if they are not under
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   744
		client control. Any <a title="LDP server">LDP servers</a> that wish
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   745
		to support a more sophisticated merge of data provided by the client
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   746
		with existing state stored on the server for a resource MUST use HTTP
192
221002315344 Removed 4.1.5 and various formatting issues
sspeiche
parents: 191
diff changeset
   747
		<code>PATCH</code>, not HTTP <code>PUT</code>.
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   748
	</h2></section><!-- Was 4.5.1 / #ldpr-4_5_1 -->
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   749
		
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   750
	<section id="ldpr-put-servermanagedprops"><h2 class="normal">
389
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   751
		If an otherwise valid HTTP <code>PUT</code> request is received 
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   752
		that attempts to change triples the server does not allow clients to modify, 
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   753
		<a title="LDP server">LDP servers</a> MUST 
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   754
		respond with a 4xx range status code (typically
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   755
		409 Conflict). 
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   756
		<a title="LDP server">LDP servers</a> SHOULD provide a corresponding response body containing
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   757
		information about which triples could not be
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   758
		persisted.
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   759
		The format of the 4xx response body is not constrained by LDP.
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   760
	</h2></section><!-- Was 4.5.1.1 / #ldpr-4_5_1_1 -->
389
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   761
	<blockquote>
463
ae72388dbb82 start action-127 paging use of [23]xx response code; also changed 'informative' to 'non-normative' so sandro is happy[ier]
John Arwe
parents: 462
diff changeset
   762
		Non-normative note: Clients might provide triples equivalent to those already in the resource's state,
389
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   763
		e.g. as part of a GET/update representation/PUT sequence, and those PUT requests are intended to work as long as the 
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   764
		server-controlled triples are identical on the GET response and the subsequent PUT request.
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   765
	</blockquote>
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   766
		
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   767
	<section id="ldpr-put-precond"><h2 class="normal"><a title="LDP client">LDP clients</a> SHOULD use the HTTP <code>If-Match</code>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   768
		header and HTTP <code>ETags</code> to ensure it isn’t
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   769
		modifying a resource that has changed since the client last retrieved
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   770
		its representation. <a title="LDP server">LDP servers</a> SHOULD require the HTTP <code>If-Match</code> header and HTTP <code>ETags</code>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   771
		to detect collisions. <a title="LDP server">LDP servers</a> MUST respond with status code 412
122
14197f56039e Issue-74 resolution - 428 precondition required
John Arwe
parents: 120
diff changeset
   772
		(Condition Failed) if <code>ETag</code>s fail to match when there are no other
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   773
		errors with the request [[!HTTP11]].  <a title="LDP server">LDP servers</a> that require conditional requests MUST respond with status code 428
122
14197f56039e Issue-74 resolution - 428 precondition required
John Arwe
parents: 120
diff changeset
   774
		(Precondition Required) when the absence of a precondition is the only reason for rejecting the request [[!RFC6585]].
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   775
	</h2></section><!-- Was 4.5.2 / #ldpr-4_5_2 -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   776
	
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   777
	<section id="ldpr-put-failed"><h2 class="normal">
389
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   778
		If an otherwise valid HTTP <code>PUT</code> request is received that contains triples the server 
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   779
		chooses not to persist, e.g. unknown content,
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   780
		<a title="LDP server">LDP servers</a> MUST respond with an appropriate 4xx range status code
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   781
		[[HTTP11]].  
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   782
		<a title="LDP server">LDP servers</a> SHOULD provide a corresponding response body containing
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   783
		information about which triples could not be
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   784
		persisted.
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   785
		The format of the 4xx response body is not constrained by LDP.
416
166375df8bf8 Various editorial and validation fixes
sspeiche
parents: 415
diff changeset
   786
		<!-- TODO: MUST respond with Link rel='describedBy' as in 4.2.13 -->
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   787
	</h2></section><!-- Was 4.5.4 / #ldpr-4_5_4 -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   788
	
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   789
	<section id="ldpr-put-create"><h2 class="normal"><a title="LDP server">LDP servers</a> MAY choose to allow the creation of new resources using HTTP <code>PUT</code>.
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   790
	</h2></section><!-- Was 4.5.6 / #ldpr-4_5_6 -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   791
	
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   792
	<section id="ldpr-put-simpleupdate"><h2 class="normal"><a title="LDP server">LDP servers</a> SHOULD allow clients to update resources without
33
3c8c101f3f97 2012-12-28 - Fixed Typos. Separated some compound rules like 4.1.5. Rewording for clarity: 4.1.10,
John Arwe <johnarwe@us.ibm.com>
parents: 21
diff changeset
   793
		requiring detailed knowledge of server-specific constraints.  
451
f68e4a59fba1 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 450
diff changeset
   794
		This is a consequence of the requirement to enable simple creation and modification of LDPRs.
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   795
	</h2></section><!-- Was 4.5.7 / #ldpr-4_5_7 -->	
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   796
</section>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   797
		
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   798
<section id="ldpr-HTTP_DELETE">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   799
<h2>HTTP DELETE</h2>
192
221002315344 Removed 4.1.5 and various formatting issues
sspeiche
parents: 191
diff changeset
   800
	<p>This specification imposes the following new requirements on HTTP <code>DELETE</code> for LDPRs 
37
3e92cccfe6a3 edits to 4., 4.1.2, 4.1.6, http method support (aside from GET on LDPRs, and HEAD, HTTP governs), 5.2.1 clarify, 5.3.2/5.3.3 allow 3xx
John Arwe <johnarwe@us.ibm.com>
parents: 33
diff changeset
   801
		only when the LDPR supports that method.  This specification does not impose any
3e92cccfe6a3 edits to 4., 4.1.2, 4.1.6, http method support (aside from GET on LDPRs, and HEAD, HTTP governs), 5.2.1 clarify, 5.3.2/5.3.3 allow 3xx
John Arwe <johnarwe@us.ibm.com>
parents: 33
diff changeset
   802
		new requirement to support that method, and [[!HTTP11]] makes it optional.</p>
192
221002315344 Removed 4.1.5 and various formatting issues
sspeiche
parents: 191
diff changeset
   803
	<p>Additional requirements on HTTP <code>DELETE</code> of LDPRs within containers can be found in
466
7b840138bdf1 editorial cleanup; substantive hits to ldpc delete, remove reqt for direct containers to materialize insertedContentRelation (since it's value is fixed)
John Arwe
parents: 465
diff changeset
   804
	<a href="#ldpc-HTTP_DELETE" class="sectionRef"></a>.
7b840138bdf1 editorial cleanup; substantive hits to ldpc delete, remove reqt for direct containers to materialize insertedContentRelation (since it's value is fixed)
John Arwe
parents: 465
diff changeset
   805
	</p>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   806
</section>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   807
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   808
<section id="ldpr-HTTP_HEAD">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   809
<h2>HTTP HEAD</h2>
395
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   810
	<p>Note that certain LDP mechanisms, such as <a href="#ldpr-Paging">paging</a>, rely on HTTP headers, and HTTP generally requires that
192
221002315344 Removed 4.1.5 and various formatting issues
sspeiche
parents: 191
diff changeset
   811
		<code>HEAD</code> responses include the same headers as <code>GET</code> responses.  
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   812
		Thus, implementers should also carefully read sections <a href="#ldpr-HTTP_GET"></a> 
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   813
		and <a href="#ldpr-HTTP_OPTIONS"></a>.</p>
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   814
	<section id="ldpr-head-must"><h2 class="normal"><a title="LDP server">LDP servers</a> MUST support the HTTP <code>HEAD</code> method.
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   815
	</h2></section><!-- Was 4.7.1 / #ldpr-4_7_1 -->
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   816
</section>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   817
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   818
<section id="ldpr-HTTP_PATCH">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   819
<h2>HTTP PATCH</h2>
192
221002315344 Removed 4.1.5 and various formatting issues
sspeiche
parents: 191
diff changeset
   820
	<p>This specification imposes the following new requirements on HTTP <code>PATCH</code> for LDPRs 
37
3e92cccfe6a3 edits to 4., 4.1.2, 4.1.6, http method support (aside from GET on LDPRs, and HEAD, HTTP governs), 5.2.1 clarify, 5.3.2/5.3.3 allow 3xx
John Arwe <johnarwe@us.ibm.com>
parents: 33
diff changeset
   821
		only when the LDPR supports that method.  This specification does not impose any
393
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   822
		new requirement to support that method, and [[!HTTP11]] makes it optional.
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   823
		Any server-imposed constraints on LDPR creation or update  
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   824
		<a href="#ldpr-gen-pubclireqs">must be advertised</a> to clients.
393
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   825
	</p>	
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   826
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   827
	<section id="ldpr-patch-create"><h2 class="normal"><a title="LDP server">LDP servers</a> SHOULD NOT allow clients to create new resources using <code>PATCH</code>.
393
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   828
		<a href="#ldpc-HTTP_POST"><code>POST</code> (to an LDPC)</a> and/or <a href="#ldpr-HTTP_PUT"><code>PUT</code></a> should be used as the standard way to create new LDPRs.
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   829
	</h2></section><!-- Was 4.8.3 / #ldpr-4_8_3 -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   830
	
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   831
	<section id="ldpr-patch-acceptpatch"><h2 class="normal"><a title="LDP server">LDP servers</a> that support <code>PATCH</code> MUST
158
8af0b25f2748 issue-32 MUST support OPTIONS
John Arwe
parents: 152
diff changeset
   832
		include an <code>Accept-Patch</code> HTTP response header [[!RFC5789]] on HTTP <code>OPTIONS</code>
8af0b25f2748 issue-32 MUST support OPTIONS
John Arwe
parents: 152
diff changeset
   833
		requests, listing patch document media type(s) supported by the server.
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   834
	</h2></section><!-- Was 4.8.4 / #ldpr-4_8_4 -->
186
a3471f4667d8 Removed closed issues that required no new spec changes: 50, 56, 16, 19, 17
sspeiche
parents: 185
diff changeset
   835
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   836
</section>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   837
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   838
<section id="ldpr-HTTP_OPTIONS">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   839
<h2>HTTP OPTIONS</h2>
158
8af0b25f2748 issue-32 MUST support OPTIONS
John Arwe
parents: 152
diff changeset
   840
	<p>This specification imposes the following new requirements on HTTP <code>OPTIONS</code> for LDPRs 
8af0b25f2748 issue-32 MUST support OPTIONS
John Arwe
parents: 152
diff changeset
   841
		beyond those in [[!HTTP11]].  Other sections of this specification, for example 
167
ae4592939639 issue-80 Add Accept-Post
John Arwe
parents: 158
diff changeset
   842
		<a href="#ldpr-HTTP_PATCH">PATCH</a>,
ae4592939639 issue-80 Add Accept-Post
John Arwe
parents: 158
diff changeset
   843
		<a href="#header-accept-post">Accept-Post</a>
ae4592939639 issue-80 Add Accept-Post
John Arwe
parents: 158
diff changeset
   844
		and <a href="#ldpr-paging-HTTP_OPTIONS">Paging</a>,
158
8af0b25f2748 issue-32 MUST support OPTIONS
John Arwe
parents: 152
diff changeset
   845
		add other requirements on <code>OPTIONS</code> responses.
8af0b25f2748 issue-32 MUST support OPTIONS
John Arwe
parents: 152
diff changeset
   846
		</p>
8af0b25f2748 issue-32 MUST support OPTIONS
John Arwe
parents: 152
diff changeset
   847
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   848
	<section id="ldpr-options-must"><h2 class="normal"><a title="LDP server">LDP servers</a> MUST support the HTTP <code>OPTIONS</code> method.
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   849
	</h2></section><!-- Was 4.9.1 / #ldpr-4_9_1 -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   850
		
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   851
	<section id="ldpr-options-allow"><h2 class="normal"><a title="LDP server">LDP servers</a> MUST indicate their support for HTTP Methods by
158
8af0b25f2748 issue-32 MUST support OPTIONS
John Arwe
parents: 152
diff changeset
   852
		responding to a HTTP <code>OPTIONS</code> request on the LDPR’s URL with the HTTP
192
221002315344 Removed 4.1.5 and various formatting issues
sspeiche
parents: 191
diff changeset
   853
		Method tokens in the HTTP response header <code>Allow</code>.
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   854
	</h2></section><!-- Was 4.9.2 / #ldpr-4_9_2 -->
158
8af0b25f2748 issue-32 MUST support OPTIONS
John Arwe
parents: 152
diff changeset
   855
		
8af0b25f2748 issue-32 MUST support OPTIONS
John Arwe
parents: 152
diff changeset
   856
</section>
8af0b25f2748 issue-32 MUST support OPTIONS
John Arwe
parents: 152
diff changeset
   857
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   858
<section id="ldpr-Paging">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   859
<h2>Paging</h2>
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   860
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   861
<section class="informative" id="ldpr-PagingIntro">
463
ae72388dbb82 start action-127 paging use of [23]xx response code; also changed 'informative' to 'non-normative' so sandro is happy[ier]
John Arwe
parents: 462
diff changeset
   862
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   863
<h3>Introduction</h3>
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   864
	<p>It sometimes happens that a
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   865
		resource is too large to reasonably transmit its representation in a
412
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   866
		single HTTP response.  
413
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   867
		To address this problem, servers should support a technique called Paging.  
464
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
   868
		When a client retrieves such a resource, the server redirects the client to a "first page" resource, and includes in its response
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
   869
		a link to the next part of the resource's state, all at a URLs of the server's choosing.
448
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   870
		The triples in the representation of the <a title="Single-page resource">each page of an LDPR</a>
72e366f1195f ACTION-123 Added concepts of LDP-RDF-Resource and LDP-Binary-Resource
sspeiche
parents: 447
diff changeset
   871
		are typically a subset of the triples from the <a title="Paged resource">paged resource</a>.
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   872
	</p>
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   873
	<p><a title="LDP server">LDP servers</a> may respond to requests for a
464
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
   874
		resource by redirecting to the first page of the resource and, with that, returning 
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
   875
		a <code>Link &lt;next-page-URL&gt;;type='next'</code> header containing the URL for the next page.
413
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   876
		Clients inspect each response for the link header to see if additional pages
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   877
		are available; paging does not affect the choice of HTTP status code.
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   878
		Note that paging is lossy, as described in [[RFC5005]], and so (as stated there)
412
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   879
		clients should not make any assumptions about a set of pages being a complete or 
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   880
		coherent snapshot of a resource's state.</p>
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   881
	<p>
198
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   882
		Looking at an example resource representing Example Co.'s customer
395
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   883
		relationship data, identified by the URI <code>http://example.org/customer-relations</code>,
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   884
		we’ll split the response across two pages.  
412
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   885
		The client 
413
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   886
		retrieves <code>http://example.org/customer-relations</code>, and
464
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
   887
		the server responds with <a href="#atrisk-333">status code <code>333 (Returning Related)</code></a>, 
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
   888
		a <code>Location: http://example.org/customer-relations?page1</code> HTTP response header,
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
   889
		and the following representation:
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   890
	</p>
198
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   891
419
afe7bcda2e56 + ids on remaining examples
Eric Prud'hommeaux <eric@w3.org>
parents: 418
diff changeset
   892
<pre class="example" id="ldpc-ex-page1"># The following is the representation of
464
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
   893
#    http://example.org/customer-relations?page1
413
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   894
#    Requests on the URI will result in responses that include the following HTTP header
402
935e1e08d2bb Fix some typos around paging, move to single quotes for link relations per 5988
John Arwe
parents: 395
diff changeset
   895
#       Link: &lt;http://example.org/customer-relations?p=2&gt;; rel='next'
412
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   896
#    This Link header is how clients discover the URI of the next page in sequence,
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   897
#    and that the resource supports paging.
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   898
@prefix rdf: &lt;http://www.w3.org/1999/02/22-rdf-syntax-ns#&gt;.
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   899
@prefix dcterms: &lt;http://purl.org/dc/terms/&gt;.
198
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   900
@prefix foaf: &lt;http://xmlns.com/foaf/0.1/&gt;.
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   901
@prefix ldp: &lt;http://www.w3.org/ns/ldp#&gt;.
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   902
@prefix o: &lt;http://example.org/ontology/&gt;.
413
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   903
@base &lt;http://example.org/customer-relations&gt;.
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   904
413
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   905
&lt;&gt;
198
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   906
   a o:CustomerRelations;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   907
   dcterms:title "The customer information for Example Co.";
413
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   908
   o:client &lt;#JohnZSmith&gt;, &lt;#BettyASmith&gt;, &lt;#JoanRSmith&gt;. 
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   909
413
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   910
&lt;#JohnZSmith&gt;
198
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   911
   a foaf:Person;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   912
   o:status o:ActiveCustomer;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   913
   foaf:name "John Z. Smith".
413
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   914
&lt;#BettyASmith&gt;
198
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   915
   a foaf:Person;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   916
   o:status o:PreviousCustomer;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   917
   foaf:name "Betty A. Smith".
413
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   918
 &lt;#JoanRSmith&gt;
198
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   919
   a foaf:Person;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   920
   o:status o:PotentialCustomer;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   921
   foaf:name "Joan R. Smith".</pre>
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   922
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   923
	<p>
413
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   924
		Because the server includes a <code>Link: &lt;http://example.org/customer-relations?p=2&gt;; rel='next'</code>
464
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
   925
		response header, and the status code is 3xx (<code>333 (Returning Related)</code> in this case), 
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
   926
		the client knows that more data exists and where to find it.
232
c38de2977a87 Editorial changes from feedback from Sergio
sspeiche
parents: 231
diff changeset
   927
		The server determines the size of the pages using application specific methods not defined
402
935e1e08d2bb Fix some typos around paging, move to single quotes for link relations per 5988
John Arwe
parents: 395
diff changeset
   928
		within this specificiation. The next page link's target URI is also
232
c38de2977a87 Editorial changes from feedback from Sergio
sspeiche
parents: 231
diff changeset
   929
		defined by the server and not this specification.
c38de2977a87 Editorial changes from feedback from Sergio
sspeiche
parents: 231
diff changeset
   930
	</p>
c38de2977a87 Editorial changes from feedback from Sergio
sspeiche
parents: 231
diff changeset
   931
	<p>
413
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   932
		The following example is the result of retrieving
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   933
		the next page; 
464
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
   934
		the server responds with status code <code>200 (OK)</code> and the following representation:
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   935
	</p>
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   936
419
afe7bcda2e56 + ids on remaining examples
Eric Prud'hommeaux <eric@w3.org>
parents: 418
diff changeset
   937
<pre class="example" id="ldpc-ex-page2"># The following is the representation of
198
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   938
#  http://example.org/customer-relations?p=2
395
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   939
#
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   940
#  There is no "next" Link in the server's response, so this is the final page.
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   941
#
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   942
@prefix rdf: &lt;http://www.w3.org/1999/02/22-rdf-syntax-ns#&gt;.
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   943
@prefix dcterms: &lt;http://purl.org/dc/terms/&gt;.
198
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   944
@prefix foaf: &lt;http://xmlns.com/foaf/0.1/&gt;.
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   945
@prefix ldp: &lt;http://www.w3.org/ns/ldp#&gt;.
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   946
@prefix o: &lt;http://example.org/ontology/&gt;.
413
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   947
@base &lt;http://example.org/customer-relations&gt;.
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   948
413
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   949
&lt;&gt;
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   950
   o:client &lt;#GlenWSmith&gt;, &lt;#AlfredESmith&gt;. 
198
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   951
 
413
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   952
&lt;#GlenWSmith&gt;
198
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   953
   a foaf:Person;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   954
   o:status o:ActiveCustomer, o:GoldCustomer;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   955
   foaf:name "Glen W. Smith".
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   956
413
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   957
&lt;#AlfredESmith&gt;
198
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   958
   a foaf:Person;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   959
   o:status o:ActiveCustomer, o:BronzeCustomer;
413
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   960
   foaf:name "Alfred E. Smith".
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   961
 </pre>
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   962
	<p>
215
da72115eb40b Various updates per review of Raul
sspeiche
parents: 213
diff changeset
   963
		In this example, there are only two customers provided in the
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   964
		final page.  To indicate this is the last page, the server omits the <code>Link: rel='next'</code> 
395
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   965
		header in its response.
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   966
	</p>
412
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   967
	<p>
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   968
		As mentioned above, retrieving all the pages offered by a server gives no guarantee to a client
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   969
		that it knows the entire state of the server.  For example, after the server constructs the
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   970
		the first page representation, another
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   971
		actor could delete <code>client#BettyASmith</code> from the server.  
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
   972
	</p>
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   973
</section>
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   974
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   975
<section id="ldpr-PagingGET">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   976
<h3>HTTP GET</h3>
395
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   977
	<p>In addition to the requirements set forth in <a href="#ldpr-HTTP_GET" class="sectionRef"></a> on HTTP <code>GET</code>, 
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   978
		<a title="LDP server">LDP servers</a> that support paging must 
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   979
		also follow the requirements in this section for all <a title="Paged resource">paged resources</a>
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   980
		and their associated <a title="Single-page resource">single-page resources</a>.
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
   981
	</p>
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   982
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   983
	<section id="ldpr-pagingGET-sequences-change"><h2 class="normal"><a title="LDP server">LDP servers</a> MAY
413
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   984
		add <a title="Single-page resource">single-page resources</a> to a 
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   985
		<a title="Paged resource">paged resource's</a> sequence over time,
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   986
		but SHOULD only add pages to the end of a sequence.
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   987
		</h2><!-- Was 4.10.2.1 / #ldpr-pagingGET-sequences-change -->
463
ae72388dbb82 start action-127 paging use of [23]xx response code; also changed 'informative' to 'non-normative' so sandro is happy[ier]
John Arwe
parents: 462
diff changeset
   988
		<blockquote>Non-normative note: 
414
a5d0c19a9474 remote-only respec whining
John Arwe
parents: 413
diff changeset
   989
		As a result, clients retrieving any <a title="Single-page resource">single-page resource</a> several times can observe its place in the sequence
413
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   990
		change as the state of the <a title="Paged resource">paged resource</a> changes.
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   991
		For example, a nominally last page's server might provide a
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   992
		<a>next page link</a> when the page is retrieved.  Similar situations arise when the page sequence crosses server boundaries; 
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   993
		server A might host the initial portion of a sequence that links to the last page server A is aware of,  
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   994
		hosted on server B, and server B might extend the sequence of pages.
55af75032d16 Fix respec messages that only show up on remote server, hit paging examples to remove appearance of inlining
John Arwe
parents: 412
diff changeset
   995
		</blockquote>
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   996
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   997
		<section id="ldpr-pagingGET-first-allowed-onpages"><h2 class="normal">
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   998
			<a title="LDP server">LDP servers</a> MAY provide 
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
   999
			a <a>first page link</a> when responding to 
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1000
			requests with any <a title="Single-page resource">single-page resource</a> as the <code>Request-URI</code>.
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1001
		</h2></section><!-- Was 4.10.2.1.1 / #ldpr-pagingGET-sequences-change -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1002
	
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1003
		<section id="ldpr-pagingGET-last-allowed-onpages"><h2 class="normal"><a title="LDP server">LDP servers</a> MAY
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1004
			provide a <a>last page link</a>
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1005
			in responses to <code>GET</code> requests with any <a title="Single-page resource">single-page resource</a> as the <code>Request-URI</code>.
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1006
		</h2></section><!-- Was 4.10.2.1.3 / #ldpr-pagingGET-last-allowed-onpages -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1007
	</section>
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1008
	
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1009
	<section id="ldpr-pagingGET-next-reqd"><h2 class="normal"><a title="LDP server">LDP servers</a> MUST
412
b5f309858d98 Resolve ACTION-113 Update spec to reflect 11/04 resolution to remove 303 and have client use first/next links to detect paging
John Arwe
parents: 410
diff changeset
  1010
		provide a <a>next page link</a>
395
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
  1011
		in responses to <code>GET</code> requests with any <a title="Single-page resource">single-page resource</a> 
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
  1012
		<em>other than the final page</em>
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
  1013
		as the <code>Request-URI</code>.
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
  1014
		This is the mechanism by which clients can discover the URL of the next page. 
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1015
	</h2><!-- Was 4.10.2.2 / #ldpr-pagingGET-next-reqd-change -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1016
	
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1017
		<section id="ldpr-pagingGET-lastnext-prohibited"><h2 class="normal"><a title="LDP server">LDP servers</a> MUST NOT
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1018
			provide a <a>next page link</a>
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1019
			in responses to <code>GET</code> requests with the final <a title="Single-page resource">single-page resource</a> 
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1020
			as the <code>Request-URI</code>.
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1021
			This is the mechanism by which clients can discover the end of the page sequence
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1022
			as currently known by the server.  
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1023
		</h2></section><!-- Was 4.10.2.2.1 / #ldpr-pagingGET-lastnext-prohibited -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1024
		
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1025
		<section id="ldpr-pagingGET-prev-allowed"><h2 class="normal"><a title="LDP server">LDP servers</a> MAY
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1026
			provide a <a>previous page link</a>
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1027
			in responses to <code>GET</code> requests with any <a title="Single-page resource">single-page resource</a>
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1028
			<em>other than the first page</em>
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1029
			as the <code>Request-URI</code>.
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1030
			This is one mechanism by which clients can discover the URL of the previous page.  
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1031
		</h2></section><!-- Was 4.10.2.2.2 / #ldpr-pagingGET-prev-allowed -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1032
		
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1033
		<section id="ldpr-pagingGET-firstprev-prohibited"><h2 class="normal"><a title="LDP server">LDP servers</a> MUST NOT
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1034
			provide a <a>previous page link</a>
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1035
			in responses to <code>GET</code> requests with the <em>first</em> <a title="Single-page resource">single-page resource</a> 
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1036
			as the <code>Request-URI</code>.
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1037
			This is one mechanism by which clients can discover the beginning of the page sequence
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1038
			as currently known by the server.  
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1039
		</h2></section><!-- Was 4.10.2.2.3 / #ldpr-pagingGET-firstprev-prohibited -->
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1040
	</section>
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1041
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1042
	<section id="ldpr-pagingGET-page-type-reqd"><h2 class="normal"><a title="LDP server">LDP servers</a> MUST
395
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
  1043
		provide an HTTP <code>Link</code>
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
  1044
		header whose target URI is <code>http://www.w3.org/ns/ldp#Page</code>, and whose link relation type is <code>type</code> [[!RFC5988]]
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
  1045
		in responses to <code>GET</code> requests with any <a title="Single-page resource">single-page resource</a> 
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
  1046
		as the <code>Request-URI</code>.
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
  1047
		This is one mechanism by which clients know that the resource is one of a sequence of pages.  
435
e9efbc3a3ba8 First attempt at correcting section ordering and anchors
sspeiche
parents: 434
diff changeset
  1048
	</h2></section><!-- Was 4.10.2.4 / #ldpr-pagingGET-page-type-reqd -->
464
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1049
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1050
	<div class="atrisk" id="atrisk-333"><p class="atrisktext">Feature At Risk</p>
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1051
		<p>The LDP Working Group proposes incorporation of the features described in the next compliance clause.</p>
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1052
		<ul>
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1053
		<li><p>
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1054
		A <a href="http://lists.w3.org/Archives/Public/www-tag/2013Dec/0041.html">TAG discussion</a> has started,
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1055
		whose goal is to reduce the need for two request-response round trips down to one when retrieving what 
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1056
		turns out to be the first page of a paged resource, by defining a new
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1057
		HTTP response code in the <code>2xx</code> or <code>3xx</code> class that would allow a server to
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1058
		respond to <code>GET request-uri</code> requests with the representation of the first page 
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1059
		(whose URI is <code>first-page-uri</code>, not <code>request-uri</code>) of a multi-page response.
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1060
		</p></li>
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1061
		<li><p>
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1062
		For the purposes of drafting this section, we assume that the 
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1063
		new code's value is <code>333 (Returning Related)</code>,
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1064
		<a href="http://lists.w3.org/Archives/Public/www-tag/2014Jan/0023.html">an LDP extrapolation from TAG discussions,</a>
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1065
		and its definition is given by 
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1066
		<a href="http://lists.w3.org/Archives/Public/www-tag/2014Jan/0015.html">Henry Thompson's strawman</a>, with the substitution of 333 for 2xx.
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1067
		Note: nothing prevents servers or clients from using <code>303 See Other</code> responses to 
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1068
		requests for <a title="Paged resource">paged resources</a>.  The only significant difference between 303 and 333 responses
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1069
		is the extra round trip required for the client to retrieve the representation of the first page when using 303.
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1070
		</p></li>
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1071
		<li><p>
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1072
		Once LDP is a
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1073
		Candidate Recommendation, the LDP WG will make an assessment based on the status at IETF,
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1074
		working with the W3C Director, to either use the newly defined response code 
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1075
		as documented in this section or to revert to a classic 
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1076
		<code>303</code> response pattern.
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1077
		</p></li>
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1078
		</ul>
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1079
	</div>
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1080
		
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1081
	<section id="ldpr-status-code"><h2 class="normal"><a title="LDP server">LDP servers</a> SHOULD respond 
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1082
		with HTTP status code <code>333 (Returning Related)</code> 
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1083
		to successful <code>GET</code> requests with any <a title="Paged resource">paged resource</a> 
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1084
		as the <code>Request-URI</code>, although any appropriate code MAY be used.
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1085
	</h2></section>
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
  1086
</section>
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
  1087
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
  1088
<section id="ldpr-paging-HTTP_OPTIONS">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
  1089
<h3>HTTP OPTIONS</h3>
158
8af0b25f2748 issue-32 MUST support OPTIONS
John Arwe
parents: 152
diff changeset
  1090
395
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
  1091
	<p>In addition to the requirements set forth in 
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
  1092
		<a href="#ldpr-HTTP_OPTIONS" class="sectionRef"></a> on HTTP <code>OPTIONS</code>, 
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
  1093
		<a title="LDP server">LDP servers</a> that support paging must also 
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
  1094
		follow the requirements in this section for all <a title="Paged resource">paged resources</a>.
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
  1095
		Note that LDP only requires enough from <code>OPTIONS</code> 
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
  1096
		for discovery of paging support on a resource, which is considerably
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
  1097
		less than is required for HTTP <code>GET</code>.  
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
  1098
		This lowers server implementation effort.
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
  1099
	</p>
464
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1100
	
77fd28c9eb94 action-127 use tag [23]xx status code for paging; also change paging to be for LDP-RRs as a consequence of issue-89 vocab changes
John Arwe
parents: 463
diff changeset
  1101
	<!-- TODO: This section is empty - looks weird, and it is linked to from other sections -->
395
0408e1e5bbf8 ACTION-105: Update spec to reflect 9/30 resolution moving Paging links to HTTP headers (partial: does not include sort criteria changes yet)
John Arwe
parents: 393
diff changeset
  1102
174
72ce83f4ec7f issue-58 actions 88,89 (new predicates)
John Arwe
parents: 173
diff changeset
  1103
</section> <!-- h3 -->
72ce83f4ec7f issue-58 actions 88,89 (new predicates)
John Arwe
parents: 173
diff changeset
  1104
72ce83f4ec7f issue-58 actions 88,89 (new predicates)
John Arwe
parents: 173
diff changeset
  1105
</section> <!-- h2 -->
72ce83f4ec7f issue-58 actions 88,89 (new predicates)
John Arwe
parents: 173
diff changeset
  1106
72ce83f4ec7f issue-58 actions 88,89 (new predicates)
John Arwe
parents: 173
diff changeset
  1107
</section> <!-- h1 -->
72ce83f4ec7f issue-58 actions 88,89 (new predicates)
John Arwe
parents: 173
diff changeset
  1108
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
  1109
<section id="ldpc">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
  1110
<h1>Linked Data Platform Containers</h1>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1111
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
  1112
<section class="informative" id="ldpc-informative">		
466
7b840138bdf1 editorial cleanup; substantive hits to ldpc delete, remove reqt for direct containers to materialize insertedContentRelation (since it's value is fixed)
John Arwe
parents: 465
diff changeset
  1113
<h2>Introduction</h2>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1114
	<p>Many HTTP applications and sites have organizing
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1115
		concepts that partition the overall space of resources into smaller
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1116
		containers. Blog posts are grouped into blogs, wiki pages are grouped
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1117
		into wikis, and products are grouped into catalogs. Each resource
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1118
		created in the application or site is created within an instance of
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1119
		one of these container-like entities, and users can list the existing
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1120
		artifacts within one. Containers answer some basic questions, which
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1121
		are:</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1122
	<ol>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1123
		<li>To which URLs can I POST to create new resources?</li>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1124
		<li>Where can I GET a list of existing resources?</li>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1125
		<li>How	is the order of the container entries expressed?</li>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1126
		<li>How do I get information about the members along with the container?</li>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1127
		<li>How	can I ensure the resource data is easy to query?</li>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1128
	</ol>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1129
	<p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1130
		This document defines the representation and behavior of containers
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1131
		that address these issues. The set of members of a container is
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1132
		defined by a set of triples in its representation (and state) called
373
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
  1133
		the <a title="Membership triples">membership triples</a> that follow a consistent pattern
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
  1134
		(see the linked-to definition for the possible patterns). 
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
  1135
		The membership triples of a container all
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
  1136
		have the same predicate, called the membership predicate, 
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
  1137
		and either the subject or the object is also a consistent value
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
  1138
		– the remaining position of the membership
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
  1139
		triples (the one that varies) define the members of the container. 
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
  1140
		In the simplest cases, the
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
  1141
		consistent value will be the LDPC resource's URI, but it does not
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1142
		have to be. The membership predicate is also variable and will often
453
a70c321daf12 ACTION-120 (Part 3) Added ldp:member
sspeiche
parents: 452
diff changeset
  1143
		be a predicate from the server application vocabulary or the <code>ldp:member</code> predicate.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1144
	</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1145
	<p>This document includes a set of guidelines for
415
12864dde579d Resolve ACTION-112 Update spec to reflect 10/28 resolution for Issue-81 part 1: new predicate names
John Arwe
parents: 414
diff changeset
  1146
		creating new resources and adding them to the list of
104
78fd14175304 ISSUE-59 5.3.2 limited rdf:type of ldp:Container, removed 5.6.3, reworded 5.6.2, updated 1.
sspeiche
parents: 102
diff changeset
  1147
		members of a container. It goes on to explain how to learn about a set of related
415
12864dde579d Resolve ACTION-112 Update spec to reflect 10/28 resolution for Issue-81 part 1: new predicate names
John Arwe
parents: 414
diff changeset
  1148
		resources, regardless of how they were created or added to the container's membership.
12864dde579d Resolve ACTION-112 Update spec to reflect 10/28 resolution for Issue-81 part 1: new predicate names
John Arwe
parents: 414
diff changeset
  1149
		It also defines behavior when resources created using a container are later deleted;
12864dde579d Resolve ACTION-112 Update spec to reflect 10/28 resolution for Issue-81 part 1: new predicate names
John Arwe
parents: 414
diff changeset
  1150
		deleting containers removes membership information and
12864dde579d Resolve ACTION-112 Update spec to reflect 10/28 resolution for Issue-81 part 1: new predicate names
John Arwe
parents: 414
diff changeset
  1151
		possibly performs some cleanup tasks on unreferenced member resources.</p>
104
78fd14175304 ISSUE-59 5.3.2 limited rdf:type of ldp:Container, removed 5.6.3, reworded 5.6.2, updated 1.
sspeiche
parents: 102
diff changeset
  1152
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1153
	<p>The following illustrates a very simple
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1154
		container with only three members and some information about the
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1155
		container (the fact that it is a container and a brief title):</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1156
419
afe7bcda2e56 + ids on remaining examples
Eric Prud'hommeaux <eric@w3.org>
parents: 418
diff changeset
  1157
<pre class="example" id="ldpc-ex-simple"># The following is the representation of
449
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
  1158
#    http://example.org/c1/
309
ea3cce737943 Get examples to validate, per http://lists.w3.org/Archives/Public/public-ldp-wg/2013Aug/0002.html and messages that came up once those noted were fixed.
John Arwe
parents: 274
diff changeset
  1159
<!-- @base is here only so it's easier to paste into validators for checking -->
449
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
  1160
# @base &lt;http://example.org/c1/&gt;
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1161
@prefix dcterms: &lt;http://purl.org/dc/terms/&gt;.
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1162
@prefix ldp: &lt;http://www.w3.org/ns/ldp#&gt;.
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1163
72
73a5766e4794 ISSUE-29 - Use relative URIs in examples
sspeiche
parents: 71
diff changeset
  1164
&lt;&gt;
449
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
  1165
   a ldp:Container, ldp:BasicContainer;
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1166
   dcterms:title "A very simple container";
467
0eed67a3db4e Simplified some of the container examples
sspeiche
parents: 466
diff changeset
  1167
   ldp:contains &lt;r1&gt;, &lt;r2&gt;, &lt;r3&gt;.</pre>
449
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
  1168
 
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
  1169
   	<figure id="fig-ldpc-basic">
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
  1170
        <img src="images/ldpc-basic.png" alt="Sample Linked Data Platform Basic Container" />
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
  1171
        <figcaption>Sample of Linked Data Platform Basic Container</figcaption>
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
  1172
    </figure>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1173
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1174
	<p>This example is very straightforward - the
467
0eed67a3db4e Simplified some of the container examples
sspeiche
parents: 466
diff changeset
  1175
	membership and containment predicate are both <code>ldp:contains</code> and the other
452
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1176
	consistent membership value is the container's
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1177
	URI, occurring in the subject position of the triples. 
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1178
	A POST to this container will create a new resource
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1179
	and add it to the list of members by adding a new membership triple
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1180
	to the container.  This type of container is also refered to as
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1181
	<a title="Linked Data Platform Basic Container">LDP Basic Container</a>.</p>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1182
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1183
	<p>Sometimes it is useful to use a subject
373
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
  1184
	other than the container itself as the consistent membership value, and/or to use
467
0eed67a3db4e Simplified some of the container examples
sspeiche
parents: 466
diff changeset
  1185
	a  predicate from an application's domain model as the membership predicate. Let's
88
a02636c16f05 Fixed typo in new text
sspeiche
parents: 87
diff changeset
  1186
	start with a domain resource for a person's net worth, as illustrated below:</p>
87
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1187
			
233
37842c77d995 Fixed dup id problem in example
sspeiche
parents: 232
diff changeset
  1188
<pre class="example" id="ldpc-ex-membership-partial"># The following is a partial representation of
87
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1189
#   http://example.org/netWorth/nw1
309
ea3cce737943 Get examples to validate, per http://lists.w3.org/Archives/Public/public-ldp-wg/2013Aug/0002.html and messages that came up once those noted were fixed.
John Arwe
parents: 274
diff changeset
  1190
<!-- @base is here only so it's easier to paste into validators for checking -->
ea3cce737943 Get examples to validate, per http://lists.w3.org/Archives/Public/public-ldp-wg/2013Aug/0002.html and messages that came up once those noted were fixed.
John Arwe
parents: 274
diff changeset
  1191
# @base &lt;http://example.org/netWorth/nw1/&gt;
87
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1192
@prefix ldp: &lt;http://www.w3.org/ns/ldp#&gt;.
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1193
@prefix o: &lt;http://example.org/ontology/&gt;.
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1194
&lt;&gt;
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1195
   a o:NetWorth;
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1196
   o:netWorthOf &lt;http://example.org/users/JohnZSmith&gt;;
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1197
   o:asset 
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1198
      &lt;assetContainer/a1&gt;,
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1199
      &lt;assetContainer/a2&gt;;
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1200
   o:liability 
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1201
      &lt;liabilityContainer/l1&gt;,
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1202
      &lt;liabilityContainer/l2&gt;,
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1203
      &lt;liabilityContainer/l3&gt;.
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1204
</pre>
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1205
	<p>From this example, there is a <code>rdf:type</code> of <code>o:NetWorth</code> indicating the
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1206
	resource represents an instance of a person's net worth and <code>o:netWorthOf</code> predicate indicating 
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1207
	the associated person.  There are two sets of same-subject, same-predicate pairings; one for assets and
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1208
	one for liabilities.  It would be helpful to be able to associate these multi-valued sets using a URL
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1209
	for them to assist with managing these, this is done by associating containers with them as 
456
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1210
	illustrated in the 3 examples below:
87
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1211
	</p>
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1212
456
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1213
<pre class="example" id="ldpc-ex-membership-full"># The following is an elaborated representation of LDPR
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1214
#   http://example.org/netWorth/nw1
309
ea3cce737943 Get examples to validate, per http://lists.w3.org/Archives/Public/public-ldp-wg/2013Aug/0002.html and messages that came up once those noted were fixed.
John Arwe
parents: 274
diff changeset
  1215
<!-- @base is here only so it's easier to paste into validators for checking -->
456
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1216
# @base &lt;http://example.org/netWorth/nw1/&gt;.
87
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1217
@prefix ldp: &lt;http://www.w3.org/ns/ldp#&gt;.
231
38d1a7faf1c4 Various editorial comments from PA
sspeiche
parents: 230
diff changeset
  1218
@prefix dcterms: &lt;http://purl.org/dc/terms/&gt;.
87
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1219
@prefix o: &lt;http://example.org/ontology/&gt;.
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1220
&lt;&gt;
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1221
   a o:NetWorth;
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1222
   o:netWorthOf &lt;http://example.org/users/JohnZSmith&gt;;
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1223
   o:asset 
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1224
      &lt;assetContainer/a1&gt;,
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1225
      &lt;assetContainer/a2&gt;;
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1226
   o:liability 
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1227
      &lt;liabilityContainer/l1&gt;,
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1228
      &lt;liabilityContainer/l2&gt;,
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1229
      &lt;liabilityContainer/l3&gt;.
456
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1230
</pre>
87
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1231
456
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1232
<pre class="example" id="ldpc-ex-membership-subj"># The following is an elaborated representation of LDPC
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1233
#   http://example.org/netWorth/nw1/assetContainer/
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1234
<!-- @base is here only so it's easier to paste into validators for checking -->
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1235
# @base &lt;http://example.org/netWorth/nw1/assetContainer/&gt;
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1236
@prefix ldp: &lt;http://www.w3.org/ns/ldp#&gt;.
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1237
@prefix dcterms: &lt;http://purl.org/dc/terms/&gt;.
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1238
@prefix o: &lt;http://example.org/ontology/&gt;.
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1239
&lt;&gt;
452
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1240
   a ldp:Container, ldp:DirectContainer;
87
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1241
   dcterms:title "The assets of JohnZSmith";
415
12864dde579d Resolve ACTION-112 Update spec to reflect 10/28 resolution for Issue-81 part 1: new predicate names
John Arwe
parents: 414
diff changeset
  1242
   ldp:containerResource &lt;&gt;;
12864dde579d Resolve ACTION-112 Update spec to reflect 10/28 resolution for Issue-81 part 1: new predicate names
John Arwe
parents: 414
diff changeset
  1243
   ldp:containsRelation o:asset;
456
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1244
   ldp:contains &lt;a1&gt;, &lt;a2&gt;.
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1245
</pre>
87
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1246
456
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1247
<pre class="example" id="ldpc-ex-membership-full-liabcont"># The following is an elaborated representation of LDPC
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1248
#   http://example.org/netWorth/nw1/liabilityContainer/
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1249
<!-- @base is here only so it's easier to paste into validators for checking -->
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1250
# @base &lt;http://example.org/netWorth/nw1/liabilityContainer/&gt;
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1251
@prefix ldp: &lt;http://www.w3.org/ns/ldp#&gt;.
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1252
@prefix dcterms: &lt;http://purl.org/dc/terms/&gt;.
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1253
@prefix o: &lt;http://example.org/ontology/&gt;.
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1254
&lt;&gt;
452
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1255
   a ldp:Container, ldp:DirectContainer;
87
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1256
   dcterms:title "The liabilities of JohnZSmith";
415
12864dde579d Resolve ACTION-112 Update spec to reflect 10/28 resolution for Issue-81 part 1: new predicate names
John Arwe
parents: 414
diff changeset
  1257
   ldp:containerResource &lt;&gt;;
12864dde579d Resolve ACTION-112 Update spec to reflect 10/28 resolution for Issue-81 part 1: new predicate names
John Arwe
parents: 414
diff changeset
  1258
   ldp:containsRelation o:liability;
460
1f6e06fd7272 typo: added missing brackets in example 7
Arnaud Le Hors <lehors@us.ibm.com>
parents: 459
diff changeset
  1259
   ldp:contains &lt;l1&gt;, &lt;l2&gt;, &lt;l3&gt;.
87
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1260
</pre>
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1261
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1262
	<p>The essential structure of the container is
373
0562f8c4d4d4 Cleanup of known cases where text assumed "normal" membership triple pattern, did not consider the flipped/MO cases
John Arwe
parents: 372
diff changeset
  1263
	the same, but in this example, the consistent membership value (still in the subject position) is not the
87
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1264
	container itself – it is a separate net worth resource. The
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1265
	membership predicates are <code>o:asset</code> and <code>o:liability</code> – predicates
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1266
	from the domain model. A POST of an asset representation to the asset container will create a new
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1267
	asset and add it to the list of	members by adding a new membership triple
452
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1268
	to the resource and containment triple to the container. You might wonder why
87
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1269
	<code>http://example.org/netWorth/nw1</code> isn't made a container itself and POST
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1270
	the new asset directly there. That would be a fine design if <code>http://example.org/netWorth/nw1</code>
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1271
	had only assets, but if it has separate predicates for assets and liabilities,
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1272
	that design will not work because it is unspecified to which predicate the POST
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1273
	should add a membership triple. Having separate <code>http://example.org/netWorth/nw1/assetContainer/</code> 
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1274
	and <code>http://example.org/netWorth/nw1/liabilityContainer/</code> container
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1275
	resources allows both assets and liabilities to be created.
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1276
	</p>
452
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1277
	<p>This type of container is refered to as an <a title="Linked Data Platform Direct Container">LDP Direct Container</a>.  An
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1278
	 <a title="Linked Data Platform Basic Container">LDP Basic Container</a> is a constrained form of 
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1279
	 <a title="Linked Data Platform Direct Container">LDP Direct Container</a> where the 
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1280
	 membership predicate is <code>ldp:contains</code> and the container resource is the container itself.
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1281
	</p>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1282
456
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1283
	<p>As seen in the <a href="#ldpc-ex-membership-subj"><code>assetContainer/</code> example</a>, 
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1284
	clients cannot correctly guess
452
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1285
	at the membership triples, so the example includes this information in
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1286
	triples whose subject is the LDPC resource itself.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1287
	</p>
452
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1288
	
456
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1289
	<p>Alternatively, servers may provide the net worth resource and supporting containers in a single response
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1290
	representations.  When doing this, a preference would be for RDF formats that support multiple named graphs, one
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1291
	named graph for the net worth resource and then two others for asset and liability containers.  This allows for
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1292
	the membership triples to be represented with the named graph for the net worth resource, while the containment triples
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1293
	would be represented within the liability and asset containers [[rdf11-concepts]].  Generally, the membership triples belong
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1294
	to the representation of a LDP-RR and the containment triples belong to the representation of the LDPC.
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1295
	</p>
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1296
	
452
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1297
	<p>Additionally, we could extend our net worth example to include a container for
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1298
	advisors (people) that have managed the assets and liabilities.  We have decided
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1299
	to identify these advisors with URLs that contain a fragment (hash) to represent
462
3a7f9b05bad8 proofing through 454
John Arwe
parents: 461
diff changeset
  1300
	these real-world resources, not the documents that describe them.</p>
452
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1301
	
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1302
<pre class="example" id="ldpc-ex-membership-full"># The following is an elaborated representation of
456
6130538abdf0 ACTION-124 LDPR-RR as named graphs
sspeiche
parents: 454
diff changeset
  1303
#   http://example.org/netWorth/nw1
452
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1304
# Adding o:advisor but eaving off o:asset and o:liability for brevity.
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1305
<!-- @base is here only so it's easier to paste into validators for checking -->
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1306
# @base &lt;http://example.org/netWorth/nw1/&gt;
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1307
@prefix ldp: &lt;http://www.w3.org/ns/ldp#&gt;.
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1308
@prefix dcterms: &lt;http://purl.org/dc/terms/&gt;.
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1309
@prefix foaf: &lt;http://xmlns.com/foaf/0.1/&gt;.
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1310
@prefix o: &lt;http://example.org/ontology/&gt;.
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1311
&lt;&gt;
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1312
   a o:NetWorth;
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1313
   o:netWorthOf &lt;http://example.org/users/JohnZSmith&gt;;
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1314
   o:advisor
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1315
   	 &lt;advisorContainer/bob#me&gt;,
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1316
   	 &lt;advisorContainer/marsha#me&gt;.
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1317
   	 
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1318
&lt;advisorContainer/&gt;
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1319
   a ldp:Container, ldp:IndirectContainer;
465
26eb1d6d4fd6 fixing things found proofing SS updates and a few of Arnaud's email comments
John Arwe
parents: 464
diff changeset
  1320
   dcterms:title "The asset advisors of JohnZSmith";
452
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1321
   ldp:containerResource &lt;&gt;;
465
26eb1d6d4fd6 fixing things found proofing SS updates and a few of Arnaud's email comments
John Arwe
parents: 464
diff changeset
  1322
   ldp:containsRelation o:advisor;
452
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1323
   ldp:insertedContentRelation foaf:primaryTopic;
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1324
   ldp:contains
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1325
   	 &lt;advisorContainer/bob&gt;,
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1326
   	 &lt;advisorContainer/marsha&gt;.
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1327
</pre>	
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1328
	
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1329
	<p>To handle this type of indirection, the triple with predicate of <code>ldp:insertedContentRelation</code> and object of 
468
f960af656afb Simplified some of the container examples
sspeiche
parents: 467
diff changeset
  1330
	<code>foaf:primaryTopic</code> informs clients that when POSTing to this container, they need to include a triple of the
462
3a7f9b05bad8 proofing through 454
John Arwe
parents: 461
diff changeset
  1331
	form <code>(&lt;&gt;, foaf:primaryTopic, topic-URI)</code> to inform the server which URI to use 
3a7f9b05bad8 proofing through 454
John Arwe
parents: 461
diff changeset
  1332
	(<code>topic-URI</code>) in the new membership triple.</p>
452
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1333
	
462
3a7f9b05bad8 proofing through 454
John Arwe
parents: 461
diff changeset
  1334
	<p>This type of container is also referred to as an <a title="Linked Data Platform Indirect Container">LDP Indirect Container</a>. 
452
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1335
	It is similar to a an <a title="Linked Data Platform Direct Container">LDP Direct Container</a> 
468
f960af656afb Simplified some of the container examples
sspeiche
parents: 467
diff changeset
  1336
	but it provides an indirection to add (via a create request) as member any resource, 
462
3a7f9b05bad8 proofing through 454
John Arwe
parents: 461
diff changeset
  1337
	such as a URI representing a real-world object,
3a7f9b05bad8 proofing through 454
John Arwe
parents: 461
diff changeset
  1338
	that is different from the document that is created.</p>
449
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
  1339
452
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1340
	<p><a href="#fig-ldpc-types"></a> illustrates the 3 types: Basic, Direct and Indirect, along
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1341
	with their relationship to types of LDPRs.  It is not expected that there will be a container
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1342
	with a <code>rdf:type</code> solely of <code>ldp:Container</code>.</p>
450
e8d84dbc86dc ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 449
diff changeset
  1343
	
e8d84dbc86dc ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 449
diff changeset
  1344
	 <figure id="fig-ldpc-types">
e8d84dbc86dc ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 449
diff changeset
  1345
        <img src="images/ldpc1.png" alt="Types of Linked Data Platform Containers" />
e8d84dbc86dc ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 449
diff changeset
  1346
        <figcaption>Types of Linked Data Platform Containers</figcaption>
e8d84dbc86dc ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 449
diff changeset
  1347
    </figure>
452
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1348
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1349
<div class="ldp-issue-pending">
468
f960af656afb Simplified some of the container examples
sspeiche
parents: 467
diff changeset
  1350
<p>PENDING -- table work in progress, if found valuable...we'll keep.</p>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1351
	
452
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1352
	<p>The following table illustrates some differences between <a title="membership">membership</a> and 
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1353
	<a title="containment">containment</a> triples.  For details on the normative behavior, see appropriate sections
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1354
	below.
449
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
  1355
	</p>
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
  1356
	<table border="1" id="ldpc-mbrcntdiff">
452
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1357
		<thead><tr><th rowspan="2">Completed Request</th><th colspan="2">Effects</th></tr>
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1358
		       <tr><th>Membership</th><th>Containment</th></tr></thead>
468
f960af656afb Simplified some of the container examples
sspeiche
parents: 467
diff changeset
  1359
		<tr><td>LDPR created in LDPC (any subtype)</td><td>New triple based on type of container (see following rows)</td><td>New triple: 
449
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
  1360
			(LDPC, ldp:contains, LDPR)</td></tr>
623bbfdea989 ACTION-120 (Part 1) Added concepts of containers (basic, direct and indirect)
sspeiche
parents: 448
diff changeset
  1361
		<tr><td>LDPR created in LDP-BC</td><td>New triple: (LDPC, ldp:contains, LDPR)</td><td>Same</td></tr>
452
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1362
		<tr><td>LDPR created in LDP-DC</td><td>New triple links LDP-RR to created LDPR. LDP-RR URI may be same as LDP-DC</td>
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1363
			<td>New triple: (LDPC, ldp:contains, LDPR)</td></tr>
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1364
		<tr><td>LDPR created in LDP-IC</td><td>New triple links LDP-RR to content indicated URI</td>
c4b538b7e57f ACTION-120 (Part 2) Added concepts of containers (basic, direct and indirect) to LDPC intro
sspeiche
parents: 451
diff changeset
  1365
			<td>New triple: (LDPC, ld