Skip to main content

Service Semantics

  • Chapter

Abstract

The chapter looks at how to enrich the description of cloud services with semantic knowledge. This enrichment is conducted using Linked USDL (Unified Service Description Language), a service description language built with semantic web technologies. Linked USDL provides a business and technical envelope to describe services’ general information and their Web API. This improves the search and contracting of services over the web. Using the LastFM cloud service as a starting point, the chapter delves into semantic description and explains the development of a Web API build using the REST paradigm to access cloud services pragmatically.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   79.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   99.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD   99.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Notes

  1. 1.

    Amazon AWS Marketplacehttp://www.aws.amazon.com/marketplace.

  2. 2.

    ProgrammableWebhttp://www.programmableweb.com.

  3. 3.

    http://www.sugarcrm.com.

  4. 4.

    Compare to the collection resources of a REST architecture introduced in Sect. 5.2.2.

  5. 5.

    Protégé ontology editor and knowledge-base frameworkhttp://www.protege.stanford.edu.

  6. 6.

    http://www.rdfabout.com/demo/validator/.

  7. 7.

    http://www.w3.org/RDF/Validator/.

  8. 8.

    Jena TDBhttp://www.jena.apache.org/documentation/tdb/index.html.

  9. 9.

    AllegroGraphhttp://www.franz.com/agraph/allegrograph/.

  10. 10.

    See IETF RFC7230 athttp://tools.ietf.org/html/rfc7230 et seq. for details.

  11. 11.

    Linked Data—Design Issueshttp://www.w3.org/DesignIssues/LinkedData.

  12. 12.

    http://www.w3.org/TR/ws-arch/#relwwwrest.

  13. 13.

    The HTTP POST method is a noteworthy exception as it permits the submission of data to process, which is similar to an RPC call and therefore should be used carefully.

  14. 14.

    A vocabulary is also known called a “schema”, a “data dictionary”, or an“ontology”.

  15. 15.

    The Dublin Core Schema is a vocabulary that can be used to describe web resources (video, images, web pages, etc.), as well as physical resources such as books.

  16. 16.

    GoodRelations is a vocabulary for product, price, store, and company data that can be embedded into web pages to be automatically processed by intelligent applications.

  17. 17.

    The definition of the service modelmodel_SLastFM is not provided in this running example.

  18. 18.

    http://www.linked-usdl.org/ns/usdl-business-roles.

  19. 19.

    http://www.iserve.kmi.open.ac.uk/ns/msm/.

  20. 20.

    Since clients might require descriptions for all resources to interact with them, not included resources have to provide similar information directly, which can be retrieved at runtime for example via the HTTP OPTIONS method.

  21. 21.

    The description of the legal and price modules are not covered in this chapter.

  22. 22.

    The operations of an HTTP-based REST API are also referred to with the term HTTP methods.

  23. 23.

    See IETF RFC7230 athttp://tools.ietf.org/html/rfc7230 et seq. for details

  24. 24.

    If another format like JSON or XML is used, a description needs to make the implicit semantics of the data explicit.

  25. 25.

    For a detailed description of how to calculate the described metrics see [36].

References

  1. Noor T et al (2013) CSCE: a crawler engine for cloud services discovery on the world wide web. In: IEEE 20th international conference on web services (ICWS). IEEE, Washington, DC, USA, pp 443–450

    Google Scholar 

  2. Cardoso J, Pedrinaci C (2015) Evolution and overview of linked USDL. In: 6th International conference exploring services science (IESS 2015). Lecture notes in computer science. Springer, Berlin

    Google Scholar 

  3. Christensen E et al (2013) Web services description language (WSDL) 1.1. W3C note. W3C, Mar 2001.http://www.w3.org/TR/wsdl. Accessed 10 Sep 2015

  4. Kopecky J et al (2007) SAWSDL: semantic annotations for WSDL and XML schema. IEEE Internet Comput 11(6):60–67

    Article  Google Scholar 

  5. Martin D et al (2004) OWL-S: semantic markup for web services. W3C member submission

    Google Scholar 

  6. Cardoso J, Sheth A (2003) Semantic e-workflow composition. J Intell Inf Syst 21(3):191–225

    Article  Google Scholar 

  7. Endres-Niggemeyer B (eds) (2013) Semantic mashups. Intelligent reuse of web resources. Springer, Berlin/Heidelberg

    Google Scholar 

  8. Le Phuoc D et al (2009) Rapid prototyping of semantic mash-ups through semantic web pipes. In: Quemada J et al (eds) Proceedings of the 18th international conference on world wide web, WWW 2009, Madrid, 20–24 April 2009. ACM, New York, NY, USA pp 581–590

    Google Scholar 

  9. Lathem J, Gomadam K, Sheth AP (2007) SA-REST and (s)mashups: adding semantics to RESTful services. In: Proceedings of the first IEEE international conference on semantic computing (ICSC 2007), Irvine, CA, 17–19 Sept 2007. IEEE, Washington, DC, USA, pp 469–476

    Google Scholar 

  10. Di Lorenzo G et al (2009) Data integration in mashups. SIGMOD Rec 38(1):59–66

    Article  MathSciNet  Google Scholar 

  11. Manola F, Miller E (2013) RDF primer. W3C recommendation. W3C, Feb 2004.http://www.w3.org/TR/rdf-primer/. Accessed 10 Sep 2015

  12. Brickley D, Guha RV (2013) RDF vocabulary description language 1.0: RDF schema. W3C recommendation. W3C, Feb 2004.http://www.w3.org/TR/rdf-schema/. Accessed 15 Aug 2013

  13. Beckett D, Berners-Lee T (2013) Turtle - terse RDF triple language. W3C team submission. W3C, Mar 2011.http://www.w3.org/TeamSubmission/turtle/. Accessed 10 Sep 2015

  14. Stolz A, Rodriguez-Castro B, Hepp M (2013) RDF translator: a RESTful multi-format data converter for the semantic web. Technical report TR-2013-1, Universität der Bundeswehr München, July 2013

    Google Scholar 

  15. Staab S, Studer R (eds) (2009) Handbook on ontologies, 2nd edn. International handbooks on information systems. Springer, Berlin.

    Google Scholar 

  16. Hayes PJ (2013) RDF semantics. W3C recommendation. W3C, Feb 2004.http://www.w3.org/TR/rdf-mt/. Accessed 10 Sep 2015

  17. Maedche A, Staab S (2001) Ontology learning for the semantic web. IEEE Intell Syst 16(2): 72–79

    Article  Google Scholar 

  18. Lehmann J, Voelker J (2014) An introduction to ontology learning. In: Lehmann J, Voelker J (eds) Perspectives on ontology learning. AKA/IOS Press, Heidelberg, pp 9–16

    Google Scholar 

  19. W3C SPARQL Working Group (2013) SPARQL 1.1 overview. W3C recommendation. W3C, Mar 2013.http://www.w3.org/TR/sparql11-overview/. Accessed 10 Sep 2015

  20. Bizer C, Heath T, Berners-Lee T (2009) Linked data - the story so far. Int J Semantic Web Inf Syst 4(2):1–22

    Google Scholar 

  21. Pautasso C, Wilde E (2009) Why is the web loosely coupled?: a multi-faceted metric for service design. In: Quemada J et al (eds) International conference on world wide web. ACM, New York, NY, USA

    Google Scholar 

  22. Stadtmüller S et al (2013) Comparing major web service paradigms. In: Workshop on services and applications over linked APIs and data, vol 1056. CEUR-WS, 2013

    Google Scholar 

  23. Fielding R (2000) Architectural styles and the design of network-based software architectures. Ph.D. thesis, University of California, Irvine

    Google Scholar 

  24. Richardson L, Ruby S (2007) RESTful web services. O’Reilly Media. Sebastopol, CA, USA

    Google Scholar 

  25. Webber J (2010) REST in practice: hypermedia and systems architecture. O’Reilly Media, Farnham, UK

    Book  Google Scholar 

  26. Maleshkova M, Pedrinaci C, Domingue J (2010) Investigating web APIs on the world wide web. In: IEEE 8th European Conference on Web Services (ECOWS), IEEE, Ayia Napa

    Google Scholar 

  27. Cardoso J et al (2010) Towards a unified service description language for the internet of services: requirements and first developments. In: IEEE international conference on services computing (SCC), FL, pp 602–609

    Google Scholar 

  28. Pedrinaci C, Cardoso J, Leidig T (2014) Linked USDL: a vocabulary for web-scale service trading. Lecture notes in computer science, vol 8465. Springer, Berlin, pp 68–82

    Google Scholar 

  29. García JM et al (2015) Linked USDL agreement: effectively sharing semantic service level agreements on the web. In: The IEEE international conference on web services (ICWS), New York, 2015

    Google Scholar 

  30. Cardoso J et al (2012) Open semantic service networks. In: International symposium on services science (ISSS), Leipzig, 2012

    Google Scholar 

  31. Stadtmüller S et al (2013) Data-Fu: a language and an interpreter for interaction with read/write linked data. In: International conference on world wide web. International world wide web conferences steering committee, Geneva, Switzerland, pp 1225–1236

    Google Scholar 

  32. Wilde E (2009) REST and RDF granularity. Accessed 10 Sep 2015

    Google Scholar 

  33. Krummenacher R, Norton B, Marte A Towards linked open services and processes. In: Future internet symposium. Springer, Berlin, pp 68–77

    Google Scholar 

  34. Speiser S, Harth A (2011) Integrating linked data and services with linked data services. In: Proceedings of the 8th extended semantic web conference (ESWC’11) part I, Lecture notes in computer science, vol 6643. Springer, Heraklion

    Google Scholar 

  35. Verborgh R et al (2011) Efficient runtime service discovery and consumption with hyperlinked RESTdesc. In: International conference on next generation web services practices, Salamanca, 2011

    Google Scholar 

  36. Stadtmüller S, Norton B (2013) Scalable discovery of linked APIs. J Metadata Semant Ontol 8(2):95–105

    Article  Google Scholar 

  37. Cardoso J, Winkler M, Voigt K (2009) A service description language for the internet of services. In: International symposium on services science (ISSS), Leipzig, 2009

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Steffen Stadtmüller .

Editor information

Editors and Affiliations

5.1 Review Section

Review Questions

  1. 1.

    What are the differences between interfaces and services? What is a Web API?

  2. 2.

    Why is a keyword-based search insufficient for the search for a services or an API?

  3. 3.

    What is the purpose of the operational perspective on services. Compare it to the technical perspective, which also includes a formal description of the operations.

  4. 4.

    Draw the RDF graph of the RDF document shown in Listing 5.13 on page 57.

  5. 5.

    Create a SPARQL query to retrieve the business and corresponding interaction roles of all the entities involved in an interaction from the RDF document given in Listing 5.13. The correctness of the query and the obtained results can be evaluated with existing tools such as Jena TDB or AllegroGraph.

  6. 6.

    Explain the concept of a collection resource?

  7. 7.

    Why does REST restrict the set of available interaction methods? Is this constraint too restrictive?

  8. 8.

    Which aspects of a service can be modeled in the business perspective of Linked USDL?

  9. 9.

    Name use cases in which structured information about the service provider can be useful.

  10. 10.

    What is the relationship between an interaction point and an operation in Linked USDL?

  11. 11.

    What is the main benefit of the use of hypermedia controls?

  12. 12.

    How is the state of a resource described? What kind of information is included?

  13. 13.

    Graph-patterns have been used to describe input and output data of an API. Is it possible to use RDF(S) descriptions instead?

  14. 14.

    In which cases can other relationships (than the ones introduced in Formulas 5.15.2 on page 65) between the patterns in service and service template descriptions be useful?

Project

The implementation of services is an extensive task. Besides traditional design, implementation, and testing of the software that already provides the service functionality, a number of further task have to be considered in order to effectively provide a functionality as a service. As this chapter conveyed, the interfaces provide access to resources and methods of the underlying software systems. Further, a formal, i.e., machine-readable and machine-interpretable, description of the provided service is a prerequisite for managing large services automatically.

The use of formal service descriptions increases the degree of automation that is necessary when a large set of service are managed. Different task of management may require that information about different perspectives on services. Due to the importance of expressive and formal service descriptions, the goal of this project is to practice, apply, and gain a more detailed understanding on service descriptions. Within this project, we will continue to use Linked USDL as a service description model in combination with the Semantic Web technologies.

  1. 1.

    Find a service that is publicly available in the Internet. The service should expose at least a few number of different resources and methods, which are provided by a public Web API. This API is described in semi-structured web pages that describe resources and methods in natural language.

  2. 2.

    Make yourself familiar with the involved resources and methods. Identify two non-trivial methods of the API that will be formally described in the subsequent steps.

  3. 3.

    At this stage, a vocabulary of the domain of intercourse is needed. Create an RDFS vocabulary describing the resources of chosen methods. The vocabulary can be sketched in form of an RDF graph drawn on paper. Alternatively, existing modeling tools like Protégé or a simple text editors can be used alike.

  4. 4.

    Furthermore, the Linked USDL service description model is used to create a description for this service and its chosen methods. A complete overview on Linked USDL can be obtained fromhttp://www.linked-usdl.org.

  5. 5.

    Create a Linked USDL description of the technical perspective of the service. This description should cover the methods and all the involved resources, like input and output parameters. Since Linked USDL service descriptions can be serialized to regular RDF documents, a plain text editor or any RDF modeling tool can be used. A dedicated Linked USDL editor is currently under development.

  6. 6.

    Extend this service description, such that the business and operative perspectives are added. The provider of the service describes legal terms, service quality, and other information related to these perspectives within web pages, which may contain large text blocks. The relevant information needs to be identified and expressed formally. The RDFS domain vocabulary can be extended accordingly, if required.

Within this project, it should become obvious how tedious it can be to deal with and to interpret natural language text descriptions of services. It is easy to imagine how difficult it can be to analyze, search, or invoke services from a large service repository. The need and the benefits of formal descriptions as well as the broad spectrum of perspectives gained by the use of Linked USDL were conveyed.

Key Terms

Web API :

The acronym API stands for application programming interface and enables applications to exchange data. A Web API is the web version of this interface. It is leveraging web technologies (e.g., URI, HTTP, HTML, JSON, and XML) to enable companies to make their data assets available to external developers.

Service Description :

A service description defines and characterizes the services offered to customers. It includes functional and non-functional characteristics (properties). Typically, services are described in natural language, but more modern approaches use semantic web technologies.

USDL :

The Unified Service Description Language (USDL) was the first comprehensive language to describe services using computer-understandable formats. It described aspects such as legal constraints, pricing models, service level, and interactions between customers and providers [27,37].

Linked USDL :

Linked USDL is a simpler version of USDL which was designed using Linked Data principles. It is more adequate to work on web environments since it uses solely web protocols and specifications, and it describes services semantically [28].

Semantic Web :

The Semantic Web is a technology stack originally developed by the W3C which enables people to share knowledge beyond the boundaries of websites. The specifications which are part of the stack, and include URI, RDF(S), OWL, and SPARQL, strive to turn unstructured data into computer-readable formats.

Linked Data :

Linked Data is a paradigm which applies the principles and technologies of the web to share and link data. It can be viewed as a pragmatic way of applying the technology stack provided by the Semantic Web to build worldwide networks of linked knowledge.

Turtle :

Turtle (Terse RDF Triple Language) is a serialization for capturing knowledge expressed using the Resource Description Framework (RDF). It is relatively simple to read/write when compared to other serializations, e.g., XML.

Further Reading

Jorge Cardoso and Amit Sheth.Semantic Web Services, Processes and Applications. Springer, 2006.

Rudi Studer, Stephan Grimm, and Andreas Abecker.Semantic Web Services: Concepts, Technologies, and Applications. Springer, 2010.

Leonard Richardson, Mike Amundsen, and Sam Ruby.RESTful Web APIs Paperback. O’Reilly Media, 2013.

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this chapter

Cite this chapter

Stadtmüller, S., Cardoso, J., Junghans, M. (2015). Service Semantics. In: Cardoso, J., Fromm, H., Nickel, S., Satzger, G., Studer, R., Weinhardt, C. (eds) Fundamentals of Service Systems. Service Science: Research and Innovations in the Service Economy. Springer, Cham. https://doi.org/10.1007/978-3-319-23195-2_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-23195-2_5

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-23194-5

  • Online ISBN: 978-3-319-23195-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics