Grid Workflow Workshop 2011 GWW 2011 Semantic Modeling of Services and Workflows for German Grid Projects Sudhir Agarwal 1 , Martin Junghans 1 , René Jäkel 2 1 Karlsruhe Institute of Technology (KIT), Institute of Applied Informatics and Formal Description Methods (AIFB), Karlsruhe Service Research Institute (KSRI), Englerstr. 11, 76131 Karlsruhe, Germany firstname.lastname@kit.edu 2 Technische Universität Dresden, Center for Information Services and High Performance Computing (ZIH), Helmholtzstr. 10, 01069 Dresden, Germany rene.jaekel@tu-dresden.de ABSTRACT Existing service description techniques that are based on Many projects in academia and industry nowadays use and provide syntactical service descriptions and service requests require much services electronically in order to be able to select from or target manual effort in addition. For instance, the offered functionality to a larger community across regional boundaries. With increasing has to be examined manually if it was described in a textual demand for and supply of complex services, it has become difficult representation that is not machine interpretable. Furthermore, to find and compose appropriate services. The formal description syntactical service descriptions do not allow to draw conclusions of services and workflows facilitates users in finding appropriate from their descriptions and it is difficult to deal with different services for a task at hand, to embed them into dynamic workflows or vocabularies automatically. The relationships between parameters simply to get informed about interesting new services provided by the like input and outputs of a service are not modeled such that system. they allow to infer the effects of a service, which is relevant In this paper we present an approach for modeling services for the composition of services. Lastly, service descriptions are and workflows semantically. The modeling language captures basic often underspecified and do not allow to automatically execute the properties of services and workflows including their functionality described services or workflow. modeled formally as a process, while the Web browser based We present in this paper a semantic description formalism graphical editor allows users to model their services and workflows for services and workflows that overcomes the briefly mentioned in an easy fashion. shortcomings. The language is developed in the WisNetGrid project We present an example scenario in which a workflow composed and aims at its application for services and workflows in the Grid. out of services from the logistics domain is modeled. The Here, we use the term workflow for a complex process behavior, scenario illustrates the description formalism and basic features of which can be assembled by simple atomic service functionalities our description language and reveals how it can be applied to and existing complex behaviors (workflows). In addition to the further projects linked with other activities within the German Grid description of the behavior, a service is offered with additional Community. properties attached to its description. In Section 2 we introduce the service description language. We highlight major language features in Section 3. Each feature 1 INTRODUCTION covers a requirement of a description language for Grid service. A detailed list of language requirements was examined in [4]. Services play an increasingly important role for accomplishing Then, in Section 4, we show how the presented service description personal and business tasks. The reuse of existing services promises approach can be applied for the motivated scenarios like retrieval to save development costs if desired services can be easily and composition. It explains our conceptual approach that coheres identified. Likewise, it should be also possible to obtain the required to the architecture implemented in the WisNetGrid project. In functionality by a composition of existing services. Section 5 we introduce a workflow example from a logistics An increasing number of available service leads to the problem scenario that was developed in the InterLogGrid project, which that finding and reusing appropriate services has become more applies the technologies developed in WisNetGrid. The relation to difficult. Service based systems benefit from fast replacements of other approaches is given in Section 6 and we draw conclusions in fallen out services and service compositions; the latter is typically Section 7. exponential in the number of times service retrieval is invoked. In order to ensure benefits such as flexibility, cost reduction, etc. of the service based systems, there is a need for scalable and efficient techniques for retrieving required services. Copyright c 2011 for the individual papers by the papers’ authors. Copying permitted only for private and academic purposes. 1 Sudhir Agarwal, Martin Junghans, René Jäkel SPKI The description formalism used to model the behavior is based Certificates on the π-calculus [15], a process algebra that supports dynamic described by workflows. Benefits of this approach, details on the description Credential formalism, and its formal semantics were already introduced [1, 3]. hasNFP D EFINITION 1. Description Formalism of Process Behavior Service or Φ(a1 , . . . , an ) ::= 0 | c(x1 , . . . , xn ).P 0 | chy1 , . . . , yn i.P 0 Workflow operatesOn hasFunctionality | l(x1 , . . . , xn )(y1 , . . . , ym ).P 0 | P1 k P2 | [ω1 ]P1 + [ω2 ]P2 | @A{y1 , . . . , yn } Resources uses Process described by described by described by The process expression Φ receives the arguments a1 , . . . , an OWL-DL Pi-Calculus upon invocation. They are described by description logics uses Ontology Process expressions. I.e., the arguments can be described by, for instance, their type and the relationships among them or to other individuals. Fig. 1. Abstract Model of Services and Workflows The null process 0 denotes a process that does not do anything and is used as termination symbol in a process expression. The input process c(x1 , . . . , xn ).P 0 is a process that takes inputs at port c, which is a communication channel, and binds them to the 2 SEMANTIC DESCRIPTION OF SERVICES AND variables x1 , . . . , xn . These variables are described by description WORKFLOWS logics expressions. In practice, it is useful to have information on the In this section, we give an overview of the formalisms we use for type of the communication protocol and messages transmitted over describing functional and non-functional properties of services and a channel. E.g., a book selling process sends the book via ”HTTP” workflows semantically. We first present the abstract model of the as PDF file or via ”surface mail” as hard copy. The communication service and workflow properties and then show how the properties channel c is represented by an individual in O and refers to the can be described semantically. information about the communication type and the partners (i.e., the two communication channel end points). The subsequent behavior 2.1 Abstract Model of Services and Workflows of this process is defined in the process expression P 0 that follows. Analogously, the output process chy1 , . . . , yn i.P 0 denotes a As shown in Figure 1, we consider functional and non-functional process that outputs the values y1 , . . . , yn at a port c and then properties of services and workflows. We have justified and behaves like P 0 . The constants y1 , . . . , yn are again specified by motivated in [10], why it is important to treat functional and non- description logics expressions. functional properties uniformly. A description embraces a set of The local process l(x1 , . . . , xn )(y1 , . . . , ym ).P 0 performs the independent properties; one of which describes the functional and atomic operation l with the arguments x1 , . . . , xn and produces the others describe the non-functional properties. A service or a outputs y1 , . . . , ym . The arguments and the outputs are again workflow operates on resources that we describe with an ontology to described by description logic expressions. The operation is enable interoperability and automated reasoning on the description regarded to be atomic in order to allow the modeler to abstract from of the resources. The functionality of a service or a workflow functionality provided by l. This is necessary if it is not desired is described with a π-calculus process expression, which allows or of no additional value to reveal the precise implementation of l. description of even highly complex process with rather simple The functionality is characterized by the changes on the individuals syntax. The resources used during the execution of a service or a introduced by this operation, that is the set of changes between the workflow are referred to by corresponding associations from their knowledge before and after the invocation of the local process l. use in the process expression to their ontological description. The These changes performed by l also represent the dependencies of ontology describing the resources semantically is often referred to the outputs on the arguments. The composition P1 k P2 consists of as domain ontology of a service or a workflow. In addition to the the two processes P1 and P2 acting in parallel. functionality, we support modeling of the non-functional properties The summation [ω1 ]P1 + [ω2 ]P2 denotes a choice of one of the (NFPs) as well. Especially in case of NFPs it is very important that alternatives P1 or P2 guarded by conditions ω1 and ω2 , respectively. the values of the NFPs of a service or a workflow are trustable. Each condition is a Boolean query that is evaluable to either true Therefore, we model them as Simple Public Key Infrastructure or false using the knowledge that is available at this stage of the (SPKI) certificates. described process. If several conditions can be evaluated to true, then only one subsequent process is chosen non-deterministically 2.2 Description of Functionality from the set of subsequent processes for which the condition holds. The functionality (Φ, O) of a service comprises the description Lastly, @A{y1 , . . . , yn } denotes the invocation of an agent Φ of its behavior, which is called Process in Figure ??, and identifier, which represents a named process expression. The the description O of the static domain knowledge used within arguments y1 , . . . , yn of the agent identifier A correspond to the the process. The naming of the resources like constants and arguments a1 , . . . , an of a process P if P is described by the variables occurring in such a process expression is defined in O by process expression Φ(a1 , . . . , an ) and the agent identifier A with def expressions of the SHIQ(D) description logics. arity n is defined as A(y1 , . . . , yn ) = P . The concept of agent 2 Semantic Modeling of Services and Workflows for German Grid Projects identifiers can be used to embed processes recursively. For example, Execution uses the information captured by the service description the invocation of a Web service can be expressed with an agent language and invokes the services and workflows likewise. identifier invocation where the base URI of the service is the agent identifier A and the service parameters correspond to the arguments of A. 3.1 Properties Concerning Retrieval • The language allows for the specification of complex behavior, 2.3 Description of Non-functional Properties which includes types of input and output parameters, the relationships among them as well as the choreography and Non-functional properties (NFPs) are part of semantic service orchestration. Especially, an explicit modeling of the relation descriptions and supplement the behavioral description. In contrast between output and input parameters allows to model and to functional descriptions, NFPs describe manifold quality attributes reason about the changes that are introduced by a service of services. We model NFPs of a service or a workflow as execution or a local operation. described above with SPKI certificates, more specifically with a semantic extension of SPKI certificate in order to enable automatic • The description language supports mappings between different reasoning about certifiable property names despite heterogeneity in terms with equivalent meaning because it is likely that different their syntax. In a distributed environment without central control, providers will use different vocabularies. Such mappings are providers or users of a service or a workflow can issue name also inevitable as the requester typically uses a vocabulary that certificates to the service or the workflow. A name certificate differs from the vocabularies used in service descriptions. roughly certifies certain value of property to a service or a workflow. • User access rights can be explicitly modeled in order to grant or Furthermore, users or providers can issue delegation certificates to prohibit access to services and workflows for particular users other users and providers to empower them for issuance of name or groups. For instance, not all workflows and services that certificates. Any users or providers can build their trust in other are available in the Grid should also be read by all users or user and providers independently and there is no notion of global groups. Thus different different Grid communities can restrict trust. Depending on such a trust policy of a user the significance the access to their services. of the NFP values of a service or a workflow is determined. For • The description of the communication protocols (e.g., HTTP, more details about semantic extension of SPKI certificates, access mail) allows a differentiation between similar services and trust policies, we refer to [5]. operating with different protocols. Protocol wrappers that allow to invoke services with other protocol are also described if applicable. Such wrappers as well as scripts that perform small tasks and typically are not published as Web services are 3 PROPERTIES OF THE DESCRIPTION modeled as services in the presented description language, too. LANGUAGE Thus, transformation steps that allow to invoke services with Adjacent to the introduction of the semantic modeling language in altered interface or protocol are also reflected in a workflow the previous section, we now want to elaborate on the attributes description. of the presented service description language and focus on the benefits that apply for the various Grid communities. We already 3.2 Properties Concerning Ranking analyzed the requirements on a language for modeling services and • The service description formalism also captures non-functional workflows in the Grid by an investigation of the applications and aspects of a service and workflows. Non-functional properties usage scenarios of services in different Grid communities [4]. The are first class citizens when different services are compared planned domain independent usage scenarios based on semantic with each other and an ranking of the service’s suitability is service descriptions can be summarized with retrieval, ranking, computed based on user preferences. Ranking can be applied composition, and the execution of services and workflows. In the to choose the best service(s) from a set of discovered services remainder of this section, we discuss the essential properties of the that, ensured by the retrieval component, satisfy the functional description language for each domain independent usage scenario. requirements. Retrieval denotes the identification of matching services, e.g., atomic Web services or already composed workflows. Therefore a • Non-functional properties describe manifold attributes like formal specification of the demand (request) is required to express the quality of the service, which in turn can be modeled which properties of a service are required and which properties the by a vast amount of properties like price, response time, service must not have. The retrieval component then allows for availability, etc. Since the selection of service is based on the the reuse of existing service and workflows. Ranking deals with ranking of the services, the authenticity of the properties and ordering the retrieval results according to the user’s preferences. their value is crucial for the user. Therefore, our description That is, if several services match a given request with respect language includes a mechanism to certify service properties in to functional and non-functional requirements, preferences specify a decentralized way. which services are better than others. Thus, ranking allows for a reasonable service selection from the retrieval results. Composition 3.3 Properties Concerning Composition creates new workflows, i.e., complex services, from existing • The description language covers atomic services and complex services and workflows. The composition complements retrieval services uniformly. Therefore, a distinction between the as it can be possible to compose ad hoc workflows that fulfill the behavior of services and workflows as a composition of request and is composed out of existing services and workflow. The atomic and complex services can be left out. Both types are 3 Sudhir Agarwal, Martin Junghans, René Jäkel semantically described in the presented description language and differ only in their complexity of the described behavior. Therefore, any service described with our language can be considered for a reuse in a new composition. Consequently, the properties of the language apply to both services and workflows likewise. Fig. 2. Conceptual architecture for a usage of service and workflow • The data flow within a workflow is modeled semantically descriptions, drawing on the example of a search scenario. by communication activities like input and output operations. Parameters and their types and relationships as well as the communication channel with the communication endpoints and depicted components. The knowledge layer manages the knowledge the communication protocol are contained in the description. that is necessary to describe services. The knowledge is expressed in The control flow within compositions can be modeled by ontologies that are stored in the ontology repository within the Grid. language elements such as sequence and choice. We use an integrated Rule Oriented Data System (iRODS [16]) system to organize distributed data and its meta data in the Grid. 3.4 Properties Concerning Execution The layer offers the following functionality: (i) save ontologies, (ii) • In contrast to most other workflow languages that model search ontologies, (iii) extraction of ontologies based on existing a centralized execution, the presented description language information, (iv) mapping between ontologies, and (v) derive new allows for a decentralized execution. This property is inherited information and new knowledge from existing ontologies. by the mobility of the π-calculus, i.e., communication channel The service layer represents an infrastructure for the management, information can be exchanged as data objects between different composition, and execution of services. In the WisNetGrid project services. we consider complex workflows for information processing and • Actors and communications between them are included in knowledge creation. This layer comprises the service repository, the service descriptions. This information is necessary for a i.e., a registry for services that also manages the storage of correct execution. It enables the description of human tasks in the service descriptions in the Grid. It allows to create, read, a composition, for instance the input of text in a Web form and update, delete descriptions. Also, users can lock descriptions or get the subsequently transmitted information. notifications upon changes by other users. The reasoner allows to access and conclude from the semantic • In compositions, communications with external partners may descriptions in conjunction with the ontologically described also take place. Therefore, the description language allows to knowledge managed by the knowledge layer. The ontology describe services that communicate with other services. E.g., repository also manages the ontologies that accompany the service a user provided delivery address can be forwarded to another descriptions, e.g., describing parameter types and relationships. shipping service without requiring further user interaction. The composition uses retrieval and ranking in order to retrieve existing services and workflows that are available in the repository 3.5 Additional Unstructured Properties and combines them into new workflows that can be encapsulated, • Full-text description elements of service descriptions attach described, and published as services again. metadata information. It may contain information about The search user interface serves as the interface for users to context sensitivity, which is exploited when a search request access services and workflows. Here, we abstract from the concrete contains the description of the user’s context. subtasks (retrieval, ranking, composition) and subsume them under • The service can be classified optionally using an taxonomy the term search. A Web browser based interface that was built on top that is modeled in an ontology. Classifications are often useful of the Oryx process modeling infrastructure1 . This open source tool as they are intuitive for users and can be exploited in certain excels at high extensibility. We integrated the process editor with settings in order to improve computational performance. the WisNetGrid service layer, i.e., services and workflows available in the repository can be accessed in this tool. Users can explore the repository, formulate retrieval queries and ranking preferences within this tool. As we introduced semantic service descriptions 4 USAGE OF SEMANTIC SERVICE & WORKFLOW that model their behavior, a request formalism based on temporal DESCRIPTIONS logics can be applied to express constraints on the service behavior. After we introduced the semantic description language that can E.g., the µ-calculus can be used to express requests on the process be used to describe services and workflows likewise, we want to behavior as we have shown in [2]. show in this section how the formalism can be applied for practical Compositions can be easily create semi-automatically, that is, the use, for instance in the German Grid settings. We will introduce composition assists the user during a manual workflow modeling a conceptual architecture of tools that build on the presented task in the editor. Therefore, we defined a stencil set for the language and provide the typically aimed functionalities like search, description language we presented in Section 2. By this, a user can composition, and execution of services and workflows. manually create workflows using data and control flow constructs of We created a Java API for the description language presented in the description language in a visual manner. Activities can be added, Section 2 that allows us to develop tools that use these descriptions. rearranged, and interconnected with easy drag and drop actions. The conceptual architecture of tools based on the description language API is depicted in Figure 2. In the following we explain the 1 Oryx is available at http://bpt.hpi.uni-potsdam.de/Oryx 4 Semantic Modeling of Services and Workflows for German Grid Projects Further properties for selected objects and the entire service are the status is returned to the user by an output operation at port c. added in an additional widget. As the process modeling tool is designated for editing process Pstd = p(n).@LgetID (n)(id).chidi. description without additional semantic information, e.g., BPMN, @Utrace {id, q} k q(stat).chstati.0 Petri Nets, among others, we also added the ability to add semantic information to workflows. OWL Ontologies can be imported and Depending on the user selection, Uexpr and Ulog are invoked as explored visually in a tree-shaped visualization based on concepts subprocesses in U. For tracing an express freight, the user has to and relations besides the process model2 . The process can be provide the freight type type and the number n first. Then, based enriched with semantic information by dragging concepts and on the freight type, the local operation Llookup determines in which relations from the ontology view into the process model and drop system the shipping number n can be mapped to the unique ID id. it over a particular element, e.g., an input parameter. Finally, Here, the result x of this local operation is the communication port changed service and workflow description are directly saved into that is used to query the freight id. The process Uexpr sends n to the repository. the external provider and waits for the reply id on the same channel. The freight is traced and its status stat is returned to the user in the subsequent steps of Uexpr . 5 INTERLOGGRID SCENARIO In this section, we show an example workflow that is composed Uexpr = p(type, n).@Llookup (type)(x).xhni.x(id). of electronic transport assisting. We have applied the presented @Utrace {id, q} k q(stat).chstati.0 workflow modeling approach to services and workflows of the logistics domain. The InterLogGrid project3 investigates the Dynamically determining the communication channel to be used as application of the D-Grid infrastructure to the logistics domain. shown in this example is an advantage of the underlying π-calculus. Electronic and real world transport services are typically composed The description of the third option of tracing logistic freight is into workflows that represent the freightage of goods including omitted due to the space constraints. multi modality. Atomic logistic services like accounting, route optimization, and the actual transport of freight from one location to another 6 RELATED WORK are described using OWL-S Profile [14]. That means, their Quite a few approaches for describing composite Web services functionalities are described by the four elements: sets of input semantically have been proposed in recent years, the most known of and output parameters, a pre-condition, and an effect description. them is perhaps OWL-S [17]. However, the lack of formal semantics OWL-S Profile suffices the description of atomic activities, i.e., of the OWL-S Process Model makes it hard to develop automatic activities that do not interact with the user during the execution. The verification (required for search) of service behavior described with only communication of an atomic activity takes place within the OWL-S. In the following we investigate the relationship of different provision of the input parameters at the invocation and the return of existing approaches to our service modeling approach. the output values to at the end of the execution. The Web Service Description Language (WSDL [6]) allows for a Example. The workflow models a tracking process U, which description of exchanged messages of services with XML Schema. can be embedded in further workflows by an process invocation Further, the interface element relates inputs, outputs, and failures @U{expr, log}. In our example, U receives the two arguments expr to the operations of the services. The bindings element describes and log that represent the user’s choice for tracing non standard how it can be invoked. However, the syntactical description model freight and is composed out of different services that are invoked prevents a formal description of the service functionality. Semantic based on the user input. The process expression Pstd is given below Annotations for WSDL and XML Schema (SAWSDL [9]) allows to foster readability. to attach ontologically described concepts to the elements of a WSDL service description. This is similar to our approach as we def U(expr, log) = [¬(expr ∨ log)]Pstd + also link service descriptions to ontologies in order to gain machine [expr]@Uexpr {} + [log]@Ulog {} interpretable service descriptions, which in turn can improve the task of automated search and composition. Universal Description Discovery and Integration (UDDI [7]) is an XML based registry Standard freight tracing is started if the user does not select express and has been applied to WSDL [8] and SAWSDL [11] service or logistic tracing, i.e., the condition ¬(expr ∨ log) is true. Then, descriptions. UDDI does allow to attach any kind of meta data the user enters at port p a shipping number n. The local operation to practically any elements of the data model (tModel). Although LgetID maps n to the freight identification code id. The tracing is this could be utilized to add semantic information, the meta data invoked with id and the communication channel q to be used to is not considered during the discovery that UDDI provides. Also, return results as arguments. It retrieves the status stat of the freight. SAWSDL lacks the ability to explicitly model the behavior, which The process Ustd waits for a return of the status at port q. Finally, does not allow to formulate temporal constraints on the behavior which is relevant for compositions. 2 We allow to perform simple changes on ontologies with the tool directly, OWL-S, the Web Ontology Language for Web Services, is an but for a change of complex axioms we rely on external OWL editors. ontology describing the vocabulary used to describe Web services 3 InterLogGrid is a research project funded by the German BMBF. More formally. It is similar to the presented description language to some information is available at http://interloggrid.org. extent. For example, OWL-S provides the concept Process and 5 Sudhir Agarwal, Martin Junghans, René Jäkel descriptions comprise input, output parameters, Precondition and Also, the Oryx based user interface is continuously developed in Result for the description of the functionality, Participants among order to support users in modeling services, create service requests others. Also, control constructs of the process like Sequence, Split, and compositions as much as possible. and Choice are defined in OWL-S. ACKNOWLEDGEMENT WSDL, SAWSDL, and OWL-S cannot model access rights as The authors gratefully acknowledge the funding for the project well as the trustworthiness of service properties within the service WisNetGrid (http://wisnetgrid.org) by the Federal Ministry of description. Both language properties were identified as important Education and Research BMBF, Germany. for the Grid scenarios. OWL-S provides the possibility to administer service ratings, but service consumers still have to verify them manually. The certified properties that can be included in the presented description language trustworthy, their validity is proven, REFERENCES i.e., can be evaluated, by the certificate. [1]S. Agarwal, S. Rudolph, and A. Abecker. Semantic Description of Distributed Finally, the expressivity of our description language is higher Business Processes . In In Knut Hinkelmann, Andreas Abecker, Harold Boley, John Hall, Martin Hepp, Amit Sheth, Barbara Thönssen, AAAI Spring Symposium than the one of WSDL and SAWSDL and not less expressive than - AI Meets Business Rules and Process Management, 2008. compared to OWL-S. In the latter case we can not judge precisely [2]Sudhir Agarwal. A Goal Specification Language for Automated Discovery and as the semantics of the OWL-S process model was not fixed in the Composition of Web Services. In International Conference on Web Intelligence specification [14]. But since the π-calculus is Turing-complete, we (WI ‘07), pages 528–534, Silicon Valley, California, USA, November 2007. [3]Sudhir Agarwal. Formal Description of Web Services for Expressive can conclude that OWL-S services can be also completely modeled Matchmaking. PhD thesis, Universität Karlsruhe (TH), Institut AIFB, D-76128 in our description language. Karlsruhe, 2007. The need for a semantic description of non-functional properties [4]Sudhir Agarwal, Patrick Harms, Carolin Michels, Silke Molch, and Eva in addition to the semantic description of the service functionalities Radermacher. D 3.2.1 Anforderungen an die semantische Beschreibungssprache was already motivated in [12]. The authors motivated their approach fr Web-Dienste, Dezember 2009. [5]Sudhir Agarwal and Barbara Sprick. Specification of access control and with an increased potential for automation of tasks like discovery as certification policies for semantic web services. In Hannes Werthner shown in [13, 10]. Kurt Bauknecht, Birgit Pröll, editor, 6th International Conference on Electronic Commerce and Web Technologies, volume 3590 of Lecture Notes in Computer Science, pages 348–357, Copenhagen, Denmark, August 2005. Springer. [6]Erik Christensen, Francisco Curbera, Greg Meredith, and Sanjiva Weerawarana. 7 CONCLUSIONS AND FUTURE WORK Web Services Description Language 1.1, 2001. We presented a semantic description formalism for services and [7]Luc Clement, Andrew Hately, Claus von Riegen, and Tony Rogers. UDDI Spec workflows that can be applied in the settings of the German Grid Technical Committee Draft 3.0.2. OASIS Committee Draft, OASIS, 2004. [8]John Colgrave and Karsten Januszewski. Using WSDL in a UDDI Registry. projects. We introduced a formal model of services, which captures Technical report, OASIS, 2004. functional as well as non-functional properties of services. This [9]Joel Farrell and Holger Lausen. Semantic Annotations for WSDL and XML information can be modeled in description logics and allows for Schema, 2007. an application of semantic technologies to reason about service [10]Martin Junghans and Sudhir Agarwal. Web Service Discovery Based on Unified View on Functional and Non-Functional Properties. In ICSC. IEEE Computer properties and allows us, for example, to remove the burden of Society, 2010. different vocabularies used among different service providers. [11]Dimitrios Kourtesis and Iraklis Paraskakis. Combining SAWSDL, OWL-DL and Furthermore, we elaborated on the description of the behavior UDDI for semantically enhanced web service discovery. In Proceedings of the of services. We combined the π-calculus process algebra for 5th European Semantic Web Conference on The Semantic Web: Research and expressing the process structure with a semantic description of the Applications, ESWC’08, pages 614–628, Berlin, Heidelberg, 2008. Springer- Verlag. objects occurring in the process. Due to the combination of both, [12]Kyriakos Kritikos and Dimitris Plexousakis. Requirements for QoS-based the presented service description approach is able to automatically Web Service Description and Discovery. Computer Software and Applications reason about functional and non-functional aspects, which increases Conference, Annual International, 2:467–472, 2007. the potential of the targeted service reuse. As we motivated in the [13]Kyriakos Kritikos and Dimitris Plexousakis. Mixed-Integer Programming for QoS-Based Web Service Matchmaking. IEEE Transactions on Services beginning of this work, the reuse of services in conjunction with a Computing, 2:122–139, 2009. large amount of available service descriptions can be fostered if we [14]David Martin, Mark Burstein, Erry Hobbs, Ora Lassila, Drew Mcdermott, Sheila develop automatic retrieval and composition techniques. Mcilraith, Srini Narayanan, Bijan Parsia, Terry Payne, Evren Sirin, Naveen As the modeling language was the focus of the current work, we Srinivasan, and Katia Sycara. OWL-S: Semantic Markup for Web Services. highlighted the advantages of our description language and showed Technical report, November 2004. [15]Robin Milner, Joachim Parrow, and David Walker. A Calculus of Mobile how it can be applied in a scenario that enables the reuse of available Processes, Part I + II. Journal of Information and Computation, 100:1–77, 1992. services. The example workflow taken from the InterLogGrid use [16]Arcot Rajasekar, Reagan Moore, Chien-Yi Hou, Christopher A. Lee, Richard case showed a practical and realistic scenario for the usage of Marciano, Antoine de Torcy, Michael Wan, Wayne Schroeder, Sheau-Yen Chen, service and workflow descriptions. Based on the current status, Lucas Gilbert, Paul Tooby, and Bing Zhu. iRODS Primer: Integrated Rule- Oriented Data System. Synthesis Lectures on Information Concepts, Retrieval, we plan to refine our existing matchmaking techniques in order and Services. Morgan & Claypool Publishers, 2010. to efficiently deal with composition and retrieval tasks for a larger [17]Katia P. Sycara. Automated discovery, interaction and composition of Semantic amount of services. The classification of services and the application Web services. Web Semantics: Science, Services and Agents on the World Wide of indexing techniques are promising techniques to gain efficiency. Web, 1(1):27–46, 2003. 6