A Personalized Approach for Web Service Discovery in Distributed Environments

A Personalized Approach for Web Service Discovery in Distributed Environments

Nadia Ben Seghir, Okba Kazar, Khaled Rezeg
DOI: 10.4018/978-1-5225-5384-7.ch014
(Individual Chapters)
No Current Special Offers


Web services are meaningful only if potential users may find and execute them. Universal description discovery and integration (UDDI) help businesses, organizations, and other web services providers to discover and reach to the service(s) by providing the URI of the WSDL file. However, it does not offer a mechanism to choose a web service based on its quality. The standard also lacks sufficient semantic description in the content of web services. This lack makes it difficult to find and compose suitable web services during analysis, search, and matching processes. In addition, a central UDDI suffers from one centralized point problem and the high cost of maintenance. To get around these problems, the authors propose in this chapter a novel framework based on mobile agent and metadata catalogue for web services discovery. Their approach is based on user profile in order to discover appropriate web services, meeting customer requirements in less time and taking into account the QoS properties.
Chapter Preview


According to numerous studies in Internet technologies area, the number of different software systems, which use Web technologies, such as Web services is constantly growing. According to W3C definition, Web service is a software system designed to support interoperable machine to machine interaction over a network (Haas & Brown, 2004). In general, there are three main instances that interact with a Web service: service requestor, service provider, service broker. As the service is developed, performer (service provider) registers it in the directory (service broker) where it can be found by the potential customers (service requestor). As the customer found the appropriate service in the directory, he can import the WSDL specification for further usage in the process of development his software. WSDL describes the format of requests and responses exchanged between the customer and performer in the process of work. These standards are used to ensure interoperability:

  • 1.

    XML (Extensible Markup Language): Is used to store and transfer of structured data;

  • 2.

    SOAP (Simple Object Access Protocol): A messaging protocol based on XML;

  • 3.

    WSDL (Web Service Description Language): Language which describes the external Web service interface based on XML;

  • 4.

    UDDI (Universal Discovery, Description and Integration): Is the directory of Web services and information about the companies that provide Web services into the public domain, or specific companies. By the moment, UDDI is not very common; it is mostly spread in small corporate networks.

In the 2010 it was offered a new concept of the Internet technologies development which was called Web 3.0 or also known as semantic Web. The technical part of the Semantic Web consists of a family of standards for description languages, including XML, XML Schema, RDF, RDF Schema, OWL, as well as some others. We consider only the last three of mentioned above:

  • 1.

    RDF (Resource Description Framework) is a simple way to describe the instance data in the format of the subject-object relation, where any member of the trio uses only resource identifiers.

  • 2.

    RDF Schema defines a set of attributes, such as rdfs:Class, to define new types of RDF-data. The language also supports an inheritance relationship type rdfs:subClassOf.

  • 3.

    OWL (Web Ontology Language) expands the description of new types (in particular, the addition of transfers), and also allows us to describe new types of RDF Schema data in terms of the existing ones (for example, to determine the type, which is the intersection or the union of the two existing).

The important part of the semantic Web is the concept of the semantic Web services. In general, semantic Web services could be defined as finished program elements with uniquely described semantics, which could be accessed via the Internet and are suitable for automated search, composition and performance based on their semantics.

Current trends in service discovery are essentially based on centralized discovery methods, where Web services are described by service interface functions (WSDL) and they publish their capabilities and functionalities with a directory (such as UDDI, ebXML) (Fragopoulou, Mastroianni, Montero, Andrjezak, & Kondo, 2010), (Furno & Zimeo, 2013), (Huayou, Zhong, Yong, & Lian, 2013). These directories are restricted by the syntactic description of the functionality of service as they are known for their low accuracy and poor performance, and sometimes for their low availability. Centralized discovery methods cannot manage large and continuously growing spaces of Web services with reasonable resolution times. Moreover, the centralized methods of published services suffer from problems such as high operational and maintenance cost. The centralized methods do not ensure the required scalability to support the dynamic, flexible and evolutionary environment (Boukhadra, Benatchba, & Balla, 2014), (Klusch & Kapahnke, 2010).

Key Terms in this Chapter

Metadata: A set of data that describes and gives information about other data.

QoS: Description or measurement of the overall performance of a service, such as reliability, availability, execution price, and response time.

Ontology: A set of concepts and categories in a subject area or domain that shows their properties and the relations between them.

Matching: The process of determining correspondences between concepts in ontologies, a set of correspondences is also called an alignment.

Agent: An autonomous entity that observes through sensors and acts upon an environment using actuators and directs its activity towards achieving goals.

Service: Any piece of software that makes itself available over the internet and uses a standardized XML messaging system.

Personalization: Sometimes known as customization, consists of tailoring a service to individual users' characteristics or preferences.

Complete Chapter List

Search this Book: