Capturing the functionality of Web services with functional descriptions

Abstract

Many have left their footprints on the field of semantic RESTful Web service description. Albeit some of the propositions are even W3C Recommendations, none of the proposed standards could gain significant adoption with Web service providers. Some approaches were supposedly too complex and verbose, others were considered not RESTful, and some failed to reach a significant majority of API providers for a combination of the reasons above. While we neither have the silver bullet for universal Web service description, with this paper, we want to suggest a lightweight approach called RESTdesc. It expresses the semantics of Web services by pre- and postconditions in simple N3 rules, and integrates existing standards and conventions such as Link headers, HTTP OPTIONS, and URI templates for discovery and interaction. This approach keeps the complexity to a minimum, yet still enables service descriptions with full semantic expressiveness. A sample implementation on the topic of multimedia Web services verifies the effectiveness of our approach.

This is a preview of subscription content, log in to check access.

Listing 1
Listing 2
Listing 3
Listing 4
Listing 5
Listing 6
Listing 7
Listing 8
Listing 9
Listing 10

Notes

  1. 1.

    We use the terms “API” and “(Web) service” synonymously throughout this paper.

  2. 2.

    RESTdesc testing website: http://restdesc.no.de/.

  3. 3.

    Located at http://purl.org/restdesc/uri-template.

  4. 4.

    It is not obligatory to detail the server-specific vocabulary in an ontology. Its consistent use across different descriptions may suffice for interpretation and composition.

  5. 5.

    This approach works well with actions that do not involve commitment, i.e. information exchange, which we primarily focus on. Data fetching and even state-changing actions, such as image upload, are thus perfectly possible. In case of irreversible actions with binding consequences (e.g., reservations), special care might be necessary. But then again, not all errors can be foreseen, which renders this topic inherently difficult and not generally solvable.

References

  1. 1.

    Alarcón R, Wilde E (2010) Linking data from RESTful services. In: Proceedings of the 3rd international workshop on linked data on the Web

  2. 2.

    Atrey P, Hossain M, El Saddik A, Kankanhalli MS (2010) Multimodal fusion for multimedia analysis: a survey. In: Multimedia systems. http://www.springerlink.com/index/E31M71152774R630.pdf

  3. 3.

    Ballinger K, Brittenham P, Malhotra A, Nagy WA, Pharies S (2001) Web services inspection language (WS-Inspection) 1.0. http://www-106.ibm.com/developerworks/webservices/library/ws-wsilspec.html

  4. 4.

    Bellwood T, Capell S, Clement L, Colgrave J, Dovey MJ, Feygin D, Hately A, Kochman R, Macias P, Novotny M, Paolucci M, von Riegen C, Rogers T, Sycara K, Wenzel P, Wu Z (2004) UDDI version 3.0.2. http://www.oasis-open.org/committees/uddi-spec/doc/spec/v3/uddi-v3.0.2-20041019.htm

  5. 5.

    Berners-Lee T, Connolly D (2011) Notation3 (N3): a readable RDF syntax. W3C Team Submission. http://www.w3.org/TeamSubmission/n3/

  6. 6.

    Berners-Lee T, Hendler J, Lassila O (2001) The Semantic Web. Sci. Am. 284(5):34

    Article  Google Scholar 

  7. 7.

    Berners-Lee T, Connolly D, Kagal L, Scharf Y, Hendler J (2008) N3Logic: a logical framework for the World Wide Web. Theory and Practice of Logic Programming 8(3):249–269

    MathSciNet  MATH  Article  Google Scholar 

  8. 8.

    Brickley D, Miller L (2010) FOAF vocabulary specification 0.97. Namespace document. http://xmlns.com/foaf/spec/20100101.html

  9. 9.

    Chinnici R, Moreau J-J, Ryman A, Weerawarana S (2007) Web Services Description Language (WSDL) version 2.0 part 1: core language. W3C Recommendation. http://xml.coverpages.org/wsdl20000929.html

  10. 10.

    Christensen E, Curbera F, Meredith G, Weerawarana S (2000) Web Services Description Language (WSDL) 1.0. http://xml.coverpages.org/wsdl20000929.html

  11. 11.

    Clinton D (2007) OpenSearch specification 1.1 draft 3. http://www.opensearch.org/Specifications/OpenSearch/1.1

  12. 12.

    De Roo J (2012) Euler proof mechanism. http://eulersharp.sourceforge.net/

  13. 13.

    Fielding RT, Taylor RN (2002) Principled design of the modern Web architecture. ACM Trans on Int Tech 2(2):115–150. doi:10.1145/514183.514185

    Article  Google Scholar 

  14. 14.

    Fielding R, Gettys J, Mogul J, Frystyk H, Masinter L, Leach P, Berners-Lee T (1999) Hypertext transfer protocol—HTTP/1.1. Request for comments: 2616. http://www.ietf.org/rfc/rfc2616.txt

  15. 15.

    Gao S, Sperberg-McQueen CM, Thompson HS, Mendelsohn N, Beech D, Maloney M (2008) W3C XML Schema Definition Language (XSD) 1.1 part 1: structures. World Wide Web consortium, working draft WD-xmlschema11-1-20080620.

  16. 16.

    Generereth MR (1998) Knowledge interchange format. Draft Proposed American National Standard. http://logic.stanford.edu/kif/dpans.html

  17. 17.

    Gonzalez JL, Marcelnez R (2011) Phoenix: fault-tolerant distributed Web storage based on URLs. JoC 2(1):79–86

    Google Scholar 

  18. 18.

    Gregorio J, Fielding R, Hadley M, Notthingham M (2010) URI template. http://tools.ietf.org/html/draft-gregorio-uritemplate-04

  19. 19.

    Gregorio J (2007) Do we need WADL?. http://bitworking.org/news/193/Do-we-need-WADL

  20. 20.

    Gudgin M, Hadley M, Mendelsohn N, Moreau J-J (2007) SOAP version 1.2 part 1: messaging framework, 2nd edn. W3C recommendation. http://www.w3.org/TR/2007/REC-soap12-part1-20070427/

  21. 21.

    Hadley M (2009) Web Application Description Language. W3C Member Submission. http://www.w3.org/Submission/wadl/

  22. 22.

    Horrocks I, Patel-Schneider PF, Boley H, Tabet S (2004) Swrl: a Semantic Web rule language combining OWL and RuleML. W3C Member Submission. http://www.w3.org/Submission/SWRL/

  23. 23.

    Klyne G, Carrol JJ (2004) Resource Description Framework (RDF): concepts and abstract syntax. W3C Recommendation. http://www.w3.org/TR/2004/REC-rdf-concepts-20040210/

  24. 24.

    Klyuev V, Oleshchuk V (2011) Semantic retrieval: an approach to representing, searching and summarising text documents. IJITCC 1(2):221–234

    Article  Google Scholar 

  25. 25.

    Koch J, Velasco CA (2009) HTTP vocabulary in RDF 1.0. W3C working draft. http://www.w3.org/TR/HTTP-in-RDF10/

  26. 26.

    Kopecký J, Vitvar T, Bournez C, Farrell J (2007) SAWSDL: semantic annotations for WSDL and XML Schema. IEEE Internet Comput 11:60–67

    Article  Google Scholar 

  27. 27.

    Krill P (2005) Microsoft, IBM, SAP discontinue UDDI registry effort. InfoWorld. http://www.infoworld.com/d/architecture/microsoft-ibm-sap-discontinue-uddi-registry-effort-777

  28. 28.

    Krummenacher R, Norton B, Marte A (2010) Towards linked open services and processes. In: Proceedings of FIS’2010, pp 68–77

  29. 29.

    Lafon Y (2009) Team comment on the “Web Application Description Language” Submission. http://www.w3.org/Submission/2009/03/Comment

  30. 30.

    Lindström N (2011). The CoIN vocabulary. http://court.googlecode.com/hg/resources/docs/coin/spec.html

  31. 31.

    Martin D, Burstein M, Hobbs J, Lassila O (2004) OWL-S: semantic markup for Web services. W3C Member Submission. http://www.w3.org/Submission/OWL-S/

  32. 32.

    McDermott D (2004) DRS: a set of conventions for representing logical languages in RDF. http://cs-www.cs.yale.edu/homes/dvm/daml/DRSguide.pdf

  33. 33.

    Mcdermott D, Dou D (2002) Representing disjunction and quantifiers in RDF. In: Proceedings of international Semantic Web conference 2002, pp 250–263

  34. 34.

    McGuinness DL, van Harmelen F (2004) OWL Web ontology language overview. W3C Recommendation. http://www.w3.org/TR/2004/REC-owl-features-20040210/

  35. 35.

    Minar N (2006) Why SOAP sucks. http://www.somebits.com/weblog/tech/bad/whySoapSucks.html

  36. 36.

    Peterson D, Gao S, Malhotra A, Sperberg-McQueen CM, Thompson HS (2008) W3C XML Schema Definition Language (XSD) 1.1 part 2: datatypes. In: World Wide Web Consortium, working draft WD-xmlschema11-2-20080620.

  37. 37.

    Prud’hommeaux E, Seaborne A (2008) SPARQL query language for RDF. W3C Recommendation. http://www.w3.org/TR/rdf-sparql-query/

  38. 38.

    Pyshkin E, Kuznetsov A (2011) Approaches for Web search user interfaces: how to improve the search quality for various types of information. JoC 1(1):1–8

    Google Scholar 

  39. 39.

    Sathappan OL, Chitra P, Venkatesh P, Prabhu M (2011) Modified genetic algorithm for multiobjective task scheduling on heterogeneous computing system. IJITCC 1(2):146–158

    Article  Google Scholar 

  40. 40.

    Steiner T, Algermissen J (2011) Fulfilling the hypermedia constraint via HTTP OPTIONS, the HTTP vocabulary In RDF, and link headers. In: Proceedings of the second international workshop on RESTful design

  41. 41.

    Verborgh R, Van Deursen D, De Roo J, Mannens E, Van de Walle R (2010) SPARQL endpoints as front-end for multimedia processing algorithms. In: Proceedings of the fourth international workshop on service matchmaking and resource retrieval in the Semantic Web

  42. 42.

    Verborgh R, Van Deursen D, Mannens E, Poppe C, Van de Walle R (2011) Enabling context-aware multimedia annotation by a novel generic semantic problem-solving platform. Multimedia Tools and Applications special issue on Multimedia and Semantic Technologies for Future Computing Environments. doi:10.1007/s11042-010-0709-6

Download references

Acknowledgements

The authors wish to thank Niklas Lindström for his help with the CoIN vocabulary and Mark Nottingham for his suggestion on HTTP header line folding.

The research activities as described in this paper were funded by Ghent University, the Interdisciplinary Institute for Broadband Technology (IBBT), the Institute for the Promotion of Innovation by Science and Technology in Flanders (IWT), the Fund for Scientific Research Flanders (FWO Flanders), and the European Union.

This work was partially supported by the European Commission under Grant No. 248296 FP7 I-SEARCH project. Joaquim Gabarró is partially supported by TIN-2007-66523 (FORMALISM), and SGR 2009-2015 (ALBCOM).

Author information

Affiliations

Authors

Corresponding author

Correspondence to Ruben Verborgh.

Rights and permissions

Reprints and Permissions

About this article

Cite this article

Verborgh, R., Steiner, T., Van Deursen, D. et al. Capturing the functionality of Web services with functional descriptions. Multimed Tools Appl 64, 365–387 (2013). https://doi.org/10.1007/s11042-012-1004-5

Download citation

Keywords

  • Semantic Web
  • Service description
  • Service discovery