...
- Define a generic method (or set of methods) for applying partial changes to datastreams.
- Implement it for RELS-EXT and RELS-INT (RDF-based) so that additions and deletions to those datastreams can be made via SPARQL update.
Example:
- HTTP Verb: PUT
- URL: /objects/{pid}/fedora-system:SomeBuiltInSDef/updateDatastream?dsID={dsID}&type=sparql-update
- Body: A SPARQL/Update document (UTF-8?) to apply to the datastream
- Successful response:**
- Code: 201
- Location header: URL to datastream
- Failed response:**
- If datastream doesn't exist: TBD
- If input document is malformed: TBD
Notes:
- Modifying the entire content of a datastream would still be possible via a POST to the datastream URL as it is today.
- The syntax for invoking disseminations has not yet been decided for the REST API; the URL above with fedora-system:SomeBuiltInSDef assumes an obvious possible syntax.
Thoughts?
Please feel free to comment on this proposal here or on the dev list.