Sword Bl 0903[1]


Published on

SWORD presentation give at the British Library.

Published in: Technology, Economy & Finance
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Sword Bl 0903[1]

    1. 1. SWORD Simple Web-service Offering Repository Deposit Julie Allinson 25th March 2009, British Library
    2. 2. SWORD Quick Introduction <ul><li>Vision: “lowering barriers to deposit” </li></ul><ul><li>Simple Web service Offering Repository Deposit </li></ul><ul><li>Aims to provide a standard mechanism for ‘doing deposit’ into repositories </li></ul><ul><li>JISC funded project started 2007, continuation funding for SWORD 2 from June 2008 </li></ul>
    3. 3. What is it? <ul><li>A lightweight protocol for deposit </li></ul><ul><li>A profile of the Atom Publishing Protocol </li></ul><ul><li>Implementations of SWORD in IntraLibrary, Fedora, DSpace and Eprints repositories </li></ul><ul><li>SWORD clients – web-based, desktop, MS Office plugin, Facebook, widgets </li></ul>
    4. 4. Motivations – why? <ul><li>no standard interface for tagging, packaging or authoring tools to upload objects into a repository </li></ul><ul><li>no standard interface for transferring digital objects between repositories </li></ul><ul><li>no way to deposit into more than one repository with one ‘click’ </li></ul><ul><li>no way of initiating a deposit workflow from outside a repository system </li></ul>
    5. 5. The Project Partners <ul><li>SWORD partners: </li></ul><ul><ul><li>UKOLN, University of Bath and University of York (Project Management) – Adrian Stevenson & Julie Allinson </li></ul></ul><ul><ul><li>University of Aberystwyth (DSpace, Fedora, & clients) – Stuart Lewis, Neil Taylor, Glen Robson, Richard Jones </li></ul></ul><ul><ul><li>University of Southampton (EPrints) – Les Carr, Seb Francois </li></ul></ul><ul><ul><li>Intrallect (IntraLibrary) – Sarah Currier, Andrew Robson, Martin Morrey </li></ul></ul><ul><ul><li>Jim Downing – standards development </li></ul></ul>
    6. 6. Use Cases <ul><li>Deposit from a Desktop/Online tool </li></ul><ul><li>Multiple deposit - e.g. deposit to institutional and (mandated) funders’ repository with one action </li></ul><ul><li>Machine deposit - e.g. automated deposit from a laboratory machine </li></ul><ul><li>Migration/transfer - e.g. to a preservation service </li></ul><ul><li>Mediated deposit - e.g. deposit by a nominated representative, to additional repositories </li></ul>
    7. 7. Scenario 1 <ul><li>A lightweight deposit web service can facilitate this transfer of object(s) </li></ul><ul><li>Librarian L completes the deposit through the repository interface </li></ul><ul><li>id </li></ul><ul><li>Librarian L invokes deposit of a surrogate into arxiv.org </li></ul><ul><li>Deposit </li></ul><ul><li>id </li></ul><ul><li>Author A deposits via an easy-deposit desktop application into the institutional repository's mediated deposit queue </li></ul>
    8. 8. Scenario 2 <ul><li>A lightweight deposit web service can facilitate this transfer of object(s) </li></ul><ul><li>Deposit </li></ul><ul><li>The depositor can choose one or more repositories to deposit into </li></ul><ul><li>A depositor is required to submit to a Research Council repository, but they also wish to deposit into their institutional repository and a relevant subject repository </li></ul>
    9. 9. SWORD AtomPub Profile
    10. 10. Standards <ul><li>WebDAV (http://www.webdav.org/) </li></ul><ul><li>JSR 170 (http://www.jcp.org/en/jsr/detail?id=170) </li></ul><ul><li>JSR 283 (http://www.jcp.org/en/jsr/detail?id=283) </li></ul><ul><li>SRW Update (http://www.loc.gov/standards/sru/) </li></ul><ul><li>Flickr Deposit API (http://www.flickr.com/services/api/) </li></ul><ul><li>Fedora Deposit API (http://www.fedora.info/definitions/1/0/api/) </li></ul><ul><li>OKI OSID (http://www.okiproject.org/) </li></ul><ul><li>ECL (http://ecl.iat.sfu.ca/) </li></ul><ul><li>ATOM Publishing Protocol (http://www.ietf.org/htmlcharters/atompub-charter.html) </li></ul>
    11. 11. AtomPub <ul><li>“ the Atom Publishing Protocol is an application-level protocol for publishing and editing Web resources” </li></ul><ul><li>benefits </li></ul><ul><ul><li>supports many of our parameters and requirements, in particular file deposit </li></ul></ul><ul><ul><li>it already exists and has growing support </li></ul></ul><ul><ul><li>it is well-used in popular applications </li></ul></ul><ul><ul><li>it has an extension mechanism </li></ul></ul><ul><ul><li>good fit with the Web architecture </li></ul></ul><ul><li>drawbacks / risks </li></ul><ul><ul><li>too much of a retrofit? </li></ul></ul><ul><ul><li>it is designed for a single package/file OR an atom document – this means that we need to package up metadata and files </li></ul></ul>
    12. 12. SWORD AtomPub Profile <ul><li>SWORD profile builds on AtomPub </li></ul><ul><li>Provides extensions, constraint relaxations and enforcements when: </li></ul><ul><ul><li>Clients post compound resources (zip,tar) </li></ul></ul><ul><ul><li>Mediated deposit required </li></ul></ul><ul><ul><li>Workflows involved </li></ul></ul><ul><li>SWORD compliance does not preclude AtomPub compliance </li></ul>
    13. 13. SWORD APP Package Support <ul><li>AtomPub uses MIME to describe resources </li></ul><ul><ul><li>SWORD supports accepting MIME types, but </li></ul></ul><ul><li>Inadequate for compound types e.g. </li></ul><ul><ul><li>Zip, tar </li></ul></ul><ul><ul><li>METS, SCORM, MPEG21, DIDL packages </li></ul></ul><ul><li>SWORD extends AtomPub: </li></ul><ul><ul><li>sword:acceptPackaging element </li></ul></ul><ul><ul><li>Value taken from SWORD package types </li></ul></ul><ul><ul><li>Developing area </li></ul></ul>
    14. 14. SWORD APP Mediated Deposit <ul><li>SWORD deposit client user may not be owner of resource </li></ul><ul><li>SWORD allows clients to set a HTTP header: </li></ul><ul><ul><li>X-On-Behalf-Of </li></ul></ul><ul><li>Assumes trust between owner and mediating user </li></ul><ul><li>Future development could explore OAuth for creating trust relationships </li></ul>
    15. 15. More Features <ul><li>No-Op (Dry Run) </li></ul><ul><li>Verbose Output </li></ul><ul><li>Client and Server Identity </li></ul><ul><li>Auto-Discovery </li></ul><ul><li>Error Documents </li></ul><ul><li>Nested Service Description </li></ul>
    16. 16. SWORD APP Error Documents <ul><li>SWORD adds new class of document to AtomPub to allow better error description </li></ul><ul><ul><li>ErrorContent </li></ul></ul><ul><ul><li>ErrorChecksumMismatch </li></ul></ul><ul><ul><li>ErrorBadRequest </li></ul></ul><ul><ul><li>TargetOwnerUnknown </li></ul></ul><ul><ul><li>MediationNotAllowed </li></ul></ul>
    17. 17. SWORD Profile of AtomPub <ul><ul><li>Protocol Operations </li></ul></ul><ul><ul><ul><li>Retrieving Service Document </li></ul></ul></ul><ul><ul><ul><li>Listing Collections </li></ul></ul></ul><ul><ul><ul><li>Creating a Resource </li></ul></ul></ul><ul><ul><ul><li>Editing/Deleting resource – not part of SWORD, optional </li></ul></ul></ul><ul><ul><li>Service Documents </li></ul></ul><ul><ul><ul><li>new elements: version, verbose, noOp, maxUploadSize, collectionPolicy, mediation, treatment, acceptPackaging, service </li></ul></ul></ul><ul><ul><li>increasing requirement for persistent Atom Entry Documents </li></ul></ul>
    18. 18. How it Works <ul><li>Issue HTTP requests (GET, POST) from client to SWORD interface </li></ul><ul><ul><li>GET Service Document (explain/discover) </li></ul></ul><ul><ul><li>POST ATOM document or file/package to collection URI </li></ul></ul><ul><li>HTTP response and ATOM document is returned </li></ul><ul><li>HTTP basic authentication should be supported </li></ul>
    19. 19. SWORD In Use
    20. 20. Implementations <ul><li>Repository implementations </li></ul><ul><ul><li>DSpace </li></ul></ul><ul><ul><li>EPrints </li></ul></ul><ul><ul><li>IntraLibrary </li></ul></ul><ul><ul><li>Fedora </li></ul></ul><ul><li>Client implementations </li></ul><ul><ul><li>command-line, desktop and web clients </li></ul></ul><ul><ul><li>Facebook Client </li></ul></ul><ul><ul><li>Deposit from within MS Word & Powerpoint </li></ul></ul><ul><ul><li>Feedforward / FOREsite and others </li></ul></ul><ul><ul><li>Java, PHP and .NET libraries </li></ul></ul>
    21. 21. Web Interface
    22. 22. Fedora deposit
    23. 23. Fedora Deposit response
    24. 24. Validation
    25. 25. SWORD in use <ul><li>In addition to the case study implementations: </li></ul><ul><ul><li>Feedforward has already implemented </li></ul></ul><ul><ul><li>ICE project is looking at SWORD </li></ul></ul><ul><ul><li>DSpace and EPrints installations already exist </li></ul></ul><ul><ul><li>Microsoft eChemistry work </li></ul></ul><ul><ul><li>OAI-ORE - FOREsite work </li></ul></ul><ul><ul><li>more are planned </li></ul></ul><ul><li>NISO activity around deposit </li></ul><ul><li>Collaberation with Nature Publishing Group possible </li></ul><ul><li>York – funded project around SWORD </li></ul>
    26. 26. More Info and Contact <ul><li>SWORD Website: </li></ul><ul><li>http://www.swordapp.org </li></ul><ul><li>General queries: </li></ul><ul><ul><li>Adrian Stevenson [email_address] </li></ul></ul><ul><li>Technical queries: </li></ul><ul><ul><li>sword sourceforge list [email_address] </li></ul></ul>
    27. 27. OAI-ORE Object Re-use and Exchange Julie Allinson 25th March 2009, British Library
    28. 28. ORE background <ul><li>commenced October 2006 </li></ul><ul><li>stands for ‘Object Reuse and Exchange’ </li></ul><ul><li>falls in the remit of the Open Archives Initiative (creators of OAI-PMH) </li></ul><ul><li>funded by the Mellon Foundation, with support from the National Science Foundation in the U.S. </li></ul><ul><li>international focus and lots of interest </li></ul><ul><li>a 2 year project, not the answer to all our problems </li></ul><ul><li>ended September 2008 </li></ul>
    29. 29. ORE Results <ul><li>Primer – in heavy use for the presentation! </li></ul><ul><li>User Guides </li></ul><ul><ul><li>Resource Map implementation in ATOM, RDF/XML, RDFa, HTTP </li></ul></ul><ul><ul><li>Resource Map Discovery </li></ul></ul><ul><li>Specifications – Abstract Model and Vocabulary </li></ul><ul><li>Tools and additional resources </li></ul>
    30. 30. Key terminology for ORE <ul><li>Aggregations </li></ul><ul><li>Web architecture – resource, URI, representation, link </li></ul><ul><li>Resource Maps </li></ul><ul><li>Linked Data / Semantic Web </li></ul><ul><li>RDF </li></ul><ul><li>ATOM </li></ul><ul><li>Serialization </li></ul>
    31. 31. ORE in one sentence <ul><li>“ ORE is a serialization format for describing aggregations of Web resources” </li></ul><ul><li>(according to me) </li></ul>
    32. 32. Relationship to OAI-PMH <ul><li>OAI-ORE is NOT a replacement for OAI-PMH </li></ul><ul><li>OAI-PMH will continue to exist as one approach to interoperability </li></ul><ul><ul><li>OAI-PMH metadata-centric </li></ul></ul><ul><li>OAI-ORE will complement with richer functionality, when this is desirable </li></ul><ul><ul><li>OAI-ORE is resource centric </li></ul></ul>
    33. 33. An example <ul><li>The ForeSite toolkit </li></ul><ul><ul><li>“ Libraries for constructing, parsing, manipulating and serializing OAI-ORE Resource Maps” </li></ul></ul><ul><ul><li>Demonstrator created Resource Maps of journals in JSTOR, delivered as ATOM documents via SWORD DSpace interface </li></ul></ul>
    34. 36. That’s it.