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