Minimum Information about the Operation of a Web Service (MIAOWS)

This module represents the formalised opinion of the authors, which identifies the minimum information required to report the operation of a Web Service, primarily applied to information processing in the life-sceinces.


Author List

Duncan Hull [1], Jim Austin [2], Martin Fletcher [2], Mark Jessop [2], Alastair Knowles [3] , Phillip Lord [4], Daniel C Swan [5] , Paul Watson [4], Frank Gibson [4].


Introduction

The use of Web Services in bioinformatics research is still in its infancy. After some initially enthusiastic optimism [6], and early success stories [7] [8] [9] [10] much of the promise of Web Services technology for use in biological and biomedical investigations is yet to be realised.

One of the biggest barriers to adoption is that users are frequently unable to find services [11], and operate them [12], due to the lack basic service metadata available from a centralised service registry.

There are many different definitions of what a Web Service is, and this has led to much confusion as to how many services exist, what their capabilities are and how they should be described. The W3C describes a Web Service as "a software system designed to support interoperable Machine to Machine interaction over a network." For the purposes of this document, a web service is defined as follows:

A Web Service is a function identified by a URI [13] which accepts at least one input and produces at least one output using HTTP [14].

 ''This definition is deliberately broad to include three contrasting styles of service currently found on the web.

  1. Form-style services, typically HTML forms.
  2. RESTful Web Services [15]
  3. SOAP Web Services [16].

For the purposes of this abstract specification, the differences between these styles of service are not crucial, as we wish to capture an abstract description of the minimum information required to operate the service, regardless of the services interface.

This document represents the minimum information that should be reported about a Web Service to allow a reader to interpret and critically evaluate the operation and information produced from the implementation of the serivce to support their experimental corroboration. In practice the MIAOWS document comprises a checklist of information that should be provided or ascribed to a Web Service upon publication. The MIAOWS modules specify neither the format that data should be transferred in, nor the structure of the repository. In this respect a MIAOWS module is implementation independent definition of a particular technology and follows the design principles and presentation format of the MIAPE guidelines [17].

The information defined within this document should facilitate the interpretation, dissemination and evaluation of the operations of a Web Service. The MIAOWS reporting guidelines define the minimum information that should be associated with a published Web Service, primarily to operate, as opposed to find a Web Service. Defining the minimum information required to find a web service is a complex and context dependent issue, which is outside the scope of this document [18] [19] [20]. However, we recognised that the MIAOWS metadata can be utilised as a method to find a service in a particular registry; basic operational data is the first step towards helping users find services.

The reporting requirements contained within this document should comply with two general criteria; as outlined in Taylor et al, 2007 [17];

  • Sufficiency. The MIAOWS reporting requirements should require sufficient information about a Web Service and its operational context to allow a reader to understand and critically evaluate the application and the results produced, and to support their experimental corroboration.
  • Practicability. Achieving MIAOWS compliance should not be so burdensome as to prohibit Web Serivce publication or operation.

The MIAOWS reporting guidelines define the necessary but not sufficient information to allow discovery of arbitrary services by agents, such as humans or Conforming and ascribing MIAOWS metadata to Web Serivces will benefit the life-science research community, whether as service providers, curators or users and help to realise the potential of Web Services for processing life-science information. Specifically, defining what the service is, the operation it is designed to perform, the input parameters and the resulting output.

The following section, detailing the reporting requirements for the operation of a Web Service, is subdivided as follows:

  1. Service
  2. Operation
  3. Input Parameters
  4. Output

The glossary table provides a definition for each checklist item in the MIAOWS guidelines. Examples are given only to facilitate interpretation and are not intended to be a comprehensive list of the technologies that can or cannot be recorded under each section heading.

In this document the key words "MUST", ''MUST NOT", "REQUIRED'', "SHALL",  "SHALL NOT'', "SHOULD'', "SHOULD NOT'', "RECOMMENDED'', "MAY", and "OPTIONAL'' are to be interpreted as described in RFC-2119 [21].

Reporting requirement for the operation of a Web Service

  1. Service

    1. Name
    2. Version
    3. Service style
  2. Operation

    1. Name
    2. Objective
  3. Input parameters

    1. Name
    2. Data type
    3. Data constraint
    4. Required parameter
  4. Output

    1. Data type
    2. Data constraint

Related Work

There are several existing projects that have attempted to describe web services, especially those used in biology, in different ways. A complete comparison between these systems is out of scope for this document. Instead, we describe abstractly what the minimum information required is to operate a service, rather than how it is described. To the best of our knowledge, no other projects have specified this separately from examples of how services are described in practice.

Summary

The MIAOWS reporting requirements for the operation of a Web Service specify that a significant degree of detail be captured about the service, the parameters and the output. These guidelines will evolve.


Tables

Table 1 - MIAOWS Glossary of required items

 Classification                  Definition                                                                                                            
1.Service    
 (a) Name             Then name of the service. For example the PICR - Protein Identifier Cross-Reference Service 
 (b) Version                                                                             The software version of the service
 (c) Service style              
 The style of the service. For example, Form, Restful, SOAP Service.
 2. Operation 
 (a) Name         The name given to the operation of the service. For example, the PICR service operations are described as "getUPIForAcession"
 (b) Objective     The objective of the operation of the service. Textual description of the objective of the operation.
 3. Input parameter: for each input parameter state the following
 (a) Data type     The required data type for the input parameter. For example, integer or string.
 (b) Data type constraints
 The constraint of the data type described in 3a. For example, the range of integers allowed 0-99, or a string value constrained to a particular schema, such as an XML Schema or a database identifier.
 (c) Parameter Is the parameter a required parameter to allow the operation of the web service to be implemented.Should be described as a Yes or No value 
 4. Output 
 (a) Data type                         The required data type for the input parameter. For example, integer or string.
 (b) Data type constraint
 The constraint of the data type described in 3a. For example, the range of integers allowed 0-99, or a string value constrained to a particular schema, such as an XML Schema or a database identifier.

References

  1. School of Chemistry, University of Manchester, UK
  2. Department of Computer Science, University of York, Heslington, York, YO10
  3. School of Neurology, Neurobiology and Psychiatry, Medical School, Newcastle University, Newcastle NE2 4HH, United
  4. School of Computing Science, Newcastle University, Newcastle upon Tyne, UK.
  5. Bioinformatics Support Unit, Medical School, Newcastle University.
  6. Stein L: Creating a bioinformatics nation. Nature 2002, 417:119-120.
    http://dx.doi.org/10.1038/417119a
  7. Stevens RD, Tipney HJ, Wroe C, Oinn T, Senger M, Lord PW, Goble CA, Brass A, Tassabehji M:
    Exploring Williams-Beuren Syndrome Using myGrid. Bioin- formatics 2004, 20:i303{i310.
  8. Fisher P, Hedeler C, Wolstencroft K, Hulme H, Noyes H, Kemp S, Stevens R, Brass A: A systematic strat- egy for large-scale analysis of genotype phenotype correlations: identi.cation of candidate genes in- volved in African trypanosomiasis. Nucleic Acids Res 2007, 35(16):5625{5633
  9. Wilkinson M, Schoof H, Ernst R, Haase D: BioMOBY Successfully Integrates Distributed Heteroge- neous Bioinformatics Web Services. The PlaNet Exemplar Case. Plant Physiology 2005, 138:5{17.
  10. Fernandez JM, Ho.mann R, Valencia A: iHOP Web services. Nucleic Acids Research 2007, 35(Web Server issue):21{26.
  11. Lausen H, Haselwanter T: Finding Web Services. In Nucleic Acids Research 200
  12. Hull D, Wolstencroft K, Stevens R, Goble C, Pocock MR, Li P, Oinn T: Taverna: a tool for building and running workflows of services. Nucleic Acids Research 2006, 34(Web Server issue):W729{W732
  13. Berners-Lee T, Fielding RT, Masinter L: RFC 3986 Uniform Resource Identi.er (URI): Generic Syntax. Tech. rep. 2005
  14. Fielding RT, Gettys J, Mogul J, Frystyk H, Masinter L, Leach P, Berners-Lee T: RFC 2616 Hypertext Transfer Protocol { HTTP/1.1. Internet Engineering Task Force (IETF) 1999
  15. Pautasso C, Zimmermann O, Leymann F: Restful web services vs. \big" web services: making the right architectural decision. In WWW '08: Proceeding of the 17th international conference on World Wide Web, New York, NY, USA: ACM 2008:805{814,
  16. W3C Working Group. Web Services Glossary
    http://www.w3.org/TR/ws-gloss/
  17. Taylor C, Paton N, Lilley K, Binz P, Julian R, Jones A, Zhu W, Apweiler R, Aebersold R, Deutsch E, Dunn M, Heck A, Leitner A, Macht M, Mann M, Martens L, Neu- bert T, Patterson S, Ping P, Seymour S, Souda P, Tsugita A, Vandekerckhove J, Vondriska T, Whitelegge J, Wilkins M, Xenarios I, Yates J, Hermjakob H: The minimum information about a proteomics experiment (MI- APE). Nat Biotechnol 2007, 25(8):887{93.
  18. Paolucci M, Kawamura T, Payne TR, Sycara K: Se- mantic Matching of Web Services Capabili- ties. In First International Semantic Web Confer- ence (ISWC2002) 2002:333{347,
  19. Al-Masri E, Mahmoud QH: Investigating Web Ser- vices on the World Wide Web. In WWW2008, Beijing, China 2008
  20. Lord PW, Bechhofer S, Wilkinson MD, Schiltz G, Gessler D, Hull D, Goble CA, Stein L: Applying Seman- tic Web Services to Bioinformatics: Experiences Gained, Lessons Learnt. In International Seman- tic Web Conference 2004:350{364
  21. Bradner S: Key words for use in RFCs to Indicate Requirement Levels, Internet Engineering Task Force, RFC 2119.

Comments

Article rating:
Your rating:

Reviews

    Frank Gibson also wrote

    Knol translations

    Categories

    Based on community consensus.

    Activity for this knol

    This week:

    22pageviews

    Totals:

    343pageviews