Download WSRF2OWLS User Manual
Transcript
WSRF2OWLS USER MANUAL WP4 Document Filename: KWF-WP4-IISAS-CYF-v0.1-PrototypeUserManualWSRF2OWLS Work package: WP4 Partner(s): CYFRONET Lead Partner: IISAS Document classification: CONFIDENTIAL Abstract: This documentation presents a framework, which can semi-automatically generate the OWL-S descriptions for both stateful and stateless services based on the Web Service Description Language (WSDL) and corresponding annotations. Such functionality is inevitable in the grid environment hosting a vast number of services, which have to be semantically described in order to enable automated discovery, composition and invocation. KWF-WP4-IISASWSRF2OWLSUserManual.doc CONFIDENTIAL 1 / 12 K-WfGrid WSRF2OWLS USER MANUAL IST-2002-511385 Delivery Slip Name Partner Date From Marian Babik IISAS 30/12/2005 Verified by Piotr Nowakowski CYFRONET 07/01/2006 Approved by Steffen Unger FIRST 12/01/2006 Signature Document Log Version Date Summary of changes Author 0.1 10/11/2005 First version Marian Babik 0.2 04/12/2005 Second version Marian Babik 1.0 30/12/2005 Reviewed version Marian Babik KWF-WP4-IISASWSRF2OWLSUserManual.doc CONFIDENTIAL 2 / 12 K-WfGrid WSRF2OWLS USER MANUAL IST-2002-511385 CONTENTS 1. COPYRIGHT NOTICE ................................................................................................................................... 4 2. INTRODUCTION............................................................................................................................................. 5 2.1. ABBREVIATIONS AND ACRONYMS ................................................................................................................ 5 3. PROTOTYPE USAGE ..................................................................................................................................... 6 3.1. RUNNING THE PROTOTYPE............................................................................................................................ 6 3.1.1. Operating Requirements....................................................................................................................... 6 3.1.2. Step-by-Step User Setup ....................................................................................................................... 6 3.2. BASIC OPERATION ........................................................................................................................................ 7 3.3. ADVANCED FEATURES .................................................................................................................................. 8 3.4. KNOWN PROBLEMS....................................................................................................................................... 8 4. INTERFACE REFERENCE GUIDE.............................................................................................................. 9 5. CONTACT INFORMATION AND CREDITS............................................................................................ 10 6. THE EDG LICENSE AGREEMENT ........................................................................................................... 11 7. REFERENCES................................................................................................................................................ 12 KWF-WP4-IISASWSRF2OWLSUserManual.doc CONFIDENTIAL 3 / 12 K-WfGrid WSRF2OWLS USER MANUAL IST-2002-511385 1. COPYRIGHT NOTICE Copyright (c) 2005 by IISAS and K-Wf Grid. All rights reserved. Use of this product is subject to the terms and licenses stated in the EDG license agreement. Please refer to Section 6 for details. This research is partly funded by the European Commission IST-2002-511385 Project “K-WfGrid”. KWF-WP4-IISASWSRF2OWLSUserManual.doc CONFIDENTIAL 4 / 12 K-WfGrid WSRF2OWLS USER MANUAL IST-2002-511385 2. INTRODUCTION Web Service Resource Framework (WSRF) is a recent effort of the grid community to facilitate modelling of the stateful services. Design and development of the WSRF service based systems is quite common and there are several emerging WS initiatives, which try to automate the process of discovery, composition and invocation of such services. The semantic web services are a typical example, showing the potential of how ontological modelling can improve the shortcomings of the service oriented computing. One of the major obstacles in the process is the development of the ontologies, which describe web and grid services. Although, there are numerous standards for modelling semantic services, there are very few frameworks and tools, which can help automate the process of generating the semantic descriptions of services. This documentation presents a framework, which can semi-automatically generate the OWL-S descriptions for both stateful and stateless services based on the Web Service Description Language (WSDL) and corresponding annotations. Such functionality is inevitable in the grid environment hosting a vast number of services, which have to be semantically described in order to enable automated discovery, composition and invocation. 2.1. ABBREVIATIONS AND ACRONYMS WSRF Web Service Resource Framework WSDL Web Service Description Language WS Web Service OWL Web Ontology Language OWL-S Upper Ontology for Web Services KWF-WP4-IISASWSRF2OWLSUserManual.doc CONFIDENTIAL 5 / 12 K-WfGrid WSRF2OWLS USER MANUAL IST-2002-511385 3. PROTOTYPE USAGE The main goal for the WSRF2OWL-S development was the necessity to address the process of automated generation of semantic descriptions for web and grid services. Such functionality is crucial in order to support pilot applications and effective development cycle, where the descriptions of the services can change regularly. The latest version of the tool has following features: • OWL-S 1.1 support [1] • WSRF Services support • Configuration supports inputs/outputs/precondition/effects • Integrates SimpleEffects and Preconditions developed by the GOM • Sample configuration and corresponding OWL-S descriptions for the Flood-Forecasting pilot application • Automatic parsing of the WSDL and generation of the WSDL part of the configuration • Extensively tested on Linux • DataInputObjects, DataOutputObjects support (also format, content and storage constraints) • support for OWL imports 3.1. RUNNING THE PROTOTYPE 3.1.1. Operating Requirements WSRF2OWL-S is a standalone tool, which can be used independently from the other software developed by the K-Wf Grid. The tool has no local hardware requirements and is only depends on the availability of the Java Runtime Environment (JRE) version 1.4 or above and third-party libraries including: • OWL-S API from Mindswap laboratory [2] • XML APIs (Xerces) [3] • Jena API [4] The tool is distributed with all the necessary libraries and can be run on any JRE enabled computer. 3.1.2. Step-by-Step User Setup WSRF2OWL-S is available in the K-Wf Grid's CVS system in the GOM directory (wsrf2owl-s module). CVS also contains necessary libraries and launcher for the tool. A standard procedure for checking out the tool from cvs and setting up the environment is : Bash# cvs -d :pserver:[email protected]:/home/cvs co kwfgrid/gom/wsrf2owls Bash# cd kwfgrid/gom/wsrf2owls/ Then you will need to setup the location of your java distribution, e.g. (in BASH): Bash# export JAVA_HOME=/path_to_your_java/j2sdk1.4.2_02 Finally you can try to run the tool: KWF-WP4-IISASWSRF2OWLSUserManual.doc CONFIDENTIAL 6 / 12 K-WfGrid WSRF2OWLS USER MANUAL IST-2002-511385 Bash# ./wsrf2owl-s.sh –help If everything goes well, you should be able to see this output: WSRF2OWL-S tool by [email protected] Usage: WSRF2OWLS [-i input_uri e.g. file:/home.../x_service.wsdl] [-o output_dir] [-ns owl-s_namespace] [-help this_help] [-p properties_file] [-n service_name optional] [-d dump_methods … given services into properties_file] [-c process imports] 3.2. BASIC OPERATION In order to explain the configuration and owl-s conversion we will use a sample WSDL file located at http://www.xmethods.net/sd/2001/BNQuoteService.wsdl. Barnes & Nobles Price Finder is a simple service, which returns the price of a book as advertised in the Barnes and Nobles web site given the ISBN Number. A sample configuration file for the service is (sample.properties): #Thu Sep 29 12:33:22 CEST 2005 BNQuoteService.getPrice.return=http://www.mindswap.org/2004/owls/concepts.owl#Price BNQuoteService.getPrice.isbn=http://purl.oclc.org/NET/nknouf/ns/bibtex#Book The configuration file is just a simple java Properties file. The format for the mapping is: WSDLServiceName.WSDLOperation.WSDLInput/Output = URL_of_OWL_concept The left hand side provides the description of the actual WSDL input or output. The right hand side is an URL of the corresponding ontological concept (or it can be a more complex structure if it is necessary to map the WSDL Input to more complex ontological concepts). The WSDL part (i.e. WSDLServiceName.WSDLOperation, etc.) can be generated by running: Bash#./wsrf2owl-s.sh –i http://www.xmethods.net/sd/2001/BNQuoteService.wsdl -ns "http://kwfgrid.net/dummy" -p sample.properties -d This will create the sample.properties file containing following WSDL information: #Thu Sep 29 12:56:20 CEST 2005 BNQuoteService.getPrice.return= BNQuoteService.getPrice.isbn= You can then manually type in the concepts, which these inputs/outputs will point to as was already shown. You can then generate the OWL-S by running: ./wsrf2owl-s.sh -i http://www.xmethods.net/sd/2001/BNQuoteService.wsdl -ns "http://kwfgrid.net/sample.owl" –p sample.properties -o /output_dir/ Since sometimes you will need more then just simple input/output concepts mapping, you can further specify effects and preconditions as follows: BNQuoteService.getPrice.return=effect| http://url.to.domain.ontology/sample.owl#hasPrice BNQuoteService.getPrice.isbn=http://purl.oclc.org/NET/nknouf/ns/bibtex#Book, condition|http://url.to.domain.ontology/sample.owl#hasISBN Further examples can be found in the file ffsc.properties, which is part of the distribution. KWF-WP4-IISASWSRF2OWLSUserManual.doc CONFIDENTIAL 7 / 12 K-WfGrid WSRF2OWLS USER MANUAL IST-2002-511385 3.3. ADVANCED FEATURES Additional feature cover the areas of specific ontological concepts such as DataObjectInputs, DataObjectOutputs, etc. Support for the DataInputObjects and DataOutputObjects (see GOM documentation for more details) has been added to the current version of the tool. A sample configuration for the Coordinated Traffic Management service called VISSIMProxy (http://zeus72.cyf-kr.edu.pl/CTM01/services/VISSIMProxy?wsdl): #Mon Oct 03 13:21:13 CEST 2005 VISSIMProxyService.runSimulation.params=http://gom.kwfgrid.net/gom/ontology/ DomainApplicationOntology/CTM#VISSIMSimulationParameters VISSIMProxyService.runSimulation.traffic_flow_data_url=dataobject| {http://gom.kwfgrid.net/ontology/ServiceOntology#URL, format|http://gom.kwfgrid.net/gom/ontology/DomainDataOntology/CTM#Excel, storage|http://gom.kwfgrid.net/ontology/DataOntology#RemoteFile, content|http://gom.kwfgrid.net/gom/ontology/DomainDataOntology/CTM# TrafficFlowData} VISSIMProxyService.runSimulation.runSimulationReturn= dataobject|{>>http://gom.kwfgrid.net/ontology/ServiceOntology#URL} Format, storage and content constraints are optional, however since DataObjects have nested constraints, the configuration is bit different then in previous cases. You can find sample2.properties for VISSIMProxy in the distributed package. The current version also supports OWL imports, e.g. for a given concept http://gom.kwfgrid.net/ gom/ontology/DomainDataOntology/CTM#Excel it will load the ontology http://gom.kwfgrid.net/ gom/ontology/DomainDataOntology/CTM and will put it into the OWL imports in the OWL-S file, thus producing valid OWL-S. This however means that this ontology and its concepts has to be valid and available online, otherwise an error or timeout will occur. If for the given ontology the referenced concept is missing, a fake one will be created in the OWL-S. This will result in the inconsistent GOM, so please, make sure you remove all the fake concepts before loading the ontology into the GOM. A sample session with imports enabled is shown below: [bb@localhost wsrf2owls]$ sh wsrf2owl-s.sh -i http://zeus72.cyf-kr.edu.pl/ CTM01/services/VISSIMProxy?wsdl -ns "http://dummy.org/test.owl" -p sample2.properties -o . –c - Unable to find required classes (javax.activation.DataHandler and javax.mail.internet. MimeMultipart). Attachment support is disabled. Importing:http://gom.kwfgrid.net/gom/ontology/DomainApplicationOntology/CTM Importing: >>http://gom.kwfgrid.net/ontology/ServiceOntology Importing: >>http://gom.kwfgrid.net/gom/ontology/DomainDataOntology/CTM Importing: >>http://gom.kwfgrid.net/ontology/DataOntology 3.4. KNOWN PROBLEMS There are two known problems in the current implementation: • WSRF2OWL-S was not tested under Windows, but should run with appropriate launcher • OWL imports are turned off by default, since loading each referenced ontology might not be always desirable KWF-WP4-IISASWSRF2OWLSUserManual.doc CONFIDENTIAL 8 / 12 K-WfGrid WSRF2OWLS USER MANUAL IST-2002-511385 4. INTERFACE REFERENCE GUIDE The command line tool WSRF2OWL-S uses the following syntax: WSRF2OWL-S tool Usage: WSRF2OWLS [-i input_uri] [-o output_dir] [-ns owl-s_namespace] [-help this_help] [-p properties_file] [-n service_name] [-d dump_methods] [-c process imports] Where: -i URL of the WSDL location (e.g. http://www.xmethods.net/ BNQuoteService.wsdl) -o directory, where the final OWL-S file should be saved -ns URI of the OWL-S namespace -p location of the configuration file (properties file) -n service name, if different from the WSDL service name -d dump the WSDL methods/operations to the properties file and exit KWF-WP4-IISASWSRF2OWLSUserManual.doc CONFIDENTIAL 9 / 12 K-WfGrid WSRF2OWLS USER MANUAL IST-2002-511385 5. CONTACT INFORMATION AND CREDITS [email protected] [email protected] KWF-WP4-IISASWSRF2OWLSUserManual.doc CONFIDENTIAL 10 / 12 K-WfGrid WSRF2OWLS USER MANUAL IST-2002-511385 6. THE EDG LICENSE AGREEMENT Copyright (c) 2004 K-WfGrid. All rights reserved. This software includes voluntary contributions made to K-WfGrid. For more information on KWfGrid, please see http://www.kwfgrid.net. Installation, use, reproduction, display, modification and redistribution of this software, with or without modification, in source and binary forms, are permitted. Any exercise of rights under this license by you or your sub-licensees is subject to the following conditions: 1. Redistributions of this software, with or without modification, must reproduce the above copyright notice and the above license statement as well as this list of conditions, in the software, the user documentation and any other materials provided with the software. 2. The user documentation, if any, included with a redistribution, must include the following notice: “This product includes software developed by K-WfGrid (www.kwfgrid.net).” Alternatively, if that is where third-party acknowledgments normally appear, this acknowledgment must be reproduced in the software itself. 3. The names “K-WfGrid” and “Knowledge Workflow Grid” may not be used to endorse or promote software, or products derived there from, except with prior written permission by [email protected]. 4. You are under no obligation to provide anyone with any bug fixes, patches, upgrades or other modifications, enhancements or derivatives of the features, functionality or performance of this software that you may develop. However, if you publish or distribute your modifications, enhancements or derivative works without contemporaneously requiring users to enter into a separate written license agreement, then you are deemed to have granted participants in K-WfGrid a worldwide, non-exclusive, royalty-free, perpetual license to install, use, reproduce, display, modify, redistribute and sub-license your modifications, enhancements or derivative works, whether in binary or source code form, under the license conditions stated in this list of conditions. 5. DISCLAIMER THIS SOFTWARE IS PROVIDED BY K-WfGrid AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, OF SATISFACTORY QUALITY, AND FITNESS FOR A PARTICULAR PURPOSE OR USE ARE DISCLAIMED. K-WfGrid AND CONTRIBUTORS MAKE NO REPRESENTATION THAT THE SOFTWARE, MODIFICATIONS, ENHANCEMENTS OR DERIVATIVE WORKS THEREOF, WILL NOT INFRINGE ANY PATENT, COPYRIGHT, TRADE SECRET OR OTHER PROPRIETARY RIGHT. 6. LIMITATION OF LIABILITY K-WfGrid AND CONTRIBUTORS SHALL HAVE NO LIABILITY TO LICENSEE OR OTHER PERSONS FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, CONSEQUENTIAL, EXEMPLARY, OR PUNITIVE DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT LIMITATION, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, LOSS OF USE, DATA OR PROFITS, OR BUSINESS INTERRUPTION, HOWEVER CAUSED AND ON ANY THEORY OF CONTRACT, WARRANTY, TORT (INCLUDING NEGLIGENCE), PRODUCT LIABILITY OR OTHERWISE, ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. KWF-WP4-IISASWSRF2OWLSUserManual.doc CONFIDENTIAL 11 / 12 K-WfGrid WSRF2OWLS USER MANUAL IST-2002-511385 7. REFERENCES [1] Ankolenkar, A. , et.al., OWL-S: Semantic Markup for Web Services, http://www.daml.org/services/owl-s/1.1 [2] Mindswap, http://www.mindswap.org/2004/owl-s/api/ [3] XML APIs, Xerces, http://xerces.apache.org/ [4] Jena Semantic Web Framework, http://jena.sourceforge.net KWF-WP4-IISASWSRF2OWLSUserManual.doc CONFIDENTIAL 12 / 12