OPA-0.2 (now with json-wrapped all-formats bundle)

[Updated 2008-02-27, while (drinking late at night) at code4lib 2008, after realizing that these links don't work because unAPI v1 included a change from "uri" as the parameter name to "id". So I'm changing the links to make them work!]

Attached is OPA-0.2. The big new feature is an implicit "wrap" format for all providers, which sucks down all available object formats at once and wraps them all into a JSON structure that looks like the one I described a few days ago.

To make it easier to try out, I've installed OPA at http://opa.onebiglibrary.net/. Pass it a URI and formats to see it in action for yourself.

For Pubmed records:

For books:

For CiteSeer articles:

For flickr photos (notice that format=wrap will base64.encode() the data and leave the base64=True flag set; also there's a delay built into the flickr calls to ensure the API responds and doesn't get angry, so please be patient :):

If you want to see why the json-wrapping is useful, copy the text output of any of those format=wrap calls into a string in your favorite language and eval it into proper data using a json parser. It's a little nesty, but under the item and then under the item's resources ('res') you'll see all the data, right there, iterable and renderable. The whole blob could be easily up-cast into a MPEG21 DIDL or METS bundle, or you could serve images or other binary data right out of it by base64.decode()ing the data value.

Trackback URL for this post:

http://onebiglibrary.net/trackback/38
AttachmentSize
opa-0.2.tar.gz31.03 KB

Peter van Huisstede (not verified) on March 09th 2006

I currently am designing a so-called "voorportaal" (something in front of DSpace) in order to accomodate a really working University repository. Similar lines of development as you are sketching. We use a subversion fileserver, was thinking of YAML metadata, blobs.

dchud on March 09th 2006

Please send an update when you've got something to share!

Thanks, -dchud

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Allowed HTML tags: <a> <em> <strong> <cite> <pre> <code> <img> <ul> <ol> <li> <dl> <dt> <dd> <blockquote> <form> <input> <span> <object> <embed> <br>
  • Lines and paragraphs break automatically.
  • You can enable syntax highlighting of source code with the following tags: <code>, <blockcode>, <apache>, <bash>, <css>, <diff>, <dot>, <java>, <javascript>, <mysql>, <perl>, <php>, <python>, <rails>, <ruby>, <sql>, <xml>. Beside the tag style "<foo>" it is also possible to use "[foo]".

More information about formatting options

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
1 + 12 =
Solve this simple math problem and enter the result. E.g. for 1+3, enter 4.