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.
Similar content being viewed by others
Notes
We use the terms “API” and “(Web) service” synonymously throughout this paper.
RESTdesc testing website: http://restdesc.no.de/.
Located at http://purl.org/restdesc/uri-template.
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.
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
Alarcón R, Wilde E (2010) Linking data from RESTful services. In: Proceedings of the 3rd international workshop on linked data on the Web
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
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
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
Berners-Lee T, Connolly D (2011) Notation3 (N3): a readable RDF syntax. W3C Team Submission. http://www.w3.org/TeamSubmission/n3/
Berners-Lee T, Hendler J, Lassila O (2001) The Semantic Web. Sci. Am. 284(5):34
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
Brickley D, Miller L (2010) FOAF vocabulary specification 0.97. Namespace document. http://xmlns.com/foaf/spec/20100101.html
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
Christensen E, Curbera F, Meredith G, Weerawarana S (2000) Web Services Description Language (WSDL) 1.0. http://xml.coverpages.org/wsdl20000929.html
Clinton D (2007) OpenSearch specification 1.1 draft 3. http://www.opensearch.org/Specifications/OpenSearch/1.1
De Roo J (2012) Euler proof mechanism. http://eulersharp.sourceforge.net/
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
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
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.
Generereth MR (1998) Knowledge interchange format. Draft Proposed American National Standard. http://logic.stanford.edu/kif/dpans.html
Gonzalez JL, Marcelnez R (2011) Phoenix: fault-tolerant distributed Web storage based on URLs. JoC 2(1):79–86
Gregorio J, Fielding R, Hadley M, Notthingham M (2010) URI template. http://tools.ietf.org/html/draft-gregorio-uritemplate-04
Gregorio J (2007) Do we need WADL?. http://bitworking.org/news/193/Do-we-need-WADL
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/
Hadley M (2009) Web Application Description Language. W3C Member Submission. http://www.w3.org/Submission/wadl/
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/
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/
Klyuev V, Oleshchuk V (2011) Semantic retrieval: an approach to representing, searching and summarising text documents. IJITCC 1(2):221–234
Koch J, Velasco CA (2009) HTTP vocabulary in RDF 1.0. W3C working draft. http://www.w3.org/TR/HTTP-in-RDF10/
Kopecký J, Vitvar T, Bournez C, Farrell J (2007) SAWSDL: semantic annotations for WSDL and XML Schema. IEEE Internet Comput 11:60–67
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
Krummenacher R, Norton B, Marte A (2010) Towards linked open services and processes. In: Proceedings of FIS’2010, pp 68–77
Lafon Y (2009) Team comment on the “Web Application Description Language” Submission. http://www.w3.org/Submission/2009/03/Comment
Lindström N (2011). The CoIN vocabulary. http://court.googlecode.com/hg/resources/docs/coin/spec.html
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/
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
Mcdermott D, Dou D (2002) Representing disjunction and quantifiers in RDF. In: Proceedings of international Semantic Web conference 2002, pp 250–263
McGuinness DL, van Harmelen F (2004) OWL Web ontology language overview. W3C Recommendation. http://www.w3.org/TR/2004/REC-owl-features-20040210/
Minar N (2006) Why SOAP sucks. http://www.somebits.com/weblog/tech/bad/whySoapSucks.html
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.
Prud’hommeaux E, Seaborne A (2008) SPARQL query language for RDF. W3C Recommendation. http://www.w3.org/TR/rdf-sparql-query/
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
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
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
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
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
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
Authors and Affiliations
Corresponding author
Rights 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
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11042-012-1004-5