|
WSMX is an execution environment which enables discovery, selection, mediation, invocation and interoperation of Semantic Web services (SWS). WSMX is based on the conceptual model provided by WSMO, being at the same time a reference implementation of it.
All the information related to the WSMX can be found on http://sourceforge.net/projects/wsmx , where you can download the latest release and record bugs and feature requests you may have. Detailed description of the prototype and an installation guide from the DIP project(http://dip.semanticweb.org) can be found under: http://see.deri.org/matt/wsmx/WSMX_DIP_InstallationGuidelines_V4.doc
The team welcomes any feedback you may have either via the WSMX site or via email.
General Changes Main changes pertain to the improvements introduced in the functionality provided by the components. This version comes with multiple Discovery Engines (keyword based, functional, instance-based, Description Logic-based, QoS-based from EPFL), mature Choreography Engine, enhanced Orchestration Engine, Data Mediation, configurable Resource Manager and various facilities making both user's and developer's work with WSMX more convenient. WSMX has been successfully applied to various use-cases driving development of the components and resulting in significantly shortened time required to use it in any domain or use-case. WSMX ComponentsDiscovery Component
Substantial development has been carried out on the Discovery component. There are currently multiple discovery engines. The user via non-functional properties of its Goal can specify which Discovery Engine should be used for his\her request. Additionally, WSMX configuration file allows to disable/enable/configure discovery engines.
Adina Sirbu
A lightweight discovery that engine considers only the precondition part of the service capability and is able to handle single disjunction in the logic formulas. This discovery uses MINS reasoner. - Description Logic based Discovery
Holger Lausen Postconditions and effects are seen as conjunctively describing an object that describes the service as in http://www.wsmo.org/2004/d5/d5.1 . A dedicated ontology is used to annotate the list of discovered Web services (i.e. type of match - set based DL, and degree of match like: exact, subsumes, plug-in, intersect). Background ontologies of both goal and web service are considered. Validation is performed on (1) expressions in goal, (2) expressions in Web service and (3) all referenced ontologies. Only valid WSML DL ontologies/expressions are accepted. Underlying reasoner is Pellet, but can be configured to be KAON2 as well.
- Instance-based Disc. with service contracting
Maciej Zaremba This engine can be utilized for handling instance level service description (e.g. like price which depends on the actual service instance) and can dynamically fetch additional information during the discovery process via service contracting interface integrating dynamically obtained information into the reasoning context (ref. http://sws-challenge.org/2006/paperathens/DERI-sws-challenge-3.pdf ). This discovery component has been successfully utilized in SWS-Challenge Discovery scenario. It uses KAON2 reasoner.
EPFL team
This engine has been provided by EPFL within the course of the DIP project. It is organized as a framework which matches specific QoS requirements of the user with provided Semantic Web services. It contains a test-suite which run with WSML-Flight reasoner. General, approach to QoS-discovery is based on the upper level ontology which is inherited in domain specific ontologies. Additional functionality supporting ranking of Web services and updates of QoS parameters via user reports are also provided. Component for the scalability reasons uses Derby DBMS. More details on the component can be found at: http://lsirpeople.epfl.ch/lhvu/download/qosdisc . It uses the KAON2 reasoner.
Ioan Toma
It has been thoroughly tested, some minor bugs have been removed and it was successfully applied to the use-cases.
Communication ManagerMaciej Zaremba, Matthew Moran It has now full support for SOAP Headers enabling communication with the Web services using this part of the SOAP messages. Newly introduced HTTP proxy-server settings can be also specified from the core configuration file level.
Data MediatorAdrian Mocan
Data Mediator is a run-time mediator engine able to perform instance transformation based on a set of mappings between the source and the target ontologies. The ontologies are WSML ontologies and the mappings are specified in the Abstract Mapping Language (http://sourceforge.net/projects/mediation). The mediator grounds the Abstract Mapping Language (AML) statements to WSML Rule and uses the WSML 2Reasoner framework and MINS as an underlying reasoning engine to execute the rules. Together with the component there is a small graphical interface (TestRunTimeDataMediator) which allows for testing of the component. It takes as input the source and the target ontology files, an ontology file containing the (source) instances to be mediated and it returns back the mediated (target) instances.
WSMX CoreThomas Haselwanter, Maciej Zaremba It currently provides Web service interfaces to WSMX (internally hosted by Jetty web application server) facilitating communication with WSMX. Its now possible to configure global aspects of WSMX using global level configuration file. Global level configuration is propagated by the WSMX core downwards to the WSMX components. WSMX supports ActiveMQ-based monitoring and also simple dialog windows-based monitor, both configurable from the global configuration file.
Choreography EngineThomas Haselwanter The choreography engine was updated to work with the latest model that uses reusable rule constructs. Fixed a bug where camel-cased variable names with common prefixes could be considered equal under certain circumstances when in fact they where not. Namespace cloning. More robust binding. Deletion rules are handled in-situ now. Fixed a bug where the engine would sometimes destructively initialize it's own state. Controlled subsets are evaluated less strictly. Component has reached quite stable level and has been utilized in several SWS execution scenarios.
Orchestration EngineThomas Haselwanter The orchestration engine is based on a new version of the orchestration language described in WSMO D15.1. In particular we have syntactical extensions for referencable performances, goals and mediators. In addition to orchestrating service as was previously possible, this allows the engine to orchestrate goals, and also to dataflow between different goals or service with mediators. In fact through the trough application of performances the language promotes the usage of mediators as the default mechanism to realize dataflow between services and goals. The engine works on a pure ontological level, and executes rules with the help of a reasoner. Actual invokers, mediators and goal resolvers are external to the orchestration engine and need to be connected. This can happen in the form of plug-ins to the engine, or via the execution semantics of WSMX.
Resource ManagerMaciej Zaremba
Its functionality has been fully exposed as a Web service exposing its functionality to the external parties (e.g. WSMT, WSMO Studio, IRS-III, others). WSMO Entities (Ontologies, Mediators, Goals and SWS) are loaded on the start-up according to the directories specified in the configuration file WSMX ClientMaciej Zaremba Newly introduced library which can be incorporated into any software communicating with WSMX providing set of useful methods allowing to consume WSMX functionality via its Web service interface. It is successfully used by WSMT, IRS-III and SUPER SBPEE for handling communication with WSMX.
WSMX DebuggingMaciej Zaremba
Special standalone tests reflecting server mode when running WSMX Execution Semantics has been provided. AchieveGoal(.) can be tested in preconfigured settings. It is especially useful during components development and applying use-cases to WSMX-based execution substantially facilitating code debugging. For example for convenient debugging of AchieveGoal(...) Execution Semantics this class can be used: ie.deri.wsmx.choreography.unittest.main.ChoreographyAndDiscoveryTest
Use-Casesentire WSMX Team Number of the use-cases where WSMX has been applied include:
- SWS-Challenge Mediation scenario - http://sws-challenge.org (semantic integration of the Rosetta Net client with backend, proprietary systems),
- SWS-Challenge Discovery scenario (dynamic discovery of shipper based on instance level criteria - instance-based discovery),
- Integration with IRS-III on the time format mediation,
- DIP eBanking QoS-enabled service discovery and service execution,
- DIP travelling scenario - functional discovery
- Infrawebs travelling scenario - mainly utilizing Choreography Engine
Many thanks to entire WSMX, WSMO and WSML teams for their hard work and many valuable comments. Special thanks goes to Thomas Haselwanter for his commitment and a lot of hard work done for WSMX.
|