Embrace Web Services
Upcoming SlideShare
Loading in...5

Embrace Web Services



Title: Embrace Web Services

Title: Embrace Web Services
Author: Taavi Hupponen



Total Views
Views on SlideShare
Embed Views



1 Embed 1

http://www.slideshare.net 1



Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

Embrace Web Services Embrace Web Services Presentation Transcript

  • EMBRACE Web Services Taavi Hupponen CSC – Center for Scientific Computing, Finland BOSC 2007
  • Contents
    • Introduction to EMBRACE
    • Motivation for Integration
    • EMBRACE services
    • Choice of Technology and Experiences
    • Summary
  • Introduction to EMBRACE
    • EU FP6 Network of Excellence (2005-2010). 16 partners, coordinated by the EBI
    • Goal: enabling integration and gridification of bioinformatics tools and databases
    • Enabling integration in practice: providing Web services access for tools and databases
    • http://www.embracegrid.info
  • Motivation for Integration
    • Integration: communication between programs, making software to work together
    • Enabling integration in EMBRACE: providing programmatic access to bioinformatics services
    • Benefits:
      • integrating the functionality of a service into existing software
      • powerful workflow applications
      • efficient and powerful access directly from your own script or code
  • Services
    • Databases : EMBL, UniProt, InterPro, Ensembl, ArrayExpress, MSD, SMART, ProDom, JASPAR, UTRdb, PairsDB…
    • Tools : EMBOSS, ELM, GOblet, SAMOSA, CATHEDRAL, CATHSCAN, SSAP, FUNCUT, palign, prodiv-TMHH, RNAmmer…
  • Integration Technology: Web Services
    • Web services: machine to machine communication using web technologies such as HTTP and XML
    • Reasons
      • platform independency, interoperability
        • independent service providers, client developers and users
      • wide-spread technology, also outside bioinformatics
        • existing development tools and specifications
    • The two common styles for implementing Web services:
      • SOAP based Web services
      • RESTful Web services
    • The current EMBRACE technology recommendation promotes the use of SOAP
  • Experiences on SOAP based Web Services
  • SOAP based Web services
    • SOAP as the message protocol
    • WSDL for describing the service interface
    • WS-* specifications provide further functionality such as security
    • Web services toolkits help to deal with messy SOAP and WSDL details
  • Interoperability
    • Interoperability is about different implementations working together, regardless of the implementation language or platform
    • Interoperability is essential when the service providers and users are independent
    • SOAP and WSDL maybe a bit too flexible and somewhat underspecified  possible interoperability issues
    • Interoperability can be achieved by
      • following guidelines in the WS-I Basic Profile
      • using document literal wrapped style
      • keeping in mind that the wire format is XML
  • Transferring non-XML data with SOAP
    • SOAP messages are XML, and the structure information carried with XML is great…
    • … but XML is not the optimal format for every kind of data, e.g images
    • Solutions, depending on the size of the data:
      • small: base64 encoding
      • medium: attachments using MTOM/XOP
      • large:
        • attachments using MTOM/XOP
        • passing references with SOAP and using external transfer mechanism for the data
        • streaming is essential in both cases
  • SOAP Web Services Challenges
    • SOAP and WSDL are sometimes considered somewhat complex
    • Capable Web services toolkit and development tools help when dealing with complexity
    • The features of the available Web services toolkits vary and their use is not without costs
      • learning
      • dependencies
      • more complicated development and build process
    • Many specifications still developing or not widely supported by toolkits (WSDL-S, MTOM)
  • SOAP vs REST?
    • REST is often considered more simple and there is less need for a toolkit
    • The backend is usually the same, regardless of the interface technology
    • Regardless of the interface technology, same tasks need to be done (defining data structures, interface description..)
    • Some SOAP toolkits (e.g. JAX-WS RI) can provided a RESTful interface in addition to a SOAP based one
  • Summary
    • EMBRACE is enabling integration of bioinformatics tools and databases by providing Web services access to them
    • Current technological emphasis is on SOAP based technology, which is a bit complex, but works fine if attention is paid to interoperability and capable tools are used
    • http://www.embracegrid.info
  • Acknowledgements
    • The EMBRACE project is funded by the European Commission within its FP6 Programme, under the thematic area "Life sciences, genomics and biotechnology for health,“ contract number LHSG-CT-2004-512092.