Changes between Version 7 and Version 8 of Report

Show
Ignore:
Timestamp:
2009/07/03 03:14:14 (15 years ago)
Author:
ktym
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Report

    v7 v8  
    340340}}} 
    341341 
    342 === 11 Paul Gordon/Rutger Vos/Mark Wilkinson - [wiki:SemanticWebServices] (and/or [wiki:SatelliteSemanticAnnotation]) (in progress) === 
     342=== 11 Paul Gordon/Rutger Vos/Mark Wilkinson - [wiki:SemanticWebServices] (and/or [wiki:SatelliteSemanticAnnotation]) (DONE) === 
     343 
     344Interoperability between traditional web services is hampered by the fact that supporting technologies only allow such services to be defined in terms of their syntax. To combine such services in larger work flows, developers need to find agreement on the meaning of the data types that these services produce and consume.  
     345 
     346For example, if one service emits numbers constrained to a range between 0 and 100, and another service consumes such numbers, then these services are interoperable in terms of their syntax - but if the former service emits these numbers as measurements of the temperature of liquid water and the latter consumes them to record entry-level donations to a charity then these services are not truly interoperable in any meaningful way. Human intervention in traditional web service composition is necessary to assess whether such services are truly interoperable.  
     347 
     348Semantic web services hold the promise of facilitating automatic service discovery and composition by describing the meaning of entities (operations, inputs and outputs, metadata) in a way that a machine can consume and draw conclusions from by itself. This is made possible by the recent development of a number of standards, conceptual and technological, among which are:  
     349 
     350        RDF - conceptually, RDF's contribution is the notion that anything can be described in terms of simple statements consisting of subject, predicate and object ("triples"). To transmit such triples, a number of serialization formats is used, including RDF/XML, N3 and Turtle. 
     351 
     352        OWL - the Web Ontology Language is used to describe whatever goes into triples - i.e. subjects, predicates and objects - in class hierarchies so that reasoners can draw conclusions about the implications of triples that include instances of OWL classes. 
     353 
     354        SPARQL - sets of RDF triples form graphs akin to joins across traditional relational database tables. The SPARQL language has been developed to facilitate queries over such graphs using a syntax and logic similar to SQL. 
     355 
     356        Web stack - to uniquely identify and dereference entities (subjects, predicates and objects) within an RDF graph, traditional web technologies are used. For example, because the DNS system guarantees uniqueness of entries, URLs are commonly used to identify entities, and HTTP is used to dereference them. 
     357 
     358Recently, these technologies have started to be applied to bioinformatics. Among the participants of the hackathon the project that is most advanced in its leveraging of semantic web service technologies is SADI, and so this was used as a model to illustrate semantic web services in general. 
     359 
     360The BioHackathon was the first opportunity to describe and discuss the SADI (Semantic Automated Discovery and Integration) project.  SADI is the successor to BioMoby, and is distinct from BioMoby in several key ways, including:   
     361        SADI utilizes the Semantic Web standards RDF and OWL, and their XML serializations, for passing its data; 
     362        SADI does not define any novel messaging formats;  
     363        There is no centralized datatype ontology, rather SADI can utilize any classes, and any predicates, from any Web-published ontology; 
     364        Web Service interfaces are defined in terms of the OWL classes they consume/produce, and the Web Services must consume/produce RDF Individuals of those OWL Classes;  
     365        Web Services are discovered based on the RDF predicate(s) that they attach to the incoming data; 
     366        Web Services are invoked using HTTP POST; 
     367        Batch-invocations and asynchronous invocations hare handled at the level of the URI and pure HTTP protocol, rather than an extension of SOAP and/or WSRF headers.   
     368 
     369The 'novelty' of SADI is in its perspective of what Web Services in bioinformatics “do”.  While observing the BioMoby project, we came to realize that most (possibly all) Web Services in Bioinformatics have one thing in common – they uncover some biological relationship between the data that is input to the service, and the data that is returned.   In SADI we merely require that Web Services are modeled to make this implicit behavior explicit – i.e.,  that a Web Service should consume a piece of data, and the explicitly create the RDF triple linking that input data and the resulting output, with a predicate describing the biological relationship between that input and that output.  For example, a BLAST Web Service consumes a sequence and generates “hits”.   Viewed from the perspective of the Semantic Web, the Service consumes a URI representing a sequence, outputs a URI representing a related sequence, and joins those two sequences by a predicate such as “hasSequenceSimilarityTo”.  By modeling Web Services this way, we demonstrate (e.g. using the SHARE client:  http://biordf.net/cardioSHARE/) that Web Services can be made to appear as transparent parts of the Semantic Web, thus removing the walls between the Semantic Web and Web Service worlds. 
     370 
     371The World Wide Web Consortium has recently adopted a standard called SAWSDL for the semantic annotation of Web Services.  This standard provides a way to reference both external data models and schema mapping rules, encouraging interoperability regardless of the Web Service's original input and output schemas. The 2008 BioHackathon highlighted the need for a standards-compliant retrofit of existing Web services to BioMoby, therefore a SAWSDL-compliant service proxy was implemented [Gordon P.M.K., Sensen C.W. (2008) Creating Bioinformatics Semantic Web Services from Existing Web Services: A real-world application of SAWSDL. In: Proceedings of the IEEE International Conference on Web Services (Beijing, China), September 23-26, 2008, pp. 608-614.].  By the BioHackathon 2009, it became obvious that manual maintenance of extra SAWSDL markup in Web Services' WSDL documents can be overly burdensome, especially because the original WSDL documents are usually auto-generated.  To simplify SAWSDL creation and maintenance, existing Web Services can now be made BioMoby-compliant via a simple point-and-click interface (www.daggoo.net).  This functionality will be extended to SADI services in order to facilitate full Semantic Web compliance of Web Services for bioinformatics service providers and future BioHackathon events. 
     372 
    343373 
    344374=== 12 Chisato Yamasaki/Atsuko Yamaguchi - [wiki:SatelliteManifestWebServiseGuidelines] (in progress) ===