Uploaded image for project: 'OASIS Content Management Interoperability Services (CMIS) TC'
  1. OASIS Content Management Interoperability Services (CMIS) TC
  2. CMIS-264

Streaming handling for Folder Children Collection POST needs clarification.

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: REST/AtomPub Binding
    • Labels:
      None
    • Proposal:
      Hide

      Clarify how this works in AtomPub and provide better writeup

      Show
      Clarify how this works in AtomPub and provide better writeup

      Description

      540-545 - would be clearer merged into one paragraph because the "part of the atom entry" @544 is actually what you need to do when the stream is required by the type (as @540). You can't do edit-media (@545) when the stream is required.

      First, stream is no longer a valid link.

      Second, on edit-media: If you are POSTing to create a document and the stream is required, then it must all come in a single request, the properties and the stream. To use edit-media, you would POST the properties, then fetch the properties from the location header, and find the edit-media link. Then you'd PUT to the edit-media resource to create the stream. However, there is nothing that guarantees that you'd ever follow through on the edit-media PUT, and the document (in this case) requires a stream (i.e. can't be created without one). So the only choices are:
      o Create a document in a checked-out form, and ensure that a stream is created at some time before check-in. Some repos may not be able to do this, and this interaction model is not described anywhere in Part I or II.
      o Require the repo to create an appropriate "dummy" stream. It may not be possible to do this for all document types, and some repos may not be able to handle this. Also, this interaction model is not described in Part I or II.
      o Require the stream as a part of the createDocument service invocation (POST to folder collection). This is what is described in Part I. The only two ways I am aware of to satisfy this for POST is to base64 encode the stream as part of the Entry's content element, or somehow do a multi-part POST (but I haven't looked into AtomPub to see if this is ok).
      o I guess the other way to do this would be to create a new resource for pre-creating content stream data - PUT to this and get back a (temp) identifier that could be referenced by the POST to createDocument. But this is entirely new.

        Attachments

          Activity

            People

            • Assignee:
              albertcbrown Al Brown (Inactive)
              Reporter:
              ryan.mcveigh Ryan McVeigh (Inactive)
            • Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: