• Aucun résultat trouvé

WSIRD: Web Services Integration via Rules for Data Transformation

N/A
N/A
Protected

Academic year: 2021

Partager "WSIRD: Web Services Integration via Rules for Data Transformation"

Copied!
4
0
0

Texte intégral

(1)

Publisher’s version / Version de l'éditeur:

Vous avez des questions? Nous pouvons vous aider. Pour communiquer directement avec un auteur, consultez la première page de la revue dans laquelle son article a été publié afin de trouver ses coordonnées. Si vous n’arrivez pas à les repérer, communiquez avec nous à PublicationsArchive-ArchivesPublications@nrc-cnrc.gc.ca.

Questions? Contact the NRC Publications Archive team at

PublicationsArchive-ArchivesPublications@nrc-cnrc.gc.ca. If you wish to email the authors directly, please see the first page of the publication for their contact information.

https://publications-cnrc.canada.ca/fra/droits

L’accès à ce site Web et l’utilisation de son contenu sont assujettis aux conditions présentées dans le site LISEZ CES CONDITIONS ATTENTIVEMENT AVANT D’UTILISER CE SITE WEB.

Proceedings of the 3rd International Semantic Web Conference(ISWC2004),

2004

READ THESE TERMS AND CONDITIONS CAREFULLY BEFORE USING THIS WEBSITE.

https://nrc-publications.canada.ca/eng/copyright

NRC Publications Archive Record / Notice des Archives des publications du CNRC :

https://nrc-publications.canada.ca/eng/view/object/?id=01f9c1f7-ea46-4105-ad89-d7d38b325a55

https://publications-cnrc.canada.ca/fra/voir/objet/?id=01f9c1f7-ea46-4105-ad89-d7d38b325a55

NRC Publications Archive

Archives des publications du CNRC

This publication could be one of several versions: author’s original, accepted manuscript or the publisher’s version. / La version de cette publication peut être l’une des suivantes : la version prépublication de l’auteur, la version acceptée du manuscrit ou la version de l’éditeur.

Access and use of this website and the material on it are subject to the Terms and Conditions set forth at

WSIRD: Web Services Integration via Rules for Data Transformation

Liu, Sandy; Spencer, Bruce

(2)

National Research Council Canada Institute for Information Technology Conseil national de recherches Canada Institut de technologie de l'information

WSIRD: Web Services Integration via Rules

for Data Transmission *

Liu, S., and Spencer, B.

November 2004

* published in the Proceedings of the 3rd

International Semantic Web Conference (ISWC2004). Hiroshima, Japan. November 7-11, 2004. NRC 48056.

Copyright 2004 by

National Research Council of Canada

Permission is granted to quote short excerpts and to reproduce figures and tables from this report, provided that the source of such material is fully acknowledged.

(3)

WSIRD: Web Services Integration via Rules for Data Transformation

Sandy Liu and Bruce Spencer

Institute for Information Technology – e-Business

National Research Council of Canada

{sandy.liu,bruce.spencer}@nrc.gc.ca

Abstract

We suppose that two Web Services with seman-tically similar data models are to be composed so that the output of one contributes to the in-put of the other. The task is made easier by hav-ing access to OWL-S descriptions of each Web Service, in particular the syntax and semantics of their data models. This paper describes a run-ning prototype of the Web Services Integration via Rules for Data Transformation (WSIRD) tem, which consists of two parts: an off-line sys-tem that infers data transformation rules, and an on-line system that runs the rules effecting the transformation. The rules can incorporate calls to data conversion and type casting procedures to accommodate differences in the two data models.

1

Introduction

Many works in Semantic Web Services composition have focused on matchmaking at the conceptual level where the details of how data will be passed among a set of composed services are often ignored. For instance, the output of a Web Service that can provide lists of available flights ide-ally can be used as input for another Web Service for flight reservation. In reality, with the distributed and independent nature of Web Services, the output of the first Web Service often cannot be used directly as input to the second one. To bridge this gap, the objective of our work is to generate an appropriate message required by the downstream Web Ser-vice from the message(s) of the upstream Web SerSer-vices. This paper gives an overview on how this integration pro-cess can be achieved with our proposed solution: WSIRD (Web Service Integration via Rules for Data transforma-tions).

2

WSIRD: An Overview

WSIRD is designed based on the assumption that there ex-ist rich semantic descriptions for both the upstream and downstream Web Services. WSIRD uses our customized Description Logic reasoner to generate a set of data trans-formation rules based on semantic descriptions of the ser-vices to be integrated. This set of transformation rules is then imported to our Inference Queue, a queuing inference engine. During runtime, the upstream message is passed through the Inference Queue, which runs the rules and pro-duces the required input message for the next service.

As OWL became a W3C Recommendation, we use OWL-S [Coalition, 2004], the OWL-based ontology for Web Services, for describing the semantic information for each Web Service. OWL-S describes Web Services in three levels of abstraction: the service profile, the process model, and the service grounding, describing respectively what the service does, how it does it, and how to access it. In WSIRD, we assume that matchmaking or service composi-tion is done based on the abstract descripcomposi-tion (i.e. Service profile or/and process model). WSIRD then handles the semantic Web Services integration at the grounding level, where the complete details are found for each of the mes-sage components. WSIRD can be divided into two sub-systems: the off-line system and the on-line system.

2.1

The Off-line System

The off-line system is used before the actual service invoca-tion in order to prepare necessary transformainvoca-tion rules for the on-line system. Figure 1 shows the components of the off-line system. The following section describes the two key components in the off-line system: the Rule Compiler and the set of Converters.

OWL-S description (Process & Grounding)

WSDL description Ontologies Specifications of converters & typeCasters Trans-formation Rules Rule Compiler

Figure 1: The components of the off-line system

The Rule Compiler

As illustrated in Figure 1, the input of the rule compiler includes the OWL-S descriptions, the WSDL descriptions, and auxiliary ontologies for both upstream and downstream Web Services. It also includes the specifications of con-verters, which will be discussed in the subsequent section. The rule compiler makes use of a tableau ALC Descrip-tion Logic reasoner (written in Prolog). According to these semantic information, the rule compiler can find the corre-spondences between components of the upstream message and the downstream one. It generates data transformation rules in first-order logic. Should the integration is deemed

(4)

Inference Queue Web Service Converters & TypeCasters Upstream Downstream Trans-formation Rules XML Interface XML Interface Web Service

Figure 2: The components of the on-line system

to be infeasible, the rule compiler will be unable to com-plete its task; other than informing the user we do not con-sider in this paper what other actions might be appropriate.

The Converters

The converters are built-in components for converting data from one type to another. In the real world many data types that are not identical syntactically are still convertible, such as temperatures expressed in either Fahrenheit or Celsius, currency in either dollars or Yen, etc.

A TypeCaster is a special type of converter. It per-forms low-level type conversion such as converting be-tween string and numeric. The functions of all the con-verters and typeCasters can be specified, then they can be used by the rule compiler to generate proper transformation rules. As a result, a number of these standard conversions can be expressed as relations in the bodies of rules, and at runtime the inference engine will perform the conversion.

2.2

The On-line System

The on-line system performs the actual service integration at runtime with the fundamental component: the Inference

Queue. Figure 2 shows the components of the on-line

sys-tem.

The Inference Queue (IQ)[Spencer and Liu, 2003] is a resolution-based inference engine based on jDREW [Spencer, 2004], which can reason with definite clauses. It is implemented as a priority queue with two main oper-ations: insert and remove, each can be called by separate threads in any order.

The IQ is loaded with the set of transformation rules gen-erated by the off-line system. At runtime it accepts the out-put message from the upstream Web Service in XML for-mat, encodes it as facts, and draws inferences, so that the inferred results are transmitted as output. Finally, the out-put is then be converted back to XML and delivered to the downstream Web Service. The inferred results produced by IQ are sound, complete, and irredundant.

2.3

An Example

Suppose that a European-based Web Service produc-ing flight information is selected to provide input to a Canadian-based Web Service accepting flight information. The upstream European flight record has three data items: a source city, a destination city and a cost quoted in Euros. The downstream service expects the flight to be described with two pieces of information: the cost in Canadian dol-lars and a manifest, consisting of the codes of the departure

SourceCity DestCity Euro

canadaFlight Dollar manifest DepartCode ArrivalCode airportCity2Code airportCity2Code euroFlight euro2Dollar

Figure 3: The Upstream to Downstream transformations and arrival airports. We have a converter from Euros to dol-lars, and from cities to airport codes. There are three tasks (Figure 3): creating the appropriate structure, converting the currency, and converting the two airport locators. This rule is produced off-line:

down(canadaFlight(Dollar, manifest(DepartCode,

ArrivalCode))):-up(euroFlight(SourceCity, DestCity, Euro)), euro2Dollar(Euro, Dollar),

airportCity2Code(SourceCity, DepartCode), airportCity2Code(DestCity, ArrivalCode).

When the fact up(euroFlight(Fredericton,

Frankfurt, 1200))is entered into the inference queue, the fact down(canadaFlight(2400, manifest(YFC, FRA))is produced, (assuming that a Euro is two Canadian dollars).

3

Conclusion

We have introduced a rule-based approach for semantic Web Services integration. Given two semantically com-patible Web Services, our current prototype WSIRD is ca-pable of generating data transformation rules at compo-sition time, and producing message for the downstream Web Service with preserved meaning during service invo-cation. This approach compensates for the inflexibility of the third-party code and completes the integration solution after high-level service composition.

References

[Coalition, 2004] The OWL Service Coalition. OWL-S 1.0 Release. “http://www.daml.org/services/owl-s/1.0/”, 2004.

[Spencer and Liu, 2003] Bruce Spencer and Sandy Liu. Inference Quenes for Communicating and Monitoring Declarative Information between Web Services. In

Proceedings of RuleML-2003, number 2876 in Lecture

Notes in Artificial Intelligence, 2003.

[Spencer, 2004] Bruce Spencer. A Java Deductive Rea-soning Engine for the Web. www.jdrew.org, 2004. Ac-cessed 2004 Jan 12.

Figure

Figure 1: The components of the off-line system
Figure 3: The Upstream to Downstream transformations

Références

Documents relatifs

The problem of finding all certain answers ans(q, P, D) to an arbitrary graph pattern query q, for a given RDF Peer System P and a stored database D, has PTIME data complexity.. Due

This tutorial introduces to Inductive Logic Programming (ILP), being it a major logic-based approach to rule learning, and sur- veys extensions of ILP that turn out to be suitable

Also third party web sites such as rating- or book- ing platforms are using schema.org more often-sometimes even excessively- to increase search engine visibility as well as to

To the best of our knowledge, CaRLA is the first approach tailored towards Linked Data that allows the active learning of data conformation rules for property values expressed

In this paper, we define a specific data type for sets called C-Set that can be applied for a triple store and we prove that this type ensures eventual con- sistency.. With

Intersection Query After having executed the original query and all of its approximations, we also add all service offers to the result list, which have at least one concept in

Thus, by modelling the root node or each of the blank node as an object, which contains three primitive value lists, storing subnode URIs, literal values, and blank

Future work on the Reference Ontology will consider process models sufficient for orchestration and it is hoped that these will be derivable from the OWL-S process model, and