...
This document was originally produced on June 19, 2007 by MediaShelf, LLC in collaboration with the Fedora Team and the RUBRIC project The original version of the document is available at http://www.yourmediashelf.com/reference/fedora/webservices/REST%20Proposal%20-%20v1.1.pdf
Overview
The Problem Space
...
===<span class="s6" style="color:#999999">
No Format |
---|
http://[host]:[port]/fedora |
</span><span class="s4">* /objects*</span>h2.
PUT, POST: Create Object (auto-assign pid)
...
<span class="s6" style="color:#999999">
No Format |
---|
http://[host]:[port]/fedora |
</span><span class="s4">* /objects/pid*</span>===
PUT: Create Object
<span class="s5">Parameters: </span>message body pidNamespace format logMessage
...
===<span class="s6" style="color:#999999">
No Format |
---|
http://[host]:[port]/fedora |
</span><span class="s4">* /objects/pid;edit*</span>=h1.
Retrieve editor view for the object identified by pid
...
DELETE (return error)
Note _from Matt_
No Format |
---|
: using ;edit rather than /edit prevents conflicts with datastreams with dsid of "edit". However, it might actually be convenient to use /edit. That way, administrators could override the default "edit" view by creating a datastream with a dsId "edit" |
*Datastreams*h1.
=<span class="s6" style="color:#999999">
No Format |
---|
http://[host]:[port]/fedora |
</span><span class="s4">* /datastreams/pid OR /objects/pid/datastreams*h2.
PUT, POST: Create or Update Datastream (auto assign dsID)
...
<span class="s6" style="color:#999999">
No Format |
---|
http://[host]:[port]/fedora |
</span><span class="s4">* /datastreams/pid/dsId OR /objects/pid/dsid*===
PUT: Create or Update Datastream
...
===<span class="s6" style="color:#999999">
No Format |
---|
http://[host]:[port]/fedora |
</span><span class="s4">* /datastreams/pid/dsId;edit _OR _/objects/pid/dsId;edit*=h1.
Retrieve editor view for the datastream identified by dsId within the object identified by pid.
...
=<span class="s6" style="color:#999999">
No Format |
---|
http://[host]:[port]/fedora |
</span><span class="s4">* /disseminators/pid*</span>===
PUT, POST: Create Disseminator (auto assign dissID)
...
===<span class="s6" style="color:#999999">
No Format |
---|
http://[host]:[port]/fedora |
</span><span class="s4">* /disseminators/pid/dissId*===
PUT: Create Disseminator
<span class="s5">Parameters: </span>message body bDefPid bMechPid dissLabel bindingMap dissState logMessage<span class="s5">  </span>
...
===<span class="s6" style="color:#999999">
No Format |
---|
http://[host]:[port]/fedora |
</span><span class="s4">* /objects/pid/bdefPid/method*=h1.
GET: Retrieve Dissemination Results
...
=<span class="s6" style="color:#999999">
No Format |
---|
http://[host]:[port]/fedora |
</span><span class="s4">* /relationships/pid*</span>h2.
<span class="s6" style="color:#999999">
No Format |
---|
http://[host]:[port]/fedora |
</span><span class="s4">* /relationships/pid*</span>===
PUT: Create Relationship
<span class="s5">Parameters: </span>message body predicate target
...
===<span class="s6" style="color:#999999">
No Format |
---|
http://[host]:[port]/fedora |
</span><span class="s4">* /repository*</span>=h1.
GET: Get Repository Info
Parameters: (none)
...
=<span class="s6" style="color:#999999">
No Format |
---|
http://[host]:[port]/fedora |
</span><span class="s4">* /users/user*</span>=h1.
GET: Get User Info
Parameters: (none)
...
Following the pattern of the fedora:ADMIN-VIEWS object, administrators can create any number of alternate "edit" views and bind them to objects or content models via disseminators. In this way, the default administrative user interface serves as a reference example for administrators and developers who wish to create custom editor views.
_Issue_
No Format |
---|
: Should there be the opportunity to return alternate views depending on user role? How could we implement this? |
_Issue: _Should the distro versions of the view be stored outside of the datastore?
...
Solution 1<span class="s5">_
No Format |
---|
: |
_</span>
/objects/pid/datastreams
PUT (auto assign dsID)
...
GET (getDatstreams) ? list
_Conclusion_
No Format |
---|
: Use both. |
2) Referring to existing relationships (for update and purge)
...