12
Fedora + Atom Edwin Shin Fedora Commons http://www.fedora-commons.org/

Fedora + Atom Edwin Shin Fedora Commons

  • View
    238

  • Download
    7

Embed Size (px)

Citation preview

Page 1: Fedora + Atom Edwin Shin Fedora Commons

Fedora + Atom

Edwin Shin

Fedora Commonshttp://www.fedora-commons.org/

Page 2: Fedora + Atom Edwin Shin Fedora Commons

Acknowledgements

University of London MediaShelf

Page 3: Fedora + Atom Edwin Shin Fedora Commons

Serialization vs. Protocol

Syndication Format RFC4287 XML-based

document format e.g. BBC headlines

Publishing Protocol RFC5023 HTTP-based, RESTful

publishing protocol e.g. GData

Page 4: Fedora + Atom Edwin Shin Fedora Commons

Why Atom?

Simple, but flexible & extensible Widespread adoption

From news & blogs to OAI-ORE Tool support

Libraries for Java, Ruby, .NET, etc. Feed readers

== lightweight recipe for enabling interoperability

Page 5: Fedora + Atom Edwin Shin Fedora Commons

Fedora Atom Serialization

Alternative serialization to FOXML & METS Atom ORE serialization ZARCHIVE Context

A ZIP archive of a Fedora object, with an Atom manifest Messaging Format

Page 6: Fedora + Atom Edwin Shin Fedora Commons

Atom

<feed> <id>info:fedora/demo:SmileyBeerGlass</id> <entry> <id>info:fedora/demo:SmileyBeerGlass/FULL_SIZE</id> <title type="text">FULL_SIZE</title> <updated>2008-04-03T10:47:21.162Z</updated> <link href="info:fedora/demo:SmileyBeerGlass/FULL_SIZE/2008-04-03T10:47:21.162Z"

rel="alternate"/> <category term="E" scheme="info:fedora/fedora-system:def/model#controlGroup"/> </entry> <entry xmlns:thr="http://purl.org/syndication/thread/1.0"> <id>info:fedora/demo:SmileyBeerGlass/FULL_SIZE/2008-04-03T10:47:21.162Z</id> <title type="text">FullSize.jpg.0</title> <updated>2008-04-03T10:47:21.162Z</updated> <thr:in-reply-to ref="info:fedora/demo:SmileyBeerGlass/FULL_SIZE"/> <summary type="text">FullSize.jpg.0</summary> <content type="image/jpeg" src="http://.../SmileyBeerGlass-FullSize.jpg"/> </entry></feed>

Page 7: Fedora + Atom Edwin Shin Fedora Commons

OREAtom<feed> <id>info:fedora/demo:SmileyBeerGlass</id> <link href="http://localhost:8080/fedora/get/demo:SmileyBeerGlass" rel="self"

type="application/atom+xml"/> <title type="text">Resource Map http://localhost:8080/fedora/get/demo:SmileyBeerGlass</title> <author><name>Fedora Repository Service</name></author> <link href="http://localhost:8080/fedora/get/demo:SmileyBeerGlass#aggregation"

rel="describes"/> <category term="http://www.openarchives.org/ore/terms/ResourceMap"

scheme="http://www.openarchives.org/ore/terms/" label="ResourceMap"/> <fedora-model:hasContentModel>info:fedora/demo:CmodelForBMech_DualResImageImpl</fedora-

model:hasContentModel> <dc:title>Smiley Beer Glass</dc:title> <rel:isMemberOf>info:fedora/demo:SmileyStuff</rel:isMemberOf> <entry> <id>info:fedora/demo:SmileyBeerGlass/FULL_SIZE</id> <updated>2008-04-03T10:39:23.473Z</updated> <title type="text">Aggregated Resource

http://localhost:8080/fedora/get/demo:SmileyBeerGlass/FULL_SIZE</title> <link href="http://localhost:8080/fedora/get/demo:SmileyBeerGlass/FULL_SIZE"

rel="alternate"/> <fedora-model:versionable>true</fedora-model:versionable> </entry> <entry> <id>info:fedora/demo:SmileyBeerGlass/MEDIUM_SIZE</id> <updated>2008-04-03T10:39:23.473Z</updated> <title type="text">Aggregated Resource

http://localhost:8080/fedora/get/demo:SmileyBeerGlass/MEDIUM_SIZE</title> <link href="http://localhost:8080/fedora/get/demo:SmileyBeerGlass/MEDIUM_SIZE"

rel="alternate"/> </entry></feed>

Page 8: Fedora + Atom Edwin Shin Fedora Commons

Zip Archive Context

<feed> <entry> <id>info:fedora/demo:SmileyBeerGlass/TEST/2008-04-03T11:19:40.440Z</id> <title type="text">TEST.0</title> <updated>2008-04-03T11:19:40.440Z</updated> <thr:in-reply-to ref="info:fedora/demo:SmileyBeerGlass/TEST"/> <category term="Managed Image" scheme="info:fedora/fedora-system:def/model#label"/> <summary type="text">TEST.0</summary> <content type="image/jpeg" src="TEST.0.jpg"/> </entry></feed>

Page 9: Fedora + Atom Edwin Shin Fedora Commons

API-M Messaging Format

<entry> <id>urn:uuid:8bcefc04-8391-4bf9-b0e7-d4822b829deb</id> <updated>2008-04-02T17:32:51.122Z</updated> <author> <name>fedoraAdmin</name> <uri>http://localhost:8080/fedora</uri> </author> <title type="text">purgeObject</title> <category scheme="http://www.fedora.info/definitions/1/0/types/pid" term="demo:foo" label="xsd:string"/> <summary>demo:foo</summary> <content type="text">2008-04-01T01:02:03.001Z</content></entry>

Page 10: Fedora + Atom Edwin Shin Fedora Commons

Deserialization

Atom as an ingest format Fedora objects ORE Resource Maps Any Atom feed

Remote invocation

Page 11: Fedora + Atom Edwin Shin Fedora Commons

Currently available in Subversion:

https://fedora-commons.svn.sourceforge.net/svnroot/fedora-

commons/fedora/branches/dev-146791

Page 12: Fedora + Atom Edwin Shin Fedora Commons

Future exploration

Modeling atomistic objects Atom Publishing Protocol

Implement over the REST-API SWORD