Presentation on theme: " Copyright 2005 Digital Enterprise Research Institute. All rights reserved. www.deri.org The Web Services Modeling Toolkit Mick Kerrigan."— Presentation transcript:
Copyright 2005 Digital Enterprise Research Institute. All rights reserved. www.deri.org The Web Services Modeling Toolkit Mick Kerrigan
16/02/20042 Overview Why is a toolkit needed? Problems with tool development. Aim of the WSMT WSMT Architecture Next Steps Summary
16/02/20043 Why is a toolkit needed? Research in semantic web is producing new technologies. Need to make these technologies accessible to users. Need to encourage third parties to develop tools. Current tools are not centralized and do not have a standard look and feel. Technologies are adopted because of the ease with which they can be applied.
16/02/20044 Why is a toolkit needed? V0.90 of RSS used RDF, RDF syntax was dropped in V0.91: “The structure of an RDF file is very precise and must conform to the RDF data model in order to be valid. This is not easily human-understandable and can make it difficult to create useful RDF files. The second is that few tools are available for RDF generation, validation and processing. For these reasons, we have decided to go with a standard XML approach.” - Dan Libby, Netscape – RSS v0.91 Spec
16/02/20045 What we don’t want to see! “The structure of a WSML file is very precise and must conform to the WSMO data model in order to be valid. This is not easily human-understandable and can make it difficult to create useful Ontologies. The second is that few tools are available for Ontology generation, validation and processing. For these reasons, we have decided to go with OWL.” – W3C It is vital for us to create useful tools which apply our research, so we don’t see this!
16/02/20046 Issues with Tool Development Traditional development of tools involved using platform specific languages e.g. Visual Basic. Window managers position objects at a specific x, y co- ordinate on the screen. Introduction of Java and its Layout managers solves these issues but introduces more. Large overhead for application creation. –Executables –Localization –Class paths It is often difficult to add new tools to a Graphical toolkit.
16/02/20047 Aim of the WSMT To provide a framework for rapid creation and deployment of homogenous tools for semantic web services. –Reduces application overhead –Provide common reusable functionality –Allow new tools to be added dynamically –Encourages third party creation of tools –Centralizes the tools needed by semantic web users
16/02/20048 WSMT Architecture Launcher Core Plugin 1 Plugin n Plugin Descriptions JAR Libraries …. Dynamic Class Loader
16/02/20049 WSMT Architecture - Launcher For standalone applications class path needs to be defined either in the manifest or on the command line. Can use scripting on Linux, not possible on windows. Launcher takes a library path as argument and builds a class loader, which includes all core, plugin, and third party libraries. For a plugin to be made available all compiled-source and any libraries it is dependant on must be put in the library folder of the installation. The core is launched from this class loader.
16/02/200410 WSMT Architecture Launcher Core Plugin 1 Plugin n Plugin Descriptions JAR Libraries …. Dynamic Class Loader
16/02/200411 WSMT Architecture – Core The job of the core is to provide the glue code for the plugins. The core provides the main application frame, the menu bar, toolbar* and configurations for localisation. The core is also responsible for settings the look and feel up correctly. The core detects the plugins that are available using the plugin description files and uses reflection to instantiate them.
16/02/200412 WSMT Architecture – Plugin Descriptions Plugin description files provide information about a given plugin, such as name, version, authors*, WSMT version*, Java version* and plugin classname. wsmleditor 0.1b ie.deri.wsmtool.wsmleditor.WSMLEditorPlugin
16/02/200413 WSMT Architecture Launcher Core Plugin 1 Plugin n Plugin Descriptions JAR Libraries …. Dynamic Class Loader
16/02/200414 WSMT Architecture – Plugins A plugin is a panel which can be displayed in the main frame created by the core. The plugin is initialised with information for configuring localisation and where to load its configuration files. The plugin can also contribute to the menu bar and toolbar of the application using implemented interfaces. Currently one instance of each installed plugin is available in a tabbed group. If a plugin has a need for external, these files can be placed in a directory in the application folder with a name matching that of the plugin-id.
16/02/200418 WSMT Architecture Launcher Core Plugin 1 Plugin n Plugin Descriptions JAR Libraries …. Dynamic Class Loader
16/02/200419 WSMT Architecture – Packaging WSMT is distributed as a windows executable, it provides its own JRE.
16/02/200420 WSMT Architecture – Packaging Users can make decisions regarding installation folders and which plugins to install.
16/02/200421 WSMT Architecture Launcher Core Plugin 1 Plugin n Plugin Descriptions JAR Libraries …. Dynamic Class Loader
16/02/200422 WSMT Architecture – Next Steps Merge WSMX mediation GUI into WSMT Additional of toolbar to core Improve method for showing and hiding plugins Update plugin description format Add plugin compatibility functionality to the core Add more sophisticated resource loading to the core Add installers for other systems e.g. Linux, Mac. Addition of WSMX aware component to the core
16/02/200423 WSMT Architecture – Next Steps Launcher Core Plugin 1 Plugin n Plugin Descriptions JAR Libraries …. Dynamic Class Loader WSMX Communication Component WSMX Communication Component WSMX Administration Framework
16/02/200424 Summary Development of a toolkit will provide a centralized homogenous set of tools for semantic web services. Reduced application overhead encourages tool development. Plugins can be provided separately from the WSMT and dynamically deployed into the architecture. Packaging as a windows executable with DERI logo gives a professional look to the work we are doing.