SWORD Simple Web-service Offering Repository Deposit By Aparna R. Belhe Archana Galipalli.

Slides:



Advertisements
Similar presentations
ESUP-Portail: a pure WebDAV-based Network attached Storage Pierre Gambarotto Pascal Aubry.
Advertisements

A centre of expertise in digital information management UKOLN is supported by: SWORD: An Overview 2 nd June 2009 Web Service.
UKOLN is supported by: Put functionality Augmenting interoperability across scholarly repositories 20/21 April 2006 Rachel Heery, UKOLN, University of.
Reinventing using REST. Anything addressable by a URI is called a resource GET, PUT, POST, DELETE WebDAV (MOVE, LOCK)
Hypertext Transfer PROTOCOL ----HTTP Sen Wang CSE5232 Network Programming.
SWORD Simple Web-service Offering Repository Deposit JISC CETIS SIG meeting University of Strathclyde, Glasgow Friday 29 th June 2007 Julie Allinson UKOLN,
Update on the SWORD Protocol & Future Directions.
Interoperability and Preservation with the Hub and Spoke (HandS) Matt Cordial, Tom Habing, Bill Ingram, Robert Manaster University of Illinois Urbana-Champaign.
The DSpace Course Module – SWORD basics. Module objectives  By the end of this module you will:  Understand what SWORD is  Know what SWORD could be.
UKOLN is supported by: The Cutting Edge of SWORD 18 th May 2009 OR09, Atlanta, GA Adrian Stevenson and Julie Allinson SWORD Project Managers.
Simple Web service Offering Repository Deposit (SWORD)‏ Project kick-off meeting Birkbeck College, London, 30 th April 2007 Julie Allinson, UKOLN, University.
Julie Allinson Open Repositories 2008 Southampton 1st April 2008 Simple Web-service Offering Repository Deposit SWORD.
SWORD where we are and how we got here CRIG Unconference Birkbeck College, London Thurs 6 th Dec 2007 Julie Allinson UKOLN, University of Bath Image:
Interoperability and Preservation with the Hub and Spoke (HandS) Tom Habing, Bill Ingram, Robert Manaster University of Illinois Urbana-Champaign
Hydra Partners Meeting March 2012 Bill Branan DuraCloud Technical Lead.
1 Introduction to XML. XML eXtensible implies that users define tag content Markup implies it is a coded document Language implies it is a metalanguage.
Repository Deposit Service Description OR 2007 : the 2nd International Conference on Open Repositories San Antonio, Texas, USA, Jan 2007 Presenter:
HTTP Hypertext Transfer Protocol. HTTP messages HTTP is the language that web clients and web servers use to talk to each other –HTTP is largely “under.
Dspace – Digital Repository Dawn Petherick, University Web Services Team Manager Information Services, University of Birmingham MIDESS Dissemination.
1 UKOLN is supported by: SWORD Simple Web-service Offering Repository Deposit Defining Image Access final.
Peoplesoft: Building and Consuming Web Services
HTTP Overview Vijayan Sugumaran School of Business Administration Oakland University.
Hypertext Transport Protocol CS Dick Steflik.
RESTful Publish Subscribe Xiang Su
Rensselaer Polytechnic Institute CSC-432 – Operating Systems David Goldschmidt, Ph.D.
CS 415 N-Tier Application Development By Umair Ashraf July 6,2013 National University of Computer and Emerging Sciences Lecture # 9 Introduction to Web.
Web Servers Web server software is a product that works with the operating system The server computer can run more than one software product such as .
SWORD Stories - Easy Deposit Cutting Through Repositories’ Red Tape Sarah Currier Consultancy | E-Learning * Resource Sharing * Web 2.0 * Metadata * Repositories.
Server tools. Site server tools can be utilised to build, host, track and monitor transactions on a business site. There are a wide range of possibilities.
FTP (File Transfer Protocol) & Telnet
CP476 Internet Computing Lecture 5 : HTTP, WWW and URL 1 Lecture 5. WWW, HTTP and URL Objective: to review the concepts of WWW to understand how HTTP works.
REST.  REST is an acronym standing for Representational State Transfer  A software architecture style for building scalable web services  Typically,
Using the SAS® Information Delivery Portal
Open Data Protocol * Han Wang 11/30/2012 *
Integrated Collaborative Information Systems Ahmet E. Topcu Advisor: Prof Dr. Geoffrey Fox 1.
1 Schema Registries Steven Hughes, Lou Reich, Dan Crichton NASA 21 October 2015.
Easy Desktop Deposit for intraLibrary: An Implementation of SWORD Sarah Currier Product Manager Intrallect Ltd Presentation to.
Digital Commons & Open Access Repositories Johanna Bristow, Strategic Marketing Manager APBSLG Libraries: September 2006.
Open Archive Initiative – Protocol for metadata Harvesting (OAI-PMH) Surinder Kumar Technical Director NIC, New Delhi
How to Implement an Institutional Repository: Part II A NASIG 2006 Pre-Conference May 4, 2006 Technical Issues.
Funded by: © AHDS Preservation in Institutional Repositories Preliminary conclusions of the SHERPA DP project Gareth Knight Digital Preservation Officer.
Interoperability and Collection of Preservation Metadata for Digital Repository Content Matt Cordial, Tom Habing, Bill Ingram, Robert Manaster University.
WebDAV Working across the Internet: Peter Pierrou, Excosoft.
ASP-2-1 SERVER AND CLIENT SIDE SCRITPING Colorado Technical University IT420 Tim Peterson.
Partnerships in Innovation: Serving a Networked Nation Grid Technologies: Foundations for Preservation Environments Portals for managing user interactions.
Building Preservation Environments with Data Grid Technology Reagan W. Moore Presenter: Praveen Namburi.
Here are some things you can do while you wait 1.Open your omeka.net site in your browser (e.g. 2.Open.
SWORD Simple Web-service Offering Repository Deposit Julie Allinson 25th March 2009, British Library.
REST API Design. Application API API = Application Programming Interface APIs expose functionality of an application or service that exists independently.
A Semi-Automated Digital Preservation System based on Semantic Web Services Jane Hunter Sharmin Choudhury DSTC PTY LTD, Brisbane, Australia Slides by Ananta.
Intro to REST Joe Gregorio Google. REST is an Architectural Style.
Functional Object Re-use and Exchange:
Supporting Full Deposit Lifecycles
API (Application Program Interface)
Better RESTFul API – Best Practices
Hypertext Transport Protocol
Content Management Systems
Testing REST IPA using POSTMAN
WEB API.
Implementing an Institutional Repository: Part II
CESSDA Workplan: Metadata Harvesting Tool
$, $$, $$$ API testing Edition
HyperText Transfer Protocol
While the audience is gathering. During breaks etc
WebDAV Design Overview
Jisc Research Data Shared Service (RDSS)
Implementing an Institutional Repository: Part II
How to Implement an Institutional Repository: Part II
Presentation transcript:

SWORD Simple Web-service Offering Repository Deposit By Aparna R. Belhe Archana Galipalli

CS-791 Web Syndication Formats2 Ideas for Development of SWORD lack of a standard mechanism for deposit within the repositories 2006 – Repository developers + platforms laid foundation for Deposit API Deposit API offered – - deposit from multiple locations - deposit to multiple repositories - migration of content between repositories

CS-791 Web Syndication Formats3 Ideas…..ctd To ensure concrete outputs, SWORD was created SWORD - a formally funded project Led by – UKOLN Partnered by - - CASIS at Aberystwyth University, - University of Southampton - Intrallect

CS-791 Web Syndication Formats4 Requirement Gathering SWORD would need to- - support a wide range of repositories, - accept submission of different digital object types in a consistent way - accept data and/or metadata in the form of complex objects or content packages - support different workflows for deposit - accept large-scale deposits - support collections and changes in policy and permissions - support more complex, authenticated and mediated deposit.

CS-791 Web Syndication Formats5 Defining SWORD Two distinct services identified – i. “Explain” - allows repository to provide information about policy ii. “Deposit” - allows remote users to put data into the repository - ‘receipt’ indicating success or failure Layered approach - Level 0 - Level 1

CS-791 Web Syndication Formats6 Protocol and Profile Short listing of an existing standard between - WebDav - OKI OSID (Open Knowledge Initiative Open Source Interface Def) - SRU/W ( Search and Retrieve via URL or Web Service) - APP ( Atom Publishing Protocol ) - Lightweight, easy to implement - Already popular for remote blog posts - closely tied to Atom Syndication format - an application-level protocol for publishing and editing Web resources - designed to support the deposit (POST) of ATOM docs & datastreams

CS-791 Web Syndication Formats7 SWORD SWORD - Simple Web-service Offering Repository Deposit Extension to the Deposit API by implementing it as a lightweight web-service Implemented in four major repository software platforms: EPrints, DSpace, Fedora and IntraLibrary.

CS-791 Web Syndication Formats8 SWORD - Aims Improve the efficiency and quality of the repository ‘Ingest’ function Diversify and expedite the options for timely population of repositories with content Facilitate the creation and use of common deposit interfaces Take a service-oriented approach to development as outlined by the E-Framework

CS-791 Web Syndication Formats9 SWORD Protocol It is a Profile of the Atom Publishing Protocol Current Version – SWORD APP Profile Version 1.2 Application-level protocol for publishing and editing Web resources Specifies a subset of elements from the APP for use in depositing content into information systems, such as repositories. specifies extensions to APP The SWORD profile is concerned only with the deposit (POST) of data files or packages.

CS-791 Web Syndication Formats10 Protocol Operations …….. Retrieving a Service Document Use of HTTP GET requests. Additional HTTP header 'X-On-Behalf-Of' - specifies the username of a target user on whose behalf a deposit is being made Facilitates the SWORD to support mediated deposit

CS-791 Web Syndication Formats11 Example - Retrieving a Service Document Simple User GET /app/servicedocument HTTP/1.1 Host: Mediated User GET /app/servicedocument HTTP/1.1 Host: X-On-Behalf-Of: john

CS-791 Web Syndication Formats12 Protocol Operations …….. Creating a Resource Use of HTTP POST. POST /geography-collection/ HTTP/1.1 Host:

CS-791 Web Syndication Formats13 Protocol Operations …….. HTTP Response Codes 201Created 202Accepted 400Bad Request 401Unauthorized 403Forbidden 412Precondition failed 415Unsupported Media Type 500Internal Server Error 501Not Implemented

CS-791 Web Syndication Formats14 Service Documents service document ( ) identified with the "application/atomsvc+xml" media type

CS-791 Web Syndication Formats15 Service Documents …….. Workspaces An arbitrary aggregation of collections of resources Sword profile should contain one or more elements.

CS-791 Web Syndication Formats16 Service Documents …….. Extensions Extensions to element: - text/URI - text/URI - true|false - text - URI

CS-791 Web Syndication Formats17 Service Documents …….. Extensions Extensions to element: - true|false - 0|1

CS-791 Web Syndication Formats18 Example: Level Main Site collection My Repository : Geography Collection

CS-791 Web Syndication Formats19 Example: Level true Main Site My Repository : Geography Collection application/xml application/zip application/atom+xml Collection Policy Collection description true treatment description Supported media formats uri No elements means no permisssion to deposit for authenticated user.

CS-791 Web Syndication Formats20 Creating and Editing Resources Member URIs Creating resources with POST Additional HTTP headers with POST: Content-MD5: md5-checksum Content-Disposition: filename=deposit-filename X-On-Behalf-Of: on-behalf-of-user X-Verbose: true|false X-No-Op: true|false X-Format-Namespace: format-namespace-uri More Extensions

CS-791 Web Syndication Formats21 Creating and Editing Resources (ctd…) Updating resources with PUT Deleting resources with DELETE Caching and Entity tags

CS-791 Web Syndication Formats22 Media Resources and Media Link Entries Concerned with depositing binary files/packages of content rather than ATOM documents Supports the APP mechanism for posting media types other than appliation/atom+xml to a Collection

CS-791 Web Syndication Formats23 Media Resources and Media Link Entries … ctd For Level 1 - element in the Service Document The Location: element of the HTTP header response MUST contain a URI for the Media Link Entry The element MUST contain a unique identifier for the deposit. URI SHOULD identify the original deposited package.

CS-791 Web Syndication Formats24 The Slug: Header Slug is a HTTP entity-header Slug = "Slug" ":" *TEXT Level 0 – Not Required Level 1 May be used to supply a deposit identifier for use as the value. servers SHOULD retain the value of the Slug header, if supplied Servers MAY choose to ignore the header or alter its value.

CS-791 Web Syndication Formats25 Atom Entry Document Atom entry document is returned in HTTP response after successful deposit. Mandatory Elements:

CS-791 Web Syndication Formats26 Security Considerations At a minimum, client and server implementations MUST be capable of being configured to use HTTP Basic Authentication It is the responsibility of implementers to integrate existing authentication solutions.

CS-791 Web Syndication Formats27 SWORD Conventions Not mandatory but, their use will make it easier to locate SWORD implementations - APP implementation is accessed from /sword-app - service document is is accessed from /sword- app/servicedocument - Repositories supporting SWORD interface should embed an HTML link element with e.g.

CS-791 Web Syndication Formats28 Authentication and Mediation Four possible use cases for mediated and non-mediate deposit: unauthenticated POSTs authenticated POSTs by the author/owner, i.e. that don't use X-On-Behalf-Of authenticated POSTs that use X-On-Behalf-Of, and the authenticated user is a "Person construct" (meditated deposit) authenticated POSTs that use X-On-Behalf-Of, but where the authenticated user is not a "Person construct" (mediated deposit)

CS-791 Web Syndication Formats29 Deposit – Example 1 POST binary (level 0) POST /geography-collection/ HTTP/1.1 Host: Content-Type: application/zip Content-Length: nnn...binary data...

CS-791 Web Syndication Formats30 Response Example 1: level 0 response

CS-791 Web Syndication Formats31 Deposit – Example 2 Example 2: POST binary (mediated user) POST /geography-collection HTTP/1.1 Host: Content-Type: application/zip Authorization: Basic ZGFmZnk6c2VjZXJldA== Content-Length: nnn X-On-Behalf-Of: lcarr...binary data...

CS-791 Web Syndication Formats32 Response Example 2: Mediated User

CS-791 Web Syndication Formats33 Deposit – Example 3 POST (level 1, mediated user) POST /geography-collection HTTP/1.1 Host: Content-Type: application/zip Slug: deposit-id Authorization: Basic ZGFmZnk6c2VjZXJldA== Content-Length: nnn Content-MD5: md5-digest Content-Disposition: filename=mydeposit.zip X-On-Behalf-Of: lcarr X-Verbose: true X-No-Op: true X-Format-Namespace: agreed-format-namespace

CS-791 Web Syndication Formats34 Response Example 3: Level 1 response

Demo – SWORD GUI Client

Requesting a Service Document

Results of “Service Document Request”

Posting a File

Adding Repositories

Entry shown on the main Post Document dialog

File Display

CS-791 Web Syndication Formats Conclusion Achieved what is set to do. Reuses ATOM. SWORD helps Interoperability of deposit become a reality.

References index/SWORD_APP_Profile_1.2#SWORD _Extensions_to_the_APPhttp:// index/SWORD_APP_Profile_1.2#SWORD _Extensions_to_the_APP index/SWORDhttp:// index/SWORD