Storing and Sharing Alignments on the Semantic Web 1

Storing and Sharing Alignments on the Semantic Web 1

Undefined 1 (2010) 1–8 1 IOS Press The Alignment server: storing and sharing alignments on the semantic web 1 Jérôme Euzenat a;∗, and Chan Le Duc b a INRIA & LIG, 655 avenue de l’Europe, 38330 Montbonnot Saint-Martin, France b LIASD Université Paris 8 - IUT de Montreuil, 140 rue de la Nouvelle France, 93100 Montreuil, France Abstract. For interoperability purposes, applications of the semantic web require alignments between ontologies. The Alignment server is a middleware component for storing and sharing alignments. It enables applications to share alignments featuring meta- data annotations. The Alignment server provides access to libraries of matchers and alignments and offers retrieval, manipulation (through applying thresholds or transformations), and export of alignments under different formats. It is accessible from web browsers, integrated development environments, web services and agents. Thanks to its plug-in architecture it can be extended by new matchers, renderers, communication drivers and directories. Keywords: Alignment server, Ontology matching, Alignment sharing, Ontology alignment, Alignment management The semantic web relies on ontologies, i.e., theories also independent from the way they have been pro- describing the vocabulary used for expressing data. duced, being it by hand or by matching algorithms. However, ontologies can be heterogeneous and thus in- We briefly present the Alignment server, a tool which teroperability requires matching them, i.e., finding cor- builds on the Alignment API [6], for storing and shar- respondences between their elements [10]. ing alignments on the semantic web. In this presen- Alignments are sets of correspondences between on- tation, “Alignment server” identifies our own tool while tology entities. Each correspondence simply states that “alignment server” denotes the generic class of sys- a relation between entities of two ontologies holds. tems to which it belongs. The entities can be classes, properties, instances or We first motivate the purpose of alignment servers more complex entity aggregation depending on the (§1) before describing the architecture (§2), the func- language used. The relations may also be diverse but tions (§3) and plugable parts (§4) of the Alignment are usually equivalence or subsumption statements. server. Alignments are declarative representations of the re- lations between ontologies, i.e., they are independent 1. Why supporting alignments? from any use of the alignment, such as a query trans- formation or merged ontologies. A declarative repre- We already advocated the need of alignment man- sentation can be further manipulated, shared and im- agement for dealing with ontology alignments, and in proved and later used for merging, transforming on- particular sharing them [7]. There are several reasons tologies or translating data. In addition, alignments are to support alignments: Sharing matching algorithms: Many applications have 1Partial support provided by European Integrated Project NeOn matching needs. It is thus appropriate to share, (IST-2005-027595) and ANR project WebContent. across applications, the solutions to these prob- *Corresponding author. E-mail: [email protected] lems: the matching algorithms and systems. 0000-0000/10/$00.00 c 2010 – IOS Press and the authors. All rights reserved 2 J. Euzenat and Chan Le Duc / The Alignment server: storing and sharing alignments on the semantic web creation of the process. Very often these alignments have to be enhancement evaluated, improved and finally transformed into some communication exploitation executable procedure before being used by applica- tions: transforming an ontology in order to integrate evaluation it with another one, generating a set of bridge axioms that will help identify corresponding concepts, trans- lating messages sent from one agent to another, trans- lating data circulating among heterogeneous web ser- Fig. 1. The ontology alignment life cycle: once created, alignments vices, mediating queries and answers in peer-to-peer may be evaluated before being enhanced. When an alignment is sat- systems and federated databases. isfactory it can be published so that others can use it. Finally, align- Hence, an infrastructure capable of storing the align- ments can be used in applications. ments and of providing them on demand is needed. Sharing alignments: Alignments are quite difficult to obtain. There is no magic algorithm for quickly 2. Alignment server design providing a useful alignment. Once high quality alignments have been established – either auto- Alignment servers are independent software compo- matically or manually – and accepted, it is very nents which offer a library of matching methods and important to be able to store, share and reuse an alignment store that can be used by their clients. In them. a minimal configuration, alignment servers contribute Sharing exploitation means: Matching results, once to storing and communicating alignments. Ideally, they expressed as alignments, may be used for dif- can offer all the following services: ferent purposes. Hence, the same matcher imple- mentation can be reused in different mediation Matching two ontologies possibly by specifying the scenarios by generating the appropriate process- algorithm to use and its parameters (including an able form of alignments, e.g., axioms, query me- initial alignment). diators, transformations. Storing an alignment in persistent storage. Combining matchers: If one wants to combine sev- Retrieving an alignment from its identifier. eral matching systems in a particular application, Retrieving alignment metadata from its identifier this is easier if all systems can exchange their re- can be used for choosing between specific align- sults in a pivot language [3,8]: one matcher can ments. work at improving the alignment provided by an- Finding (stored) alignments between two specific other matcher. ontologies. Comparing alignments for determining what their Like ontologies, alignments have their own life cy- differences are. cle (see Figure 1; [8]). They are first created through a Editing an alignment by adding or discarding cor- matching process (which may be manual). Then they respondences (this is typically the result of a can go through an iterative loop of evaluation and en- graphic editing session). hancement. Evaluation consists of assessing properties Trimming alignments, i.e., selecting correspondences of the obtained alignment. It can be performed either within thresholds. manually or automatically. Enhancement can be ob- Generating code implementing ontology transforma- tained either through manual change of the alignment tions, data translations or bridge axioms from a or application of refinement procedures, e.g., selecting particular alignment. some correspondences by applying thresholds. When Translating a message with regard to an alignment. an alignment is deemed worth publishing, then it can Finding a similar ontology is useful when one wants be stored and communicated to other parties interested to align two ontologies through an intermediate in such an alignment. Finally, the alignment is trans- one. formed into another form or interpreted for performing actions like mediation or merging. For instance, someone wanting to translate a mes- Ontology alignments, like ontologies, must be sup- sage expressed in ontology o to ontology o00 can ask ported during their life cycle phases by adequate tools. for matching the two ontologies and for a translation Indeed, finding these alignments is only the first step of the message with regard to the obtained alignment. J. Euzenat and Chan Le Duc / The Alignment server: storing and sharing alignments on the semantic web 3 A more extreme scenario involves (1) asking for align- The Alignment API which provides operations for ments between o and o00, maybe resulting in no align- manipulating alignments including extension points ment, (2) asking for an ontology close to o00 which may for adding new matchers and renderers. result in ontology o0, (3) asking for the alignments be- A storage system which offers persistent storage and tween o and o0, which may return several alignments retrieval of alignments. It implements only basic a, a0 and a00, (4) asking for the metadata of these align- storage and runtime memory caching functions. ments and (5) choosing a0 because it is certified by a The storage is made through a DBMS interface trusted authority, (6) matching o0 and o00 with a particu- and can be replaced by any database management lar algorithm, (7) suppressing the resulting correspon- system as soon as it is supported by JDBC. dences whose confidence is under a reasonable thresh- A protocol manager which handles the server proto- old for this algorithm, (8) editing the results so that it col. It accepts queries from plug-in interfaces and is correct, (9) storing it in the server for sharing it with uses the server resources for answering them. It other parties, (10) retrieving alignment a0 and this lat- uses the storage system for caching results. ter one as data translators, (11) finally applying these Protocol drivers which accept incoming queries in a two translations in a row to the initial message. particular communication system and invoke the Alignment servers are middleware components of protocol manager in order to answer them. These the semantic web infrastructure. They can be used by drivers are ideally stateless and only translators semantic web applications as well as by the infrastruc- for the external queries. ture

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    8 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us