2. Module objectives By the end of this module you will: Understand the need for SWORD clients Have seen a variety of SWORD clients Have had the opportunity to try using some SWORD clients Know what tools are available to help with the creation of SWORD clients
3.
4. User friendly? Interaction with SWORD is via XML documents XML is good for machine to machine interfaces Do users want to read / write XML?
7. An analogy Using the web: Do we read and write HTML? No! We use a web client / browser.
8. SWORD clients Three types of SWORD client: Machine to machine custom client E.g. custom code to deposit from lab equipment General client Deposit any item type to any repository Specific client Tailored for an individual use (e.g. e-thesis deposit to repository X, journal article (with DOI) deposit to repository Y)
9. SWORD clients Machine to machine custom client E.g. JISC-funded ROAD project Robot-generated Open Access Data Automated laboratory undertaking investigations into gene functions Specific client for specific project / equipment
12. Problems with general clients Do users know their repository URL? Do users know the URL of their repository’s service document? Do users have pre-compiled packages?
13. Another example The Facebook SWORD deposit tool http://apps.facebook.com/swordapp/
18. Specific clients Specific clients overcome the previous problems: URLs embedded (or hidden behind easy choices) Usernames and passwords may be embedded Local language can be used
19. An example E-thesis deposit at The University of Auckland http://deposit.library.auckland.ac.nz/ Uses local language (e.g. ‘UPI’ for login) Specific Creative Commons questions Email receipt
25. Deposit by email Email deposit@swordapp.org Script reads mailbox From name -> Author Subject -> Title Message body -> Abstract Deposit made Reply sent to user with deposited item URL Another example
26. Article Authoring Add-in for Word 2007 http://research.microsoft.com/en-us/projects/authoring/ .docx files are actually ‘packages’ Zip file containing XML files Embed SWORD details in the XML <article ms:DepositURL=”http://localhost:8080/sword/deposit/123456789/2″ ms:JournalName=”test” ms:SignupURL=”http://localhost:8080/jspui/” ms:PasswordRequired=”True” ms:PreferredFormat=”docx” ms:SupportedFormats=”docx” ms:Category=”" ms:SubCategory=”"> Deposit from within Microsoft Word
27. Create a template using fields E.g. title / abstract / conclusion Repository can be programmed to extract these fields programmatically into metadata elements Deposit from within Microsoft Word
29. Want to create your own custom client? No need to re-invent the wheel Code libraries / APIs available Creating your own client
30. PHP http://github.com/stuartlewis/swordapp-php-library/ Good for web-based or scripted clients Includes a METS/SWAP packager Java http://sourceforge.net/projects/sword-app/develop Good for web-based, scripted or desktop clients SWORD code libraries / APIs
31. Review SWORD clients are required to perform deposits There are some generic clients available Generic clients require a level of technical knowledge Specific clients can be created to shield the user from details There are code libraries available to help you write your own clients
32. Want to learn more? If SWORD is the answer, what is the question? Use of the Simple Web service Offering Repository Deposit protocol http://dx.doi.org/10.1108/00330330910998057 http://hdl.handle.net/2292/5315
33. Credits This course has been produced by: Stuart Lewis The SWORD project http://swordapp.org/ Funded by JISC http://www.jisc.ac.uk/ Licence Creative commons
34. Photo Credits Lecture hall: http://www.flickr.com/photos/iamthebestartist/2008790/ It’s a No!: http://www.flickr.com/photos/biscuitsmlp/2247299538/