From NeOn Wiki
|Developed by||Raul Palma|
|Current Version||[[current version:= <ask format="template" template="CurrentVersion" limit="1" searchlabel="" sort="version number" order="descending" default="no version available"> 1.x/Oyster-menu *</ask>]]|
|Homepage||[http://oyster2.ontoware.org 1.x/Oyster-menu Website]|
Oyster is a distributed registry that exploits semantic web techniques in order to provide a solution for exchanging and re-using ontologies and related entities. As an ontology registry , it provides services for storage, cataloging, discovery, management, and retrieval of ontology (and related entities) metadata definitions. To achieve these goals, Oyster implements the proposal for metadata standard OMV (http://omv.ontoware.org) as the way to describe ontologies and related entities, supporting advanced semantic searches of the registered objects and providing services to support the management and evolution of ontologies in distributed environments. For more information we refer the reader to http://oyster.ontoware.org.
The purpose of the Oyster menu plugin is to provide a global access point to any plugin that needs to use the Oyster ontology registry and to let the users to configure/manage the registry. Specifically it provides the following functionalities:
- Start/Stop the Ontology Registry: This functionality is available from the Registry menu and/or from the action associated to the Oyster icon in the main toolbar;
- Configure the initialization parameters: This functionality is available from the Oyster storage preference page. It provides the following configuration options:
- Super Node IP: This option allows to configure the IP address of a "super" node that will be used by the registry to store/retrieve the metadata. Any node in the network running Oyster can be configured as the "super" node, however in general this is a node running Oyster in server mode. Usually this option is configured when the user will be working with a NTK collaboration server;
- Push Node IP: This option allows to configure the IP address of a specific node in the network to which changes will be push propagated every time the Synchronization process is invoked. Usually this option is configured when users are working collaborative on the development of ontologies in a totally distributed environment (i.e. users are working with local copies of the same ontology and there is no NTK collaboration server) to ensure that every node in the network interested in the same ontology will be able to pull propagate changes from other nodes even if the nodes go offline;
- Read ontologies locally: This option allows to specify that the ontologies necessary to start the registry (e.g. OMV and related) are loaded from the local filesystem. By default ontologies are loaded from the internet and therefore it takes a little bit longer to start the registry. If this option is selected, the user should ensure that the required ontologies are available in the O2ServerFiles directory within the NTK working directory (i.e. where the NeOn_Toolkit.exe file is located). Users can download the pack of ontologies from http://oyster2.ontoware.org/ontologiesPack.
- Reset Oyster: This option allows the user to reset Oyster i.e. delete the current information and settings. To apply this action, the user should ensure that the registry is not running.
Synchronization: Oyster follows a synchronization approach that is a combination of a push and pull mechanism. During the synchronization, nodes contact other nodes in the network to exchange updated information (pull changes) and optionally they can push their changes to a specific node (called the push node) such that if a node goes offline before all other nodes pull the new changes, the node changes are not lost.
How to install it
- Download the compressed Plugin release from http://ontoware.org/projects/oyster2
- Extract and copy the Oyster-menu Plugin JAR into the plugins directory inside the filesystem location where NeOn Toolkit is installed.
- If the user wants the registry to read locally the ontologies required to start (see above), he should ensure that the required ontologies are available in the O2ServerFiles directory within the NTK working directory (i.e. where the NeOn_Toolkit.exe file is located). Users can download the pack of ontologies from http://oyster2.ontoware.org/ontologiesPack.
How to use it
The following figures show the Plugin functionalities:
- Start the registry:
The registry can be started from the Registry menu (Figure1) and/or from the action associated to the Oyster icon in the main toolbar (Figure2).
Starting the registry usually takes some time, depending whether the ontologies are read locally or from the internet. In any case, the process is associated to a progress bar that can be run in the background (Figure 3):
The user can easily tell if the registry is running by checking the icon or by checking in the registry menu: when it is running, the icon is pushed and the registry menu only shows the option to stop the registry (and vice versa when it is not running).
- Stop the registry
Similar to the start functionality, the registry can be stopped from the Registry menu (Figure4) and/or from the action associated to the Oyster icon in the main toolbar (Figure5).
- Configure initialization parameters
The configuration of the startup parameters of the registry can be done from the Oyster storage preference page (Figure6):
- WP5WorkingArea: Ontology Evolution
- WP5WorkingArea: Ontology Selection
- WP5WorkingArea: Ontology Reuse
Architecture Description of integration with NeOn toolkit
The NeOn basic infrastructure layer consists of a set of core services (e.g. Repository services, Registry services, etc). Oyster is an implementation of the registry services. As it is required, it is based on the OMV ontology meta model. Further, it provides an API and a Web Service interface to query, create, and manipulate ontology metadata information according to the OMV model. The web service provides a loosely couple service at the Engineering components layer. Additionally, Oyster provides additional services to support engineering components that rely on the registry services (e.g. Change Capturing). Finally, Oyster also provides GUI components (i.e. plugins) that implement user interfaces to the registry services. One of these components is the Oyster-menu Plugin.
Intended use in case study
This component will be used in WP7 to access the ontology registry.
- Motivation of using Oyster-menu
One of the goals of the FAO use case partner is that fisheries ontologies produced within WP7 will underpin the Fisheries Stock Depletion Assessment System (FSDAS). However, for such a dynamic domain like fisheries that is continuously evolving, we will need to provide the appropriate support for a successful implementation and service delivery of the FSDAS. In particular, for this task we need to support a collaborative editorial workflow that will allow Ontology editors to consult, validate and modify ontologies keeping track of all changes in a controlled and coherent manner. In this scenario, ontology editors are usually developing/maintaining ontologies collaboratively in a distributed environment. Additionally, ontology editors will have to perform many different tasks (e.g. create mappings, populate ontologies) that require to select the appropriate ontology. The registry is crucial component in the infrastructure to aid in the selection of appropriate ontologies and to support the editorial workflow: first, changes have to be monitored and captured from the ontology editor. Those changes should be formally represented and stored in Oyster which is in charge of the management of the different versions of the ontology. Also, using the registry functionalities, those changes will be searched and retrieved by the visualization components to show e.g. the differences between versions of the ontology and also to provide different views to ontology editors (depending on their role) where they can see the state of those changes. Finally, the registry will be in charge of the propagation of those changes to the distributed copies of the same ontology. This Plug-in provides access to the required registry services.
- Benefits/Advantages of using Oyster-menu
- Oyster-menu provides a shared access to the registry services.
- Oyster-menu allows users to customize the behavior of the registry.
- Data sets
- A usage example aligning to WP7 case study.