SlideShare a Scribd company logo
An Introduction to 
Taverna Components 
Stian Soiland-Reyes and Christian Brenninkmeijer 
University of Manchester 
materials by Aleksandra Pawlik 
http://orcid.org/0000-0001-9842-9718 
http://orcid.org/0000-0002-2937-7819 
http://orcid.org/0000-0002-1279-5133 
http://orcid.org/0000-0001-8418-6735 
Bonn University, 2014-09-01 
http://www.taverna.org.uk/ 
This work is licensed under a 
Creative Commons Attribution 3.0 Unported License
• Something that can be put into a workflow 
• Well described - what the component does 
• Behaves “well” - conforms to agreed good practice 
• Curated - someone looks after it 
• Produces and consumes data in agreed formats 
• Fails in described ways - meaningful error messages 
• Produces agreed type of provenance 
• Documentation 
• Example usage
• Hide complexity 
• Predictable good behaviour 
• Guaranteed to work together 
• Can (in theory) check that data in a run 
conforms to the component specification
• The agreement is a condition of being in a 
“component family” 
• Different domains, or even different uses within 
a domain, have different agreements 
• Astronomical data is not in the same formats as 
biodiversity data 
• Digital library components do not do the same tasks 
as biodiversity components 
• Agreement is formalized as a “component 
profile”
• A component family is 
• a pack on myExperiment, or 
• a directory on your local machine 
• A component is defined by a workflow (in a pack) 
in a component family pack 
• Components are versioned by the 
myExperiment’s versioning 
• Semantic annotations are stored in RDF as part 
of the workflow definition 
• Collated semantics, including workflow structure, 
are combined on myExperiment.
• Contains: 
• Workflow ‘realizing’ the component 
• Example data 
• Documentation 
• Dependency specification
• A component family is shown in the service 
panel of Taverna workbench 
• Components can be included within a 
Taverna workflow 
• Components are not simply the same as 
nested workflows 
• You could think of them as nested workflows that 
obey a set of rules and where you cannot see what 
is nested (and should not care)
• Components are created by annotating a workflow 
• Choice of a component family and so profile 
• Semantic annotation from the specified ontologies 
• Validation against the profile 
• Component saved into the component family 
• Can annotate: 
• Workflow 
• Input/Output ports 
• Services inside workflow 
• Extensions to myExperiment for 
• Pack snapshots 
• Semantic collation 
• Semantic searching
• Use of components will allow 
• Component developers to work on the component 
• Component users to upgrade (or revert) the 
component versions 
• A workflow to remain ‘unchanged’ (if the component 
interfaces remain the same) 
• Powerful and dangerous 
• Proxies for components (re-run and re-play) 
• Components are “black boxes” in the 
workflow and workflow runs
EBI InterproScan 
 The workflow to call EBI InterproScan was quite 
complex. 
 It would be nice to be able to package that workflow up 
and be able to use it as a single service in other 
workflows 
 That is exactly what components allow
Importing a component family 
 Components are grouped into component families 
 Component families are held in a component registry 
 myExperiment is a component registry 
 You can import a component family into the Service Panel 
 Click Import new services and then 
 Component service…
Selecting a component family 
 In the dialog 
 Select myExperiment component registry, and 
 Test components family 
 Click OK
Added component family 
 In the Service panel you can now expand and 
see the Test components family
Adding a component to a workflow 
 Create a new workflow 
 Add the EBI_InterproScan component into the 
workflow 
 Create input and output workflow ports and 
connect them to the ports of the component
EBI InterproScan component
Running the workflow 
 You can now run the workflow 
 The value for the sequence should be 
something like: 
>sp|Q9BTV4|TMM43_HUMAN Transmembrane protein 43 OS=Homo sapiens GN=TMEM43 PE=1 
SV=1 
MAANYSSTSTRREHVKVKTSSQPGFLERLSETSGGMFVGLMAFLLSFYLIFTNEGRALKT 
ATSLAEGLSLVVSPDSIHSVAPENEGRLVHIIGALRTSKLLSDPNYGVHLPAVKLRRHVE 
MYQWVETEESREYTEDGQVKKETRYSYNTEWRSEIINSKNFDREIGHKNPSAMAVESFMA 
TAPFVQIGRFFLSSGLIDKVDNFKSLSLSKLEDPHVDIIRRGDFFYHSENPKYPEVGDLR 
VSFSYAGLSGDDPDLGPAHVVTVIARQRGDQLVPFSTKSGDTLLLLHHGDFSAEEVFHRE 
LRSNSMKTWGLRAAGWMAMFMGLNLMTRILYTLVDWFPVFRDLVNIGLKAFAFCVATSLT 
LLTVAAGWLFYRPLWALLIAGLALVPILVARTRVPAKKLE
Connecting components 
 The workflow just contains the single service, we need 
to connect the component with other services 
 In the Design view, delete the sequence workflow input 
port 
 Right click and select Delete workflow input port 
 Add Local Services -> ncbi -> Get Protein FASTA to 
the workflow 
 Connect the outputText of Get Protein FASTA to the 
sequence port of the EBI_InterproScan 
 Connect the id port of Get Protein FASTA to a workflow 
input port
Connected component 
Your workflow should 
now look like:
Running the workflow - 2 
 Run the workflow again 
 You can use Q9BTV4 as the value for id
Is it really the complex workflow? 
 In the Results view 
you can click on 
Progress report 
 Expand 
EBI_InterproScan 
 You can see all the 
services “hidden” 
inside the 
component
 The menu has a “Components” option 
 Select “Create family”
 In the pop-up window set the registry to local 
 Select a Profile (or see next slide if no profile available) 
 Enter the family name (“ProcessString”)
 Find your local registry directory 
 Hint: Components/ Manage Registries 
 Registry Location 
 In MyExperiment find the Empty profile 
 Hint: http://www.myexperiment.org/files/1027.html 
 Down File into the local registry directory
 Add a local service “Split string into string list by regular 
expression” (from ‘text’) 
 Add the input port and set the regular expression to space 
 Add a local service “Remove string duplicates” (from ‘list’) 
 Connect the output from “Split string into string list by regular 
expression” with the input of “Remove string duplicates” 
 Add a local service “Merge String List to a String” and 
connect its input with the “Remove string duplicates” output 
and set the separator to be a space
 Select “Create component” from the “Components” menu 
 Provide a name for the component (Remove duplicates) 
 You should see a pink ribbon at the top 
 Save the component. You will see a warning message – it 
pops up because the component is not annotated. We can 
annotate it in the component details.
 Close any open workflows 
 Add the component(s) to the service panel 
 Hint: Import Service/ Component Family 
 Component registry: Local registry 
 Component family: ProcessString 
 Add the component to the workflow 
 Hint: Available services/ Components … 
 Add input and output ports 
 Run

More Related Content

Similar to 2014 Taverna Tutorial Components

Performance testing checklist.pdf
Performance testing checklist.pdfPerformance testing checklist.pdf
Performance testing checklist.pdf
AnuSelvaraj2
 
Taverna Components: Semantically annotated and sharable units of functionality
Taverna Components: Semantically annotated and sharable units of functionalityTaverna Components: Semantically annotated and sharable units of functionality
Taverna Components: Semantically annotated and sharable units of functionality
Donal Fellows
 
TAVERNA Components - Semantically annotated and sharable units of functionality
TAVERNA Components - Semantically annotated and sharable units of functionalityTAVERNA Components - Semantically annotated and sharable units of functionality
TAVERNA Components - Semantically annotated and sharable units of functionality
SCAPE Project
 
Unit 4- Software Engineering System Model Notes
Unit 4- Software Engineering System Model Notes Unit 4- Software Engineering System Model Notes
Unit 4- Software Engineering System Model Notes
arvind pandey
 
Tibco business works
Tibco business worksTibco business works
Tibco business works
Cblsolutions.com
 
Test Strategy Utilising Mc Useful Tools
Test Strategy Utilising Mc Useful ToolsTest Strategy Utilising Mc Useful Tools
Test Strategy Utilising Mc Useful Tools
mcthedog
 
(ATS6-DEV06) Using Packages for Protocol, Component, and Application Delivery
(ATS6-DEV06) Using Packages for Protocol, Component, and Application Delivery(ATS6-DEV06) Using Packages for Protocol, Component, and Application Delivery
(ATS6-DEV06) Using Packages for Protocol, Component, and Application Delivery
BIOVIA
 
Test strategy utilising mc useful tools
Test strategy utilising mc useful toolsTest strategy utilising mc useful tools
Test strategy utilising mc useful tools
Mark Chappell
 
Anatomy of a Build Pipeline
Anatomy of a Build PipelineAnatomy of a Build Pipeline
Anatomy of a Build Pipeline
Samuel Brown
 
Qtp certification training_material
Qtp certification training_materialQtp certification training_material
Qtp certification training_material
Vishwaprakash Sahoo
 
Detection as Code, Automation, and Testing: The Key to Unlocking the Power of...
Detection as Code, Automation, and Testing: The Key to Unlocking the Power of...Detection as Code, Automation, and Testing: The Key to Unlocking the Power of...
Detection as Code, Automation, and Testing: The Key to Unlocking the Power of...
MITRE ATT&CK
 
Qtp Presentation
Qtp PresentationQtp Presentation
Qtp Presentationtechgajanan
 
Angular Best Practices - Perfomatix
Angular Best Practices - PerfomatixAngular Best Practices - Perfomatix
Angular Best Practices - Perfomatix
Perfomatix Solutions
 
Qtp Training
Qtp TrainingQtp Training
Qtp Trainingmehramit
 
InterPro and InterProScan 5.0
InterPro and InterProScan 5.0InterPro and InterProScan 5.0
InterPro and InterProScan 5.0
EBI
 
Puppet At Twitter - Puppet Camp Silicon Valley
Puppet At Twitter - Puppet Camp Silicon ValleyPuppet At Twitter - Puppet Camp Silicon Valley
Puppet At Twitter - Puppet Camp Silicon Valley
Puppet
 

Similar to 2014 Taverna Tutorial Components (20)

Performance testing checklist.pdf
Performance testing checklist.pdfPerformance testing checklist.pdf
Performance testing checklist.pdf
 
Taverna Components: Semantically annotated and sharable units of functionality
Taverna Components: Semantically annotated and sharable units of functionalityTaverna Components: Semantically annotated and sharable units of functionality
Taverna Components: Semantically annotated and sharable units of functionality
 
TAVERNA Components - Semantically annotated and sharable units of functionality
TAVERNA Components - Semantically annotated and sharable units of functionalityTAVERNA Components - Semantically annotated and sharable units of functionality
TAVERNA Components - Semantically annotated and sharable units of functionality
 
Unit 4- Software Engineering System Model Notes
Unit 4- Software Engineering System Model Notes Unit 4- Software Engineering System Model Notes
Unit 4- Software Engineering System Model Notes
 
About Qtp_1 92
About Qtp_1 92About Qtp_1 92
About Qtp_1 92
 
About QTP 9.2
About QTP 9.2About QTP 9.2
About QTP 9.2
 
About Qtp 92
About Qtp 92About Qtp 92
About Qtp 92
 
Tibco business works
Tibco business worksTibco business works
Tibco business works
 
Test Strategy Utilising Mc Useful Tools
Test Strategy Utilising Mc Useful ToolsTest Strategy Utilising Mc Useful Tools
Test Strategy Utilising Mc Useful Tools
 
(ATS6-DEV06) Using Packages for Protocol, Component, and Application Delivery
(ATS6-DEV06) Using Packages for Protocol, Component, and Application Delivery(ATS6-DEV06) Using Packages for Protocol, Component, and Application Delivery
(ATS6-DEV06) Using Packages for Protocol, Component, and Application Delivery
 
Test strategy utilising mc useful tools
Test strategy utilising mc useful toolsTest strategy utilising mc useful tools
Test strategy utilising mc useful tools
 
Anatomy of a Build Pipeline
Anatomy of a Build PipelineAnatomy of a Build Pipeline
Anatomy of a Build Pipeline
 
Qtp certification training_material
Qtp certification training_materialQtp certification training_material
Qtp certification training_material
 
Automation tips
Automation tipsAutomation tips
Automation tips
 
Detection as Code, Automation, and Testing: The Key to Unlocking the Power of...
Detection as Code, Automation, and Testing: The Key to Unlocking the Power of...Detection as Code, Automation, and Testing: The Key to Unlocking the Power of...
Detection as Code, Automation, and Testing: The Key to Unlocking the Power of...
 
Qtp Presentation
Qtp PresentationQtp Presentation
Qtp Presentation
 
Angular Best Practices - Perfomatix
Angular Best Practices - PerfomatixAngular Best Practices - Perfomatix
Angular Best Practices - Perfomatix
 
Qtp Training
Qtp TrainingQtp Training
Qtp Training
 
InterPro and InterProScan 5.0
InterPro and InterProScan 5.0InterPro and InterProScan 5.0
InterPro and InterProScan 5.0
 
Puppet At Twitter - Puppet Camp Silicon Valley
Puppet At Twitter - Puppet Camp Silicon ValleyPuppet At Twitter - Puppet Camp Silicon Valley
Puppet At Twitter - Puppet Camp Silicon Valley
 

More from myGrid team

Taverna summary
Taverna summaryTaverna summary
Taverna summary
myGrid team
 
2014 Taverna Tutorial Introduction to eScience and workflows
2014 Taverna Tutorial Introduction to eScience and workflows2014 Taverna Tutorial Introduction to eScience and workflows
2014 Taverna Tutorial Introduction to eScience and workflows
myGrid team
 
2014 Taverna Tutorial Biodiversity example
2014 Taverna Tutorial Biodiversity example2014 Taverna Tutorial Biodiversity example
2014 Taverna Tutorial Biodiversity example
myGrid team
 
2014 Taverna Tutorial Interactions
2014 Taverna Tutorial Interactions2014 Taverna Tutorial Interactions
2014 Taverna Tutorial Interactions
myGrid team
 
2014 Taverna tutorial Tool service
2014 Taverna tutorial Tool service2014 Taverna tutorial Tool service
2014 Taverna tutorial Tool service
myGrid team
 
2014 Taverna tutorial REST and Biocatalogue
2014 Taverna tutorial REST and Biocatalogue2014 Taverna tutorial REST and Biocatalogue
2014 Taverna tutorial REST and Biocatalogue
myGrid team
 
2014 Taverna tutorial Xpath
2014 Taverna tutorial Xpath2014 Taverna tutorial Xpath
2014 Taverna tutorial Xpath
myGrid team
 
2014 Taverna tutorial introduction to Taverna workflows
2014 Taverna tutorial introduction to Taverna workflows2014 Taverna tutorial introduction to Taverna workflows
2014 Taverna tutorial introduction to Taverna workflows
myGrid team
 
SWeDe - Scientific Webservice Description
SWeDe - Scientific Webservice DescriptionSWeDe - Scientific Webservice Description
SWeDe - Scientific Webservice Description
myGrid team
 
Taverna workflows in the cloud
Taverna workflows in the cloudTaverna workflows in the cloud
Taverna workflows in the cloud
myGrid team
 
The Taverna Software Suite
The Taverna Software SuiteThe Taverna Software Suite
The Taverna Software Suite
myGrid team
 
The Taverna Workflow Management Software Suite - Past, Present, Future
The Taverna Workflow Management Software Suite - Past, Present, FutureThe Taverna Workflow Management Software Suite - Past, Present, Future
The Taverna Workflow Management Software Suite - Past, Present, Future
myGrid team
 
2014-06-03-Taverna-IS-ENES2
2014-06-03-Taverna-IS-ENES22014-06-03-Taverna-IS-ENES2
2014-06-03-Taverna-IS-ENES2
myGrid team
 
The beauty of workflows and models
The beauty of workflows and modelsThe beauty of workflows and models
The beauty of workflows and models
myGrid team
 
If we build it will they come?
If we build it will they come?If we build it will they come?
If we build it will they come?
myGrid team
 

More from myGrid team (15)

Taverna summary
Taverna summaryTaverna summary
Taverna summary
 
2014 Taverna Tutorial Introduction to eScience and workflows
2014 Taverna Tutorial Introduction to eScience and workflows2014 Taverna Tutorial Introduction to eScience and workflows
2014 Taverna Tutorial Introduction to eScience and workflows
 
2014 Taverna Tutorial Biodiversity example
2014 Taverna Tutorial Biodiversity example2014 Taverna Tutorial Biodiversity example
2014 Taverna Tutorial Biodiversity example
 
2014 Taverna Tutorial Interactions
2014 Taverna Tutorial Interactions2014 Taverna Tutorial Interactions
2014 Taverna Tutorial Interactions
 
2014 Taverna tutorial Tool service
2014 Taverna tutorial Tool service2014 Taverna tutorial Tool service
2014 Taverna tutorial Tool service
 
2014 Taverna tutorial REST and Biocatalogue
2014 Taverna tutorial REST and Biocatalogue2014 Taverna tutorial REST and Biocatalogue
2014 Taverna tutorial REST and Biocatalogue
 
2014 Taverna tutorial Xpath
2014 Taverna tutorial Xpath2014 Taverna tutorial Xpath
2014 Taverna tutorial Xpath
 
2014 Taverna tutorial introduction to Taverna workflows
2014 Taverna tutorial introduction to Taverna workflows2014 Taverna tutorial introduction to Taverna workflows
2014 Taverna tutorial introduction to Taverna workflows
 
SWeDe - Scientific Webservice Description
SWeDe - Scientific Webservice DescriptionSWeDe - Scientific Webservice Description
SWeDe - Scientific Webservice Description
 
Taverna workflows in the cloud
Taverna workflows in the cloudTaverna workflows in the cloud
Taverna workflows in the cloud
 
The Taverna Software Suite
The Taverna Software SuiteThe Taverna Software Suite
The Taverna Software Suite
 
The Taverna Workflow Management Software Suite - Past, Present, Future
The Taverna Workflow Management Software Suite - Past, Present, FutureThe Taverna Workflow Management Software Suite - Past, Present, Future
The Taverna Workflow Management Software Suite - Past, Present, Future
 
2014-06-03-Taverna-IS-ENES2
2014-06-03-Taverna-IS-ENES22014-06-03-Taverna-IS-ENES2
2014-06-03-Taverna-IS-ENES2
 
The beauty of workflows and models
The beauty of workflows and modelsThe beauty of workflows and models
The beauty of workflows and models
 
If we build it will they come?
If we build it will they come?If we build it will they come?
If we build it will they come?
 

Recently uploaded

Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Globus
 
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Crescat
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Globus
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Globus
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
timtebeek1
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
Boni García
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
Paco van Beckhoven
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
Philip Schwarz
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
Globus
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Shahin Sheidaei
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
Aftab Hussain
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Neo4j
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
Google
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus
 
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptxText-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
ShamsuddeenMuhammadA
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
Juraj Vysvader
 

Recently uploaded (20)

Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
Climate Science Flows: Enabling Petabyte-Scale Climate Analysis with the Eart...
 
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
 
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
Exploring Innovations in Data Repository Solutions - Insights from the U.S. G...
 
Vitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdfVitthal Shirke Java Microservices Resume.pdf
Vitthal Shirke Java Microservices Resume.pdf
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
 
A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
 
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptxText-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
 

2014 Taverna Tutorial Components

  • 1. An Introduction to Taverna Components Stian Soiland-Reyes and Christian Brenninkmeijer University of Manchester materials by Aleksandra Pawlik http://orcid.org/0000-0001-9842-9718 http://orcid.org/0000-0002-2937-7819 http://orcid.org/0000-0002-1279-5133 http://orcid.org/0000-0001-8418-6735 Bonn University, 2014-09-01 http://www.taverna.org.uk/ This work is licensed under a Creative Commons Attribution 3.0 Unported License
  • 2. • Something that can be put into a workflow • Well described - what the component does • Behaves “well” - conforms to agreed good practice • Curated - someone looks after it • Produces and consumes data in agreed formats • Fails in described ways - meaningful error messages • Produces agreed type of provenance • Documentation • Example usage
  • 3. • Hide complexity • Predictable good behaviour • Guaranteed to work together • Can (in theory) check that data in a run conforms to the component specification
  • 4. • The agreement is a condition of being in a “component family” • Different domains, or even different uses within a domain, have different agreements • Astronomical data is not in the same formats as biodiversity data • Digital library components do not do the same tasks as biodiversity components • Agreement is formalized as a “component profile”
  • 5. • A component family is • a pack on myExperiment, or • a directory on your local machine • A component is defined by a workflow (in a pack) in a component family pack • Components are versioned by the myExperiment’s versioning • Semantic annotations are stored in RDF as part of the workflow definition • Collated semantics, including workflow structure, are combined on myExperiment.
  • 6.
  • 7. • Contains: • Workflow ‘realizing’ the component • Example data • Documentation • Dependency specification
  • 8. • A component family is shown in the service panel of Taverna workbench • Components can be included within a Taverna workflow • Components are not simply the same as nested workflows • You could think of them as nested workflows that obey a set of rules and where you cannot see what is nested (and should not care)
  • 9. • Components are created by annotating a workflow • Choice of a component family and so profile • Semantic annotation from the specified ontologies • Validation against the profile • Component saved into the component family • Can annotate: • Workflow • Input/Output ports • Services inside workflow • Extensions to myExperiment for • Pack snapshots • Semantic collation • Semantic searching
  • 10.
  • 11. • Use of components will allow • Component developers to work on the component • Component users to upgrade (or revert) the component versions • A workflow to remain ‘unchanged’ (if the component interfaces remain the same) • Powerful and dangerous • Proxies for components (re-run and re-play) • Components are “black boxes” in the workflow and workflow runs
  • 12. EBI InterproScan  The workflow to call EBI InterproScan was quite complex.  It would be nice to be able to package that workflow up and be able to use it as a single service in other workflows  That is exactly what components allow
  • 13. Importing a component family  Components are grouped into component families  Component families are held in a component registry  myExperiment is a component registry  You can import a component family into the Service Panel  Click Import new services and then  Component service…
  • 14. Selecting a component family  In the dialog  Select myExperiment component registry, and  Test components family  Click OK
  • 15. Added component family  In the Service panel you can now expand and see the Test components family
  • 16. Adding a component to a workflow  Create a new workflow  Add the EBI_InterproScan component into the workflow  Create input and output workflow ports and connect them to the ports of the component
  • 18. Running the workflow  You can now run the workflow  The value for the sequence should be something like: >sp|Q9BTV4|TMM43_HUMAN Transmembrane protein 43 OS=Homo sapiens GN=TMEM43 PE=1 SV=1 MAANYSSTSTRREHVKVKTSSQPGFLERLSETSGGMFVGLMAFLLSFYLIFTNEGRALKT ATSLAEGLSLVVSPDSIHSVAPENEGRLVHIIGALRTSKLLSDPNYGVHLPAVKLRRHVE MYQWVETEESREYTEDGQVKKETRYSYNTEWRSEIINSKNFDREIGHKNPSAMAVESFMA TAPFVQIGRFFLSSGLIDKVDNFKSLSLSKLEDPHVDIIRRGDFFYHSENPKYPEVGDLR VSFSYAGLSGDDPDLGPAHVVTVIARQRGDQLVPFSTKSGDTLLLLHHGDFSAEEVFHRE LRSNSMKTWGLRAAGWMAMFMGLNLMTRILYTLVDWFPVFRDLVNIGLKAFAFCVATSLT LLTVAAGWLFYRPLWALLIAGLALVPILVARTRVPAKKLE
  • 19. Connecting components  The workflow just contains the single service, we need to connect the component with other services  In the Design view, delete the sequence workflow input port  Right click and select Delete workflow input port  Add Local Services -> ncbi -> Get Protein FASTA to the workflow  Connect the outputText of Get Protein FASTA to the sequence port of the EBI_InterproScan  Connect the id port of Get Protein FASTA to a workflow input port
  • 20. Connected component Your workflow should now look like:
  • 21. Running the workflow - 2  Run the workflow again  You can use Q9BTV4 as the value for id
  • 22. Is it really the complex workflow?  In the Results view you can click on Progress report  Expand EBI_InterproScan  You can see all the services “hidden” inside the component
  • 23.  The menu has a “Components” option  Select “Create family”
  • 24.  In the pop-up window set the registry to local  Select a Profile (or see next slide if no profile available)  Enter the family name (“ProcessString”)
  • 25.  Find your local registry directory  Hint: Components/ Manage Registries  Registry Location  In MyExperiment find the Empty profile  Hint: http://www.myexperiment.org/files/1027.html  Down File into the local registry directory
  • 26.  Add a local service “Split string into string list by regular expression” (from ‘text’)  Add the input port and set the regular expression to space  Add a local service “Remove string duplicates” (from ‘list’)  Connect the output from “Split string into string list by regular expression” with the input of “Remove string duplicates”  Add a local service “Merge String List to a String” and connect its input with the “Remove string duplicates” output and set the separator to be a space
  • 27.
  • 28.  Select “Create component” from the “Components” menu  Provide a name for the component (Remove duplicates)  You should see a pink ribbon at the top  Save the component. You will see a warning message – it pops up because the component is not annotated. We can annotate it in the component details.
  • 29.  Close any open workflows  Add the component(s) to the service panel  Hint: Import Service/ Component Family  Component registry: Local registry  Component family: ProcessString  Add the component to the workflow  Hint: Available services/ Components …  Add input and output ports  Run