Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. External Binary Content
    1. Spec: Must advertise support in the Accept-Post response header for each supported type parameter of supported Content-Type values (url and local-file)
    2. Spec: requests that would create or update a LDP-NR with a message/external-body with an unsupported access-type parameter must respond with HTTP 415 UNSUPPORTED MEDIA TYPE
      1. For example, the following should return a 415:

        Code Block
        curl -XPUT -H"Content-Type: message/external-body; access-type=ftp; NAME=\"/some/file\"; site=\"example.com\"" -i localhost:8080/rest/external


    3. Spec: Fedora servers receiving requests that would create or update a LDP-NR with a message/external-bodymust not accept the request if it cannot guarantee all of the response headers required by the LDP-NR interaction model in this specification.
      1. Modeshape impl: Add support for Want-Digest on external content
    4. Spec: LDP-NR GET and HEAD responses should include a Content-Location header with a URI representation of the location of the external content if the Fedora server is proxying the content.
      1. Modeshape impl: add support for Content-Location header on external content
    5. Spec: Requests that would create or update a LDP-NR with a message/external-body content type should respect the expiration parameter, if present, by copying content
      1. Modeshape impl: add support for copying content into the repository when "expiration" parameter is present in create/update requests
    6. Ensure 'Accept-Post' header includes 'message/external-body' url and local-file
    7. Respond with 415 code for other access-type values
    8. Ensure all LDP-NR headers are included in external content responses
    9. 'Location' header should include 'Content-Location' with URI of external content
    10. Add support for 'expiration' parameter, to copy content into the repo
      • First step could be 4xx response with 'constrainedby' Link

    3.1.1

    1. NonRDFSource link header must be supported, regardless of Content-Type

    3.2.1

    1. Must allow interaction model to change to subtype of current model

    2. Must disallow PATCH to change ixn model to non-subtype of current model
    Note

    Since the only types supported are NonRDFSource, BasicContainer, DirectContainer and IndirectContainer (none of which are subtypes of any of the others), this effectively means that types cannot be changed after creation. In particular, DirectContainers and IndirectContainers cannot be created as BasicContainers and then PATCHed with the new type and membership predicates.

    3.3

    1. POST creation must return a 'constrainedby' header indicating ixn model

    3.3.1

    1. Ensure that LDP-NR creation requests fail with correct response code
      • 409 for mismatch
      • 400 for unsupported algorithm

    3.4

    1. PUT update of resource must fail with 409 if changing ixn model to non-subtype

    3.5.1

    1. MAY add support for 'PreferContainedDescriptions': not just URIs of contained

    3.5.2

    1. Ensure correct behavior of returning 'Preference-Applied' header

    3.5.3

    1. Add support for 'Want-Digest' header

    3.6

    1. Ensure Digest header is the same of HEAD as GET
    2. Ensure payload headers are omitted on GET (see: rfc7231:section3.3)

    3.7.1

    1. Add support for DEPTH header, values: 0 and infinity
    2. Respond with 400 for other values of DEPTH

...