...
Code Block |
---|
SDef pid: thought-exp:ImageItem method: media # Image Resource for this item method: entry # Atom entry for this item |
Code Block |
---|
SDef pid: thought-exp:Datastreams
method: service # APP Service document for one object's datastream collection
method: feed # atom feed listing all datastreams + versions
---
has model: atom:DomainModel # This model has Sdef atom:Domain, so this object
# has method atom:Domain/feeds, which list all
# object feeds (may be dangerous!!!)
|
...
Code Block | ||||
---|---|---|---|---|
| ||||
<feed xmlns="http://www.w3.org/2005/Atom"> <title>Smiley Stuff Images</title> <link href="http://example.org/fedora/services/demo:SmileyStuff/thought-exp:ImageCollection/feed" rel="self"/> <updated>1980-03-20T09:15:02Z</updated> <author> <name>Chis Wilper</name> </author> <id>info:fedora/demo:SmileyStuff/thought-exp:ImageCollection</id> <entry> <title>Smiley Toilet Brush</title> <id>info:fedora/demo:SmileyToiletBrush/thought-exp:ImageItem</id> <updated>1979-10-07T17:17:08Z</updated> <content type="image/png" src="http://example.org/fedora/services/demo:SmileyToiletBrush/thought-exp:ImageItem/media"/> <link rel="edit-media" href="http://example.org/fedora/services/demo:SmileyToiletBrush/thought-exp:ImageItem/media" /> <link rel="edit" href="http://example.org/fedora/services/demo:SmileyToiletBrush/thought-exp:ImageItem/entry" /> </entry> </feed> |
POST - Accept only media items (i.e. images in supported formats). A POSTed image would cause the following to happen:
...
GET - Get the entry
Code Block | ||||
---|---|---|---|---|
| ||||
<entry xmlns="http://www.w3.org/2005/Atom"> <title>Smiley Beer Glass</title> <id>info:fedora/demo:SmileyBeerGlass/thought-exp:ImageItem</id> <updated>1979-10-07T17:17:08Z</updated> <content type="image/png" src="http://example.org/fedora/services/demo:SmileyBeerGlass/thought-exp:ImageItem/media"/> <link rel="edit-media" href="http://example.org/fedora/services/demo:SmileyBeerGlass/thought-exp:ImageItem/media" /> <link rel="edit" href="http://example.org/fedora/services/demo:SmileyBeerGlass/thought-exp:ImageItem/entry" /> </entry> |
...
Code Block | ||||
---|---|---|---|---|
| ||||
<feed xmlns="http://www.w3.org/2005/Atom"> <title>demo:SmileyBeerGlass datastreams</title> <link href="http://example.org/fedora/services/demo:SmileyBeerGlass/thought-exp:Datastreams/feed" rel="self"/> <updated>1980-03-20T09:15:02Z</updated> <author> <name>Chis Wilper</name> </author> <id>info:fedora/demo:SmileyBeerGlass/thought-exp:Datastreams</id> <entry> <title type="text">RELS-EXT</title> <id>info:fedora/demo:SmileyBeerGlass/thought-exp:Datastream/RELS-EXT</id> <updated>1979-10-07T17:17:08Z</updated> <content type="application/rdf+xml" src="http://example.org/fedora/services/demo:SmileyBeerGlass/thought-exp:Datastream/media?id=RELS-EXT"/> <link rel="edit-media" href="http://example.org/fedora/services/demo:SmileyBeerGlass/thought-exp:Datastream/media?id=RELS-EXT" /> <link rel="edit" href="http://example.org/fedora/services/demo:SmileyBeerGlass/thought-exp:Datastream/entry?id=RELS-EXT" /> </entry> <entry xmlns:thr="http://purl.org/syndication/thread/1.0"> <title type="text">RELS-EXT.0</title> <id>info:fedora/demo:SmileyBeerGlass/thought-exp:Datastream/RELS-EXT.0</id> <updated>1979-10-07T17:17:08Z</updated> <thr:in-reply-to ref="info:fedora/demo:SmileyBeerGlass/thought-exp:Datastream/RELS-EXT"/> <content type="application/rdf+xml" src="http://example.org/fedora/services/demo:SmileyBeerGlass/thought-exp:Datastream/media?id=RELS-EXT&version=1979-10-07T17:17:08Z"/> <link rel="edit" href="http://example.org/fedora/services/demo:SmileyBeerGlass/thought-exp:Datastream/entry?id=RELS-EXT&version=1979-10-07T17:17:08Z" /> </entry> </feed> |
...
PUT - Modify entry metadata (Not sure what consequences are...)
The Other objects...
So far, we've really only discussed the public "interfaces" of AtomPub in a writable CMA - the SDefs, URIs, and data formats. Let us now see if the surrounding objects (instance objects, content models, and Service Deployments) are tractable...
page is unfinished. Need to put in discussion, questions/implications, and basic conclusion as to whether this makes sense, and if it truly adds any value to, say, an external APP service.