ldp.html
author John Arwe
Fri, 25 Oct 2013 10:04:31 -0400
changeset 393 8197019f4604
parent 389 f1dbb042137b
child 395 0408e1e5bbf8
permissions -rw-r--r--
ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
     1
<!DOCTYPE html>
194
b6d66196a02d Fixed biblirefs, consistency items and moved editor todo into comments
sspeiche
parents: 192
diff changeset
     2
<!-- 
b6d66196a02d Fixed biblirefs, consistency items and moved editor todo into comments
sspeiche
parents: 192
diff changeset
     3
 Editor TODO:
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
     4
   - Once companion documents have URLs, link to them.  Search on "companion".
393
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
     5
   - In #ldpr-HTTP_POST, move "Clients can create LDPRs via" content into an intro/overview section and add PATCH.
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
     6
   - 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
     7
     and see if there is a friendlier way to phrase it.
215
da72115eb40b Various updates per review of Raul
sspeiche
parents: 213
diff changeset
     8
   - The word "canonical" is used twice in the document. Since we do not deal with URI 
da72115eb40b Various updates per review of Raul
sspeiche
parents: 213
diff changeset
     9
     canonicalization in the specification, I would remove the word and the meaning of 
da72115eb40b Various updates per review of Raul
sspeiche
parents: 213
diff changeset
    10
     the sentences is the same.
da72115eb40b Various updates per review of Raul
sspeiche
parents: 213
diff changeset
    11
   - section 4.6...respec is adding extra spaces to the sectionRefs
da72115eb40b Various updates per review of Raul
sspeiche
parents: 213
diff changeset
    12
	  carefully read section 4.2 .
da72115eb40b Various updates per review of Raul
sspeiche
parents: 213
diff changeset
    13
	  ->
da72115eb40b Various updates per review of Raul
sspeiche
parents: 213
diff changeset
    14
	  carefully read section 4.2.
da72115eb40b Various updates per review of Raul
sspeiche
parents: 213
diff changeset
    15
	
da72115eb40b Various updates per review of Raul
sspeiche
parents: 213
diff changeset
    16
	  defined in section 4.8 .
da72115eb40b Various updates per review of Raul
sspeiche
parents: 213
diff changeset
    17
	  ->
da72115eb40b Various updates per review of Raul
sspeiche
parents: 213
diff changeset
    18
	  defined in section 4.8.
222
1db581afd1ec Added informative section 4.1 , therefore shifting all sections by one 4.1->4.2, etc
sspeiche
parents: 221
diff changeset
    19
    - 	The ReSpec SPARQL QUERY link is http://www.w3.org/TR/rdf-sparql-query/ , which has highlighted text
1db581afd1ec Added informative section 4.1 , therefore shifting all sections by one 4.1->4.2, etc
sspeiche
parents: 221
diff changeset
    20
	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
    21
 Various pre-LC comments:
229
8ddd81e6113c Various minor editorial fixups
sspeiche
parents: 228
diff changeset
    22
    - 5.2.5.1 For a given triple T with a subject C of the LDPC and predicate of ldp:membershipPredicate, 
8ddd81e6113c Various minor editorial fixups
sspeiche
parents: 228
diff changeset
    23
	  5.2.5.2 For a given triple T with a subject C of the LDPC and predicate of ldp:membershipPredicateInverse, 
8ddd81e6113c Various minor editorial fixups
sspeiche
parents: 228
diff changeset
    24
	  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
    25
	  (JohnA) I found these particularly hard to read.  And I perpetrated the SortCollation paragraphs.  
8ddd81e6113c Various minor editorial fixups
sspeiche
parents: 228
diff changeset
    26
	  Links to examples might be an 80-20 solution. 
232
c38de2977a87 Editorial changes from feedback from Sergio
sspeiche
parents: 231
diff changeset
    27
	- 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
    28
	  Currently does not work when printing.
325
e0790fa85b77 Removing old working files
sspeiche
parents: 311
diff changeset
    29
 Misc during LC comments:
e0790fa85b77 Removing old working files
sspeiche
parents: 311
diff changeset
    30
    - http://lists.w3.org/Archives/Public/public-ldp/2013Aug/0002.html
e0790fa85b77 Removing old working files
sspeiche
parents: 311
diff changeset
    31
      #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
    32
 -->
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    33
<html>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    34
  <head>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    35
    <title>Linked Data Platform 1.0</title>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    36
    <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
    37
    <!-- 
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    38
      === NOTA BENE ===
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    39
      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
    40
      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
    41
     -->
39
f030c0ec5866 Changed to http[s] for script
sspeiche
parents: 36
diff changeset
    42
    <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
    43
    <script class='remove'>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    44
      var respecConfig = {
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    45
          // 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
    46
          specStatus:           "ED",
12
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
          // 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
    49
          shortName:            "ldp",
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 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
    52
          // formal title, define it here
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    53
          // subtitle   :  "an excellent document",
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 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
    56
          publishDate:  "",
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    57
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    58
          // 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
    59
          // the start date here:
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    60
          // copyrightStart: "2005"
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    61
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    62
          // 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
    63
          // and its maturity status
274
8db905ebe0ba Basic preparation for edits unto LC draft
sspeiche
parents: 238
diff changeset
    64
          previousPublishDate:  "2013-07-30",
8db905ebe0ba Basic preparation for edits unto LC draft
sspeiche
parents: 238
diff changeset
    65
          previousMaturity:  	"LC",
8db905ebe0ba Basic preparation for edits unto LC draft
sspeiche
parents: 238
diff changeset
    66
          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
    67
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    68
          // 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
    69
          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
    70
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    71
          // 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
    72
          lcEnd: "2013-09-02",
12
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
          // 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
    75
          // 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
    76
          //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
    77
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    78
          // 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
    79
          // only "name" is required
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    80
          editors:  [
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    81
              { 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
    82
                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
    83
              { 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
    84
                company: "IBM Corporation", companyURL: "http://ibm.com/" },
237
6871b9ac5339 Fixed various link checker bugs
sspeiche
parents: 235
diff changeset
    85
			  {name: "Ashok Malhotra", url: "mailto:ashok.malhotra@oracle.com",
99
Ashok Malhotra <Ashok.Malhotra@Oracle.com>
parents: 98
diff changeset
    86
			    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
    87
          ],
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, add as many as you like. 
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    90
          // 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
    91
          // 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
    92
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    93
          //authors:  [
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    94
          //    { 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
    95
          //      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
    96
          //],
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    97
          
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    98
          // name of the WG
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
    99
          wg:           "Linked Data Platform Working Group",
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   100
          
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   101
          // URI of the public WG page
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   102
          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
   103
          
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   104
          // 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
   105
          wgPublicList: "public-ldp-comments",
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   106
          
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   107
          // 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
   108
          // !!!! IMPORTANT !!!!
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   109
          // 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
   110
          // 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
   111
          // Team Contact.
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   112
          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
   113
          doRDFa: "1.1",
386
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   114
			localBiblio:  {
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   115
				"HTTPBIS-SEMANTICS": {
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   116
					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
   117
				,   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
   118
				,   authors:  [
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   119
						"R. Fielding"
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   120
					,   "J. Reschke"
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   121
					]
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   122
				,   status:   "In Last Call"
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   123
				,   publisher:  "IETF"
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   124
				},
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   125
				"RFC2817": {
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   126
					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
   127
				,   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
   128
				,   authors:  [
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   129
						"R. Khare"
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   130
					,   "S. Lawrence"
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   131
					]
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   132
				,   status:   "Proposed Standard"
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   133
				,   publisher:  "IETF"
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   134
				}
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   135
			},
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   136
      };
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   137
    </script>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   138
    <style type="text/css">
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   139
    	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
   140
    	div.ldp-issue-open {
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   141
	    	border-color: #E05252;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   142
			background: #FBE9E9;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   143
			padding: 0.5em;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   144
			margin: 1em 0;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   145
			position: relative;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   146
			clear: both;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   147
			border-left-width: .5em;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   148
			border-left-style: solid;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   149
    	}
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
   150
    	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
   151
	    	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
   152
			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
   153
			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
   154
			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
   155
			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
   156
			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
   157
			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
   158
			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
   159
    	}
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
    	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
   161
	    	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
   162
			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
   163
			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
   164
			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
   165
			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
   166
			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
   167
			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
   168
			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
   169
    	}
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   170
    	div.ldp-issue-title {
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   171
    	    color: #E05252;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   172
    	    padding-right: 1em;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   173
            min-width: 7.5em;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   174
    	}
184
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   175
		.atrisk {
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   176
			padding:    1em;
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   177
			margin: 1em 0em 0em;
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   178
			border: 1px solid #f00;
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   179
			background: #ffc;
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   180
		}
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   181
		.atrisktext {
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   182
			/* content:    "Feature At Risk"; */
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   183
			display:    block;
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   184
			width:  150px;
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   185
			margin: -1.5em 0 0.5em 0;
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   186
			font-weight:    bold;
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   187
			border: 1px solid #f00;
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   188
			background: #fff;
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   189
			padding:    3px 1em;
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   190
		}
30f00f94855a copy at-risk markup from turtle spec
John Arwe
parents: 183
diff changeset
   191
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   192
    </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
   193
    <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
   194
    	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
   195
    	    font-weight:bold;
120
edf269bcce8a Issue-64 change ?non-member-properties into Link header with extension relation type
John Arwe
parents: 116
diff changeset
   196
			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
   197
    	}
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
   198
		 /* 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
   199
		    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
   200
			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
   201
		*/
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>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   203
  </head>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   204
<body>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   205
<section id='abstract'>
215
da72115eb40b Various updates per review of Raul
sspeiche
parents: 213
diff changeset
   206
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
   207
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
   208
data model.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   209
</section>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   210
 
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   211
<section class="informative" id="intro">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   212
<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
   213
	<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
   214
	of HTTP for accessing, updating, creating and deleting resources from
215
da72115eb40b Various updates per review of Raul
sspeiche
parents: 213
diff changeset
   215
	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
   216
	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
   217
	<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
   218
		<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
   219
		<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
   220
		<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
   221
			(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
   222
		</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
   223
		<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
   224
	</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
   225
	<p>This specification discusses standard HTTP and RDF techniques 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
   226
	should use when constructing clients and servers that 
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
	read and write <a title="Linked Data Platform Resource">Linked Data Platform Resources</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
   228
	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
   229
	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
   230
	</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
   231
	<p>This specification also provides a widely re-usable pattern to deal with large RDF resources.  
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
	Depending on the server’s capabilities, a GET request on a <a>Linked Data Platform Resource</a> can
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
	return a subset of the resource (one page), that provides access to subsequent pages 
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
   234
	(see <a href="#ldpr-Paging" 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
   235
	<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
   236
	<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
   237
	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
   238
	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
   239
	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
   240
	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
   241
	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
   242
	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
   243
	<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
   244
	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
   245
	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
   246
	implementations will support.</p>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   247
</section>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   248
	
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   249
<section id="terms">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   250
<h1>Terminology</h1>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   251
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
   252
<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
   253
</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   254
  <dl class="glossary">
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   255
	<dt>Link</dt>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   256
	<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
   257
		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
   258
		<p></p></dd>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   259
							
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   260
	<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
   261
	<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
   262
	
331
2e0bbaef0442 fixed a few minor respec errors
sspeiche
parents: 325
diff changeset
   263
	<dt><dfn>Linked Data Platform Resource</dfn> (<abbr title="Linked Data Platform Resource">LDPR</abbr>)</dt>
112
41e5e59c1e26 Tweaks to Terminology section for LDPR and LDPC
sspeiche
parents: 111
diff changeset
   264
	<dd>HTTP resource whose state is represented in RDF that conforms to the simple lifecycle
215
da72115eb40b Various updates per review of Raul
sspeiche
parents: 213
diff changeset
   265
		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
   266
		
331
2e0bbaef0442 fixed a few minor respec errors
sspeiche
parents: 325
diff changeset
   267
	<dt><dfn>Linked Data Platform Container</dfn> (<abbr title="Linked Data Platform Container">LDPC</abbr>)</dt>
112
41e5e59c1e26 Tweaks to Terminology section for LDPR and LDPC
sspeiche
parents: 111
diff changeset
   268
	<dd>An LDPR representing a collection of same-subject, same-predicate triples which is uniquely identified by a URI
86
77b0b00ab6d3 Update LDPC glossary term based on Cody's feedback
sspeiche
parents: 85
diff changeset
   269
	that responds to client requests for creation, modification, and enumeration of its members.
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
   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>Client</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>A program that establishes connections for the purpose of sending requests [[HTTP11]].<p></p></dd>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   274
	
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   275
	<dt>Server</dt>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   276
	<dd>An application
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   277
		program that accepts connections in order to service requests by
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
   278
		sending back responses. 
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
   279
		<p>Any given program may be capable of being
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   280
		both a client and a server; our use of these terms refers only to
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   281
		the role being performed by the program for a particular
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   282
		connection, rather than to the program's capabilities in general.
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   283
		Likewise, any server may act as an origin server, proxy, gateway,
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
   284
		or tunnel, switching behavior based on the nature of each request
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
   285
		[[HTTP11]]. </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
   286
120
edf269bcce8a Issue-64 change ?non-member-properties into Link header with extension relation type
John Arwe
parents: 116
diff changeset
   287
	<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
   288
	<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
   289
		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
   290
		<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
   291
		<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
   292
		<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
   293
		<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
   294
		<td style="padding:0 0 0 +2ex"> <var style="background:#CCFFFF">member-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
   295
		</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
   296
		<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
   297
		<td style="padding:0 0 0 +2ex"> <var style="background:#CCFFFF">member-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
   298
		<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
   299
		<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
   300
		</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
   301
		</table>
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
   302
		The difference between the two is simply which position member-URI occupies, which is usually
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
   303
		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
   304
		inherent in their name, and existing vocabularies contain useful examples that read naturally in
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
   305
		each direction.  <code>rdfs:member</code> and <code>dcterms:isPartOf</code> are representative examples.
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
   306
		<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
   307
		Each container exposes properties that allow clients to determine which pattern it
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
   308
		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
   309
		and (for containers that allow the creation of new members) what value is used
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
   310
		for the <var>member-URI</var> based on the client's input to 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
   311
		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
   312
	<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
   313
	
120
edf269bcce8a Issue-64 change ?non-member-properties into Link header with extension relation type
John Arwe
parents: 116
diff changeset
   314
	<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
   315
	<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
   316
	<p></p></dd>
edf269bcce8a Issue-64 change ?non-member-properties into Link header with extension relation type
John Arwe
parents: 116
diff changeset
   317
	
225
3836f2670382 Added term page resource
sspeiche
parents: 224
diff changeset
   318
	<dt><dfn>Page resource</dfn></dt>
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
   319
	<dd>A type of LDPR that is associated with another LDPR <var>R</var>, whose representation 
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
   320
	includes a subset of the triples in <var>R</var>.
225
3836f2670382 Added term page resource
sspeiche
parents: 224
diff changeset
   321
	<p></p></dd>
3836f2670382 Added term page resource
sspeiche
parents: 224
diff changeset
   322
	
120
edf269bcce8a Issue-64 change ?non-member-properties into Link header with extension relation type
John Arwe
parents: 116
diff changeset
   323
	<dt><dfn>Non-member resource</dfn></dt>
edf269bcce8a Issue-64 change ?non-member-properties into Link header with extension relation type
John Arwe
parents: 116
diff changeset
   324
	<dd>A resource associated with a LDPC by a server for the purpose of enabling clients to
edf269bcce8a Issue-64 change ?non-member-properties into Link header with extension relation type
John Arwe
parents: 116
diff changeset
   325
	retrieve a subset of the LDPC's state, namely the subset that omits the LDPC's membership triples.
edf269bcce8a Issue-64 change ?non-member-properties into Link header with extension relation type
John Arwe
parents: 116
diff changeset
   326
	In other words, the union of the non-member resource's state and the LDPC's membership triples
edf269bcce8a Issue-64 change ?non-member-properties into Link header with extension relation type
John Arwe
parents: 116
diff changeset
   327
	exactly equals the LDPC's state.
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
   328
	<p></p></dd>
175
bcc13fba2593 issue-58 action 87 warnings about inlining
John Arwe
parents: 174
diff changeset
   329
	
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   330
  </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
   331
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   332
<section id="conventions">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   333
<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
   334
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   335
	<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
   336
		format [[TURTLE]].</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   337
	<p>Commonly used namespace prefixes:</p>
93
598be81efe5f Expanded on wording for 4.3 to be more consistent
sspeiche
parents: 92
diff changeset
   338
	<pre style="word-wrap: break-word; white-space: pre-wrap;">	@prefix dcterms: &lt;http://purl.org/dc/terms/&gt;.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   339
	@prefix rdf:     &lt;http://www.w3.org/1999/02/22-rdf-syntax-ns#&gt;.
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   340
	@prefix rdfs:    &lt;http://www.w3.org/2000/01/rdf-schema#&gt;.
42
2aeef316040a ISSUE-25 made changes for composition model
sspeiche
parents: 40
diff changeset
   341
	@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
   342
	@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
   343
</section>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   344
</section>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   345
    
71
5a2794d3ab13 ISSUE-31 Added a more complete conformance section, motived by SPARQL 1.1
sspeiche
parents: 69
diff changeset
   346
<section id='conformance'>
5a2794d3ab13 ISSUE-31 Added a more complete conformance section, motived by SPARQL 1.1
sspeiche
parents: 69
diff changeset
   347
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
   348
<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
   349
<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
   350
<ul>
5a2794d3ab13 ISSUE-31 Added a more complete conformance section, motived by SPARQL 1.1
sspeiche
parents: 69
diff changeset
   351
  <li>1. Introduction: <b>informative</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
   352
  <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
   353
  <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
   354
  <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
   355
  <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
   356
  <li>6. HTTP Header Definitions: <b>normative</b></li>
b6d66196a02d Fixed biblirefs, consistency items and moved editor todo into comments
sspeiche
parents: 192
diff changeset
   357
  <li>A. Acknowledgements: <b>informative</b></li> 
234
992015a0d3cd Setting all LC status items for prep for publication
sspeiche
parents: 233
diff changeset
   358
  <li>B.1 Normative references: <b>normative</b></li>
992015a0d3cd Setting all LC status items for prep for publication
sspeiche
parents: 233
diff changeset
   359
  <li>B.2 Informative references: <b>informative</b></li>
71
5a2794d3ab13 ISSUE-31 Added a more complete conformance section, motived by SPARQL 1.1
sspeiche
parents: 69
diff changeset
   360
</ul>
5a2794d3ab13 ISSUE-31 Added a more complete conformance section, motived by SPARQL 1.1
sspeiche
parents: 69
diff changeset
   361
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   362
<div class="ldp-issue-closed">
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   363
<p>(OLD) A conforming <b>LDP server</b> is an application program that processes HTTP requests 
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   364
and generates HTTP responses that conform to the rules defined in
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   365
<a href="#ldpr" class="sectionRef"></a> and <a href="#ldpc" class="sectionRef"></a>.
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   366
</p>
71
5a2794d3ab13 ISSUE-31 Added a more complete conformance section, motived by SPARQL 1.1
sspeiche
parents: 69
diff changeset
   367
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   368
<p>(OLD) A conforming <b>LDP client</b> is an application program that generates HTTP 
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   369
requests and processes HTTP responses that conform to the rules defined in <a href="#ldpr" class="sectionRef"></a>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   370
and <a href="#ldpc" class="sectionRef"></a>.
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   371
</p>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   372
</div>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   373
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   374
<div class="ldp-issue-open">
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   375
<p>(NEW) A conforming <b><dfn>LDP client</dfn></b> is a conforming HTTP client [[!HTTP11]] that follows the rules defined by LDP in
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   376
<a href="#ldpclient" class="sectionRef"></a>.
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   377
</p>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   378
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   379
<p>(NEW) A conforming <b><dfn>LDP server</dfn></b> is a conforming HTTP server [[!HTTP11]] that follows the rules defined by LDP in 
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   380
<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
   381
<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
   382
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
   383
</p>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   384
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   385
<p>(NEW) LDP defines several classes of LDP servers, and places different conformance requirements on each of them.
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   386
NOTE: "Basic" and "advanced" used here for drafting purposes; they correspond to 'vanilla' and 'chocolate', respectively.
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   387
Final names TBD.
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   388
</p>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   389
<ul>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   390
  <li><p>A conforming <b><dfn>basic LDP server</dfn></b> is a conforming LDP server that follows the rules defined by LDP
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   391
  for basic LDP servers, as shown below.  Its content model is generally open and the server typically stores triples on behalf of clients
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   392
  with minimal (if any) restrictions.
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   393
  </p></li>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   394
  <li><p>A conforming <b><dfn>advanced LDP server</dfn></b> is a conforming LDP server that follows the rules defined by LDP
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   395
  for advanced LDP servers, as shown below.  Its content model can be open or closed, and the server may impose non-trivial
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   396
  restrictions on triples stored on behalf of conforming HTTP clients.
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   397
  </p></li>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   398
</ul>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   399
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   400
<section>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   401
<h5>Example conformance rules</h5>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   402
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   403
<p>The following informative examples show how LDP assigns conformance criteria to each class of LDP servers using a single rule.</p>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   404
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   405
<section>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   406
<h6>Example: the same criteria apply to both basic and advanced LDP servers</h6>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   407
<div class="example">
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   408
	<div class="rule">LDP servers SHOULD ...  </div>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   409
</div>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   410
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   411
<p>The preceding rule is equivalent to the following pair of rules:</p>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   412
<div class="example">
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   413
	<div class="rule">Basic LDP servers SHOULD ...  </div>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   414
	<div class="rule">Advanced LDP servers SHOULD ...  </div>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   415
</div>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   416
</section>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   417
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   418
<section>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   419
<h6>Example: different criteria apply to basic and advanced LDP servers</h6>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   420
<p>Trying out different ways of covering each class while minimizing text duplication here.  Final format TBD.</p>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   421
<div class="example">
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   422
	<div class="rule">(proposal 1) LDP servers MUST (basic)/SHOULD (advanced) ... </div>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   423
	<div class="rule">(proposal 2) Basic LDP servers MUST, and advanced LDP servers SHOULD, ... </div>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   424
	<div class="rule">(proposal 3) Basic LDP servers MUST ... .  Advanced LDP servers SHOULD do so. </div>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   425
</div>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   426
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   427
<p>Each of the preceding rules is equivalent to the following pair of rules:</p>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   428
<div class="example">
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   429
	<div class="rule">4.8.2 Basic LDP servers MUST ...
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   430
	</div>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   431
	<div class="rule">4.8.2 Advanced LDP servers SHOULD  ...
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   432
	</div>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   433
</div>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   434
</section>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   435
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   436
</div>
71
5a2794d3ab13 ISSUE-31 Added a more complete conformance section, motived by SPARQL 1.1
sspeiche
parents: 69
diff changeset
   437
5a2794d3ab13 ISSUE-31 Added a more complete conformance section, motived by SPARQL 1.1
sspeiche
parents: 69
diff changeset
   438
</section>
5a2794d3ab13 ISSUE-31 Added a more complete conformance section, motived by SPARQL 1.1
sspeiche
parents: 69
diff changeset
   439
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   440
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   441
<section id="ldpr">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   442
<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
   443
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   444
<section class="informative" id="ldpr-informative">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   445
<h2>Informative</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
   446
	<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
   447
		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
   448
		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
   449
		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
   450
		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
   451
		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
   452
	<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
   453
		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
   454
		others address additional needs.</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   455
	<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
   456
		questions such as:</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   457
	<ul>
231
38d1a7faf1c4 Various editorial comments from PA
sspeiche
parents: 230
diff changeset
   458
		<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
   459
		<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
   460
		<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
   461
				such as type changes?</li>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   462
		<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
   463
				creation?</li>
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   464
		<li>How	do I GET the entries of a large resources broken up into pages?</li>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   465
	</ul>
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
   466
	<p>Additional informative guidance is available on the <a
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
   467
			href="http://www.w3.org/2012/ldp/wiki/Deployment_Guide"
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
   468
			class="external "
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
   469
			title="Deployment Guide"
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
   470
			rel="nofollow">working group's wiki</a> that addresses deployment
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
   471
		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
   472
	<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
   473
		<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
   474
		<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
   475
	</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
   476
	<p>The following sections define the conformance rules for LDP servers when serving LDPRs.
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
   477
		This document also explains how to paginate an LDPR's representation if it gets too big.
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
   478
		Companion documents describe additional guidelines for use when interacting with LDPRs. 
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
   479
	</p>
222
1db581afd1ec Added informative section 4.1 , therefore shifting all sections by one 4.1->4.2, etc
sspeiche
parents: 221
diff changeset
   480
1db581afd1ec Added informative section 4.1 , therefore shifting all sections by one 4.1->4.2, etc
sspeiche
parents: 221
diff changeset
   481
</section>
1db581afd1ec Added informative section 4.1 , therefore shifting all sections by one 4.1->4.2, etc
sspeiche
parents: 221
diff changeset
   482
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   483
<section id="ldpr-general">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   484
<h2>General</h2>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   485
		
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   486
	<div id="ldpr-4_2_1" class="rule">4.2.1 <a title="LDP server">LDP servers</a> MUST at least be HTTP/1.1 conformant servers [[!HTTP11]].</div>
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   487
	<div id="ldpr-4_2_2" class="rule">4.2.2 <a title="LDP server">LDP servers</a> MUST provide an RDF representation for LDPRs. 
192
221002315344 Removed 4.1.5 and various formatting issues
sspeiche
parents: 191
diff changeset
   488
	The HTTP <code>Request-URI</code> of the LDPR is typically the subject of most triples in the response.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   489
	</div>
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   490
	<div id="ldpr-4_2_3" class="rule">4.2.3 <a title="LDP server">LDP servers</a> MAY host a mixture of LDPRs and non-LDPRs. For example, it
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   491
		is common for <a title="LDP server">LDP servers</a> to need to host binary or text resources
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   492
		that do not have useful RDF representations.
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   493
	</div>
69
0f9825dea52b Updating some simple formatting, reorganizing open issues and todos
sspeiche
parents: 68
diff changeset
   494
222
1db581afd1ec Added informative section 4.1 , therefore shifting all sections by one 4.1->4.2, etc
sspeiche
parents: 221
diff changeset
   495
	<div id="ldpr-4_2_4" class="rule">4.2.4 LDPRs 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
   496
		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
   497
		covered by other conformance rules.
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
   498
	</div>
222
1db581afd1ec Added informative section 4.1 , therefore shifting all sections by one 4.1->4.2, etc
sspeiche
parents: 221
diff changeset
   499
	<div id="ldpr-4_2_4_1" class="rule">4.2.4.1 LDPR 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
   500
		[[!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
   501
		possible.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   502
	</div>
222
1db581afd1ec Added informative section 4.1 , therefore shifting all sections by one 4.1->4.2, etc
sspeiche
parents: 221
diff changeset
   503
	<div id="ldpr-4_2_5" class="rule">4.2.5 LDPR 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
   504
		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
   505
		client applications that don’t support inferencing.
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   506
	</div>
386
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   507
	<!-- Action-108 removed this 2013-10-22
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   508
	<div id="ldpr-4_2_6" class="rule">4.2.6 <a title="LDP server">LDP servers</a> MAY support standard representations beyond those
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
   509
		necessary to conform to this specification. These
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   510
		could be other RDF formats, like N3 or NTriples, but non-RDF formats
182
08403f15f875 ISSUE-44 move section 4.1.7 (relationships are simple RDF links) to guidance
sspeiche
parents: 181
diff changeset
   511
		like HTML [[!HTML401]] and JSON [[!RFC4627]] would likely be common.
222
1db581afd1ec Added informative section 4.1 , therefore shifting all sections by one 4.1->4.2, etc
sspeiche
parents: 221
diff changeset
   512
	</div>		
386
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   513
	-->
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   514
	<!-- Action-108 removed this 2013-10-22
222
1db581afd1ec Added informative section 4.1 , therefore shifting all sections by one 4.1->4.2, etc
sspeiche
parents: 221
diff changeset
   515
	<div id="ldpr-4_2_7" class="rule">4.2.7 LDPRs MAY be created, updated and deleted using methods not defined in
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   516
		this document, for example through application-specific means, SPARQL
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
   517
		UPDATE, etc. [[!SPARQL-UPDATE]], as long as those methods do not conflict with this specification's 
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
   518
		normative requirements.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   519
	</div>
386
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   520
	-->
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   521
	<div id="ldpr-4_2_8" class="rule">4.2.8 <a title="LDP server">LDP server</a> responses MUST use entity tags (either weak or strong 
60
97516e223fb8 ISSUE-10 - 4.1.12 to be MUST use entity tags (either weak or strong ones)
sspeiche
parents: 58
diff changeset
   522
ones) as response <code>ETag</code> header values.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   523
	</div>
393
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   524
	<!-- Action-110 removed this 2013-10-25
222
1db581afd1ec Added informative section 4.1 , therefore shifting all sections by one 4.1->4.2, etc
sspeiche
parents: 221
diff changeset
   525
	<div id="ldpr-4_2_9" class="rule">4.2.9 LDPR
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
   526
		servers SHOULD enable simple creation and modification of LDPRs.
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
   527
		It is
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   528
		common for <a title="LDP server">LDP servers</a> to put restrictions on representations – for
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
   529
		example, the range of <code>rdf:type</code> predicates, datatypes of
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
   530
		the objects of predicates, and the number of occurrences of predicates in an LDPR, but
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
   531
		servers SHOULD minimize those restrictions.  Enforcement of
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
   532
		more complex constraints will greatly restrict the set of clients
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
   533
		that can modify resources. For some server applications, excessive
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
   534
		constraints on modification of resources may be required.
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
   535
	</div>
393
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   536
	-->
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   537
	<div id="ldpr-4_2_10" class="rule">4.2.10 <a title="LDP server">LDP servers</a>
149
3f5f825f1155 issue-57 How can a client determine that it is in communication with an LDP server?
John Arwe
parents: 134
diff changeset
   538
		MUST advertise their LDP support by exposing a HTTP <code>Link</code> header
3f5f825f1155 issue-57 How can a client determine that it is in communication with an LDP server?
John Arwe
parents: 134
diff changeset
   539
		with a target URI of <code>http://www.w3.org/ns/ldp/Resource</code>, and
3f5f825f1155 issue-57 How can a client determine that it is in communication with an LDP server?
John Arwe
parents: 134
diff changeset
   540
		a link relation type of <code>type</code> (that is, <code>rel="type"</code>)
3f5f825f1155 issue-57 How can a client determine that it is in communication with an LDP server?
John Arwe
parents: 134
diff changeset
   541
		in all responses to requests made 
192
221002315344 Removed 4.1.5 and various formatting issues
sspeiche
parents: 191
diff changeset
   542
		to the resource's HTTP <code>Request-URI</code>. This is notionally equivalent to the
221002315344 Removed 4.1.5 and various formatting issues
sspeiche
parents: 191
diff changeset
   543
		presence of a <var>(subject-URI, <code>rdf:type</code>, <code>ldp:Resource</code>)</var> triple in the resource.
200
aebd1e464817 Small editorial cleanup changes
John Arwe
parents: 199
diff changeset
   544
		The HTTP <code>Link</code> header is the method by which servers assert their support for the LDP specification in a way
149
3f5f825f1155 issue-57 How can a client determine that it is in communication with an LDP server?
John Arwe
parents: 134
diff changeset
   545
		that clients can introspect dynamically at run-time.  Conservative clients should note that 
222
1db581afd1ec Added informative section 4.1 , therefore shifting all sections by one 4.1->4.2, etc
sspeiche
parents: 221
diff changeset
   546
		<a href="#ldpr-4_2_3">a 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
   547
		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
   548
		resources on the same server are also LDPRs.  Each HTTP <code>Request-URI</code> needs to be 
149
3f5f825f1155 issue-57 How can a client determine that it is in communication with an LDP server?
John Arwe
parents: 134
diff changeset
   549
		individually introspected by a conservative client, in the absence of outside information.
3f5f825f1155 issue-57 How can a client determine that it is in communication with an LDP server?
John Arwe
parents: 134
diff changeset
   550
	</div>
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   551
	<div id="ldpr-4_2_11" class="rule">4.2.11 <a title="LDP server">LDP servers</a>
152
938e7d21cc10 issue-78 inferencing levels add 4.1.13
John Arwe
parents: 151
diff changeset
   552
		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
   553
		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
   554
		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
   555
		must be explicitly represented. 
938e7d21cc10 issue-78 inferencing levels add 4.1.13
John Arwe
parents: 151
diff changeset
   556
	</div>
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   557
	<div id="ldpr-4_2_12" class="rule">4.2.12 <a title="LDP server">LDP servers</a> MUST assign the default 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
   558
		<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
   559
		in the creation of a new resource.
39ca65760446 Removed 5.4.8.1 and added 4.2.12 to better handle base/rel URI
sspeiche
parents: 223
diff changeset
   560
	</div>
393
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   561
	<div id="ldpr-4_2_13" class="rule">4.2.13 <a title="LDP server">LDP servers</a> MUST 
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   562
		publish any constraints on <a title="LDP client">LDP clients’</a> ability to 
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   563
		create or update LDPRs, by adding a Link header with <code>rel='describedby'</code> 
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   564
		[[!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
   565
		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
   566
		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
   567
		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
   568
		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
   569
		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
   570
		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
   571
		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
   572
		although machine-readable ones facilitate better client interactions.
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   573
	</div>
152
938e7d21cc10 issue-78 inferencing levels add 4.1.13
John Arwe
parents: 151
diff changeset
   574
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   575
</section>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   576
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   577
<section id="ldpr-HTTP_GET">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   578
<h2>HTTP GET</h2>
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   579
	<div id="ldpr-4_3_1" class="rule">4.3.1 <a title="LDP server">LDP servers</a> MUST support the HTTP <code>GET</code> Method for LDPRs.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   580
	</div>
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   581
	<div id="ldpr-4_3_2" class="rule">4.3.2 <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
   582
		<a href="#ldpr-HTTP_OPTIONS" class="sectionRef"></a>.
ec118c66c122 Moved 4.7.2 (from HEAD) to 4.3.2 (GET), shifted rest of GET section by one
sspeiche
parents: 227
diff changeset
   583
	</div>
393
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   584
	<div id="ldpr-4_3_3" class="rule">4.3.3 <a title="LDP server">LDP servers</a> MUST provide a <code>text/turtle</code>
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
   585
		representation of the requested LDPR [[!TURTLE]].
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   586
	</div>
386
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   587
	<!-- Action-108 removed this 2013-10-22
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   588
	<div id="ldpr-4_3_4" class="rule">4.3.4 <a title="LDP server">LDP servers</a> MAY 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
   589
		representations of the requested LDPR beyond those
232
c38de2977a87 Editorial changes from feedback from Sergio
sspeiche
parents: 231
diff changeset
   590
		necessary to conform to this specification, using standard HTTP content negotiation ([[!HTTP11]] Section 12 - Content Negotiation). 
220
ff8b1635f35a ISSUE-53 4.2.3 changed MUST to SHOULD
sspeiche
parents: 216
diff changeset
   591
		If the client does not indicate a preference, <code>text/turtle</code> SHOULD be returned.
69
0f9825dea52b Updating some simple formatting, reorganizing open issues and todos
sspeiche
parents: 68
diff changeset
   592
	</div>
386
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   593
	-->
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   594
	<div id="ldpr-4_3_5" class="rule">4.3.5 In the absence of special knowledge of the application or domain, 
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   595
		<a title="LDP client">LDP clients</a> MUST assume that any LDPR can have multiple values for <code>rdf:type</code>.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   596
	</div>
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   597
	<div id="ldpr-4_3_6" class="rule">4.3.6 In the absence of special knowledge of the application or domain, 
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   598
		<a title="LDP client">LDP clients</a> MUST assume that the <code>rdf:type</code> values
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
   599
		of a given LDPR can change over time.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   600
	</div>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   601
</section>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   602
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   603
<section id="ldpr-HTTP_POST">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   604
<h2>HTTP POST</h2>
192
221002315344 Removed 4.1.5 and various formatting issues
sspeiche
parents: 191
diff changeset
   605
	<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
   606
		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
   607
		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
   608
	</p>
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   609
	<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
   610
		<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
   611
		sections for more details.  Any server-imposed constraints on LDPR creation or update  
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   612
		<a href="#ldpr-4_2_13">must be advertised</a> to clients.
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   613
	</p>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   614
</section>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   615
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   616
<section id="ldpr-HTTP_PUT">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   617
<h2>HTTP PUT</h2>
192
221002315344 Removed 4.1.5 and various formatting issues
sspeiche
parents: 191
diff changeset
   618
	<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
   619
		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
   620
		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
   621
		Any server-imposed constraints on LDPR creation or update  
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   622
		<a href="#ldpr-4_2_13">must be advertised</a> to clients.
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   623
	</p>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   624
		
389
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   625
	<div id="ldpr-4_5_1" class="rule">4.5.1 If a HTTP <code>PUT</code> is accepted on an existing resource, 
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   626
		<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
   627
		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
   628
		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
   629
		<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
   630
		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
   631
		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
   632
		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
   633
		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
   634
		<code>PATCH</code>, not HTTP <code>PUT</code>.
61
2f8a2d58e65c ISSUE-11 - 4.4.1 Relaxed the MUST ignore dc:modified/creator to MAY
sspeiche
parents: 60
diff changeset
   635
	</div>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   636
		
389
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   637
	<div id="ldpr-4_5_1_1" class="rule">4.5.1.1 
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   638
		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
   639
		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
   640
		<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
   641
		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
   642
		409 Conflict). 
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   643
		<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
   644
		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
   645
		persisted.
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   646
		The format of the 4xx response body is not constrained by LDP.
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   647
	</div>
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   648
	<blockquote>
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   649
		Informative note: Clients might provide triples equivalent to those already in the resource's state,
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   650
		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
   651
		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
   652
	</blockquote>
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   653
		
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   654
	<div id="ldpr-4_5_2" class="rule">4.5.2 <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
   655
		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
   656
		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
   657
		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
   658
		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
   659
		(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
   660
		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
   661
		(Precondition Required) when the absence of a precondition is the only reason for rejecting the request [[!RFC6585]].
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   662
	</div>
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   663
	<div id="ldpr-4_5_3" class="rule">4.5.3 <a title="LDP client">LDP clients</a> SHOULD always assume that the set of predicates for 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
   664
		resource of a particular type at an arbitrary server is open, in the
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   665
		sense that different resources of the same type may not all have the
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
   666
		same set of predicates in their triples, and the set of predicates that
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
   667
		are used in the state of any one resource is not limited to any pre-defined
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   668
		set.
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   669
	</div>
389
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   670
	<div id="ldpr-4_5_4" class="rule">4.5.4 
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   671
		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
   672
		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
   673
		<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
   674
		[[HTTP11]].  
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   675
		<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
   676
		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
   677
		persisted.
f1dbb042137b Resolve ACTION-109 Update spec to reflect 10/21 resolution for ignoring triples on PUT
John Arwe
parents: 388
diff changeset
   678
		The format of the 4xx response body is not constrained by LDP.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   679
	</div>
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   680
	<div id="ldpr-4_5_5" class="rule">4.5.5 An <a title="LDP client">LDP client</a> MUST preserve all triples retrieved using HTTP <code>GET</code> that
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   681
		it doesn’t change whether it understands the predicates or not, when
192
221002315344 Removed 4.1.5 and various formatting issues
sspeiche
parents: 191
diff changeset
   682
		its intent is to perform an update using HTTP <code>PUT</code>.  The use of HTTP
221002315344 Removed 4.1.5 and various formatting issues
sspeiche
parents: 191
diff changeset
   683
		<code>PATCH</code> instead of HTTP <code>PUT</code> for update avoids this burden for clients
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   684
		[[RFC5789]].
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   685
	</div>
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   686
	<div id="ldpr-4_5_6" class="rule">4.5.6 <a title="LDP server">LDP servers</a> MAY choose to allow the creation of new resources using HTTP <code>PUT</code>.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   687
	</div>
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   688
	<div id="ldpr-4_5_7" class="rule">4.5.7 <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
   689
		requiring detailed knowledge of server-specific constraints.  
222
1db581afd1ec Added informative section 4.1 , therefore shifting all sections by one 4.1->4.2, etc
sspeiche
parents: 221
diff changeset
   690
		This is a consequence of the requirement to <a href="#ldpr-4_2_9">enable simple creation and modification</a> of LPDRs.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   691
	</div>		
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   692
</section>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   693
		
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   694
<section id="ldpr-HTTP_DELETE">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   695
<h2>HTTP DELETE</h2>
192
221002315344 Removed 4.1.5 and various formatting issues
sspeiche
parents: 191
diff changeset
   696
	<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
   697
		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
   698
		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
   699
	<p>Additional requirements on HTTP <code>DELETE</code> of LDPRs within containers can be found in
222
1db581afd1ec Added informative section 4.1 , therefore shifting all sections by one 4.1->4.2, etc
sspeiche
parents: 221
diff changeset
   700
	<a href="#ldpc-HTTP_DELETE" class="sectionRef"></a>.</p>
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
   701
		
386
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   702
	<!-- Action-108 removed this 2013-10-22
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   703
	<div id="ldpr-4_6_1" class="rule">4.6.1 <a title="LDP server">LDP servers</a> MUST remove the resource identified by the <code>Request-URI</code>.
192
221002315344 Removed 4.1.5 and various formatting issues
sspeiche
parents: 191
diff changeset
   704
		After a successful HTTP <code>DELETE</code>, a subsequent HTTP <code>GET</code> on the same
221002315344 Removed 4.1.5 and various formatting issues
sspeiche
parents: 191
diff changeset
   705
		<code>Request-URI</code> MUST result in a 404 (Not found) or 410 (Gone) status
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
   706
		code. Clients SHOULD note that servers MAY reuse a URI under some circumstances.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   707
	</div>
386
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   708
	-->
19
52d63fdf6ae8 ISSUE-24: Should DELETED resources remain deleted?
sspeiche
parents: 18
diff changeset
   709
	
386
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   710
	<!-- Action-108 removed this 2013-10-22
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   711
	<div id="ldpr-4_6_2" class="rule">4.6.2 <a title="LDP server">LDP servers</a> MAY alter the state of other resources as a result of an
192
221002315344 Removed 4.1.5 and various formatting issues
sspeiche
parents: 191
diff changeset
   712
		HTTP <code>DELETE</code> request. For example, it is acceptable for the server to
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   713
		remove triples from other resources whose subject or object is the
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   714
		deleted resource. It is also acceptable and common for <a title="LDP server">LDP servers</a> to
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   715
		not do this – behavior is server application specific.
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   716
	</div>
386
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   717
	-->
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   718
</section>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   719
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   720
<section id="ldpr-HTTP_HEAD">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   721
<h2>HTTP HEAD</h2>
114
1629ff899e0e Issue-65 remove firstPage
John Arwe
parents: 113
diff changeset
   722
	<p>Note that certain LDP mechanisms, such as paging, rely on HTTP headers, and HTTP generally requires that
192
221002315344 Removed 4.1.5 and various formatting issues
sspeiche
parents: 191
diff changeset
   723
		<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
   724
		Thus, implementers should also carefully read sections <a href="#ldpr-HTTP_GET"></a> 
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   725
		and <a href="#ldpr-HTTP_OPTIONS"></a>.</p>
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   726
	<div id="ldpr-4_7_1" class="rule">4.7.1 <a title="LDP server">LDP servers</a> MUST support the HTTP <code>HEAD</code> method.</div>
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_PATCH">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   730
<h2>HTTP PATCH</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>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
   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  
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   735
		<a href="#ldpr-4_2_13">must be advertised</a> to clients.
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>	
386
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   737
	<!-- Action-108 removed this 2013-10-22
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   738
	<div id="ldpr-4_8_1" class="rule">4.8.1 <a title="LDP server">LDP servers</a> MAY implement HTTP <code>PATCH</code> to allow modifications,
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
   739
		especially partial replacement, of their resources [[!RFC5789]]. No
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   740
		minimal set of patch document formats is mandated by this document.
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   741
	</div>
386
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
   742
	-->
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   743
	<div id="ldpr-4_8_3" class="rule">4.8.3 <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
   744
		<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.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   745
	</div>
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   746
	<div id="ldpr-4_8_4" class="rule">4.8.4 <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
   747
		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
   748
		requests, listing patch document media type(s) supported by the server.
8af0b25f2748 issue-32 MUST support OPTIONS
John Arwe
parents: 152
diff changeset
   749
	</div>
186
a3471f4667d8 Removed closed issues that required no new spec changes: 50, 56, 16, 19, 17
sspeiche
parents: 185
diff changeset
   750
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   751
</section>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   752
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   753
<section id="ldpr-HTTP_OPTIONS">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   754
<h2>HTTP OPTIONS</h2>
158
8af0b25f2748 issue-32 MUST support OPTIONS
John Arwe
parents: 152
diff changeset
   755
	<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
   756
		beyond those in [[!HTTP11]].  Other sections of this specification, for example 
167
ae4592939639 issue-80 Add Accept-Post
John Arwe
parents: 158
diff changeset
   757
		<a href="#ldpr-HTTP_PATCH">PATCH</a>,
ae4592939639 issue-80 Add Accept-Post
John Arwe
parents: 158
diff changeset
   758
		<a href="#header-accept-post">Accept-Post</a>
ae4592939639 issue-80 Add Accept-Post
John Arwe
parents: 158
diff changeset
   759
		and <a href="#ldpr-paging-HTTP_OPTIONS">Paging</a>,
158
8af0b25f2748 issue-32 MUST support OPTIONS
John Arwe
parents: 152
diff changeset
   760
		add other requirements on <code>OPTIONS</code> responses.
8af0b25f2748 issue-32 MUST support OPTIONS
John Arwe
parents: 152
diff changeset
   761
		</p>
8af0b25f2748 issue-32 MUST support OPTIONS
John Arwe
parents: 152
diff changeset
   762
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   763
	<div id="ldpr-4_9_1" class="rule">4.9.1 <a title="LDP server">LDP servers</a> MUST support the HTTP <code>OPTIONS</code> method.</div>		
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   764
	<div id="ldpr-4_9_2" class="rule">4.9.2 <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
   765
		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
   766
		Method tokens in the HTTP response header <code>Allow</code>.
158
8af0b25f2748 issue-32 MUST support OPTIONS
John Arwe
parents: 152
diff changeset
   767
	</div>
8af0b25f2748 issue-32 MUST support OPTIONS
John Arwe
parents: 152
diff changeset
   768
		
8af0b25f2748 issue-32 MUST support OPTIONS
John Arwe
parents: 152
diff changeset
   769
</section>
8af0b25f2748 issue-32 MUST support OPTIONS
John Arwe
parents: 152
diff changeset
   770
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   771
<section id="ldpr-Paging">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   772
<h2>Paging</h2>
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   773
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   774
<section class="informative" id="ldpr-PagingIntro">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   775
<h3>Introduction</h3>
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   776
	<p>It sometimes happens that a
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   777
		resource is too large to reasonably transmit its representation in a
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   778
		single HTTP response. This will be especially true if the resource
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   779
		representation includes many triples both from its own representation and
334
8e9ad2d0e512 Removed at-risk inlining feature from spec, ACTION-98
sspeiche
parents: 333
diff changeset
   780
		from the representations of any of the member resources. A client could anticipate that a resource will be too large -
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   781
		for example, a client tool that accesses defects may assume that an
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   782
		individual defect will usually be of sufficiently constrained size
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   783
		that it makes sense to request all of it at once, but that the
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   784
		container of all the defects ever created will typically be too big.
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   785
		Alternatively, a server could recognize that a resource that has been
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   786
		requested is too big to return in a single message.</p>
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   787
	<p>
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   788
		To address this problem, LDPRs should support a technique called Paging.  Paging can be achieved with a
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   789
		simple RDF pattern. For each resource, <code>&lt;resourceURL&gt;</code>, we define a new
198
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   790
		'first page' resource.  In this example, its URL will be <code>&lt;resourceURL&gt;?firstPage</code>,
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   791
		but servers are free to construct the URL as they see fit.
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   792
		The triples in the representation of the each page
198
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   793
		are typically a subset of the triples in the resource
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   794
		- same subject, predicate and object.
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   795
	</p>
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   796
	<p><a title="LDP server">LDP servers</a> may respond to requests for a
384
adfc713130ec add status code 209, change existing 303 usage to use it
John Arwe
parents: 374
diff changeset
   797
		resource by returning the first page resource –
adfc713130ec add status code 209, change existing 303 usage to use it
John Arwe
parents: 374
diff changeset
   798
		using a <a href="#status-code-related-content"><code>209 Related Content</code></a> response
adfc713130ec add status code 209, change existing 303 usage to use it
John Arwe
parents: 374
diff changeset
   799
		with a <code>Location</code> header containing the URL for the page
200
aebd1e464817 Small editorial cleanup changes
John Arwe
parents: 199
diff changeset
   800
		resource.  Alternatively, clients may introspect the resource for a paged representation 
aebd1e464817 Small editorial cleanup changes
John Arwe
parents: 199
diff changeset
   801
		and use it preferentially when available.</p>
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   802
	<p>
198
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   803
		Looking at an example resource representing Example Co.'s customer
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   804
		relationship data, we’ll split the response across two pages.  
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   805
		To find the URL of the first page, the client makes a <code>OPTIONS</code> request
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   806
		to the resource's URL, and in the response looks for a HTTP <code>Link</code>
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   807
		header with <code>rel="first"</code>; the target URI in the header is the URL
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   808
		of the first page resource.
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   809
		The client then 
215
da72115eb40b Various updates per review of Raul
sspeiche
parents: 213
diff changeset
   810
		requests the first page as <code>http://example.org/customer-relations?firstPage</code>:
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   811
	</p>
198
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   812
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   813
<pre class="example"># The following is the representation of
198
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   814
#    http://example.org/customer-relations?firstPage
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   815
@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
   816
@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
   817
@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
   818
@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
   819
@prefix o: &lt;http://example.org/ontology/&gt;.
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   820
198
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   821
&lt;http://example.org/customer-relations&gt;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   822
   a o:CustomerRelations;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   823
   dcterms:title "The customer information for Example Co.";
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   824
   o:client &lt;client#JohnZSmith&gt;, &lt;client#BettyASmith&gt;, &lt;client#JoanRSmith&gt;. 
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   825
198
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   826
&lt;http://example.org/customer-relations?firstPage&gt;
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   827
   a ldp:Page;
198
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   828
   ldp:pageOf &lt;http://example.org/customer-relations&gt;;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   829
   ldp:nextPage &lt;http://example.org/customer-relations?p=2&gt;.
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   830
198
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   831
&lt;client#JohnZSmith&gt;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   832
   a foaf:Person;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   833
   o:status o:ActiveCustomer;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   834
   foaf:name "John Z. Smith".
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   835
&lt;client#BettyASmith&gt;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   836
   a foaf:Person;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   837
   o:status o:PreviousCustomer;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   838
   foaf:name "Betty A. Smith".
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   839
 &lt;client#BettyASmith&gt;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   840
   a foaf:Person;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   841
   o:status o:PotentialCustomer;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   842
   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
   843
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   844
	<p>
232
c38de2977a87 Editorial changes from feedback from Sergio
sspeiche
parents: 231
diff changeset
   845
		The server determines the size of the pages using application specific methods not defined
c38de2977a87 Editorial changes from feedback from Sergio
sspeiche
parents: 231
diff changeset
   846
		within this specificiation. Note also, the actual name for the query parameter (such as ?p=2) is also
c38de2977a87 Editorial changes from feedback from Sergio
sspeiche
parents: 231
diff changeset
   847
		defined by the server and not this specification.
c38de2977a87 Editorial changes from feedback from Sergio
sspeiche
parents: 231
diff changeset
   848
	</p>
c38de2977a87 Editorial changes from feedback from Sergio
sspeiche
parents: 231
diff changeset
   849
	<p>
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   850
		The following example is the result of retrieving the representation
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   851
		for the next page:
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   852
	</p>
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   853
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   854
<pre class="example"># The following is the representation of
198
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   855
#  http://example.org/customer-relations?p=2
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   856
@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
   857
@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
   858
@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
   859
@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
   860
@prefix o: &lt;http://example.org/ontology/&gt;.
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   861
198
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   862
&lt;http://example.org/customer-relations&gt;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   863
   o:client &lt;client#GlenWSmith&gt;, &lt;client#AlfredESmith&gt;. 
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   864
 
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   865
&lt;http://example.org/customer-relations?p=2&gt;
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   866
   a ldp:Page;
198
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   867
   ldp:pageOf &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
   868
   ldp:nextPage rdf:nil.
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   869
198
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   870
&lt;client#GlenWSmith&gt;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   871
   a foaf:Person;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   872
   o:status o:ActiveCustomer, o:GoldCustomer;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   873
   foaf:name "Glen W. Smith".
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   874
198
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   875
&lt;client#AlfredESmith&gt;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   876
   a foaf:Person;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   877
   o:status o:ActiveCustomer, o:BronzeCustomer;
8afbf5c571e1 Updated LDPR paging section with new non-container example
sspeiche
parents: 194
diff changeset
   878
   foaf:name "Alfred E. Smith".</pre>
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   879
	<p>
215
da72115eb40b Various updates per review of Raul
sspeiche
parents: 213
diff changeset
   880
		In this example, there are only two customers provided in the
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   881
		final page.  To indicate this is the last page, a value of <code>rdf:nil</code> is used for the <code>ldp:nextPage</code>
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   882
		predicate of the page resource.
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   883
	</p>
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   884
</section>
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   885
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   886
<section id="ldpr-PagingGET">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   887
<h3>HTTP GET</h3>
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   888
<p>In addition to the requirements set forth in <a href="#ldpr-HTTP_GET" class="sectionRef"></a> on HTTP <code>GET</code>, <a title="LDP server">LDP servers</a> that support paging must also follow the requirements in this section</p>
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   889
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   890
	<div id="ldpr-pagingGET-1" class="rule">4.10.2.1 <a title="LDP server">LDP servers</a> SHOULD allow clients to retrieve large LDPRs in
192
221002315344 Removed 4.1.5 and various formatting issues
sspeiche
parents: 191
diff changeset
   891
		pages. In responses to <code>GET</code> requests with an LDPR as the <code>Request-URI</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
   892
		<a title="LDP server">LDP servers</a> that support paging MUST provide an HTTP <code>Link</code>
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   893
		header whose target URI is the first page resource, and whose link relation type is <code>first</code> [[!RFC5988]]. 
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   894
		This is the mechanism by which clients discover the URL of the first page.  If no such <code>Link</code>
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   895
		header is present, then conservative clients will assume that the LDPR does not support paging.
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   896
		For example, if there is a LDPR with URL <code>&lt;resourceURL&gt;</code> that supports paging and whose
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   897
		first page URL is <code>&lt;resourceURL&gt;?theFirstPage</code>, then the corresponding link header
393
8197019f4604 ACTION-110 Update spec to reflect 10/21 resolution for normative changes to align vanilla/chocolate
John Arwe
parents: 389
diff changeset
   898
		would be <code>Link: &lt;?theFirstPage&gt;;rel='first'</code>.
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   899
		The representation for any page, including the first, will include
201
45d0825d4dfc fix broken sectionRef to paging
John Arwe
parents: 200
diff changeset
   900
		the URL for the next page. See <a href="#ldpr-Paging" class="sectionRef"></a> for additional details.
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   901
	</div>
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   902
	<div id="ldpr-pagingGET-2" class="rule">4.10.2.2 <a title="LDP server">LDP servers</a> MAY split the response representation of any LDPR. 
370
6af379583e5e remove client/server-initiated paging (just the terms), fix "not found" respec refs in conformance section
John Arwe
parents: 335
diff changeset
   903
		See <a href="#ldpr-Paging" class="sectionRef"></a> for
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   904
		additional details.
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   905
	</div>
387
85cebac44f86 ACTION-103 Change SHOULD to MUST in 4.10.2.3 "LDPR servers that initiate paging SHOULD respond to request
John Arwe
parents: 386
diff changeset
   906
	<div id="ldpr-pagingGET-3" class="rule">4.10.2.3 <a title="LDP server">LDP servers</a> 
85cebac44f86 ACTION-103 Change SHOULD to MUST in 4.10.2.3 "LDPR servers that initiate paging SHOULD respond to request
John Arwe
parents: 386
diff changeset
   907
		that initiate paging MUST respond to requests for a LDPR
384
adfc713130ec add status code 209, change existing 303 usage to use it
John Arwe
parents: 374
diff changeset
   908
		by returning the first page resource using a <code>209 Related Content</code> response 
adfc713130ec add status code 209, change existing 303 usage to use it
John Arwe
parents: 374
diff changeset
   909
		with an HTTP <code>Location</code> header providing the first page resource URL.
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   910
	</div>
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   911
	<div id="ldpr-pagingGET-4" class="rule">4.10.2.4 <a title="LDP server">LDP servers</a> that support paging MUST include a representation for the page resource.
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   912
	</div>
227
1bb410ec95dd Moved 4.10.2.5->4.10.2.4.3,4.10.2.6->4.10.2.4.1,4.10.2.7->4.10.2.4.2 and added samples
sspeiche
parents: 226
diff changeset
   913
	<div id="ldpr-pagingGET-4_1" class="rule">4.10.2.4.1 The page resource representation MUST have one triple with the subject
1bb410ec95dd Moved 4.10.2.5->4.10.2.4.3,4.10.2.6->4.10.2.4.1,4.10.2.7->4.10.2.4.2 and added samples
sspeiche
parents: 226
diff changeset
   914
		of the page, predicate of <code>ldp:nextPage</code> and
1bb410ec95dd Moved 4.10.2.5->4.10.2.4.3,4.10.2.6->4.10.2.4.1,4.10.2.7->4.10.2.4.2 and added samples
sspeiche
parents: 226
diff changeset
   915
		object being the URL for the subsequent page.
1bb410ec95dd Moved 4.10.2.5->4.10.2.4.3,4.10.2.6->4.10.2.4.1,4.10.2.7->4.10.2.4.2 and added samples
sspeiche
parents: 226
diff changeset
   916
<pre class="example">&lt;http://example.org/customer-relations?firstPage&gt;
1bb410ec95dd Moved 4.10.2.5->4.10.2.4.3,4.10.2.6->4.10.2.4.1,4.10.2.7->4.10.2.4.2 and added samples
sspeiche
parents: 226
diff changeset
   917
    ldp:nextPage  &lt;http://example.org/customer-relations?p=2&gt; .</pre>
1bb410ec95dd Moved 4.10.2.5->4.10.2.4.3,4.10.2.6->4.10.2.4.1,4.10.2.7->4.10.2.4.2 and added samples
sspeiche
parents: 226
diff changeset
   918
	</div>
1bb410ec95dd Moved 4.10.2.5->4.10.2.4.3,4.10.2.6->4.10.2.4.1,4.10.2.7->4.10.2.4.2 and added samples
sspeiche
parents: 226
diff changeset
   919
	<div id="ldpr-pagingGET-4_2" class="rule">4.10.2.4.2 The last page resource representation MUST have one triple with the subject of the 
1bb410ec95dd Moved 4.10.2.5->4.10.2.4.3,4.10.2.6->4.10.2.4.1,4.10.2.7->4.10.2.4.2 and added samples
sspeiche
parents: 226
diff changeset
   920
	    last page, predicate of <code>ldp:nextPage</code> and object being <code>rdf:nil</code>.
1bb410ec95dd Moved 4.10.2.5->4.10.2.4.3,4.10.2.6->4.10.2.4.1,4.10.2.7->4.10.2.4.2 and added samples
sspeiche
parents: 226
diff changeset
   921
<pre class="example">&lt;http://example.org/customer-relations?p=2&gt;
1bb410ec95dd Moved 4.10.2.5->4.10.2.4.3,4.10.2.6->4.10.2.4.1,4.10.2.7->4.10.2.4.2 and added samples
sspeiche
parents: 226
diff changeset
   922
    ldp:nextPage  rdf:nil .</pre>	    
1bb410ec95dd Moved 4.10.2.5->4.10.2.4.3,4.10.2.6->4.10.2.4.1,4.10.2.7->4.10.2.4.2 and added samples
sspeiche
parents: 226
diff changeset
   923
	</div>
1bb410ec95dd Moved 4.10.2.5->4.10.2.4.3,4.10.2.6->4.10.2.4.1,4.10.2.7->4.10.2.4.2 and added samples
sspeiche
parents: 226
diff changeset
   924
	<div id="ldpr-pagingGET-4_3" class="rule">4.10.2.4.3 The page resource representation SHOULD have one triple to indicate its
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   925
		type, whose subject is the URL of the page, whose predicate is <code>rdf:type</code> and object is <code>ldp:Page</code>.
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   926
		It also SHOULD have 1 triple to indicate the resource it is paging,
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   927
		whose  subject is the URL of the page, predicate is <code>ldp:pageOf</code>,
206
812d3e1f3412 fix LDPC/LDPR typo
John Arwe
parents: 202
diff changeset
   928
		and object is the URL of the LDPR.
227
1bb410ec95dd Moved 4.10.2.5->4.10.2.4.3,4.10.2.6->4.10.2.4.1,4.10.2.7->4.10.2.4.2 and added samples
sspeiche
parents: 226
diff changeset
   929
<pre class="example">&lt;http://example.org/customer-relations?firstPage&gt;
1bb410ec95dd Moved 4.10.2.5->4.10.2.4.3,4.10.2.6->4.10.2.4.1,4.10.2.7->4.10.2.4.2 and added samples
sspeiche
parents: 226
diff changeset
   930
    rdf:type    ldp:Page;
1bb410ec95dd Moved 4.10.2.5->4.10.2.4.3,4.10.2.6->4.10.2.4.1,4.10.2.7->4.10.2.4.2 and added samples
sspeiche
parents: 226
diff changeset
   931
    ldp:pageOf  &lt;http://example.org/customer-relations&gt;.</pre>
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   932
	</div>
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   933
</section>
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   934
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   935
<section id="ldpr-paging-HTTP_OPTIONS">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   936
<h3>HTTP OPTIONS</h3>
158
8af0b25f2748 issue-32 MUST support OPTIONS
John Arwe
parents: 152
diff changeset
   937
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
   938
<div id="ldpr-4_10_3_1" class="rule">4.10.3.1 <a title="LDP server">LDP servers</a> MUST indicate their support for paging by
158
8af0b25f2748 issue-32 MUST support OPTIONS
John Arwe
parents: 152
diff changeset
   939
	responding to a HTTP <code>OPTIONS</code> request on the LDPR’s URL with the HTTP
8af0b25f2748 issue-32 MUST support OPTIONS
John Arwe
parents: 152
diff changeset
   940
	response header for link relations using the header name of <code>Link</code> and link relation type <code>first</code> [[!RFC5988]].
134
917946ac571e ISSUE-33 Moved 5.1.3 Paging (LDPC) to 4.8 (LDPR)
sspeiche
parents: 130
diff changeset
   941
</div>
174
72ce83f4ec7f issue-58 actions 88,89 (new predicates)
John Arwe
parents: 173
diff changeset
   942
</section> <!-- h3 -->
72ce83f4ec7f issue-58 actions 88,89 (new predicates)
John Arwe
parents: 173
diff changeset
   943
72ce83f4ec7f issue-58 actions 88,89 (new predicates)
John Arwe
parents: 173
diff changeset
   944
</section> <!-- h2 -->
72ce83f4ec7f issue-58 actions 88,89 (new predicates)
John Arwe
parents: 173
diff changeset
   945
72ce83f4ec7f issue-58 actions 88,89 (new predicates)
John Arwe
parents: 173
diff changeset
   946
</section> <!-- h1 -->
72ce83f4ec7f issue-58 actions 88,89 (new predicates)
John Arwe
parents: 173
diff changeset
   947
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   948
<section id="ldpc">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   949
<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
   950
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   951
<section class="informative" id="ldpc-informative">		
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
   952
<h2>Informative</h2>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   953
	<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
   954
		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
   955
		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
   956
		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
   957
		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
   958
		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
   959
		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
   960
		are:</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   961
	<ol>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   962
		<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
   963
		<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
   964
		<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
   965
		<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
   966
		<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
   967
	</ol>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   968
	<p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   969
		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
   970
		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
   971
		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
   972
		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
   973
		(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
   974
		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
   975
		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
   976
		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
   977
		– 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
   978
		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
   979
		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
   980
		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
   981
		have to be. The membership predicate is also variable and will often
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   982
		be a predicate from the server application vocabulary or the <code>rdfs:member</code> predicate.
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   983
	</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   984
	<p>This document includes a set of guidelines for
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   985
		using POST to create new resources and add 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
   986
		members of a container. It goes on to explain how to learn about a set of related
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
   987
		resources, they may have been created using POST or through other means.
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
   988
		It also defines behavior when POST created resources are deleted, to clean up
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
   989
		container membership, and deleting containers removes membership information and
231
38d1a7faf1c4 Various editorial comments from PA
sspeiche
parents: 230
diff changeset
   990
		possibly perform 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
   991
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   992
	<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
   993
		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
   994
		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
   995
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
   996
<pre class="example"># The following is the representation of
74
30624f0a7534 Adding trailing '/' on Container URLs to help with readability based on WG suggestion
sspeiche
parents: 73
diff changeset
   997
#    http://example.org/container1/
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
   998
<!-- @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
   999
# @base &lt;http://example.org/container1/&gt;
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1000
@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
  1001
@prefix rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;.
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1002
@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
  1003
72
73a5766e4794 ISSUE-29 - Use relative URIs in examples
sspeiche
parents: 71
diff changeset
  1004
&lt;&gt;
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1005
   a ldp:Container;
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
  1006
   ldp:membershipSubject &lt;&gt; ;
130
1e1f91d7effc issue-75 membershipXXX required
John Arwe
parents: 129
diff changeset
  1007
   ldp:membershipPredicate rdfs:member;
210
c2479399b854 Inserted ldp:membershipObject into examples
sspeiche
parents: 208
diff changeset
  1008
   ldp:membershipObject ldp:MemberSubject;
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1009
   dcterms:title "A very simple container";
72
73a5766e4794 ISSUE-29 - Use relative URIs in examples
sspeiche
parents: 71
diff changeset
  1010
   rdfs:member &lt;member1&gt;, &lt;member2&gt;, &lt;member3&gt;.</pre>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1011
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1012
	<p>This example is very straightforward - 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
  1013
			membership predicate is <code>rdfs:member</code> and the other
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
  1014
			consistent membership value is the container's
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
  1015
			URI, occurring in the subject position of the triples. 
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
  1016
			A POST to this container will create a new resource
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1017
			and add it to the list of members by adding a new membership triple
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1018
			to the container.</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1019
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1020
	<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
  1021
	other than the container itself as the consistent membership value, and/or to use
87
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1022
	a predicate other than <code>rdfs:member</code> as the membership predicate. Let's
88
a02636c16f05 Fixed typo in new text
sspeiche
parents: 87
diff changeset
  1023
	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
  1024
			
233
37842c77d995 Fixed dup id problem in example
sspeiche
parents: 232
diff changeset
  1025
<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
  1026
#   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
  1027
<!-- @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
  1028
# @base &lt;http://example.org/netWorth/nw1/&gt;
87
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1029
@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
  1030
@prefix o: &lt;http://example.org/ontology/&gt;.
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1031
&lt;&gt;
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1032
   a o:NetWorth;
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1033
   o:netWorthOf &lt;http://example.org/users/JohnZSmith&gt;;
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1034
   o:asset 
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1035
      &lt;assetContainer/a1&gt;,
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1036
      &lt;assetContainer/a2&gt;;
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1037
   o:liability 
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1038
      &lt;liabilityContainer/l1&gt;,
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1039
      &lt;liabilityContainer/l2&gt;,
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1040
      &lt;liabilityContainer/l3&gt;.
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1041
</pre>
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1042
	<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
  1043
	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
  1044
	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
  1045
	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
  1046
	for them to assist with managing these, this is done by associating containers with them as 
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1047
	illustrated below:
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1048
	</p>
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1049
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1050
<pre class="example" id="ldpc-ex-membership-full"># The following is an elaborated representation of
231
38d1a7faf1c4 Various editorial comments from PA
sspeiche
parents: 230
diff changeset
  1051
#   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
  1052
<!-- @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
  1053
# @base &lt;http://example.org/netWorth/nw1/&gt;
87
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1054
@prefix ldp: &lt;http://www.w3.org/ns/ldp#&gt;.
231
38d1a7faf1c4 Various editorial comments from PA
sspeiche
parents: 230
diff changeset
  1055
@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
  1056
@prefix o: &lt;http://example.org/ontology/&gt;.
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1057
&lt;&gt;
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1058
   a o:NetWorth;
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1059
   o:netWorthOf &lt;http://example.org/users/JohnZSmith&gt;;
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1060
   o:asset 
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1061
      &lt;assetContainer/a1&gt;,
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1062
      &lt;assetContainer/a2&gt;;
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1063
   o:liability 
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1064
      &lt;liabilityContainer/l1&gt;,
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1065
      &lt;liabilityContainer/l2&gt;,
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1066
      &lt;liabilityContainer/l3&gt;.
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1067
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1068
&lt;assetContainer/&gt;
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1069
   a ldp:Container;
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1070
   dcterms:title "The assets of JohnZSmith";
231
38d1a7faf1c4 Various editorial comments from PA
sspeiche
parents: 230
diff changeset
  1071
   ldp:membershipSubject &lt;&gt;;
210
c2479399b854 Inserted ldp:membershipObject into examples
sspeiche
parents: 208
diff changeset
  1072
   ldp:membershipPredicate o:asset;
c2479399b854 Inserted ldp:membershipObject into examples
sspeiche
parents: 208
diff changeset
  1073
   ldp:membershipObject ldp:MemberSubject.
87
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1074
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1075
&lt;liabilityContainer/&gt;
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1076
   a ldp:Container;
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1077
   dcterms:title "The liabilities of JohnZSmith";
231
38d1a7faf1c4 Various editorial comments from PA
sspeiche
parents: 230
diff changeset
  1078
   ldp:membershipSubject &lt;&gt;;
210
c2479399b854 Inserted ldp:membershipObject into examples
sspeiche
parents: 208
diff changeset
  1079
   ldp:membershipPredicate o:liability;
c2479399b854 Inserted ldp:membershipObject into examples
sspeiche
parents: 208
diff changeset
  1080
   ldp:membershipObject ldp:MemberSubject.
87
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1081
</pre>
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1082
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1083
	<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
  1084
	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
  1085
	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
  1086
	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
  1087
	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
  1088
	asset and add it to the list of	members by adding a new membership triple
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1089
	to the container. You might wonder why
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1090
	<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
  1091
	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
  1092
	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
  1093
	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
  1094
	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
  1095
	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
  1096
	resources allows both assets and liabilities to be created.
671fe85a872b Inserted examples 2&3, a more complete NetWorth resource
sspeiche
parents: 86
diff changeset
  1097
	</p>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1098
231
38d1a7faf1c4 Various editorial comments from PA
sspeiche
parents: 230
diff changeset
  1099
<pre class="example" id="ldpc-ex-membership-subj"># The following is the representation of
74
30624f0a7534 Adding trailing '/' on Container URLs to help with readability based on WG suggestion
sspeiche
parents: 73
diff changeset
  1100
#   http://example.org/netWorth/nw1/assetContainer/
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
  1101
<!-- @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
  1102
# @base &lt;http://example.org/netWorth/nw1/assetContainer/&gt;
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1103
@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
  1104
@prefix o: &lt;http://example.org/ontology/&gt;.
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1105
72
73a5766e4794 ISSUE-29 - Use relative URIs in examples
sspeiche
parents: 71
diff changeset
  1106
&lt;&gt;
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1107
   a ldp:Container;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1108
   ldp:membershipSubject &lt;http://example.org/netWorth/nw1&gt;;
210
c2479399b854 Inserted ldp:membershipObject into examples
sspeiche
parents: 208
diff changeset
  1109
   ldp:membershipPredicate o:asset;
c2479399b854 Inserted ldp:membershipObject into examples
sspeiche
parents: 208
diff changeset
  1110
   ldp:membershipObject ldp:MemberSubject.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1111
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1112
&lt;http://example.org/netWorth/nw1&gt;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1113
   a o:NetWorth;
72
73a5766e4794 ISSUE-29 - Use relative URIs in examples
sspeiche
parents: 71
diff changeset
  1114
   o:asset &lt;a1&gt;, &lt;a2&gt;.</pre>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1115
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
  1116
	<p>In this example, clients cannot correctly guess
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
  1117
			at the membership triples, so the example includes this information in
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1118
			triples whose subject is the LDPC resource itself.
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1119
	</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1120
	
191
ab6b24fcb2b6 Fixed various section marking issues with informative
sspeiche
parents: 190
diff changeset
  1121
	<div id="ldpc-member_data" class="rule informative">5.1.1 Container Member Information</div>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1122
	<p>In many – perhaps most – applications
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1123
		involving containers, it is desirable for the client to be able to
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1124
		get information about each container member without having to do a
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1125
		GET on each one. LDPC allows servers to include this information
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1126
		directly in the representation of the container. The server decides
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1127
		the amount of data about each member that is provided. Some common
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1128
		strategies include providing a fixed number of standard properties,
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1129
		or providing the entire RDF representation of each member resource,
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1130
		or providing nothing. The server application domain and its use-cases
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1131
		will determine how much information is required.</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1132
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1133
	<p>Continuing on from the net worth
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1134
		example, there will be additional triples for the member resources
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1135
		(assets) in the representation:</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1136
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1137
<pre class="example"># The following is the representation of
74
30624f0a7534 Adding trailing '/' on Container URLs to help with readability based on WG suggestion
sspeiche
parents: 73
diff changeset
  1138
#	 http://example.org/netWorth/nw1/assetContainer/
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
  1139
<!-- @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
  1140
# @base &lt;http://example.org/netWorth/nw1/assetContainer/&gt;
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1141
@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
  1142
@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
  1143
@prefix o:       &lt;http://example.org/ontology/&gt;.
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1144
72
73a5766e4794 ISSUE-29 - Use relative URIs in examples
sspeiche
parents: 71
diff changeset
  1145
&lt;&gt;
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1146
   a ldp:Container;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1147
   dcterms:title "The assets of JohnZSmith";
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1148
   ldp:membershipSubject &lt;http://example.org/netWorth/nw1&gt;;
210
c2479399b854 Inserted ldp:membershipObject into examples
sspeiche
parents: 208
diff changeset
  1149
   ldp:membershipPredicate o:asset;
c2479399b854 Inserted ldp:membershipObject into examples
sspeiche
parents: 208
diff changeset
  1150
   ldp:membershipObject ldp:MemberSubject.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1151
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1152
&lt;http://example.org/netWorth/nw1&gt;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1153
   a o:NetWorth;
72
73a5766e4794 ISSUE-29 - Use relative URIs in examples
sspeiche
parents: 71
diff changeset
  1154
   o:asset &lt;a1&gt;, &lt;a3&gt;, &lt;a2&gt;.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1155
72
73a5766e4794 ISSUE-29 - Use relative URIs in examples
sspeiche
parents: 71
diff changeset
  1156
&lt;a1&gt;
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1157
   a o:Stock;
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
  1158
   o:value 10000 .
72
73a5766e4794 ISSUE-29 - Use relative URIs in examples
sspeiche
parents: 71
diff changeset
  1159
&lt;a2&gt;
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1160
   a o:Bond;
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
  1161
   o:value 20000 .
72
73a5766e4794 ISSUE-29 - Use relative URIs in examples
sspeiche
parents: 71
diff changeset
  1162
&lt;a3&gt;
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1163
   a o:RealEstateHolding;
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
  1164
   o:value 300000 .</pre>
185
58f49a8417b8 ISSUE-51 Added how a LDPR can show which LDPC is it in
sspeiche
parents: 184
diff changeset
  1165
	<p>In a similar manner, when the representation for the resource of asset <var>.../&lt;a1&gt;</var> is returned a 
231
38d1a7faf1c4 Various editorial comments from PA
sspeiche
parents: 230
diff changeset
  1166
	server may include the membership triple of the form <var>(.../nw1, o:asset, .../a1).</var></p>
102
04e3e77e4e78 Added open issues 50, 51, 55, 56, 57, 58, 59
Ashok Malhotra <Ashok.Malhotra@Oracle.com>
parents: 99
diff changeset
  1167
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1168
	<div id="ldpc-get_non-member_props" class="rule">5.1.2 Retrieving Only Non-member Properties
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1169
	</div>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1170
	<p>The representation of a container
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1171
		that has many members will be large. There are several important
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1172
		cases where clients need to access only the non-member properties of
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1173
		the container. Since retrieving the whole container representation to
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1174
		get this information may be onerous for clients and cause unnecessary
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1175
		overhead on servers, it is desired to define a way to retrieve only
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1176
		the non-member property values. Defining for each LDPC a corresponding
120
edf269bcce8a Issue-64 change ?non-member-properties into Link header with extension relation type
John Arwe
parents: 116
diff changeset
  1177
		resource, called the “<a>non-member resource</a>”, whose state is a subset
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1178
		of the state of the container, does this.</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1179
	<p>The example listed here only show
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1180
		a simple case where only a few simple non-member properties are
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1181
		retrieved. In real world situations more complex cases are likely, such as those that add other predicates to
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1182
		containers, for example providing validation information and
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1183
		associating SPARQL endpoints. [[SPARQL-QUERY]]</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1184
	<p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1185
		Here is an example requesting the non-member properties of a
120
edf269bcce8a Issue-64 change ?non-member-properties into Link header with extension relation type
John Arwe
parents: 116
diff changeset
  1186
		container identified by the URL <code>http://example.org/container1/</code>.
edf269bcce8a Issue-64 change ?non-member-properties into Link header with extension relation type
John Arwe
parents: 116
diff changeset
  1187
		In this case, the non-member resource is identified by the URL 
edf269bcce8a Issue-64 change ?non-member-properties into Link header with extension relation type
John Arwe
parents: 116
diff changeset
  1188
		<code>http://example.org/container1?non-member-properties</code>:
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1189
	</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1190
<p>Request:</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1191
<pre class="example">GET /container1?non-member-properties HTTP/1.1
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1192
Host: example.org
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1193
Accept: text/turtle; charset=UTF-8
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1194
</pre>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1195
<p>Response:</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1196
<pre class="example">HTTP/1.1 200 OK
13
eea17080fdf2 Minor typo fix and some notes
sspeiche
parents: 12
diff changeset
  1197
Content-Type: text/turtle; charset=UTF-8
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1198
ETag: "_87e52ce291112"
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1199
Content-Length: 325
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1200
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1201
@prefix rdfs: &lt;http://www.w3.org/2000/01/rdf-schema#&gt;.
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1202
@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
  1203
@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
  1204
74
30624f0a7534 Adding trailing '/' on Container URLs to help with readability based on WG suggestion
sspeiche
parents: 73
diff changeset
  1205
&lt;http://example.org/container1/&gt;
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1206
   a ldp:Container;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1207
   dcterms:title "A Linked Data Platform Container of Acme Resources";
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
  1208
   ldp:membershipSubject &lt;http://example.org/container1/&gt;;
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1209
   ldp:membershipPredicate rdfs:member;
210
c2479399b854 Inserted ldp:membershipObject into examples
sspeiche
parents: 208
diff changeset
  1210
   ldp:membershipObject ldp:MemberSubject;
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1211
   dcterms:publisher &lt;http://acme.com/&gt;.</pre>
120
edf269bcce8a Issue-64 change ?non-member-properties into Link header with extension relation type
John Arwe
parents: 116
diff changeset
  1212
   
edf269bcce8a Issue-64 change ?non-member-properties into Link header with extension relation type
John Arwe
parents: 116
diff changeset
  1213
	<p>While the same non-member resource could be used to update the non-member properties via PUT,
edf269bcce8a Issue-64 change ?non-member-properties into Link header with extension relation type
John Arwe
parents: 116
diff changeset
  1214
		LDP recommends using PATCH for this purpose.</p>
edf269bcce8a Issue-64 change ?non-member-properties into Link header with extension relation type
John Arwe
parents: 116
diff changeset
  1215
215
da72115eb40b Various updates per review of Raul
sspeiche
parents: 213
diff changeset
  1216
	<div id="ldpc-ordering" class="rule">5.1.3 Ordering</div>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1217
	<p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1218
		There are many cases where an ordering of the members of the
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1219
		container is important. LDPC does not provide any particular support
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1220
		for server ordering of members in containers, because any client can
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1221
		order the members in any way it chooses based on the value of any
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1222
		available property of the members. In the example below, the value of
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1223
		the <code>o:value</code> predicate is present for each
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1224
		member, so the client can easily order the members according to the
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1225
		value of that property. In this way, LDPC avoids the use of RDF
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1226
		constructs like Seq and List for expressing order.
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1227
	</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1228
	<p>
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
  1229
		Order becomes more important for <a title="LDP server">LDP servers</a> when containers are
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1230
		paginated. If the server does not respect ordering when constructing
126
e4ae46fd5294 Issue-14 Resolution: ascending or descending sort, with optional collations
John Arwe
parents: 125
diff changeset
  1231
		pages, the client would be forced to retrieve all pages before
e4ae46fd5294 Issue-14 Resolution: ascending or descending sort, with optional collations
John Arwe
parents: 125
diff changeset
  1232
		sorting the members, which would defeat the purpose of pagination. 
e4ae46fd5294 Issue-14 Resolution: ascending or descending sort, with optional collations
John Arwe
parents: 125
diff changeset
  1233
		In cases where ordering is important, an LDPC server exposes all the
e4ae46fd5294 Issue-14 Resolution: ascending or descending sort, with optional collations
John Arwe
parents: 125
diff changeset
  1234
		members on a page with the proper sort order with relation to all 
e4ae46fd5294 Issue-14 Resolution: ascending or descending sort, with optional collations
John Arwe
parents: 125
diff changeset
  1235
		members on the next and previous pages.
e4ae46fd5294 Issue-14 Resolution: ascending or descending sort, with optional collations
John Arwe
parents: 125
diff changeset
  1236
		When the sort is ascending, all the members on a current page have a 
311
02a6e18eaec6 tweak informative text around sort order in response to offline comments. the old language implied pages were strictly ordered, which ignores the case of equal sort ranked members that fill/span several pages.
John Arwe
parents: 309
diff changeset
  1237
		sort order no lower than all members on the previous page and 
02a6e18eaec6 tweak informative text around sort order in response to offline comments. the old language implied pages were strictly ordered, which ignores the case of equal sort ranked members that fill/span several pages.
John Arwe
parents: 309
diff changeset
  1238
		sort order no higher than all the members on the next page; 
02a6e18eaec6 tweak informative text around sort order in response to offline comments. the old language implied pages were strictly ordered, which ignores the case of equal sort ranked members that fill/span several pages.
John Arwe
parents: 309
diff changeset
  1239
		that is, it proceeds from low to high, but keep in mind that several 
02a6e18eaec6 tweak informative text around sort order in response to offline comments. the old language implied pages were strictly ordered, which ignores the case of equal sort ranked members that fill/span several pages.
John Arwe
parents: 309
diff changeset
  1240
		consecutive pages might have members whose sort criteria are equal. 
126
e4ae46fd5294 Issue-14 Resolution: ascending or descending sort, with optional collations
John Arwe
parents: 125
diff changeset
  1241
		When the sort is descending, the opposite order is used. 
e4ae46fd5294 Issue-14 Resolution: ascending or descending sort, with optional collations
John Arwe
parents: 125
diff changeset
  1242
		Since more than one value may be used to sort members, 
e4ae46fd5294 Issue-14 Resolution: ascending or descending sort, with optional collations
John Arwe
parents: 125
diff changeset
  1243
		the LDPC specification allows servers to assert the ordered list
e4ae46fd5294 Issue-14 Resolution: ascending or descending sort, with optional collations
John Arwe
parents: 125
diff changeset
  1244
		of sort criteria used to sort the members, using the 
e4ae46fd5294 Issue-14 Resolution: ascending or descending sort, with optional collations
John Arwe
parents: 125
diff changeset
  1245
		<code>ldp:containerSortCriteria</code> relation.
e4ae46fd5294 Issue-14 Resolution: ascending or descending sort, with optional collations
John Arwe
parents: 125
diff changeset
  1246
		Each member of the ordered list exposes one <code>ldp:containerSortCriterion</code>, 
212
97ac8b356958 Fixed a couple typos in 5.1.4
sspeiche
parents: 211
diff changeset
  1247
		consisting of a <code>ldp:containerSortOrder</code>, 
126
e4ae46fd5294 Issue-14 Resolution: ascending or descending sort, with optional collations
John Arwe
parents: 125
diff changeset
  1248
		<code>ldp:containerSortPredicate</code>, and 
e4ae46fd5294 Issue-14 Resolution: ascending or descending sort, with optional collations
John Arwe
parents: 125
diff changeset
  1249
		optionally a <code>ldp:containerSortCollation</code>.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1250
	</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1251
	<p>Here is an example container described
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1252
		previously, with representation for ordering of the assets:</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1253
<pre class="example"># The following is the ordered representation of
74
30624f0a7534 Adding trailing '/' on Container URLs to help with readability based on WG suggestion
sspeiche
parents: 73
diff changeset
  1254
#   http://example.org/netWorth/nw1/assetContainer/
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
  1255
<!-- @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
  1256
# @base &lt;http://example.org/netWorth/nw1/assetContainer/&gt;
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1257
@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
  1258
@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
  1259
@prefix o: &lt;http://example.org/ontology/&gt;.
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1260
72
73a5766e4794 ISSUE-29 - Use relative URIs in examples
sspeiche
parents: 71
diff changeset
  1261
&lt;&gt;
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1262
   a ldp:Container;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1263
   dcterms:title "The assets of JohnZSmith";
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1264
   ldp:membershipSubject &lt;http://example.org/netWorth/nw1&gt;;
210
c2479399b854 Inserted ldp:membershipObject into examples
sspeiche
parents: 208
diff changeset
  1265
   ldp:membershipPredicate o:asset;
c2479399b854 Inserted ldp:membershipObject into examples
sspeiche
parents: 208
diff changeset
  1266
   ldp:membershipObject ldp:MemberSubject.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1267
72
73a5766e4794 ISSUE-29 - Use relative URIs in examples
sspeiche
parents: 71
diff changeset
  1268
&lt;?firstPage&gt;
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1269
   a ldp:Page;
72
73a5766e4794 ISSUE-29 - Use relative URIs in examples
sspeiche
parents: 71
diff changeset
  1270
   ldp:pageOf &lt;&gt;;
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
  1271
   ldp:containerSortCriteria (&lt;#SortValueAscending&gt;).
126
e4ae46fd5294 Issue-14 Resolution: ascending or descending sort, with optional collations
John Arwe
parents: 125
diff changeset
  1272
e4ae46fd5294 Issue-14 Resolution: ascending or descending sort, with optional collations
John Arwe
parents: 125
diff changeset
  1273
&lt;#SortValueAscending&gt;
e4ae46fd5294 Issue-14 Resolution: ascending or descending sort, with optional collations
John Arwe
parents: 125
diff changeset
  1274
   a ldp:ContainerSortCriterion;
226
0e1efef6e333 Changed ldp:ascending->ldp:Ascending, ldp:descending->ldp:Descending, ldp:non-member-resource ->ldp:nonMemberResource
sspeiche
parents: 225
diff changeset
  1275
   ldp:containerSortOrder ldp:Ascending;
126
e4ae46fd5294 Issue-14 Resolution: ascending or descending sort, with optional collations
John Arwe
parents: 125
diff changeset
  1276
   ldp:containerSortPredicate o:value.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1277
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1278
&lt;http://example.org/netWorth/nw1&gt;
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1279
   a o:NetWorth;
72
73a5766e4794 ISSUE-29 - Use relative URIs in examples
sspeiche
parents: 71
diff changeset
  1280
   o:asset &lt;a1&gt;, &lt;a3&gt;, &lt;a2&gt;.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1281
72
73a5766e4794 ISSUE-29 - Use relative URIs in examples
sspeiche
parents: 71
diff changeset
  1282
&lt;a1&gt;
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1283
   a o:Stock;
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
  1284
   o:value 100.00 .
72
73a5766e4794 ISSUE-29 - Use relative URIs in examples
sspeiche
parents: 71
diff changeset
  1285
&lt;a2&gt;
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1286
   a o:Cash;
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
  1287
   o:value 50.00 .
72
73a5766e4794 ISSUE-29 - Use relative URIs in examples
sspeiche
parents: 71
diff changeset
  1288
&lt;a3&gt;
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1289
   a o:RealEstateHolding;
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
  1290
   o:value 300000 .</pre>
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1291
		<p>
126
e4ae46fd5294 Issue-14 Resolution: ascending or descending sort, with optional collations
John Arwe
parents: 125
diff changeset
  1292
			As you can see by the addition of the <code>ldp:ContainerSortCriteria</code> 
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1293
			predicate, the <code>o:value</code> predicate is used
126
e4ae46fd5294 Issue-14 Resolution: ascending or descending sort, with optional collations
John Arwe
parents: 125
diff changeset
  1294
			to order the page members in ascending order.  It is up to the domain model
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1295
			and server to determine the appropriate predicate to indicate the
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1296
			resource’s order within a page, and up to the client receiving this 
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1297
			representation to use that order in whatever way is appropriate, for 
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1298
			example to sort the data prior to presentation on a user interface.
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1299
		</p>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1300
</section>
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1301
333
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
  1302
<section id="ldpc-general">
3c2aaaea1f73 Fixed vanishing section ref problem
sspeiche
parents: 331
diff changeset
  1303
<h2>General</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
  1304
	<p>The Linked Data Platform does not define how clients
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
  1305
		discover <dfn><abbr title="Linked Data Platform Containers">LDPCs</abbr></dfn>.</p>
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
  1306
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
  1307
	<div id="ldpc-5_2_1" class="rule">5.2.1 
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
  1308
		Each Linked Data Platform Container MUST also be a conforming Linked Data Platform Resource.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1309
	</div>
386
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
  1310
	<!-- Action-108 removed this 2013-10-22
231
38d1a7faf1c4 Various editorial comments from PA
sspeiche
parents: 230
diff changeset
  1311
	<div id="ldpc-5_2_2" class="rule">5.2.2 LDPC membership is not exclusive; this means that the same resource
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
  1312
	(LDPR or not) MAY be a member of more than one LDPC.
85
612f57f3b28e Additional fix in 5.2.2 for ISSUE-34
sspeiche
parents: 84
diff changeset
  1313
	</div>
386
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
  1314
	-->
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
  1315
	<div id="ldpc-5_2_3" class="rule">5.2.3 <a title="LDP server">LDP servers</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
  1316
		SHOULD use the <code>rdfs:member</code> 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
  1317
		If there is no obvious predicate from an application vocabulary to use.
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
  1318
		The state of an LDPC includes information about which
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
  1319
		resources are its members, in the form of <a title="Membership triples">membership triples</a> that
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
  1320
		follow a consistent pattern.  The LDPC's state contains enough information for clients to discern
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
  1321
		the <a title="Membership predicate">membership predicate</a>, the other consistent 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
  1322
		value used in the container's membership triples, and the position (subject or object) where the member's 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
  1323
		occurs in those triples.
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
  1324
		Member resources can be
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
  1325
		any kind of resource identified by a URI, LDPR or otherwise.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1326
	</div>
231
38d1a7faf1c4 Various editorial comments from PA
sspeiche
parents: 230
diff changeset
  1327
	<div id="ldpc-5_2_4" class="rule">5.2.4 An LDPC representation MUST contain exactly one triple 
130
1e1f91d7effc issue-75 membershipXXX required
John Arwe
parents: 129
diff changeset
  1328
		whose subject is the LDPC URI, 
1e1f91d7effc issue-75 membershipXXX required
John Arwe
parents: 129
diff changeset
  1329
		whose predicate is the <code>ldp:membershipSubject</code>, 
1e1f91d7effc issue-75 membershipXXX required
John Arwe
parents: 129
diff changeset
  1330
		and whose object is the LDPC's membership subject URI.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1331
	</div>
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
  1332
<div class="ldp-issue-open">
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
  1333
<div class="ldp-issue-title">Issue-81: confusing predicate names</div>
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
  1334
"membership subject" has been removed too.  Remove this use of it as part of Issue-81 resolution.
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
  1335
</div>
231
38d1a7faf1c4 Various editorial comments from PA
sspeiche
parents: 230
diff changeset
  1336
	<div id="ldpc-5_2_5" class="rule">5.2.5 An LDPC representation MUST contain exactly one triple 
130
1e1f91d7effc issue-75 membershipXXX required
John Arwe
parents: 129
diff changeset
  1337
		whose subject is the LDPC URI, 
1e1f91d7effc issue-75 membershipXXX required
John Arwe
parents: 129
diff changeset
  1338
		and whose predicate is either <code>ldp:membershipPredicate</code> or <code>ldp:membershipPredicateInverse</code>. 
1e1f91d7effc issue-75 membershipXXX required
John Arwe
parents: 129
diff changeset
  1339
		The object of the triple is constrained by other sections, such as
235
b93936428fcd Fixed some broken references
sspeiche
parents: 234
diff changeset
  1340
		<a href="#ldpc-5_2_5_1">5.2.5.1</a> or <a href="#ldpc-5_2_5_2">5.2.5.2</a>.
130
1e1f91d7effc issue-75 membershipXXX required
John Arwe
parents: 129
diff changeset
  1341
	</div>
97
2299a3fa43b8 ISSUE-21 Continued refinement of text, removed subscripts
sspeiche
parents: 95
diff changeset
  1342
	<div id="ldpc-5_2_5_1" class="rule">5.2.5.1 For a given triple <var>T</var> with a subject <var>C</var>
95
68405d7a9fd6 ISSUE-21 Added ldp:membershipPredicateInverse to 5.2.5 &amp; 5.5.2, created 5.2.5.1 &amp; 5.3.5.2 to indicate difference.
sspeiche
parents: 94
diff changeset
  1343
	of the LDPC and predicate of 
97
2299a3fa43b8 ISSUE-21 Continued refinement of text, removed subscripts
sspeiche
parents: 95
diff changeset
  1344
	<code>ldp:membershipPredicate</code>, the object MUST be the URI of the membership predicate <var>P</var> used to
2299a3fa43b8 ISSUE-21 Continued refinement of text, removed subscripts
sspeiche
parents: 95
diff changeset
  1345
	indicate membership to the linked to LDPC, or simply: <var>T = ( C</var>, <code>ldp:membershipPredicate</code>, <var>P)</var>. 
98
63281c5a9a43 ISSUE-21 Continued refinement of text, take 2
sspeiche
parents: 97
diff changeset
  1346
	For the membership predicate URI object used in the triple <var>T</var>, it would be found in a resource's
97
2299a3fa43b8 ISSUE-21 Continued refinement of text, removed subscripts
sspeiche
parents: 95
diff changeset
  1347
	same subject <var>R</var> and same predicate <var>P</var> membership triples of the form: 
2299a3fa43b8 ISSUE-21 Continued refinement of text, removed subscripts
sspeiche
parents: 95
diff changeset
  1348
	(<var>R</var>, <var>P</var>, <var>MR</var>), where <var>MR</var> represents URI of
98
63281c5a9a43 ISSUE-21 Continued refinement of text, take 2
sspeiche
parents: 97
diff changeset
  1349
	a member resource.
95
68405d7a9fd6 ISSUE-21 Added ldp:membershipPredicateInverse to 5.2.5 &amp; 5.5.2, created 5.2.5.1 &amp; 5.3.5.2 to indicate difference.
sspeiche
parents: 94
diff changeset
  1350
	</div>
97
2299a3fa43b8 ISSUE-21 Continued refinement of text, removed subscripts
sspeiche
parents: 95
diff changeset
  1351
	<div id="ldpc-5_2_5_2" class="rule">5.2.5.2  For a given triple <var>T</var> with a subject <var>C</var>
95
68405d7a9fd6 ISSUE-21 Added ldp:membershipPredicateInverse to 5.2.5 &amp; 5.5.2, created 5.2.5.1 &amp; 5.3.5.2 to indicate difference.
sspeiche
parents: 94
diff changeset
  1352
	of the LDPC and predicate of 
97
2299a3fa43b8 ISSUE-21 Continued refinement of text, removed subscripts
sspeiche
parents: 95
diff changeset
  1353
	<code>ldp:membershipPredicateInverse</code>, the object MUST be the URI of the membership predicate <var>P</var> used to
2299a3fa43b8 ISSUE-21 Continued refinement of text, removed subscripts
sspeiche
parents: 95
diff changeset
  1354
	indicate membership to the linked to LDPC, or simply: <var>T = ( C</var>, <code>ldp:membershipPredicateInverse</code>, <var>P)</var>. 
98
63281c5a9a43 ISSUE-21 Continued refinement of text, take 2
sspeiche
parents: 97
diff changeset
  1355
	For the membership predicate URI object used in the triple <var>T</var>, it would be found in a resource's
97
2299a3fa43b8 ISSUE-21 Continued refinement of text, removed subscripts
sspeiche
parents: 95
diff changeset
  1356
	object subject <var>R</var> and same predicate <var>P</var> membership triples of the form: 
2299a3fa43b8 ISSUE-21 Continued refinement of text, removed subscripts
sspeiche
parents: 95
diff changeset
  1357
	(<var>MR</var>, <var>P</var>, <var>R</var>), where <var>MR</var> represents URI of
98
63281c5a9a43 ISSUE-21 Continued refinement of text, take 2
sspeiche
parents: 97
diff changeset
  1358
	a member resource.
95
68405d7a9fd6 ISSUE-21 Added ldp:membershipPredicateInverse to 5.2.5 &amp; 5.5.2, created 5.2.5.1 &amp; 5.3.5.2 to indicate difference.
sspeiche
parents: 94
diff changeset
  1359
	</div>
386
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
  1360
	<!-- Action-108 removed this 2013-10-22
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1361
	<div id="ldpc-5_2_6" class="rule">5.2.6 The representation of a LDPC MAY include an arbitrary number of
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1362
		additional triples whose subjects are the members of the container,
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1363
		or that are from the representations of the members (if they have RDF
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1364
		representations). This allows a LDPC server to provide clients with
192
221002315344 Removed 4.1.5 and various formatting issues
sspeiche
parents: 191
diff changeset
  1365
		information about the members without the client having to do a <code>GET</code>
334
8e9ad2d0e512 Removed at-risk inlining feature from spec, ACTION-98
sspeiche
parents: 333
diff changeset
  1366
		on each member individually.  See <a href="#ldpc-member_data">section 5.1.1 Container
8e9ad2d0e512 Removed at-risk inlining feature from spec, ACTION-98
sspeiche
parents: 333
diff changeset
  1367
		Member Information</a> for additional details.
113
6fd1ba20242d ISSUE-13 Updated 5.2.3 to say any resource can be in a LDPC and inserted 5.5.3 on rejecting member data on PUT to LDPC
sspeiche
parents: 112
diff changeset
  1368
    </div>
386
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
  1369
	-->
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
  1370
	<div id="ldpc-5_2_7" class="rule">5.2.7 The representation of a LDPC MUST have an <code>rdf:type</code>
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
  1371
		of <code>ldp:Container</code>.  Informative note: <a href="#ldp-rdfconcepts-extra-triples-types">LDPCs
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
  1372
		might have additional types</a>, like any RDF resource.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1373
	</div>
215
da72115eb40b Various updates per review of Raul
sspeiche
parents: 213
diff changeset
  1374
	<div id="ldpc-5_2_8" class="rule">5.2.8 LDPC representations SHOULD NOT use RDF container types <code>rdf:Bag</code>,
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
  1375
		<code>rdf:Seq</code> or <code>rdf:List</code>.
12
a3be44430b37 ISSUE-8 rename from LDBP to LDP and add remainder of open issues
sspeiche
parents:
diff changeset
  1376
	</div>
386
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
  1377
	<!-- Action-108 removed this 2013-10-22
372
d85ca5c8cb68 Preparing for profiles - conformance section updates; add link to IETF draft
John Arwe
parents: 370
diff changeset
  1378
	<div id="ldpc-5_2_9" class="rule">5.2.9 <a title="LDP server">LDP servers</a> SHOULD NOT re-use URIs, 
192
221002315344 Removed 4.1.5 and various formatting issues
sspeiche
parents: 191
diff changeset
  1379
		regardless of the mechanism by which members are created (<code>POST</code>, <code>PUT</code>, etc.).
116
48fabccf847c Issue-35 resolution: do not re-use URIs on create
John Arwe
parents: 115
diff changeset
  1380
		Certain specific cases exist where a LDPC server MAY delete a resource and then later re-use the
48fabccf847c Issue-35 resolution: do not re-use URIs on create
John Arwe
parents: 115
diff changeset
  1381
		URI when it identifies the same resource, but only when consistent with Web architecture [[WEBARCH]].
48fabccf847c Issue-35 resolution: do not re-use URIs on create
John Arwe
parents: 115
diff changeset
  1382
		While it is difficult to provide absolute implementation guarantees of non-reuse in all failure
48fabccf847c Issue-35 resolution: do not re-use URIs on create
John Arwe
parents: 115
diff changeset
  1383
		scenarios, re-using URIs creates ambiguities for clients that are best avoided.
48fabccf847c Issue-35 resolution: do not re-use URIs on create
John Arwe
parents: 115
diff changeset
  1384
	</div>
386
b7c514f96add Resolve ACTION-108 move restatements of HTTP et al. out of normative sections
John Arwe
parents: 385
diff changeset
  1385
	-->
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
  1386
	<div id="ldpc-5_2_10" class="rule">5.2.10 Some LDPCs have members whose URIs are not directly
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
  1387
	    URIs minted upon LDPC member creation, for example URIs with a non-empty fragment identifier [[RFC3986]]. 
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
  1388
	    To determine which member URI to use in the  membership triple, LDPCs MUST contain one triple whose
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
  1389
	    subject is the LDPC URI, whose predicate is <code>ldp:membershipObject</code>, and whose object is <var>MO</var>. 
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
  1390
	    <var>MO</var> and the HTTP URI <var>R</var> from <code>POST</code> create 
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
  1391
		(as found in HTTP response <code>Location</code> header) 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
  1392
	    used to locate a triple in <var>R</var> of the form <var>(R, MO, N)</var>.
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
  1393
		When the LDPC uses <code>ldp:membershipPredicate</code>,