SlideShare a Scribd company logo
1 of 34
The SWORD Course Module4 SWORDclients
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
A quick recap ,[object Object],You can find out about a repository’s SWORD interface by requesting a Service Document You can deposit an item by POSTing a package
User friendly? Interaction with SWORD is via XML documents XML is good for machine to machine interfaces Do users want to read / write XML?
User friendly?
The answer? SWORD clients
An analogy Using the web: Do we read and write HTML? No! We use a web client / browser.
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)
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
Online demo client
Desktop demo client
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?
Another example The Facebook SWORD deposit tool http://apps.facebook.com/swordapp/
Facebook client
Facebook client
Facebook client The application performs the packaging (metadata + file)
Facebook client
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
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
An example
An example
An example
An example
An example
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
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
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
Deposit from within Microsoft Word
Want to create your own custom client? No need to re-invent the wheel Code libraries / APIs available Creating your own client
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
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
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
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
Photo Credits Lecture hall: http://www.flickr.com/photos/iamthebestartist/2008790/ It’s a No!: http://www.flickr.com/photos/biscuitsmlp/2247299538/

More Related Content

What's hot

Azure data factory
Azure data factoryAzure data factory
Azure data factoryBizTalk360
 
Welcome & AWS Big Data Solution Overview
Welcome & AWS Big Data Solution OverviewWelcome & AWS Big Data Solution Overview
Welcome & AWS Big Data Solution OverviewAmazon Web Services
 
Introduction to Azure SQL DB
Introduction to Azure SQL DBIntroduction to Azure SQL DB
Introduction to Azure SQL DBChristopher Foot
 
MS Sql Server: Feeding Data Into Database
MS Sql Server: Feeding Data Into DatabaseMS Sql Server: Feeding Data Into Database
MS Sql Server: Feeding Data Into DatabaseDataminingTools Inc
 
LDAP - Lightweight Directory Access Protocol
LDAP - Lightweight Directory Access ProtocolLDAP - Lightweight Directory Access Protocol
LDAP - Lightweight Directory Access ProtocolS. Hasnain Raza
 
BDA306 Building a Modern Data Warehouse: Deep Dive on Amazon Redshift
BDA306 Building a Modern Data Warehouse: Deep Dive on Amazon RedshiftBDA306 Building a Modern Data Warehouse: Deep Dive on Amazon Redshift
BDA306 Building a Modern Data Warehouse: Deep Dive on Amazon RedshiftAmazon Web Services
 
글로벌 기업들의 효과적인 데이터 분석을 위한 Data Lake 구축 및 분석 사례 - 김준형 (AWS 솔루션즈 아키텍트)
글로벌 기업들의 효과적인 데이터 분석을 위한 Data Lake 구축 및 분석 사례 - 김준형 (AWS 솔루션즈 아키텍트)글로벌 기업들의 효과적인 데이터 분석을 위한 Data Lake 구축 및 분석 사례 - 김준형 (AWS 솔루션즈 아키텍트)
글로벌 기업들의 효과적인 데이터 분석을 위한 Data Lake 구축 및 분석 사례 - 김준형 (AWS 솔루션즈 아키텍트)Amazon Web Services Korea
 
Getting Started with Amazon Kinesis
Getting Started with Amazon KinesisGetting Started with Amazon Kinesis
Getting Started with Amazon KinesisAmazon Web Services
 
ETL in the Cloud With Microsoft Azure
ETL in the Cloud With Microsoft AzureETL in the Cloud With Microsoft Azure
ETL in the Cloud With Microsoft AzureMark Kromer
 
Database management system of facebook
Database management system of facebookDatabase management system of facebook
Database management system of facebookSaidur Rahman
 
WSO2 Advantage Webinar - JSON Support in the WSO2 Platform
WSO2 Advantage Webinar -  JSON Support in the WSO2 PlatformWSO2 Advantage Webinar -  JSON Support in the WSO2 Platform
WSO2 Advantage Webinar - JSON Support in the WSO2 PlatformWSO2
 
Private Channels in Microsoft Teams: An End to End Overview
Private Channels in Microsoft Teams: An End to End OverviewPrivate Channels in Microsoft Teams: An End to End Overview
Private Channels in Microsoft Teams: An End to End OverviewJuan Carlos Gonzalez
 
Azure Data Factory | Moving On-Premise Data to Azure Cloud | Microsoft Azure ...
Azure Data Factory | Moving On-Premise Data to Azure Cloud | Microsoft Azure ...Azure Data Factory | Moving On-Premise Data to Azure Cloud | Microsoft Azure ...
Azure Data Factory | Moving On-Premise Data to Azure Cloud | Microsoft Azure ...Edureka!
 

What's hot (20)

Azure data factory
Azure data factoryAzure data factory
Azure data factory
 
Welcome & AWS Big Data Solution Overview
Welcome & AWS Big Data Solution OverviewWelcome & AWS Big Data Solution Overview
Welcome & AWS Big Data Solution Overview
 
Introduction to Azure SQL DB
Introduction to Azure SQL DBIntroduction to Azure SQL DB
Introduction to Azure SQL DB
 
MS Sql Server: Feeding Data Into Database
MS Sql Server: Feeding Data Into DatabaseMS Sql Server: Feeding Data Into Database
MS Sql Server: Feeding Data Into Database
 
Introduction to Amazon Athena
Introduction to Amazon AthenaIntroduction to Amazon Athena
Introduction to Amazon Athena
 
LDAP - Lightweight Directory Access Protocol
LDAP - Lightweight Directory Access ProtocolLDAP - Lightweight Directory Access Protocol
LDAP - Lightweight Directory Access Protocol
 
SQL for interview
SQL for interviewSQL for interview
SQL for interview
 
BDA306 Building a Modern Data Warehouse: Deep Dive on Amazon Redshift
BDA306 Building a Modern Data Warehouse: Deep Dive on Amazon RedshiftBDA306 Building a Modern Data Warehouse: Deep Dive on Amazon Redshift
BDA306 Building a Modern Data Warehouse: Deep Dive on Amazon Redshift
 
글로벌 기업들의 효과적인 데이터 분석을 위한 Data Lake 구축 및 분석 사례 - 김준형 (AWS 솔루션즈 아키텍트)
글로벌 기업들의 효과적인 데이터 분석을 위한 Data Lake 구축 및 분석 사례 - 김준형 (AWS 솔루션즈 아키텍트)글로벌 기업들의 효과적인 데이터 분석을 위한 Data Lake 구축 및 분석 사례 - 김준형 (AWS 솔루션즈 아키텍트)
글로벌 기업들의 효과적인 데이터 분석을 위한 Data Lake 구축 및 분석 사례 - 김준형 (AWS 솔루션즈 아키텍트)
 
Getting Started with Amazon Kinesis
Getting Started with Amazon KinesisGetting Started with Amazon Kinesis
Getting Started with Amazon Kinesis
 
ETL in the Cloud With Microsoft Azure
ETL in the Cloud With Microsoft AzureETL in the Cloud With Microsoft Azure
ETL in the Cloud With Microsoft Azure
 
Web services
Web servicesWeb services
Web services
 
Xampp Workshop
Xampp WorkshopXampp Workshop
Xampp Workshop
 
Web Servers (ppt)
Web Servers (ppt)Web Servers (ppt)
Web Servers (ppt)
 
Database management system of facebook
Database management system of facebookDatabase management system of facebook
Database management system of facebook
 
WSO2 Advantage Webinar - JSON Support in the WSO2 Platform
WSO2 Advantage Webinar -  JSON Support in the WSO2 PlatformWSO2 Advantage Webinar -  JSON Support in the WSO2 Platform
WSO2 Advantage Webinar - JSON Support in the WSO2 Platform
 
Private Channels in Microsoft Teams: An End to End Overview
Private Channels in Microsoft Teams: An End to End OverviewPrivate Channels in Microsoft Teams: An End to End Overview
Private Channels in Microsoft Teams: An End to End Overview
 
Web servers
Web serversWeb servers
Web servers
 
Azure Data Factory | Moving On-Premise Data to Azure Cloud | Microsoft Azure ...
Azure Data Factory | Moving On-Premise Data to Azure Cloud | Microsoft Azure ...Azure Data Factory | Moving On-Premise Data to Azure Cloud | Microsoft Azure ...
Azure Data Factory | Moving On-Premise Data to Azure Cloud | Microsoft Azure ...
 
Architecting a datalake
Architecting a datalakeArchitecting a datalake
Architecting a datalake
 

Viewers also liked

Module 3 - How SWORD Works
Module 3 - How SWORD WorksModule 3 - How SWORD Works
Module 3 - How SWORD WorksSWORD Project
 
Module 2 - SWORD Use Cases
Module 2 - SWORD Use CasesModule 2 - SWORD Use Cases
Module 2 - SWORD Use CasesSWORD Project
 
Module 1 - An Introduction To SWORD
Module 1 - An Introduction To SWORDModule 1 - An Introduction To SWORD
Module 1 - An Introduction To SWORDSWORD Project
 
Module 5 - Create your own SWORD client
Module 5 - Create your own SWORD clientModule 5 - Create your own SWORD client
Module 5 - Create your own SWORD clientSWORD Project
 
SWORD v2 debut at Open Repositories 2011
SWORD v2 debut at Open Repositories 2011SWORD v2 debut at Open Repositories 2011
SWORD v2 debut at Open Repositories 2011SWORD Project
 
Simple Web service Offering Repository Deposit (SWORD)‏
Simple Web service Offering Repository Deposit (SWORD)‏Simple Web service Offering Repository Deposit (SWORD)‏
Simple Web service Offering Repository Deposit (SWORD)‏Julie Allinson
 
Module 6 - introducing sword v2
Module 6 - introducing sword v2Module 6 - introducing sword v2
Module 6 - introducing sword v2SWORD Project
 

Viewers also liked (7)

Module 3 - How SWORD Works
Module 3 - How SWORD WorksModule 3 - How SWORD Works
Module 3 - How SWORD Works
 
Module 2 - SWORD Use Cases
Module 2 - SWORD Use CasesModule 2 - SWORD Use Cases
Module 2 - SWORD Use Cases
 
Module 1 - An Introduction To SWORD
Module 1 - An Introduction To SWORDModule 1 - An Introduction To SWORD
Module 1 - An Introduction To SWORD
 
Module 5 - Create your own SWORD client
Module 5 - Create your own SWORD clientModule 5 - Create your own SWORD client
Module 5 - Create your own SWORD client
 
SWORD v2 debut at Open Repositories 2011
SWORD v2 debut at Open Repositories 2011SWORD v2 debut at Open Repositories 2011
SWORD v2 debut at Open Repositories 2011
 
Simple Web service Offering Repository Deposit (SWORD)‏
Simple Web service Offering Repository Deposit (SWORD)‏Simple Web service Offering Repository Deposit (SWORD)‏
Simple Web service Offering Repository Deposit (SWORD)‏
 
Module 6 - introducing sword v2
Module 6 - introducing sword v2Module 6 - introducing sword v2
Module 6 - introducing sword v2
 

Similar to Module 4 - SWORD clients

Code Documentation. That ugly thing...
Code Documentation. That ugly thing...Code Documentation. That ugly thing...
Code Documentation. That ugly thing...Christos Manios
 
Lightweight Deposit using SWORD
Lightweight Deposit using SWORDLightweight Deposit using SWORD
Lightweight Deposit using SWORDAdrian Stevenson
 
AIDA/Scribo
AIDA/ScriboAIDA/Scribo
AIDA/ScriboESUG
 
Dojo - from web page to web apps
Dojo - from web page to web appsDojo - from web page to web apps
Dojo - from web page to web appsyoavrubin
 
epicenter2010 Open Xml
epicenter2010   Open Xmlepicenter2010   Open Xml
epicenter2010 Open XmlCraig Murphy
 
SWORD v2 at JISC Depo meeting
SWORD v2 at JISC Depo meetingSWORD v2 at JISC Depo meeting
SWORD v2 at JISC Depo meetingSWORD Project
 
Interoperability Fundamentals: SWORD 2
Interoperability Fundamentals: SWORD 2Interoperability Fundamentals: SWORD 2
Interoperability Fundamentals: SWORD 2Adrian Stevenson
 
Making Repository Easier With SWORD
Making Repository Easier With SWORDMaking Repository Easier With SWORD
Making Repository Easier With SWORDAdrian Stevenson
 
Open Writing! Collaborative Authoring for CloudStack Documentation by Jessica...
Open Writing! Collaborative Authoring for CloudStack Documentation by Jessica...Open Writing! Collaborative Authoring for CloudStack Documentation by Jessica...
Open Writing! Collaborative Authoring for CloudStack Documentation by Jessica...buildacloud
 
Open writing-cloud-collab
Open writing-cloud-collabOpen writing-cloud-collab
Open writing-cloud-collabKaren Vuong
 
Developing a Struts & Tiles application using WebSphere Studio
Developing a Struts & Tiles application using WebSphere StudioDeveloping a Struts & Tiles application using WebSphere Studio
Developing a Struts & Tiles application using WebSphere Studioelliando dias
 
A Brief Introduce to WSGI
A Brief Introduce to WSGIA Brief Introduce to WSGI
A Brief Introduce to WSGIMingli Yuan
 
Document Object Model
Document Object ModelDocument Object Model
Document Object Modelchomas kandar
 
Document Object Model
Document Object ModelDocument Object Model
Document Object Modelchomas kandar
 
Up and Running with the Typelevel Stack
Up and Running with the Typelevel StackUp and Running with the Typelevel Stack
Up and Running with the Typelevel StackLuka Jacobowitz
 
OData Across Boundaries
OData Across BoundariesOData Across Boundaries
OData Across BoundariesSam Basu
 
Introduction to mean and mern || Event by DSC UNIDEB
Introduction to mean and mern || Event by DSC UNIDEBIntroduction to mean and mern || Event by DSC UNIDEB
Introduction to mean and mern || Event by DSC UNIDEBMuhammad Raza
 

Similar to Module 4 - SWORD clients (20)

Code Documentation. That ugly thing...
Code Documentation. That ugly thing...Code Documentation. That ugly thing...
Code Documentation. That ugly thing...
 
Lightweight Deposit using SWORD
Lightweight Deposit using SWORDLightweight Deposit using SWORD
Lightweight Deposit using SWORD
 
AIDA/Scribo
AIDA/ScriboAIDA/Scribo
AIDA/Scribo
 
Dojo - from web page to web apps
Dojo - from web page to web appsDojo - from web page to web apps
Dojo - from web page to web apps
 
epicenter2010 Open Xml
epicenter2010   Open Xmlepicenter2010   Open Xml
epicenter2010 Open Xml
 
SWORD v2 at JISC Depo meeting
SWORD v2 at JISC Depo meetingSWORD v2 at JISC Depo meeting
SWORD v2 at JISC Depo meeting
 
Interoperability Fundamentals: SWORD 2
Interoperability Fundamentals: SWORD 2Interoperability Fundamentals: SWORD 2
Interoperability Fundamentals: SWORD 2
 
Making Repository Easier With SWORD
Making Repository Easier With SWORDMaking Repository Easier With SWORD
Making Repository Easier With SWORD
 
Sword Bl 0903[1]
Sword Bl 0903[1]Sword Bl 0903[1]
Sword Bl 0903[1]
 
Open Writing! Collaborative Authoring for CloudStack Documentation by Jessica...
Open Writing! Collaborative Authoring for CloudStack Documentation by Jessica...Open Writing! Collaborative Authoring for CloudStack Documentation by Jessica...
Open Writing! Collaborative Authoring for CloudStack Documentation by Jessica...
 
Open writing-cloud-collab
Open writing-cloud-collabOpen writing-cloud-collab
Open writing-cloud-collab
 
Developing a Struts & Tiles application using WebSphere Studio
Developing a Struts & Tiles application using WebSphere StudioDeveloping a Struts & Tiles application using WebSphere Studio
Developing a Struts & Tiles application using WebSphere Studio
 
A Brief Introduce to WSGI
A Brief Introduce to WSGIA Brief Introduce to WSGI
A Brief Introduce to WSGI
 
Document Object Model
Document Object ModelDocument Object Model
Document Object Model
 
Document Object Model
Document Object ModelDocument Object Model
Document Object Model
 
Intro to Web Standards
Intro to Web StandardsIntro to Web Standards
Intro to Web Standards
 
Up and Running with the Typelevel Stack
Up and Running with the Typelevel StackUp and Running with the Typelevel Stack
Up and Running with the Typelevel Stack
 
OData Across Boundaries
OData Across BoundariesOData Across Boundaries
OData Across Boundaries
 
SWORD: An Overview
SWORD: An OverviewSWORD: An Overview
SWORD: An Overview
 
Introduction to mean and mern || Event by DSC UNIDEB
Introduction to mean and mern || Event by DSC UNIDEBIntroduction to mean and mern || Event by DSC UNIDEB
Introduction to mean and mern || Event by DSC UNIDEB
 

Recently uploaded

Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Scott Andery
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 

Recently uploaded (20)

Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 

Module 4 - SWORD clients

  • 1. The SWORD Course Module4 SWORDclients
  • 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/
  • 16. Facebook client The application performs the packaging (metadata + file)
  • 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
  • 28. 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/