Changes between Version 26 and Version 27 of SemanticWebServices

Show
Ignore:
Timestamp:
2009/03/20 11:17:30 (15 years ago)
Author:
rvos
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • SemanticWebServices

    v26 v27  
    3030 * We have asked Oswaldo to suggest which WABI services he thinks are most interesting/useful for his integration with the Spanish INB, and we will wrap these services during the hackathon as SADI and/or Moby services. 
    3131 
    32 == Subgroup summary == 
    33 === Why semantic web services === 
     32=== Semantic web services === 
    3433The holy grail of web service interoperability is hampered along three axes: syntax, semantics and interface. In terms of core data syntax, bioinformatics tools consume and produce data in many different formats, some of which are loosely defined syntactically (e.g. legacy flat file formats). In addition, the semantics of what we are trying to do with data, and what we mean by encoding data in a certain way, are often loosely defined. Many file formats are abused and overloaded to add semantics to fields that weren't intended for that (e.g. in comments, definition lines, key/value fields). Lastly, there is a proliferation of interfaces, each of which probably make sense on their own (e.g. RESTful APIs) but they all aren't interoperable in a way that a machine can make sense of by itself. By adopting common standards to define syntax, semantics and interface, different service providers will be able to promote interoperability. Hence, this subgroup consists of people discussing the application of such technologies as WSDL, SAWSDL, OWL, RDF/XML (and other XML tools, i.e. XML schema, transforms). 
    3534In addition to these technical arguments, there are also good philosophical arguments for formalizing our conception of the world. For example, as a researcher, this provides a formal way of sharing your knowledge with other people, thereby promoting reproducibility. 
     
    4645==== SAWSDL ==== 
    4746Web services interfaces are described using web service description language ([http://www.w3.org/TR/wsdl WSDL]). In WSDL documents, semantic web services want to define the semantics of their inputs, outputs  and services. This is done using [http://www.w3.org/2002/ws/sawsdl/ SAWSDL], which provides for the attributes modelReference (which defines the OWL class), liftingSchema (which links to an  [http://www.w3.org/TR/xslt xslt] that lifts the  [http://www.w3.org/XML/ xml] syntax into rdf) and loweringSchema (which links to an xslt that converts the rdf back to xml). 
     47=== Implementing a semantic web service === 
     48Assuming you have a web service that consumes and produces xml and that is described using a WSDL, here are the steps you would need to take: 
     49 * create a mapping, conceptually, between your xml and relevant owl classes and properties (this involves searching currently published ontologies) 
     50 * given that mapping, create xslt style sheets to translate your xml to an rdf/xml instance document and vice versa 
     51 * in your wsdl, define how the input and output xml can be lifted to rdf/xml by pointing to the xml=>rdf stylesheet file in the liftingSchema attribute 
     52 * also define how the input and output can be lowered from rdf/xml to your xml by pointing to the rdf=>xml stylesheet file in the loweringSchema attribute 
     53 * for the simpleTypes and complexTypes in the inputs and outputs, define which owl classes they map onto using the modelReference attribute, which points to a class uri. 
    4854=== Resources === 
    4955 * [http://evolutionaryontology.org CDAO]