Adapting Communication Vocabularies using Shared Ontologies Heiner Stuckenschmidt Ingo J. Timm Vrije Universiteit Amsterdam Technische Universitaet Ilmenau de Boelelaan 1081a Institut für Wirtschaftsinformatik 1081 HV Amsterdam, The Netherlands Postfach 10 05 65, D - 98684 Ilmenau heiner@cs.vu.nl Ingo.Timm@tu-ilmenau.de ABSTRACT ontologies [17]. The approach reported, however, de- In has been argued that ontologies play a key role in multi- pends on perceptual grounding of agents and assumes agent communication because they provide and define a an environment that allows for a trial and error phase shared vocabulary to be used in the course of communi- in communication. In practical applications on the cation. In real-life scenarios, however, the situation where web for example, the situation is different, because two agents completely share a vocabulary is rather an ex- legacy ontologies exist and have to be considered. ception. More often, each agent uses its own vocabulary • Merging: In the presence of legacy ontologies, a com- specified in a private ontology that is not known by other mon approach is to merge existing ontologies resulting agents. In this paper we propose a solution to this prob- in a common one that includes all aspects of the in- lem for the situation, where agents share at least parts of dividual ontologies. Stephens and Huhns report an their vocabulary. We argue that the assumption of a par- experiment in merging a large number of small ontolo- tially shared vocabulary is valid and sketch an approach for gies based on matching heuristics [18]. While the result re-formulating terms from the private part of an agent’s on- of the experiment is partially convincing, the merging tology into a shared part thus enabling other agents to un- approach is still problematic, because the autonomy derstand them. We further describe how the approach can of the agents is partially lost by the use of a global be implemented using existing technology and proof the cor- ontology. rectness of the re-formulation with respect to the semantics of the ontology-language DAML+OIL. • Mapping: The most often mentioned approach for aligning ontologies on the World Wide Web is the Keywords definition of mappings between concepts of different Ontologies, Multi-Agent Communication, Approximate ontologies. Hendler describes this approach that pre- Reasoning serves the autonomy of ontological models on a general level [12]. The paper envisions a complex network of ontologies and mappings that enables agents that use 1. INTRODUCTION different ontologies of the network to communicate via An important aspect of multi-agent systems is the com- mappings. The use of inter-ontology mappings has munication among different agents, because communication been intensively studied in the area of information in- is the basis for cooperation. Ontologies are a technology to tegration, however, very little work is done on the au- support inter-agent communication by providing a definition tomatic generation of mappings. As a consequence, of the world, an agent can ground his beliefs and actions the mapping approach requires a lot of manual work as well as by providing terms that can be used in commu- and is therefore only pays off for the alignment of on- nication [13]. In practice, agent communication based on tologies that are frequently used together. ontologies still suffers from many problems. Uschold [19] identifies a number barriers for agent communication that In this paper, we adopt the view of [12] that an intelli- can be separated in language heterogeneity and in termino- gent World Wide Web will include a network of different logical heterogeneity. In the following, we will focus on the ontologies about various topics that can be used in agent latter leaving out the problem of heterogeneous languages communication. In contrary to Hendler, we do not think for encoding knowledge. In fact, agents will often use pri- that these ontologies will already be linked by mappings, vate ontologies that define terms in different ways making because we expect the effort of establishing these mappings it impossible for the other agent to understand the contents as being too high in many cases. We think that mappings of a message. In these cases there is a need to align ontolo- will mostly be established by individual agents that use gies the ontologies used by different agents. Some principled different available ontologies in order to process a given approaches to overcome this problem have been proposed: task. In this view, a connection between the ontologies of different agents is not established by explicit mappings, • Emergence: A very generic approach is to let but rather by existing ontologies that are used by more shared ontologies evolve within the multi-agent sys- than one agent. The assumption that agents will share tems. Steels uses language games to generate shared ontologies in our opinion is a necessary requirement for any useful collaboration. Agents will only want to cooperate cepts into a shared terminology. Thereby we only take the if they are concerned with a similar domain. While it is sender’s point of view and do not consider the relation to not realistic to assume that there will be a single ontology the private ontology of the receiving agent. about this domain, it is likely that some core concepts can be standardized and provided as a shared ontology for 2.1 Ontology Heterogeneity agents within that domain. There are already efforts going In order to perform a task, an agent will use one of more on to standardize fundamental ontologies for domains such ontologies as an explicit representation of the domain of a e-Commerce. interest. These ontologies will normally supplement each other to form a sufficiently complete model. Though being In this paper, we propose an approach to facilitate agent supplementary, we can assume that they have sufficient communication in the situation, where agents share some overlap to allow a single agent to find mappings between but not all of their terminology. In the next section, we them. In the following we give a toy example illustrating describe our approach in an informal way. In section 3 we this idea. describe the formal framework our framework is build upon in terms of the ontology language DAML+OIL, its seman- tics and the formal foundation for inter-ontology mappings. The approach for approximating concepts in a language with a limited vocabulary in described in section 4 and a cor- rectness proof is given. In section 5 we describe how the approximation approach can be used to re-formulate agent messages in such a way that another agent can understand it. We summarize with a discussion and some hints towards future research. Figure 2: An shared ontology of animals 2. COMMUNICATION WITH PARTIALLY SHARED ONTOLOGIES We use a simple ontology of animals to illustrate the In order to get a clearer notion of the problem to be problem (see figure 2). This ontology is shared by the two solved we make some simplifying assumptions. First of all agents in figure 1. Therefore, the agents can use terms we will only consider two agents that want to communi- from this ontology (e.g. Animal, Domestic-Animal or cate. Then we assume that there are only two ontologies Cow ) to communicate with each other. A communication involved, a shared one and a private one of the agent trying problem arises, because the agent on the left hand side of to communicate. We further assume that both ontologies figure 1 also uses a second ontology that contains different are encoded on the same language, preventing us from the classifications of animal like Pet or Farm-Animal. While problem of integrating the ontology languages. Figure 1 the terms from this ontology are closely related to the ones illustrated the situation. in the shared ontology, the agent on the right-hand side will not be able to understand them. Figure 3: A private ontology of animals We can assume that each agent using more than one on- Figure 1: The communication problem tology establishes internal mappings between these ontolo- gies. In our example, these mappings would specify Pet as being a subclass of Domestic-Animal which is disjoint This simplified communication problem can easily be from Production-Animal, Farm-Animal to be a subclass of extended to more realistic scenarios as communication is Domestic-Animal and of Production-Animal as well as Zoo- mostly bi-lateral even in complex multi-agent systems. Animal to be a subclass of Foreign-Animal. In the following, There might be more than two ontologies involved in the we describe, how these internal mappings can be used in or- communication, but they will all either be shared or pri- der to facilitate external communication. vate to one on the agents. The only assumption that really is a simplification is the existence of a single ontology lan- 2.2 Terminology Adaption guage. Investigating this problem, however, is out of the We consider the situation, where the agent wants to scope of this paper. For an approach to overcome language find information about the concepts specified in its private heterogeneity, we refer to [8] or [16]. In the remainder of ontology (figure 3) In order to be able to communicate this this section, we illustrate our approach of translation con- information need to other agents that might have valuable information it has to use terminology from the shared guage that has been developed in the DAML programme in ontology (figure 2). order to support intelligent agents to communicate and rea- son about annotated information on the World Wide Web. As an example we take the following query Some of the features of the language we can use to precisely (Animal ∧ ¬(Farm − Animal ). This query cannot be define ontological knowledge are the follwing [21]. directly answered, because the term Farm-Animal is not understood. The idea of our approach is to re-write this 3.1.1 Class Building Operations query in such a way that it covers the same set of answers The only possibility to define class structures in RDF using terms from the other ontology. In general, an exact schema was the rdfs:subClassOf property. DAML+OIL re-writing is not possible because the concepts of the private adopts this relation also allowing for multiple inheritance ontology do not have exactly matching concepts in the and provides a property for stating that two classes are dis- shared one. In this case, we have to look for re-writings that joint. approximate the query as closely as possible. Re-writings that are an upper approximation of the original query are know from the database area as minimal subsuming mappings [4]. While in the area of databases upper approx- imations are often used in combination with an additional filter that removes irrelevant results, our approach aims for correctness rather than for completeness and therefore uses a lower approximation. The idea of the re-writing is the following. Based on the mappings between of the classes in both ontologies, we can find those concepts in the ontology of figure 2 that are most closely related to a query concept. Taking a concepts from our query, we can for example decide The expressiveness of the subclass relation in DAML+OIL that Domestic-Animal and Production-Animal are upper is further enriched be the possibility of defining a class to approximations for Farm-Animal while Cow and Pig are be equivalent to a logical expression over class names. lower approximations. Using these concepts, we can define lower boundaries for farm-animals (Cow ∨ P ig) and use this expression instead of the original concept still getting correct results. In our example, however, the concept occurred in a negated form. In order to return a correct result, we therefore cannot use the lower bound because not all irrelevant resources might be excluded. Based on the considerations made above we can replace the concept Beside the daml:disjointUnionOf property, classes farm-animal within the scope of the negation by its upper can also be defined to be equivalent to another bound (Domestic − Animal ∧ P roduction − Animal). class, to equivalent to a Boolean expression over Using this rewriting, we get the following query classes using daml:intersectionOf, daml:unionOf and that can be shown to return only correct results: daml:complementOf or by enumerating its elements with the (Animal ∧ ¬(Domestic − Animal ∧ P roduction − Animal). daml:oneOf property. In the following, we show how the general idea sketched 3.1.2 Relations in this section can be implemented on the basis of available DAML+OIL defines two kinds of relations. reasoning support for ontology languages, i.e. DAML+OIL. daml:ObjectProperty relates members of different classes to each other. daml:DatatypeProperty relates a member of a class to a legal value of a certain data type. The first 3. REPRESENTATION AND REASONING type of relation is very similar to an RDF property. It has a ABOUT ONTOLOGIES unique name and can have RDF schema range and domain restrictions like the following example: If we want to guarantee that the re-writing delivers correct results, we need a formal basis for representing and reason- ing about the ontologies involved. Recently, the benefits of semantically well-founded ontology languages have been discussed by many authors in connection with the so-called Semantic Web (see e.g. [9]). One of the most important proposals that have been made for well-founded ontology The first enhancement to RDF schema employed by languages for the web is DAML+OIL. In the following, we DAML+OIL is the possibility of defining one relation to introduce this language and describe how it can be used to be the equivalent or the inverse of another relation. Using encode and reason about ontologies in order to support our this feature, we can define the has-child relation using the approach. one specified above: 3.1 The DAML+OIL Language The DAML+OIL language is a web-based ontology lan- Just as RDF schema, hierarchies of relations can be spec- Operator Extension .E ified using the rdfs:subpropertyOf operator. Further, spe- intersectionOf C1E ∩ · · · ∩ Cn E cial properties can be assigned to relations, for details we unionOf C1E ∪ · · · ∪ Cn E refer to [21]. complementOf ∆ − CE oneOf {x1 , · · · , xn } ⊂ ∆ 3.1.3 Property Restrictions toClass {y ∈ ∆|(y, x) ∈ P E =⇒ x ∈ C E } hasClass {y ∈ ∆|∃x((y, x) ∈ P E ) ∧ x ∈ C E } Classes define common properties of its members. Dif- hasValue {y ∈ ∆|(y, x) ∈ P E } ferent from RDF schema, DAML+OIL provides means for minCardinalityQ {y ∈ ∆| |{x|(y, x) ∈ P E ∧ x ∈ C E }| ≤ n} defining these characteristic properties of class members in maxCardinalityQ {y ∈ ∆| |{x|(y, x) ∈ P E ∧ x ∈ C E }| ≥ n} terms of restrictions on the objects they are related to. In cardinalityQ {y ∈ ∆| |{x|(y, x) ∈ P E ∧ x ∈ C E }| = n} principle there are two kinds of restrictions, type restrictions and number restrictions: Figure 4: Terminological Operators of DAML+OIL These kinds of restriction are the basis for deciding whether a class definition is equivalent, more specialized or more general than another. Formally, we can decide whether one of the following relations between two expressions hold: subsumption: C1 v C2 ⇐⇒ C1E ⊆ C2E The restriction daml:toClass from the example claims that every object related to a member of the class has be membership: x : C ⇐⇒ xE ∈ C E be of a certain type. Beside this restriction, daml:hasClass claims that every member of the class is related to one ob- In order to implement information filtering, we need sub- ject of a certain type, daml:hasValue even claims that every sumption in order to determine the upper and lower bound- object of the class is related to one specific object. Number aries of a concept. Membership is used in order to retrieve restrictions daml:minCardinality, daml:maxCardinality relevant resources that match a query. and daml:cardinality define lower and upper boundaries 3.3 Inter-Ontology Mappings and exact values for the number of objects the member of a class is related to via a certain relation. Several restrictions For a long time, representation and reasoning in de- may apply to a relation. scription logics, which provide the semantic basis for DAML+OIL, has only been investigated in terms of a sin- 3.2 Semantics of DAML+OIL gle homogeneous model. Recently Borgida and Serafini In [20] a formal semantics for DAML+OIL is described. proposed an extension of the formal framework of descrip- The semantics is based on an interpretation mapping into an tion logics to distributed knowledge models [3]. The ex- abstract domain. More specifically, every concept name is tended framework consists of a set of terminological knowl- mapped on a set of objects, every property name is mapped edge bases (ontologies) Ti and a set of so-called bridge rules on a set of pairs of objects. Individuals (in or case resources) between concept definitions from different ontologies. Two are mapped on individual objects in the abstract domain. kinds of bridge rules are considered (the prefixes indicate Formally, an interpretation is defined as follows: the ontology a concept definition is taken from): v Definition 1 (Interpretation). An Interpretation into rule i : C −→ j : D consists of a pair (∆, .E ) where ∆ is a (possibly infinite) set w and .E is a mapping such that: onto rule i : C −→ j : D • xE ∈ ∆ for all individual names x. The interpretation of the first rules is that the instances of E the concept C in ontology Ti are mapped to a subset of the • C ⊆ ∆ for all concept names C instances of the concept D in ontology Tj (i : C E ⊆ j : DE ) • RE ⊆ ∆ × ∆ for all role names R in the case of the second rule the superset relation is asserted to hold between the instances of the two concepts. We call .E the extension of a concept, a role, or an individ- Using the formal framework of Borgida and Serafini, we can ual, respectively. define the internal mappings between private and shared ontologies informally defined above. This notion of an interpretation is a very general one and does not restrict the set of objects in the extension of a concept. This is done by the use of operators for v defining classes. In our example, we used the subClassOf Zoo − Animal −→ ¬Domestic − Animal (1) and the hasValue operator for restricting the set of objects v that are members of the class zoo animals. These kinds P et −→ Domestic − Animal ∧ of operators restrict the possible extensions of a concept. ¬P roduction − Animal (2) Figure 4 summarizes the specific interpretations of a part v of the operators of DAML+OIL. F arm − Animal −→ Domestic − Animal ∧ P roduction − Animal (3) ! Another important result reported in [3] is the ability to 0 W • M (x, c1 ) = 1 if x : c transform a distributed knowledge base into a global one and c∈glbIS2 (c1 ) apply existing description logic reasoner in order to derive new knowledge. In the following, we build on this result ! whenever we mention terminological reasoning. 0 V • M (x, c1 ) = 0 if x : ¬ c c∈lubIS2 (c1 ) 4. APPROXIMATING CONCEPTS • M 0 (x, c1 ) = ?, otherwise The classes in a DAML+OIL ontology form a hierarchy with respect to the subsumption relation. In a distributed Where the semantics of disjuction and conjunction is defined Description Logic, such a hierarchy can also be computed in the obvious way using set union and intersection . for separate ontologies that are connected by bridge rules. Therefore, we will always have a set of direct super- and a set Based on the observation about the upper and lower of direct subclasses of a class c1 from the private ontology. bounds, we can make the following assertion about the cor- We can use those direct sub- and superclasses that belong rectness of the proposed approximate classification: to the shared ontology as upper and lower approximation for c1 in the shared ontology: Proposition 1 (Correctness of Approximation). The approximation from definition 4 is correct in the sense Definition 2 (Lower Approximation). Let C1 be a that: set of private concepts, C2 a set of shared concepts of an agent and c ∈ C1 a class, then a class cglb ∈ C2 is called a 1. If M 0 (x, c1 ) = 1 then xE ∈ cE1 lower approximation of c in IS2 , if the following assertions hold: 2. If M 0 (x, c1 ) = 0 then xE 6∈ cE1 1. cglb v c Using the definition of upper and lower bounds the cor- rectness of the classification can be proven in a straightfor- 2. (∃c0 ∈ C2 : c0 v c) =⇒ (c0 v cglb ) ward way: The greatest lower bound glbIS2 (c) denotes the set of all lower approximations of c in C2 . Proof. (1) WIf the classification returns M 0 (x, c1 ) = 1 then x : ( c). Using definition 2 we get that for Definition 3 (Upper Approximation). Let C1 be a c∈glbIS2 (c1 ) W private classes , C2 a set of shared classes of an agent and all c we have c v c1 and therefore also ( c) v c1 c∈glbIS2 (c1 ) c ∈ C1 a private class, then a class club ∈ C2 is called an upper approximation of c in IS2 , if the following assertions (by set theory). Using the definition of subsumption we can hold: conclude that xE ∈ cE1 . 1. c v club (2) Using definition 3 we deduce V that for all c we have 0 0 0 c1 v c and therefore c1 v c. This means that 2. (∃c ∈ C2 : c v c ) =⇒ (club v c ) c∈lubIS2 (c1 ) xE ∈ cE1 only if xE ∈ ( E V The least upper bound of lubIS2 (c) is the set of all least upper c) . However if the classifi- c∈lubIS2 (c1 ) bounds of c in C2 . cation returns M 0 (x, c1 ) = 0 then x : ¬( V c) which The rational of using these approximations is that we can c∈lubIS2 (c1 ) is equivalent to xE 6∈ ( c)E . Therefore we also V decide whether an entity x is a member of a class in the private ontology based on its membership in classes of the c∈lubIS2 (c1 ) shared ontology. This decision in turn provides us with an have xE 6∈ cE1 . approximate result on deciding whether x is the result of a query stated in terms of a private ontology, based on the following observation: 5. ADAPTING THE COMMUNICATION LANGUAGE • If x is member of a lower bound of c1 then it is also in The considerations from last section provide a formal c1 basis for re-writing concepts using in messages an agent uses • If x is not member of all upper bounds of c1 then it is to communicate with other agents. Having proven the cor- not in c1 rectness of the approximation we can use them to re-write a concepts by replacing their names by their approximation. In [15] Selman and Kautz propose to use this observation about upper and lower boundaries for theory approximation. We adapt the proposal for defining an approximate classifier Definition 5 (Concept Re-Writing). The rewrit- M 0 that assigns members of shared concepts to private ones ing of a query c over concepts from a private ontology to an in the following way: expression over concepts from a shared ontology is defined as as follows: Definition 4 (Concept Approximation). Let C1 be a set of private concepts, C2 a set of shared concepts of an • replace V every non negated concept name c by: agent and x the member of a shared concepts then for every c0 c0 ∈lubIS2 (c) c1 ∈ C1 we define M 0 such that: c0 W • replace every negated concept name c by: from the knowledge base. These are Cow and Pig (compare c0 ∈glbIS2 (c) equation 3 and figure 2). These are connected by disjunction to form the lower bound (Cow ∨ P ig). Next, the negated The rewriting a concept can easily be implemented using term Pet is handled. The algorithm computes the direct su- any available Description logic reasoner. We used the perclasses Domestic-Animal (compare equation 2 and figure Description Logic System RACER [11]. We can compute 2) which is also the upper bound. the re-writing using Algorithm 1. The input for the In the last step, the algorithm replaces the concepts in algorithm is the message to be re-written, the names of the message by the corresponding bounds that have been shared concepts as well as a model of both ontologies. computed. The resulting message is the following: ’Give me information about Cows or Pigs and Algorithm 1 Translate-Message Animals that are not Domestic Animals.’ Require: The Message to be translated: C Require: A list of shared concepts: S As this message only contains terms from the shared ontol- Require: A terminological knowledge base T ogy, it is understood and can be processed by the receiving racer.in-tbox(T ) agent. for all t is an concept term in C do if t is negated then B[t] := racer.directSupers(t) 6. RELATED WORK B 0 [t] := B[t] ∩ S The idea of rewriting representations based on the spe- Q(t) := (c1 ∧ · · · ∧ cn ) for ci ∈ B 0 [t] cial capabilities of a remote system is first reported in [14]. else It has been applied in the area of information retrieval [5] B[t] := racer.directSubs(t) to translate full-text queries and in database systems for B 0 [t] := B[t] ∩ S translating SQL queries [4]. The use of description logics C(t) := (c1 ∨ · · · ∨ cn ) for ci ∈ B 0 [t] for query rewriting is described in [10]. Baader and others end if propose a general framework for rewriting concepts [1]. This C’ := proc Replace t in C 0 by C(t) work is closest to our approach, however, our goal is not to end for achieve equivalent rewritings, but rather use an approxima- return C’ tion approach that is more handable in practice. As the re-writing builds upon the approximations dis- 7. CONCLUSIONS cussed in the last section we can guarantee that the result We described an approach for exploiting partially shared of the query is correct. Moreover, we can use subsumption ontologies in multi-agent communication by translating reasoning in order to determine this result. To be more private concepts into shared ones while ensuring some specifically, a resource x is indeed a member of the query formal properties. Our approach enables agents on the concept if membership can be proved for the re-written World Wide Web to exchange semantic information solely query. relying on internally provided mappings between ontologies. So far, we consider our results as a basic mechanism for Example Translation: We illustrate how the Algorithm facilitating agent communication. However, a lot of work is works using an example translation. We assume that the still necessary in order to apply it in practice. We only want message contains the request for information: to mention two specific aspects that have to be addressed ’Give me information about Farm-Animals in this context: First of all, sophisticated communication and Animals that are not Pets.’ protocols have to be developed that agents can use in order to find out, which are the ontologies they share and Besides this message the algorithm will be provided with what are the options for re-writing. First investigations in a list of shared concepts. In this case these concepts are ontology negotiation are reported in [2]. Further [7] suggest all concepts from figure 2. Further, the algorithm will need to use more complex object and concept definitions in agent the DAML+OIL definitions of the classes involved as well messages. Rewriting such complex definitions instead of as specifications of the mappings. These together form the just concept names requires more sophisticated mechanisms. terminological knowledge base mentioned in the algorithm. Further steps in the direction of this research will be taken In the first step, the algorithm will extract all concept in the context of intelligent peer-to-peer networks which are terms from the message that are defined in the termino- the main topic of the IST project SWAP (Semantic Web logical knowledge base. In our case these are the terms and Peer-to-Peer). We will investigate how the approach Farm-Animal, Animal and Pet. As Animal is contained in behaves at a larger scale using two case studies. These case the shared ontology it does not have to be translated. We studies will provide us with a better understanding of the therefore only discuss the translation of Farm-Animal and validity of the assumptions we made about the existence of Pet. shared ontologies and the integration of ontologies within a single agent. Further, a larger network of agents will en- In the second step, the algorithm tests whether the con- able us to investigate the use of third parties for mediating cepts are negated or not. As Farm-Animal is not negated, between agents that only share ontologies with this third the algorithm collects all direct subclasses of Farms-Animal party, resulting in a more complex scenario. 8. REFERENCES October 1998. [1] F. Baader, R. Kuesters, and R. Molitor. Rewriting [18] L. Stephens and M. Huhns. Consensus ontologies - concepts using terminologies. In T. Cohn, reconciling the semantics of web pages and agents. F. Giunchiglia, and B. Selman, editors, Proceedings of IEEE Internet Computing, pages 92–95, the seventh International Conference on Principles of September/October 2001. Knowledge Representation and Reasoning KR’2000. [19] M. Uschold. Barriers to effective agent communication. Morgan Kaufmann, 2000. In OAS’01 Ontologies in Agent Systems [6]. [2] S. Bailin and W. Truszkowski. Ontology negotiation [20] F. van Harmelen, P. F. Patel-Schneider, and between agents supporting intelligent information I. Horrocks. A model-theoretic semantics for daml+oil management. In OAS’01 Ontologies [6]. (march 2001). http://www.daml.org/2001/03/model- [3] A. Borgida and L. Serafini. Distributed description theoretic-semantics.html, march logics. In Proceedings of the Internaltional Description 2001. Logics Workshop DL’2002, 2002. [21] F. van Harmelen, P. F. Patel-Schneider, and [4] K.-C. Chang and H. Garcia-Molina. Approximate I. Horrocks. Reference description of the daml+oil query mapping: Accounting for translation closeness. (march 2001) ontology markup language. The VLDB Journal, 10:155–181, 2001. http://www.daml.org/2001/03/reference.html, march [5] K.-C. Chang, H. Garcia-Molina, and A. Paepcke. 2001. Boolean query mapping across heterogeneous information sources. IEEE Transaction on Knowledge and Data Engineering, 8(4), 1996. [6] S. Cranefield, T. Finin, and S. Willmott. Oas’01 ontologies and agent systems. CEUR Workshop Proceedings 52, RWTH Aachen, 2001. [7] S. Cranefield and M. Purvis. Generating ontology-specific content languages. In OAS’01 Ontologies in Agent Systems [6]. [8] J. Euzenat. An infrastructure for formally ensuring interoperability in a heterogeneous semantic web. In I. F. Cruz, S. Decker, J. Euzenat, and D. McGuinness, editors, Proceedings of the First Semantic Web Working Symposium, Stanford, CA, USA, 2001. [9] D. Fensel, I. Horrocks, F. van Harmelen, D. L. McGuinness, and P. F. Patel-Schneider. Oil: An ontology infrastructure for the semantic web. IEEE Intelligent Systems, 16(2), 2001. [10] F. Goasdoue and M.-C. Rousset. Rewriting conjunctive queries using views in description logics. 2000. [11] V. Haarslev and R. Moller. Description of the RACER system and its applications. In Proceedings of the Description Logics Worlshop DL-2001, Stanford, CA, 2001. [12] J. Hendler. Agents and the semantic web. IEEE Intelligent Systems, pages 30–37, March/April 2001. [13] M. Huhns and M. Singh. Ontologies for agents. IEEE Internet Computing, pages 81–83, November/December 1997. [14] Y. Papakonstantinou, A. Gupta, and L. Haas. Capabilities-based query rewriting in mediator systems. In Proceedings of 4th International Conference on Parallel and Distributed Information Systems, Miami Beach, Flor., 1996. [15] B. Selman and H. Kautz. Knowledge compilation and theory approximation. Journal of the ACM, 43(2):193–224, March 1996. [16] M. Sintek and S. Decker. TRIPLE - a query, inference and transformation language for the semantic web. In Proceedings of the First International Semantic Web Conference (ISWC), Sardinia, 2002. [17] L. Steels. The origins of ontologies and communication conventions in multi-agent systems. Autonomous Agents and Multi-Agent Systems, 1(1):169–194,