Virtual Web Services
In this paper we propose an application of software agents to provide Virtual Web Services. A Virtual Web Service is a linked collection of several real and/or virtual Web Services, and public and private agents, accessed by the user in the same way as a single real Web Service. A Virtual Web Service allows unrestricted comparison, information merging, pipelining, etc., of data coming from different sources and in different forms. Detailed architecture and functionality of a single Virtual Web Service is user-dependent, and information gathered from existing Web Services may be used in an individual manner. The main goal of the proposal is twofold. First, virtual services allow unrestricted personalization of any Web Service by user-defined software executed at both the server- and the clientside. Second, virtual services provide efficient server-side monitoring and alerting once “vital” information provided by a real service is changed, and this change is of any interest to particular user. In addition, the service users are able to define their own, non-standard interfaces to existing services without a direct interaction with the service provider (information owner). This feature allows for user-specific versioning of services and continuous improvement of the service from the user point of view. By shifting the personalization aspects to the users, we reduce overall maintenance costs (from the service owner point of view) and improve system flexibility and fast adaptation to dynamic changes in the environment and evolving user requirements.