Upload
darrell-gibbs
View
214
Download
0
Tags:
Embed Size (px)
Citation preview
Implementing computational analysis
through Web services
Arnaud KerhornouCRG/INBBarcelona
-BioMed Workshop
IRBNovember 2007
Current situation in Bioinformatics
•Discovery
•Service description
•Ontologies
•Data transfert
•Automation
Limits
BioMoby architecture
PublishFind
Bind
Service registry
Service Provider
Service Descriptions
Service Description
Service
WDSL, UDDIWSDL, UDDI
Service Requestor
A web service is an interface that describes a collection of operations that are network accessible through standardized XML messaging
BioMoby
a unifying framework approach
The bioMoby project aims to provide bioinformatics resources through the web. It can be data retrieval resources or analysis resources.
It defines an ontology-based messaging standard The services are registered in a central “yellow pages”
server to facilitate the discovery The services specifications are formalized in a description
language.
It provides:•A Central Registry of services•A set of standards to specify:
•Message formatting,•Error reporting•Asynchronous requests
•An API written in two languages, perl and java •Ontologies to represent
•Types of services,•Data types
The BioMoby framework
Ontology
• Data exchange relies on the use of Ontologies.
• Ontology to represent knowledge in a given domain
• In bioinformatics: – OBO (GO, SO and many many more)
• http://obo.sourceforge.net/cgi-bin/table.cgi
– Biomoby datatypes to classify service input/output– Biomoby service types
Establish Ontologies to formalize the representation of:•Types of services•Types of data
The BioMoby ontologies
Bioinformatics
Sequence
Analysis
MultipleSequence
Alignment
PairwiseSequence
Alignment
Alignment
GeneFinding
is-a
Service
The Service TypeOntology
Object
String
Integer
Virtual
SequenceGeneric
Sequence
DNA
Sequence
AminoAcid
Sequence
text_plain text_formatted GFF
has-a
is-a
is-a
has-a
has-a
The Data TypeOntology
<DNASequence>
<String articleName=”Sequence”>
AAATGTCGCTCGATACGATCAGCTACGA
</String>
<Integer articleName=”Length”>
28
</Integer>
</DNASequence>
Moby DNASequenceObject
BioMobyService specs
• Service name: Free Text
• Service type: Moby service type ontology
• Description: Free text
• One or more inputs: Moby data type ontology
• One or more outputs: Moby data type ontology
• One or more parameters: – name (a string)– value (an ‘primitive’, ie a String or an Integer etc.)
Example
• Service type: GeneFinding
• Description: ab-initio gene finding software
• Input: a DNASequence object
• Output: a GFF object
• Parameters:– Profile (Default is Human)– Strand (Default is both strands)
RunGeneIDGFF service specifications:
Client Side
MobyCentral
ServiceProvider
Internet
ServiceClient
• There are different kind of clients
• Some of them allow the creation of workflows
Programmatic
libraries:
• Java based graphical integrated workbench
• It allows the construction of complex distributed workflows
• It can handle different kind of services (Moby and others)
Client Side: Taverna I
Processors = Webservices
Inputs
Outputs
Client Side: Taverna II
Client Side: Taverna III
Moby Web service Configuration
• All the info accessible at the Moby homepage at:– http://www.biomoby.org/
• Taverna Web site– http://www.inab.org/MOWServ
• Remora Web interface– http://lipm-bioinfo.toulouse.inra.fr/remora/cgi/remora.cgi
• MowServ Web interface– http://www.inab.org/MOWServ/
• Genome Analysis services page– http://genome.imim.es/webservices
BioMoby on the Web