04.11.2014 Views

elektronická verzia publikácie - FIIT STU - Slovenská technická ...

elektronická verzia publikácie - FIIT STU - Slovenská technická ...

elektronická verzia publikácie - FIIT STU - Slovenská technická ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

192 Selected Studies on Software and Information Systems<br />

wrappers are often insufficient to perform this task. The problem of having high quality<br />

ontologies influences the Semantic web generally. Hence, this is not only the problem of<br />

using SmartWeb in different domains and situations. Some problems concerning this topic<br />

are discussed in [9] which deals with creation of ontological test bases for experimental<br />

evaluation of Semantic web applications.<br />

Even if we have already described the goal in an acceptable form, there are still other<br />

problems. Despite of existing web service composition tools, the construction of an optimal<br />

composite web service can not be always achieved in sufficiently short time even if the<br />

necessary sub-services are available. This is due the complexity of this task (discussed in<br />

section 6.3.2).<br />

When composite web service is constructed, other services are required to be organized<br />

into one. Only available web services which are able to be executed can be taken into<br />

account. Here the problems of discovering suitable services mentioned in section 6.3.1 must<br />

be considered. The composition method must also deal with situation when it is not possible<br />

to build a composite service, which fully satisfies the user goal.<br />

The web services can be considered as transformations, which taking a set of input parameters,<br />

produce a set of output parameters. These can be described as ws :(i 1 ,...,i n ) −→<br />

(o 1 ,...,o m ). Before the constructed composite web service can be executed, the input parameters<br />

must be provided. The problem is that the user only defines the output parameters.<br />

It is not clear how to define the input parameters if we have described only the outputs. In<br />

example from Figure 6-12 the goal is to create forecast maps for a defined area and term.<br />

Based on this the presented composite service is constructed. This service composition is<br />

only the scheme which says in which order the services will be called and how will they shift<br />

the data between themselves.<br />

It is clear that the input for the Compute forecast service is the output of the Create meteo<br />

model service. The input for the Create meteo forecast maps service is the output of the Compute<br />

forecast service. The problem is that the inputs of the first, Create meteo model service are<br />

not provided by other service(s). From the description of the service only the type of the<br />

input parameters are known. The concrete input data for this service must be defined and<br />

provided other way. Automatic definition of these data presents a hard problem. There is<br />

no universal method how to do this. It is a domain dependent problem and often domain<br />

expert knowledge is required for this task. In the meteorological forecast map example,<br />

a meteorologist must define different parameters required to create a meteorological model<br />

from which the forecast for the specified time and area can be generated. Hence, the definition<br />

of the input data is hard to realize in automatic manner or even impossible.<br />

One possible solution may be the description of the data transformation the service<br />

performs. This means that we know what output parameters will be produced by a service if<br />

we know the input. For example a description of the web service which multiplies the input<br />

with two must explain that this service doubles the input. This still not solve the problem. The<br />

problem is solved only if we know also the inverse transformation ws −1 : (o 1 ,...,o m ) −→<br />

(i 1 ,...,i n ). In our example it means that the service description stands that the inverse<br />

transformation is the division by two. If this information is available, we are able to determine<br />

the required input parameters based on the output parameters. Problem is that it is not always<br />

possible to define the inverse function. An example is the service realizing addition of two<br />

numbers. The addition has no inverse function. Solutions for this case are not known.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!