The World Wide Web is steadily evolving towards an open service market. If service providers and service requesters are modeled by objects, references between these induce a "knows-about-relation". A snapshot of such an environment may be visualized by an object graph. There is not necessarily a one to one correspondence between objects and WWW-pages, as one service provider object may consist as a set of WWW-pages (just consider a library interface with a query template page and separate "hit"-pages for the query). It is also clear that without appropriate support from an underlying infrastructure a service requester can't "see" beyond the references it holds.
A client object therefore has only a limited view on the object graph, as global knowledge of its structure is generally impossible to acquire. System components called traders serve as mediators between service requesters and service providers and therefore bridge the knowledge/visibility gap. A trader matches service requests with previously stored service offers and thereby helps to establish references in the object graph. The match process heavily depends on the way services are typed.
It is important to think about the role of a type in such an environment. In order for the match algorithm within the trader to succeed, a type description must conform to a kind of "standard", which all participating parties have to agree upon a priori. This standard has to be defined well enough to be matched unambiguously against other types. Current traders, like the ODP Trader, base their match algorithm mainly upon syntactic features. The implication is that the exact syntactic structure of a particular service type must be communicated to all parties.
With the emergence of high level services as found in the World Wide Web the need for an appropriate typing mechanism becomes evident. An application user (i.e. not a programmer) must deal with service types to lookup matching service providers. So far there exist only simple keyword based traders which allow only for a limited expressiveness of service types. We have chosen to develop a type specification based on conceptual graphs which are particularly useful to support the cognitive domain of the users.
Conceptual graphs have been developed to model the semantics of natural language. Service descriptions based on conceptual graphs are therefore intuitive in the sense that there is a close relationship to the way human beings represent and organize their knowledge. From an abstract point of view a conceptual graph is a finite, connected, directed, bipartite graph. The nodes of the graph are either concept or relation nodes. Due to the bipartite nature of the graphs, two concept nodes may only be connected via a relation node.
A concept node represents either a concrete or an abstract object in the
world of discourse. As for the context of service types a concept may be
a concrete object such as PRINTER
, COMPILER
or
DATABASE
including specific instances
(e.g. HP-Laserjet
, GCC
, Ingres
,
etc), as well as an abstract object such as PRINTING-SPEED
or PROGRAMMING-LANGUAGE
with no physical
representation. Whereas concepts model objects of our perception, a
relation node expresses a specific relationship between concept nodes.
The following conceptual graph describes a vacation (concept nodes are
surrounded by square brackets and relations by round brackets, respectively).
The informal semantic of the concept is:
A vacation in a city. During the vacation are cultural activities as
concert and sightseeing offered. The duration of the vacation is 7 days.
Within the AI-Trader Project we have developed a trader capable of processing service descriptions based on conceptual graphs. The implementation (including the complete sources) are freely available. A Tcl/Tk-based frontend makes editing of conceptual graphs easy (the screenshot above came from this frontend). Some publications describe the philosophy behind the AI-Trader.
Abstract: The concept of a service type plays a fundamental role in specifying and trading client requests and service offers. Existing middleware architectures use syntactic interface type specifications based on specific IDLs, while ODP standards do not prescribe any particular IDL. Neither approach can handle semantical information beyond interface structure and quantitative service attributes. We present a meta-level type specification technique that is generic and flexible to express any kind of information related to a type, not only its operational interface structure. The technique uses a knowledge representation notation called conceptual graphs. We have integrated this technique into a trading system that can translate different IDL specifications to conceptual graphs and that can decide upon their potential subtype relationship. The trader can be configured flexibly to handle and match any kind of information that can be represented as a conceptual graph.Keywords: Open Distributed Processing, conceptual graphs, type management, service types, trading, IDL
Abstract: Traders serve as mediators between service providers and users. The trader returns to a service requester by delivering a set of suitable providers that satisfy the request. Because of the size and complexity of distributed systems, one trader manages a certain part of the whole set of providers only. To enlarge this restricted set of potential service providers, a lightweight form of cooperation (called interworking) between two or more traders was introduced. Therefore, the main purpose of such cooperations was concerned with quantitative aspects, neglecting the possibilities of more general concepts of cooperation. A need for qualitative trader cooperations arises. Traditional trader approaches focus upon the operational interface of providers as a basis for type descriptions. But in general, application users in an open electronic market require mediation at different levels of abstraction. Suitable traders are specialized in one of these levels. By combining these isolated solutions, a qualitative trader cooperation can be achieved.In the following, we take a closer look at type descriptions at different levels of abstraction. Similarities will be discovered that can be used to derive appropriate mappings. In particular we demonstrate that ODP-types based on an arbitrary interface definition language can be described in terms of conceptual graphs that are used in knowledge-based trading. From this relationship, a general type manager can be derived, coping with both type concepts. As a consequence, the trading of operational interfaces and the trading based on a knowledge representation scheme can be combined. Together they exhibit a more powerful trading service by offering different interfaces to different kinds of users.
Keywords: Trading, type manager, cooperation.
Appeared in International Conference on Distributed Platforms (ICDP'96).
Abstract: An open distributed environment can be perceived as a service market where services are freely offered and requested. Any infrastructure which seeks to provide appropriate mechanisms for such environments has to include some mediator functionality to bring together matching service requests and service offers. We propose a type specification notation based upon conceptual graphs to support the cognitive domain of application users. Furthermore, they help to cope with the problem of different extensions for the same intension of a service type. Conceptual graphs, which can easily be visualized, originate from a perception model in psychology. In this paper we present a formal model and a new standard interpretation for conceptual graphs.Keywords: Open service markets, trading, service types, conceptual graphs.
Appeared in Workshop on Visual Reasoning, Rutgers University, 1996
Abstract: An open distributed service environment can be perceived as a service market where services are freely offered and requested. Any infrastructure which seeks to provide appropriate mechanisms for such an environment has to include some mediator functionality to bring together matching service requests and service offers. The matching algorithm that the mediator must perform commonly builds upon an IDL-based type definition for service specification. We propose a type specification notation based upon conceptual graphs that supports the openness of the service environment, since it is more flexible than IDL-based definitions, and since it is closer to the cognitive domain of application users. In our framework, the trader implements a matching algorithm as well as a learning algorithm which are tailored to service trading in open environments.Keywords: Open distributed environments, type graphs, trading, service matching, service knowledge base, conceptual graphs.
Appeared in 7th European SIGOPS Workshop (SIGOPS'96).
Abstract: An open distributed environment can be perceived as a service market where services are freely offered and requested. Any infrastructure which seeks to provide appropriate mechanisms for such an environment has to include mediator functionality (i.e. a trader) that matches service requests and service offers. Commonly, the matching process is based upon some IDL-based service type definition, and the types of the various services have to be "standardized" and distributed a priori to all potential participants. We argue that such well defined "standards" are too inflexible and even contradict the idea of an open service market. Therefore we propose a new type notation based on conceptual graphs. The trader maintains a knowledge base about service types in form of conceptual graphs. During the trader operations the service type knowledge evolves as it is continuously refined and extended. Users of the trading service interact with the trader and formulate queries in a corresponding notation that allows for a conceptual specification of the desired service type. Adequate matching algorithms and protocols have been implemented.Keywords: Trading, type specification, conceptual graphs.
Appeared in International Conference on Open Distributed Processing (ICODP'95). Chapman and Hall
Abstract: An open distributed environment can be perceived as a service market where services are freely offered and requested. Any infrastructure which seeks to provide appropriate mechanisms for such environments has to include some mediator functionality to bring together matching service requests and service offers. The matching algorithm that the mediator must perform commonly builds upon an IDL-based type definition for service specification. We propose a type specification notation based upon conceptual graphs to support the cognitive domain of application users. In our framework the trader implements a matching algorithm as well as a learning algorithm which are tailored to service trading in open environments.Keywords: Open distributed environments, type graphs, trading, service matching, service knowledge base, conceptual graphs.
Appeared in International Conference on Conceptual Structures (ICCS'95). Springer
Kurzfassung: In offenen verteilten Umgebungen erlangt die Vermittlung von Diensten eine besondere Bedeutung. Bisherige Ansätze konzentrieren sich jedoch auf die Vermittlung von Instanzen dieser Dienste zur Laufzeit. Dabei wird vernachlässigt, wie zur übersetzungszeit Kenntnis über einen Diensttyp erlangt werden kann. Eine bisher vorausgesetzte Lösung dieses Problems sind a priori Absprachen aller Teilnehmer einer offenen verteilten Umgebung. Um einen solchen Vorgang zu automatisieren, wird in dieser Arbeit ein wissensbasierter Vermittlungsdienst vorgeschlagen, der sich insbesondere durch eine auf Konzeptgraphen beruhende Dienstbeschreibungsmethodik und einen maschinellen Lernalgorithmus für Import- und Export-Operationen auszeichnet. Charakteristisch für diesen Lösungsansatz ist die Tatsache, daß sowohl für einen Import, als auch einen Export Vorgang, u.U. mehrere Interaktionen mit einem Dienstnutzer und Dienstanbieter notwendig sind. In dieser Arbeit werden die Voraussetzungen für dieses mehrere Phasen umfassende Vermittlungsprotokoll erarbeitet.Schlüsselwörter: Meta-Trading, Maschinelles Lernen, ODP.
Erschienen in Entwicklung und Management verteilter Anwendungssysteme (EMVA'95). Krehl Verlag
Abstract: An open distributed environment can be perceived as a service market where services are freely offered and requested. Any infrastructure which seeks to provide appropriate mechanisms for such an environment has to include some mediator functionality to bring together matching service requests and service offers. The matching algorithm that the mediator must perform commonly builds upon an IDL-based type definition for service specification. In order for the matching algorithm embedded in this mediator to succeed, the types of various services have to be standardized and distributed to all interested parties. We argue that those well defined "standards" are too inflexible and even contradict the idea of an open service market. Therefore we propose a new way to augment an arbitrary IDL-based type definition by a semantic tag. Whereas several other authors have used pre- and post-conditions to add the notion of behavior description, we use the well established field of Horn clauses as a semantic extension. The advantage lies in the nature of the declarative semantic and it will be shown that the need for a well defined standard is abolished within so called type families.Keywords: Open Systems, Trading, Subtyping, IDL, Declarative Semantics
Appeared in International Conference on Object Oriented Information Systems (OOIS'94). Springer
The Telecommunications Information Networking Architecture Consortium (TINA-C) is a multinational worldwide consortium which aims at defining and validating an "open" architecture for telecommunications services in the emerging broadband multimedia era.
The architecture is based on distributed computing, object orientation and other concepts and standards from the telecommunication as well as the computer industry, e.g., Open Distributed Processing (ODP), Intelligent Networks (IN), Telecommunication Management Networks (TMN), Asynchronous Transfer Mode (ATM) and Common Object Request Brocker Architecture (CORBA).
The consortium was founded in 1993 and consists of manufacturers and providers from the computer and telecommunication industry.
The Deutsche Telekom AG (German telecom) is one of members of TINA-C. Since April 1996 we are working on the project Wissensbasierte Dienstvermittlung in einem TINA-DPE as a cooperation project. Its goal is the integration of the AI-Trader into a TINA-Distributed Processing Environment (TINA DPE). As there is no implementation of a TINA defined framework yet, we decided to integrate the AI-Trader into the most similar architecture that is available: CORBA is one of the nearest frameworks to TINA. The integration of AI-Trader into DPE uses Orbix 2.0 from IONA, which implements CORBA 2.0
The following people have been actively involved in the AI-Trader project:
aitrader, 20. Jul 1999