112
112
< p >
113
113
A conforming < b > Fedora server</ b > is a conforming [[!LDP]] 1.0 server except where described in this document
114
114
that also follows the rules defined by Fedora in < a href ="#resource-management "> </ a > ,
115
- < a href ="#resource-versioning "> </ a > , < a href ="#binary-fixity "> </ a > , < a href ="#resource-authorization "> </ a > ,
115
+ < a href ="#resource-versioning "> </ a > , < a href ="#binary-fixity "> </ a > , < a href ="#resource-authorization "> </ a > ,
116
116
< a href ="#atomic-operations "> </ a > , and < a href ="#messaging "> </ a > .
117
117
</ p >
118
118
</ section >
@@ -124,17 +124,17 @@ <h2>Terminology</h2>
124
124
< dt > < dfn > LDPR</ dfn > :</ dt >
125
125
< dd >
126
126
A Linked Data Platform Resource as defined in [< a href ="https://www.w3.org/TR/ldp/#dfn-linked-data-platform-resource "> LDP</ a > ].
127
- This may be an < a href ="https://www.w3.org/TR/ldp/#dfn-linked-data-platform-rdf-source "> LDP RDF Source</ a > (< a > LDP-RS</ a > ) or an
127
+ This may be an < a href ="https://www.w3.org/TR/ldp/#dfn-linked-data-platform-rdf-source "> LDP RDF Source</ a > (< a > LDP-RS</ a > ) or an
128
128
< a href ="https://www.w3.org/TR/ldp/#dfn-linked-data-platform-non-rdf-source "> LDP Non-RDF Source</ a > (< a > LDP-NR</ a > ).
129
129
</ dd >
130
130
< dt > < dfn > LDP-RS</ dfn > :</ dt >
131
131
< dd >
132
- An < a > LDPR</ a > whose state is fully represented in RDF as defined in
132
+ An < a > LDPR</ a > whose state is fully represented in RDF as defined in
133
133
[< a href ="https://www.w3.org/TR/ldp/#dfn-linked-data-platform-rdf-source "> LDP</ a > ].
134
134
</ dd >
135
135
< dt > < dfn > LDP-NR</ dfn > :</ dt >
136
136
< dd >
137
- An < a > LDPR</ a > whose state is not represented in RDF as defined in
137
+ An < a > LDPR</ a > whose state is not represented in RDF as defined in
138
138
[< a href ="https://www.w3.org/TR/ldp/#dfn-linked-data-platform-non-rdf-source "> LDP</ a > ].
139
139
</ dd >
140
140
< dt > < dfn > LDPRv</ dfn > :</ dt >
@@ -147,7 +147,7 @@ <h2>Terminology</h2>
147
147
</ dd >
148
148
< dt > < dfn > LDPC</ dfn > :</ dt >
149
149
< dd >
150
- A collection of linked documents or information resources as defined in
150
+ A collection of linked documents or information resources as defined in
151
151
[< a href ="https://www.w3.org/TR/ldp/#dfn-linked-data-platform-container "> LDP</ a > ].
152
152
</ dd >
153
153
< dt > < dfn > LDPCv</ dfn > :</ dt >
@@ -175,7 +175,7 @@ <h2>Terminology</h2>
175
175
</ dd >
176
176
< dt > < dfn > TimeMap</ dfn > :</ dt >
177
177
< dd >
178
- A type of resource defined in [< a href ="https://tools.ietf.org/html/rfc7089#section-1.1 "> Memento</ a > ] that
178
+ A type of resource defined in [< a href ="https://tools.ietf.org/html/rfc7089#section-1.1 "> Memento</ a > ] that
179
179
contains a machine-readable listing of < a > URI-M</ a > s associated to a given < a > URI-R</ a > .
180
180
</ dd >
181
181
</ dl >
@@ -188,15 +188,15 @@ <h2>General</h2>
188
188
< p >
189
189
If a < code > Link: rel="type"</ code > header specifies an < a > LDP-NR</ a > interaction model
190
190
(< code > ldp:NonRDFSource</ code > ), then the server SHOULD handle subsequent requests
191
- to the newly created resource as if it is a < a > LDP-NR</ a > .
191
+ to the newly created resource as if it is a < a > LDP-NR</ a > .
192
192
([[!LDP]] < a href ="https://www.w3.org/TR/ldp/#ldpc-post-createrdf "> 5.2.3.4 extension</ a > )
193
193
</ p >
194
194
< section id ="LDPC ">
195
195
< h2 > LDP Containers</ h2 >
196
196
< p >
197
197
Implementations MUST support the creation and management of [[!LDP]] Containers.
198
198
LDP Direct Containers MUST NOT permit < code > ldp:contains</ code > as their membership-predicate
199
- and requests that would do so MUST fail with 409 Conflict.
199
+ and requests that would do so MUST fail with 409 Conflict.
200
200
([[!LDP]] < a href ="https://www.w3.org/TR/ldp/#ldpdc-containtriples "> 5.4.1.4 expansion</ a > )
201
201
</ p >
202
202
</ section >
@@ -205,25 +205,25 @@ <h2>LDP Containers</h2>
205
205
< section id ="httpPATCH ">
206
206
< h2 > HTTP PATCH</ h2 >
207
207
< p >
208
- Any < a > LDP-RS</ a > MUST support PATCH ([[!LDP]]
209
- < a href ="https://www.w3.org/TR/ldp/#ldpr-HTTP_PATCH "> 4.2.7</ a > MAY becomes MUST).
210
- [[!sparql11-update]] MUST be an accepted content-type for PATCH. Other content-types (e.g. [[ldpatch]])
211
- MAY be available. If an otherwise valid HTTP PATCH request is received that attempts to add statements to a
212
- resource that a server disallows (not ignores per [[!LDP]]
208
+ Any < a > LDP-RS</ a > MUST support < code > PATCH</ code > ([[!LDP]]
209
+ < a href ="https://www.w3.org/TR/ldp/#ldpr-HTTP_PATCH "> 4.2.7</ a > MAY becomes MUST).
210
+ [[!sparql11-update]] MUST be an accepted content-type for < code > PATCH</ code > . Other content-types (e.g. [[ldpatch]])
211
+ MAY be available. If an otherwise valid HTTP < code > PATCH</ code > request is received that attempts to add statements to a
212
+ resource that a server disallows (not ignores per [[!LDP]]
213
213
< a href ="https://www.w3.org/TR/ldp/#ldpr-put-replaceall "> 4.2.4.1</ a > ), the server MUST fail
214
214
the request by responding with a 4xx range status code (e.g. 409 Conflict). The server MUST
215
215
provide a corresponding response body containing information about which statements could
216
- not be persisted. ([[!LDP]] < a href ="https://www.w3.org/TR/ldp/#ldprs-put-failed "> 4.2.4.4</ a > SHOULD becomes
217
- MUST). In that response the restrictions causing such a request to fail MUST be described in a resource
218
- indicated by a < code > Link: rel="http://www.w3.org/ns/ldp#constrainedBy"</ code > response header per
216
+ not be persisted. ([[!LDP]] < a href ="https://www.w3.org/TR/ldp/#ldprs-put-failed "> 4.2.4.4</ a > SHOULD becomes
217
+ MUST). In that response the restrictions causing such a request to fail MUST be described in a resource
218
+ indicated by a < code > Link: rel="http://www.w3.org/ns/ldp#constrainedBy"</ code > response header per
219
219
[[!LDP]] < a href ='https://www.w3.org/TR/ldp/#ldpr-gen-pubclireqs '> 4.2.1.6</ a > .
220
- A successful PATCH request MUST respond with a 2xx status code; the specific code in the 2xx
220
+ A successful < code > PATCH</ code > request MUST respond with a 2xx status code; the specific code in the 2xx
221
221
range MAY vary according to the response body or request state.
222
222
</ p >
223
223
< section id ="httpPATCH-ixn-models ">
224
224
< h3 > Interaction models</ h3 >
225
225
< p >
226
- The server MUST disallow a PATCH request that would change the LDP interaction model of a
226
+ The server MUST disallow a < code > PATCH</ code > request that would change the LDP interaction model of a
227
227
resource to a type that is not a subtype of the current resource type. That request MUST be
228
228
rejected with a 409 Conflict response.
229
229
</ p >
@@ -233,25 +233,25 @@ <h3>Interaction models</h3>
233
233
< section id ="httpPOST ">
234
234
< h2 > HTTP POST</ h2 >
235
235
< p >
236
- Any < a > LDPC</ a > MUST support POST ([[!LDP]] < a href ="https://www.w3.org/TR/ldp/#ldpr-HTTP_POST "> 4.2.3</ a > /
236
+ Any < a > LDPC</ a > MUST support < code > POST</ code > ([[!LDP]] < a href ="https://www.w3.org/TR/ldp/#ldpr-HTTP_POST "> 4.2.3</ a > /
237
237
< a href ="https://www.w3.org/TR/ldp/#ldpc-HTTP_POST "> 5.2.3</ a > ). The default interaction model that
238
238
will be assigned when there is no explicit Link header in the request MUST be recorded
239
239
in the constraints document referenced in the < code > Link: rel="http://www.w3.org/ns/ldp#constrainedBy"</ code >
240
- header ([[!LDP]] < a href ='https://www.w3.org/TR/ldp/#ldpr-gen-pubclireqs '> 4.2.1.6</ a > clarification).
241
- Any < a > LDPC</ a > MUST support creation of < a > LDP-NR</ a > s on POST ([[!LDP]]
242
- < a href ="https://www.w3.org/TR/ldp/#h-ldpc-post-createbins "> 5.2.3.3</ a > MAY becomes MUST). On creation of an
243
- < a > LDP-NR</ a > an implementation MUST create an associated < a > LDP-RS</ a > describing that < a > LDP-NR</ a >
240
+ header ([[!LDP]] < a href ='https://www.w3.org/TR/ldp/#ldpr-gen-pubclireqs '> 4.2.1.6</ a > clarification).
241
+ Any < a > LDPC</ a > MUST support creation of < a > LDP-NR</ a > s on < code > POST</ code > ([[!LDP]]
242
+ < a href ="https://www.w3.org/TR/ldp/#h-ldpc-post-createbins "> 5.2.3.3</ a > MAY becomes MUST). On creation of an
243
+ < a > LDP-NR</ a > an implementation MUST create an associated < a > LDP-RS</ a > describing that < a > LDP-NR</ a >
244
244
([[!LDP]] < a href ="https://www.w3.org/TR/ldp/#h-ldpc-post-createbinlinkmetahdr "> 5.2.3.12</ a > MAY becomes MUST).
245
245
</ p >
246
246
< section id ="httpPOSTLDPNR ">
247
247
< h2 > LDP-NRs</ h2 >
248
248
< p >
249
- A HTTP POST request that would create a < a > LDP-NR</ a > and includes a < code > Digest</ code > header
249
+ A HTTP < code > POST</ code > request that would create a < a > LDP-NR</ a > and includes a < code > Digest</ code > header
250
250
(as described in [[!RFC3230]]) for which the instance-digest in that header does not
251
251
match that of the new < a > LDP-NR</ a > MUST be rejected with a 409 Conflict response.
252
252
</ p >
253
253
< p >
254
- A HTTP POST request that includes an unsupported < code > Digest</ code > type (as described
254
+ A HTTP < code > POST</ code > request that includes an unsupported < code > Digest</ code > type (as described
255
255
in [[!RFC3230]]), SHOULD be rejected with a 400 Bad Request response.
256
256
</ p >
257
257
< p >
@@ -267,7 +267,7 @@ <h2>LDP-NRs</h2>
267
267
< section id ="httpPUT ">
268
268
< h2 > HTTP PUT</ h2 >
269
269
< p >
270
- When accepting a PUT request against an extant resource, an HTTP < code > Link: rel="type"</ code >
270
+ When accepting a < code > PUT</ code > request against an extant resource, an HTTP < code > Link: rel="type"</ code >
271
271
header MAY be included. If that type is a value in the LDP namespace and is not either a
272
272
current type of the resource or a subtype of a current type of the resource, the request MUST be
273
273
rejected with a 409 Conflict response. If the type in the Link header is a subtype of a current type
@@ -278,15 +278,15 @@ <h2>HTTP PUT</h2>
278
278
< section id ="httpPUTLDPNR ">
279
279
< h2 > < a > LDP-NR</ a > s</ h2 >
280
280
< p >
281
- Any < a > LDP-NR</ a > MUST support PUT to replace the binary content of that resource.
281
+ Any < a > LDP-NR</ a > MUST support < code > PUT</ code > to replace the binary content of that resource.
282
282
</ p >
283
283
< p >
284
- A HTTP PUT request that includes a < code > Digest</ code > header (as described
284
+ A HTTP < code > PUT</ code > request that includes a < code > Digest</ code > header (as described
285
285
in [[!RFC3230]]) for which any instance-digest in that header does not match the instance
286
286
it describes, MUST be rejected with a 409 Conflict response.
287
287
</ p >
288
288
< p >
289
- A HTTP PUT request that includes an unsupported < code > Digest</ code > type (as described
289
+ A HTTP < code > PUT</ code > request that includes an unsupported < code > Digest</ code > type (as described
290
290
in [[!RFC3230]]), SHOULD be rejected with a 400 Bad Request response.
291
291
</ p >
292
292
< p >
@@ -301,26 +301,26 @@ <h2><a>LDP-NR</a>s</h2>
301
301
< section id ="httpPUTLDPRS ">
302
302
< h2 > LDP-RSs</ h2 >
303
303
< p >
304
- Any < a > LDP-RS</ a > MUST support PUT to update statements that are not server-managed triples
305
- (as defined in [[!LDP]] 2). [[!LDP]] < a href ="https://www.w3.org/TR/ldp/#ldpr-put-replaceall "> 4.2.4.1</ a >
306
- and < a href ="https://www.w3.org/TR/ldp/#ldprs-put-servermanagedprops "> 4.2.4.3</ a > remain in effect. If an
307
- otherwise valid HTTP PUT request is received that attempts to add statements to a resource that a
308
- server disallows (not ignores per [[!LDP]] < a href ="https://www.w3.org/TR/ldp/#ldpr-put-replaceall "> 4.2.4.1</ a > ),
309
- the server MUST fail the request by responding with a 4xx range status code (e.g. 409 Conflict). The server
304
+ Any < a > LDP-RS</ a > MUST support < code > PUT</ code > to update statements that are not server-managed triples
305
+ (as defined in [[!LDP]] 2). [[!LDP]] < a href ="https://www.w3.org/TR/ldp/#ldpr-put-replaceall "> 4.2.4.1</ a >
306
+ and < a href ="https://www.w3.org/TR/ldp/#ldprs-put-servermanagedprops "> 4.2.4.3</ a > remain in effect. If an
307
+ otherwise valid HTTP < code > PUT</ code > request is received that attempts to add statements to a resource that a
308
+ server disallows (not ignores per [[!LDP]] < a href ="https://www.w3.org/TR/ldp/#ldpr-put-replaceall "> 4.2.4.1</ a > ),
309
+ the server MUST fail the request by responding with a 4xx range status code (e.g. 409 Conflict). The server
310
310
MUST provide a corresponding response body containing information about which statements could not be
311
- persisted. ([[!LDP]] < a href ="https://www.w3.org/TR/ldp/#ldprs-put-failed "> 4.2.4.4</ a > SHOULD becomes MUST).
312
- In that response the restrictions causing such a request to fail MUST be described in a resource indicated
313
- by a < code > Link: rel="http://www.w3.org/ns/ldp#constrainedBy"</ code > response header per [[!LDP]]
311
+ persisted. ([[!LDP]] < a href ="https://www.w3.org/TR/ldp/#ldprs-put-failed "> 4.2.4.4</ a > SHOULD becomes MUST).
312
+ In that response the restrictions causing such a request to fail MUST be described in a resource indicated
313
+ by a < code > Link: rel="http://www.w3.org/ns/ldp#constrainedBy"</ code > response header per [[!LDP]]
314
314
< a href ='https://www.w3.org/TR/ldp/#ldpr-gen-pubclireqs '> 4.2.1.6</ a > .
315
315
</ p >
316
316
</ section >
317
317
318
318
< section id ="httpPUTcreate ">
319
319
< h2 > Creating resources with HTTP PUT</ h2 >
320
320
< p >
321
- An implementation MUST accept HTTP PUT to create resources.([[!LDP]]
321
+ An implementation MUST accept HTTP < code > PUT</ code > to create resources.([[!LDP]]
322
322
< a href ="https://www.w3.org/TR/ldp/#ldpr-put-create "> 4.2.4.6</ a > MAY becomes MUST). The default interaction model that will
323
- be assigned when there is no explicit < code > Link: rel="type"</ code > header in the request MUST be recorded
323
+ be assigned when there is no explicit < code > Link: rel="type"</ code > header in the request MUST be recorded
324
324
in the constraints document referenced in the < code > Link: rel="http://www.w3.org/ns/ldp#constrainedBy"</ code >
325
325
header ([[!LDP]] < a href ='https://www.w3.org/TR/ldp/#ldpr-gen-pubclireqs '> 4.2.1.6</ a > clarification).
326
326
</ p >
@@ -357,18 +357,18 @@ <h2>Additional values for the <code>Prefer</code> header</h2>
357
357
< section id ="httpGETLDPNR ">
358
358
< h2 > < a > LDP-NR</ a > s</ h2 >
359
359
< p >
360
- GET requests to any < a > LDP-NR</ a > MUST correctly respond to the < code > Want-Digest</ code > header
360
+ < code > GET</ code > requests to any < a > LDP-NR</ a > MUST correctly respond to the < code > Want-Digest</ code > header
361
361
defined in [[!RFC3230]] unless the < code > Content-Type</ code > of the < a > LDP-NR</ a > is a
362
362
< code > message/external-body</ code > extension.
363
363
</ p >
364
364
< p >
365
- GET requests to a < a > LDP-NR</ a > with < code > Content-Type: message/external-body</ code > , MUST result
365
+ < code > GET</ code > requests to a < a > LDP-NR</ a > with < code > Content-Type: message/external-body</ code > , MUST result
366
366
in an HTTP 3xx redirect message redirecting to the external URL.
367
367
</ p >
368
368
< section id ="httpGETLDPNR-fixity-expectation ">
369
369
< h3 > < code > Expect: 202-digest</ code > </ h3 >
370
370
< p >
371
- GET requests to a < a > LDP-NR</ a > SHOULD respond to < code > Expect</ code > request headers with a
371
+ < code > GET</ code > requests to a < a > LDP-NR</ a > SHOULD respond to < code > Expect</ code > request headers with a
372
372
parameterized < a href ="#202-digest "> < code > 202-digest</ code > </ a > expectation. Implementations
373
373
MAY support unparameterized < code > 202-digest</ code > expectations. Implementations that do not
374
374
support one of these expectations MUST reject < a href ="#202-digest "> 202-digest</ a > requests
@@ -431,7 +431,7 @@ <h2>HTTP PUT</h2>
431
431
< section id ="httpput-general ">
432
432
< h2 > General</ h2 >
433
433
< p >
434
- An < a > LDPRv</ a > MAY support PUT. An implementation receiving a PUT request for an
434
+ An < a > LDPRv</ a > MAY support < code > PUT</ code > . An implementation receiving a < code > PUT</ code > request for an
435
435
< a > LDPRv</ a > MUST both correctly respond as per [[!LDP]] as well as create a new
436
436
< a > LDPRm</ a > contained in an appropriate < a > LDPCv</ a > . The newly-created < a > LDPRm</ a >
437
437
SHOULD be the version of the < a > LDPRv</ a > that was created by the < code > PUT</ code > request.
@@ -479,7 +479,7 @@ <h2>General</h2>
479
479
< section >
480
480
< h2 > HTTP DELETE</ h2 >
481
481
< p >
482
- An implementation MAY support < code > DELETE</ code > for < a > LDPRm</ a > s. If DELETE is
482
+ An implementation MAY support < code > DELETE</ code > for < a > LDPRm</ a > s. If < code > DELETE</ code > is
483
483
supported, the server is responsible for all behaviors implied by the LDP-containment
484
484
of the < a > LDPRm</ a > .
485
485
</ p >
@@ -577,7 +577,7 @@ <h2>HTTP OPTIONS</h2>
577
577
An implementation MUST < code > Allow: GET, HEAD, OPTIONS</ code > as per [[!LDP]]. An
578
578
implementation MAY < code > Allow: DELETE</ code > if the versioning behavior is removable
579
579
by deleting the < a > LDPCv</ a > . See < a href ='#ldpcvdelete '> </ a > for requirements on
580
- DELETE if supported.
580
+ < code > DELETE</ code > if supported.
581
581
</ p >
582
582
< p >
583
583
An implementation MAY < code > Allow: PATCH</ code > if the < a > LDPCv</ a > has mutable properties.
@@ -709,7 +709,7 @@ <h2>What is fixity?</h2>
709
709
< h2 > Transmission Fixity</ h2 >
710
710
< p >
711
711
Transmission fixity is verified by application of the < code > Digest</ code > header
712
- defined in [[RFC3230]] to POST and PUT requests for < a > LDP-NR</ a > .
712
+ defined in [[RFC3230]] to < code > POST</ code > and < code > PUT</ code > requests for < a > LDP-NR</ a > .
713
713
</ p >
714
714
</ section >
715
715
0 commit comments