In Taverna [17], workflow's resources and activities are semantically annotated in order to make searching for existing workflows and their reuse easier. Ke-.
Knowledge Evolution Supporting Automatic Workflow Composition Renata Słota, Joanna Zie¸ba Institute of Computer Science AGH University of Science and Technology Mickiewicza 30, 30-059 Cracow, Poland
Bartosz Kryza Academic Computer Center CYFRONET-AGH Nawojki 11, 30-950 Cracow, Poland
Jacek Kitowski Institute of Computer Science AGH University of Science and Technology Mickiewicza 30, 30-059 Cracow, Poland and Academic Computer Center CYFRONET-AGH Nawojki 11, 30-950 Cracow, Poland
Abstract
and mapping of the workflows onto the Grid architecture in order to create efficient, user-friendly applications.
Benefits of using ontologies for automatic composition of workflow application, become evident when considering knowledge evolution influencing possibility of new workflows composition. The evolution of knowledge in the case of ontology description means both evolution of the instance registries as well as evolution of schemas to which the instance descriptions conform. An approach to semi-automated knowledge evolution referred to ontology schemas applied to the process of new Grid service registration is introduced in the paper. The presented study makes extensive use of ontology alignment methods.
Reuse of existing software elements is based on composition of an application consisting of independent programs, modules, components or services that together define a new e-Science software system with significant capability. In the field of business applications there is a set of languages to support this composition, e.g., BPEL4WS [4], as well as languages and graphical interfaces for construction of workflow Grid applications, such as AGWL/CGWL [7], UNICORE [22], Triana [21] and Chimera [23]. In the scope of mapping workflows onto the Grid architecture, support from Askalon [1], Pegasus [23], WMS [16] and Karajan [24] can be cited. Some tools use semantic data for workflow composition. In Taverna [17], workflow’s resources and activities are semantically annotated in order to make searching for existing workflows and their reuse easier. Kepler [12] also provides semantic-based workflow component classification and browsing, as well as checking the semantic ’compatibility’ of components, thus assisting the user in workflow composition.
1. Introduction The Grid environment encompasses many facets according to the users’ requirements. One of them is provisioning computing infrastructures for problems that have been unapproachable with the use of classical resources. Such problems have appeared in the field of scientific computing, requiring more computational power than previously available, as well as in the business field, especially business networking. e-Science applications are characterized by great diversity of their elements (like applications, servises, components, and data) which are used for wokflow construction. Two challenges of the e-Science approach are: reuse of existing software elements resulting in application workflows
Proceedings of the Second IEEE International Conference on e-Science and Grid Computing (e-Science'06) 0-7695-2734-5/06 $20.00 © 2006
The next step of this research is automatic composition of e-Science workflow applications which becomes possible thanks to the introduction of knowledge to the Grid environment [9]. Through knowledge extension [14], we can observe new possibilities of automated workflow application composition, resulting in better flexibility and quality of results. The K-WfGrid project is an EU-IST initiative aiming at developing a flexible solution for automatic problem solving by composition of workflows of available ser-
vices that provide results which are requested by users. In K-WfGrid, workflows can be composed automatically [8] thanks to the knowledge, stored in Grid Organizational Memory (GOM) [10]. Extending this konwledge makes possibilities of workflow creation wider. As services are basic building blocks, their semantic annotations carry knowledge which is essential for workflow composition. However, due to diversity of the existing services, which potentially could extend the knowledge base their alignment with the GOM is required. The aim of this paper is to show the way in which knowledge evolution can be done during the process of registering new services in the system. The paper is composed as follows. First we discuss the need for knowledge evolution in dynamically changing Grid environment. Next, KWf Grid Project, which uses knowledge and ontologies to enable automated composition of Grid workflows, is presented. Subsequently, we introduce our approach to semiautomated knowledge extension applied to the process of Grid service registration and implemented in a form of tool (OnTal), used for supporting knowledge management in KWf Grid project, along with a working example. Finally, conclusions about the importance of knowledge evolution for workflow composition are presented.
2 Knowledge Evolution in Grid Environment One of the ways to describe knowledge is through the use of ontologies, which provide extensible and formal means for defining both schema and instance registries [11]. However the real benefits of using ontologies for automatic composition of workflow application, become visible when considering knowledge evolution which influences the possibility of composing new workflows. This means that the underlying representations must be modified. In the field of Semantic Web this process is referred to as ontology evolution. Evolution of knowledge in the case of ontology description can mean both evolution of the instance registries (representing the current state of affairs in the domain) as well as evolution of schemas to which the instance descriptions conform. This process can be both semiautomatic or manual. However, in order to make such solution applicable to actual real-world scenarios, software should enable such extension to be as automatic as possible. The ontologies, especially those expressed in variants of Description Logic, for instance in the Web Ontology Languague (OWL), usually only support conditions imposed by the steps of the knowledge evolution process. Among the most important features in this context are extensibility of ontology schema, formal methods for consistency checking and support for ontology alignment algorithms. The first of these features is inherent to ontologies composed from a set of concepts and a set of instances. The
Proceedings of the Second IEEE International Conference on e-Science and Grid Computing (e-Science'06) 0-7695-2734-5/06 $20.00 © 2006
extension of the schema can be performed independently of the instances as long as it maintains the knowledge base in a consistent state. The existence of several models for consistency checking and their implementations, which are recently becoming more and more efficient allows us to use them in real applications. The last feature, concerned with ontology alignment, is currently the object of extensive research in the field of Semantic Web. The introduction of ontology alignment algorithms to knowledge evolution in a Grid setting is necessary in order to deal with the inherent heterogeneity of Virtual Organizations emerging in the Grid. In the case of automatic workflow composition, utilizing semantically annotated Web or Grid Services in a heterogeneous environment such as the Grid, the ontological descriptions must be extended. Let’s consider for instance, that some user requires a pollution forecast for a given cite for the coming day. He specifies his problem – in this case this could be a request for a PollutionEmissionData concept with proper parameters specifying the date and the urban area in question. The workflow composition system assembles a workflow, and constructs and executes a sequence of services that provide the desired output. Now the user decides that he wants this data to be visualized on a city map in the SVG format. He describes his problem again but in this case the system fails to compose the workflow since no available services providing the desired output are found. The user finds out that an appropriate service exists in some public registry. He then asks the system administrator to register this service in GOM (or performs this action himself if he has proper access rights). The problem is that the description now refers to external ontologies, which implies that either a different description of this service must be registered in GOM or the ontologies managed by GOM must be extended. This is where the need for ontology alignment arises. The administrator registers the service, and ontology similarity algorithms lead him through the process of aligning the new service description to the ontologies available in GOM. Once this process is finished, the user restarts his query and the system takes the previously generated data and processes it with the new service, providing the requested output. Current ontology alignment algorithms allow for deciding whether an extension can be made automatically or whether an expert user must extend the ontology manually.
3 Support for Ontology Evolution in Grid Organizational Memory The workflows in K-WfGrid are composed of services, annotated semantically with OWL-S [15]. In order to allow service developers to provide rich semantic annotations, all other aspects of the Grid should also be defined in the form
of ontologies. The management of these ontologies, defined in OWL-DL, is provided by a special component developed for this purpose within the K-WfGrid project called the Grid Organizational Memory (GOM) [10]. GOM also supports the ontology separation schema [11], which divides the ontologies into two dimensions. The first one is further divided into three levels: Generic, Domain Specific and Instance. The first level is common for all domains (Virtual Organizations) while the latter two are defined for each of the VOs in the system. Each of these levels is then subdivided into 5 groups (Application, Resource, Data, Service and Workflow) which further divide the concept space into ontology components. Thanks to this separation schema, the GOM can be distributed by managing each ontology by a separate, optimally configured GOM Engine instance. The Grid Organizational Memory has been designed with issues of ontology evolution in mind. First of all, although GOM does not directly perform discovery of changes in the domain, it provides many interfaces which agents running in the Grid can use to notify of events that occur in the system. Secondly, for the sake of change representation, a special ontology (Change Ontology) has been defined using the OWL language, describing possible changes that can be performed on the knowledge base, such as creation of a new subconcept or changing the values of individual properties.
Grid Organization Memory External Ontology
OWL Change Handlers OWL Query Handlers
w
kflo
Wor
GOM Ontologies
Data
n R es tio ou ca rc pli e Ap
A Grid resource is described with external ontology
Service
Ontology aligment Handlers
OWL Grid Resource
Figure 1. GOM in the context of resource registration process using external ontologies. Furthermore, the semantics of a change are encoded in event handlers. Each GOM Engine can have a different set of such handlers, thus allowing for tailoring the changes to a particular domain. For instance, in some cases the removal of a concept could mean automatic removal of all its instances, while in other cases GOM would notify an expert user to deal with this situation manually. The propagation of a change is realized by keeping the information about dependencies between the GOM Engines and the ontology components managed by them. Thus each event is forwarded not only to the GOM Engine to which it had been sent directly by a third party, but also to all engines that are
Proceedings of the Second IEEE International Conference on e-Science and Grid Computing (e-Science'06) 0-7695-2734-5/06 $20.00 © 2006
defined as depending on the information from this engine. Of course, it is up to these engines and their handlers how to deal with the change event. When a change is implemented, a handler that has been chosen to handle the event tries to modify the underlying ontology model. Finally, the knowledge base is validated by a DL reasoner attached to it. Figure 1 presents an overview of the registration process of some Grid resource by provision of an OWL-based description using concepts from an external ontology. The semantic description is passed to a special handler in GOM, responsible for analysing the description and performing mapping of this description to the internal ontologies managed by GOM using ontology alignment algorithms.
4. State-of-the-art in ontology alignment Knowledge evolution makes extensive use of ontology alignment methods. Ontology alignment is defined as the automated resolution of semantic correspondences between the elements of heterogenous systems without unifying them. This process involves finding all existing equivalence and similarity relations between concepts from the ontologies being aligned. When such relations between concepts are found, one ontology can be extended with elements from the other one in the process of ontology evolution [20]. Multiple measures [13, 3] can be used in order to assess similarity of ontological concepts and relations. They include lexical (based on comparing concepts’ names, possibly with use of some external lexicon for finding out relationships between them), structural (focusing on comparing the attributes and relationships of two entities in their ontologies) and extensive measures (various statistical measures applied to sets of instances which represent the concepts being compared). Similarity measures, used for finding corresponding concepts and relations, are building blocks for currently existing ontology alignment tools. When multiple similarity measures are combined, the algorithm for finding equivalent entities is more general and useful. Existing tools include, among others, COMA/COMA++ [2], OLA [6], FOAM [5]. COMA++ is intended to work not only as an ontology alignment tool, but can also act as a benchmark to evaluate the effectiveness of different matching algorithms. It includes multiple lexical (substring and n-gram similarity) and structural (comparison of the subclasses) similarity measures in a flexible way and facilitates the reuse of ontology mappings. The user has to configure the alignment process by choosing basic similarity measures and the way to combine them. The tool processes two given ontologies/schemas and a list of pairs of corresponding entities is returned. The OLA (OWL-Lite Alignment) system is designed as an environment for construction and manipulation of ontol-
ogy alignments. It uses lexical similarity measures, substring distance and WordNet based comparison of synsets, applied to the names, attributes and neighboring nodes of the entities being compared. The search for alignment is perceived as an optimization process which starts with computing local similarity. Subsequently, neighbor similarities are also computed and increase as a result of mutual influence. The alignment with the highest total similarity between the entities being aligned is sought, but the process is limited as the similarity value cannot exceed 1. FOAM uses a similar algorithm where a mapping found between concepts from two ontologies increases the similarity scores of their neighbours’ pairs and multiple similarity measures are used here in the course of finding corresponding concepts and relations. Interaction with the user has been minimized due to the use of machine learning techniques. The user may set the parameters of the alignment process manually or let it configure itself according to a given list of use cases; later the user is only consulted about doubtful concept mappings and not about results as such. What all these approaches have in common is their applicability to the general task of aligning two distinct ontologies to find as many corresponding entities as possible. As the following section shows, the problem we deal with in K-WfGrid is both more specific (GOM ontologies are specialized to facilitate the creation of workflows in a Grid environment and have not been destined to represent general knowledge in some domains) and more complex (not only mapping of concepts but also performing merges and extending the ontology is involved), thus calling for a different solution. Moreover, the fact that none of the existing tools aligns ontologies in a fully automated way, shows the complexity of the alignment problem.
5. Extension of domain ontologies during service registration The K-WfGrid environment, where workflows can be constructed using Grid services, is highly dynamic and the set of available services can change over time. As the system relies on the knowledge gathered in the Grid Organizational Memory for workflow creation, it is clear that registering a new service involves changes to this knowledge to make the service functional. More specifically, it is the service’s semantic description, expressed in an OWL-S schema, which needs to be added to the GOM Service Registry. This operation is straightforward as long as the service is described solely with the use of concepts already existing in one of the GOM ontologies. When concepts from external ontologies are used, all of them need to be either mapped onto existing GOM concepts or added to one of GOM domain ontologies without losing their substantial meaning. To find all possible concepts’ mappings, one of exist-
Proceedings of the Second IEEE International Conference on e-Science and Grid Computing (e-Science'06) 0-7695-2734-5/06 $20.00 © 2006
ing ontology alignment tools could be used. However, the scenario of knowledge extension in the case of GOM is different from typical situations where the mentioned tools are used. OWL-S service descriptions are highly structured and their references to external ontologies are isolated. This implies that all ’foreign’ concepts from one service description may be handled independently. Moreover, the Grid Organizational Memory is not a single ontology but a structured set of ontologies containing semantic information concerning different aspects of the system and different levels of granularity (see Section 3). New semantic entities might be added to GOM, but the changes should be as small as possible to avoid uncontrolled growth of its resources which could cause inconsistencies and maintenance problems. The user (usually a knowledge engineer who supervises the extension of GOM) may want to choose a certain mapping because of the ontology it refers to, possibly discarding mappings with higher similarity values. Such choice is necessary for the concepts which could not be mapped - the user has to determine which of multiple GOM ontologies is most suitable to incorporate the new concept together with its surrounding. Additionally, the final ontology changes should be supervised by the GOM administrator. As a result, a more selective and interactive approach to aligning and extending ontologies has been developed. We have adopted the idea that combining lexical and structural similarity increases the accuracy of concept mappings and that local similarity computation should be performed before taking the neighboring concepts and relations into account. Additionally, in order to protect GOM from uncontrolled changes, all mappings need to be accepted by the user and the knowledge update does not happen instantly but only upon the GOM’s administrator consent. The following sections present the ontology similarity measures used to perform the alignment (Section 5.1), the algorithm of ontology alignment (Section 5.2) and an example of the service registration process (Section 5.3).
5.1. Similarity measures Multiple similarity measures (see Section 4) can serve to assess the similarity of ontological concepts and relations. The selection of similarity assessment methods for the task described here is influenced by the characteristics of the Grid Organizational Memory and the language used for describing the services - OWL-S. Concepts in GOM ontologies are mainly compound nouns which makes the choice of the lexical token similarity measure reasonable. The highly structured OWL-S description can contain concepts from external ontologies only as isolated nodes, making the process of alignment easier, as it only refers to single concepts and not whole ontology subgraphs. Because of this, it might prove beneficial to use simple and fast lex-
ical similarity measures for initial mapping selection and then refine this selection with the use of structural similarity methods. In order to determine lexical similarity, a linear combination of token similarity and normalized edit distance is used. Computing token similarity involves splitting original words into sets of tokens and comparing these sets. This is suitable for the presented use case because concepts used in service descriptions are often long, compound nouns and can produce non-trivial sets of tokens. Similarity is computed with the use of the Dice coefficient: sim(S1 , S2 ) =
2 ∗ |A ∩ B| ; |A| + |B|
(1)
where A and B are sets of tokens which represent both concepts. Edit distance reflects the number of basic transformations Ntransf (replacement, insertion or deletion of character) which need to be made to transform one word into another . In order to be usable as a similarity measure, it is normalized by the length of the shorter word of the two: sim(A, B) =
min(|A|, |B|) − Ntransf ; min(|A|, |B|)
(2)
The computation of structural similarity, performed in the second step, uses the cosine weight which returns the similarity of two vectors representing the concepts of each candidate mapping. Each of these vectors contains not only attributes but also relations and neighboring nodes of the analyzed class. The more similar the vectors, the more elements they have in common and the greater the cosine of the angle between them, which means a greater similarity value.
search for mapping candidate pairs by means of computing lexical similarity for pairs containing the neighbors and GOM concepts. (c) For each of mapping candidate pairs we take into account the closest neighborhood (only direct neighbors) of both GOM and external concepts in their respective ontologies. First, we inspect these neighborhoods and check whether they contain any lexically similar concepts or relations. Subsequently, structural similarity is computed with the use of the cosine measure. 3. Mapping of concepts and extension of GOM: (a) Mapping candidate pairs for all external concepts are sorted according to their similarity values and presented to the user. The user chooses acceptable mappings. (b) For each accepted candidate pair, the external concept is mapped onto the corresponding GOM concept. Its neighborhood is introduced to GOM by an attempt at concept mapping (using similarity methods from step 2.) or by direct addition of new concepts. (c) If some external concept has not been mapped to any GOM concept, it is added to GOM together with its module (subgraph containing the concept with its subclasses, superclasses, direct neighbors and instances) and the user chooses the proper domain ontology for this concept. 4. Finally, external references in the OWL-S description are replaced by references to GOM and change description files are created. If the GOM administrator approves the changes, the service can be registered.
5.2. Alignment algorithm 5.3. Sample alignment process Taking into consideration the preconditions stated in the previous section, the following algorithm for handling ontology extension during registration of services has been developed. 1. The OWL-S description of the service which needs to be registered with the Grid Organizational Memory is scanned to identify external concepts. 2. Computing a mapping candidate pair set: (a) For each pair of concepts (external concept, GOM concept), if the similarity score is greater than the minimal lexical similarity threshold, the pair becomes a mapping candidate pair. (b) For every external concept for which (a) is not fulfiled, we find the concept neighborhood and
Proceedings of the Second IEEE International Conference on e-Science and Grid Computing (e-Science'06) 0-7695-2734-5/06 $20.00 © 2006
The algorithm described above has been implemented in the Ontology Alignment Tool (OnTal) which is available as a portlet from the K-WfGrid portal. To demonstrate it, we can look at a sample service description from the Coordinated Traffic Management domain (one of the three KWfGrid pilot applications) which requires registration in GOM. It is a traffic flow data generator service which produces a data file concerning the traffic in a given part of a city. The input and output of the service are described with concepts from outside GOM ontologies, namely ’CityBlock’ [19] and ’TrafficData’ [18]. The tool identifies them as external concepts and proposes an ordered list of mapping candidates. The user can either accept or reject the displayed mapping; they can also choose another suggestion from the list.
Figure 2. Mapping of ’CityBlock’ and ’CityZone’; their lexical similarity is 0.5 and structural similarity is 0.27.
Figure 3. Because of the previous mapping, additional mapping of superclasses of ’CityBlock’ and ’CityZone’ with a positive structural similarity value is found: ’LandArea’ and ’UrbanRegion’.
Proceedings of the Second IEEE International Conference on e-Science and Grid Computing (e-Science'06) 0-7695-2734-5/06 $20.00 © 2006
Let’s suppose that the user confirms the seemingly sensible mapping ’CityBlock’ - ’CityZone’ as we can see in Figure 2. Lexical and structural similarity values between the displayed concepts are shown at the bottom of the portlet. According to the algorithm, the equivalence of ’CityBlock’ and ’CityZone’ increases the similarity of their superclasses, ’LandArea’ and ’UrbanRegion’ which now have a positive structural similarity and are presented to the user as mapping candidates shown in Figure 3. It is likely that the user will confirm that they can be mapped, because in the case of the CTM Application Ontology which describes the general aspects of city traffic management, the term ’LandArea’ can be applied to a region of the city; namely to an ’UrbanRegion’. Consequently, relevant GOM change description files are created. Once they are accepted by the GOM administrator, the service description, with external concepts replaced by their GOM counterparts can be added to the Service Registry. The service description in this example refers to an existing traffic data generator service which has already been used in automated construction of workflows. This shows that presented approach to ontology alignment works well with moderately specific concepts which can occur in reallife service descriptions.
6. Summary and conclusions
In the paper we presented an approach to semiautomated knowledge extension which enables creation of new workflows. The developed tool support knowledge evolution that is used within the K-Wf Grid project for automatic workflow construction. Knowledge extension is applied to a particular use scenario of registering new services in Grid environment. When a service described by means of an external ontology is registered, the domain knowledge gathered in the system’s ontologies is extended. This influences the structure of the Domain Ontologies and the sets of instances gathered in Individuals Registries. The algorithm of knowledge extension, implemented with the use of ontology alignment techniques, allows for selective addition of new concepts to the knowledge base. By mapping most external concepts to those already existing in the Grid Organizational Memory and adding the rest to GOM in a limited way, knowledge consistency and safety of inference are preserved. As the system’s knowledge about registered services expands, more complex and more effective workflows can be built, thus leveraging the quality of automated workflow construction.
Proceedings of the Second IEEE International Conference on e-Science and Grid Computing (e-Science'06) 0-7695-2734-5/06 $20.00 © 2006
Acknowledgements This research has been done in the framework of EU IST2004-511385 K-Wf Grid project. The authors would like to thank the whole project consortium for remarks and feedback during the ontology development process. AGH University of Science and Technology grant is also acknowledged.
References [1] Askalon project website. http://dps.uibk.ac.at/askalon/. [2] D. Aumuller, H. Do, S. Massmann, and E.Rahm. Schema and ontology matching with COMA++. In Proceedings of the 2005 ACM SIGMOD international conference on Management of data, pages 906 – 908, Baltimore, US, 2005. ACM Press. [3] A. Bernstein, E. Kaufmann, C. Buerki, and M. Klein. How Similar Is It? Towards Personalized Similarity Measures in Ontologies. In Wirtschaftsinformatik, pages 1347 – 1366, 2005. [4] BPEL4WS. http://www-106.ibm.com/developerworks/library/ws-bpel/. [5] M. Ehrig and Y. Sure. FOAM - Framework for Ontology Alignment and Mapping; Results of the Ontology Alignment Initiative. In Proceedings of the Workshop on Integrating Ontologies, pages 72 – 76. CEUR-WS.org, October 2005. [6] J. Euzenat, D. Loup, M. Touzani, and P. Valtchev. Ontology Alignment with Ola. In 3rd EON Workshop, 3rd Intl. Semantic Web Conference, pages 60–69, Hiroshima, JP, November 2004. [7] T. Fahringer, S. Pllana, and A. Villazon. A-GWL: Abstract Grid Workflow Language. In Proceedings of the ICCS 2004 conference, volume 3038 of LNCS, pages 42 – 49. Springer, 2004. [8] T. Gubala, M. Bubak, M. Malawski, and K. Rycerz. Semantic-based Grid Workflow Composition. In Proc. of 6-th Intl. Conf. on Parallel Processing and Applied Mathematics PPAM’2005, pages 651 – 658. Springer, 2005. [9] K-Wf Grid project website. http://www.kwfgrid.net. [10] K. Krawczyk, R. Słota, M. Majewska, B. Kryza, and J. Kitowski. Grid organizational memory for knowledge management for grid environment. In Proceedings of 4th Cracow Grid Workshop - CGW’04, pages 109–115. ACC CyfronetAGH, 2005. [11] B. Kryza, M. Majewska, R. Słota, and J. Kitowski. Unifying grid metadata representations through ontologies. In R. Wyrzykowski, J. Dongarra, M. Paprzycki, and J. Wasniewski, editors, Proc. of the 6-th Intl. Conf. on Parallel Processing and Applied Mathematics PPAM’2005, volume 3911 of LNCS, pages 683–690. Czestochowa University of Technology, Poland, Springer, 2006. [12] B. Ludascher, I. Altintas, C. Berkley, D. Higgins, E. Jaeger, M. Jones, E. Lee, J. Tao, and Y. Zhao. Scientific workflow management and the KEPLER system. Concurrency and Computation: Practice and Experience, Special Issue on Scientific Workflows, 2005.
[13] A. Maedche and S. Staab. Measuring similarity between ontologies. In Proc. of the European Conference on Knowledge Acquisition and Management - EKAW-2002, volume 2473 of LNCS/LNAI, pages 251–263, Madrid, Spain, October 2002. Springer. [14] M. Majewska, B. Kryza, J. Pieczykolan, R. Słota, and J. Kitowski. Grid Organizational Memory - Provision HighLevel Grid Abstraction Layer Supported by Ontology Alignment. In FGCS. Elsevier, 2006. in press. [15] D. Martin et al. OWL-S: Semantic Markup for Web Services, http://www.daml.org/services/owl-s/1.1/overview/. [16] A. Morajko, E. Fernandez, A. Fernandez, E. Heymann, and M. Senar. Workflow Management in the CrossGrid Project. In Proceedings of the EGC 2005 conference, volume 3740 of LNCS, pages 424 – 433. Springer, 2005. [17] T. Oinn, M. J. Addis, J. Ferris, D. J. Marvin, M. Senger, T. Carver, M. Greenwood, K. Glover, M. R. Pocock, A. Wipat, and P. Li. Taverna: a Tool for the Composition and Enactment of Bioinformatics Workflows. Bioinformatics, 20(17):3045 – 3054, 2004. [18] Pellucid CdG Ontology. http://isegserv.itd.rl.ac.uk/pellucid/ontologies/cdg/. [19] Reliant Middle Level Ontology. http://reliant.teknowledge.com/DAML/. [20] L. Stojanovic, A. Maedche, B. Motik, and N. Stojanovic. User-driven ontology evolution management. In Proc. of European Conf. Knowledge Eng. and Management (EKAW 2002), pages 285 – 300. Springer, 2002. [21] Triana project website. http://www.trianacode.org/. [22] Unicore project website. http://www.unicore.org. [23] VDS - The GriPhyN Virtual Data System. http://vds.uchicago.edu/twiki/bin/view/VDSWeb/WebMain. Former Chimera project, currently including also Pegasus. [24] G. von Laszewski and M. Hategan. Java CoG Kit Karajan/Gridant Workflow Guide . http://www.cogkit.org.
Proceedings of the Second IEEE International Conference on e-Science and Grid Computing (e-Science'06) 0-7695-2734-5/06 $20.00 © 2006