Difference between revisions of "GCube Ontology Management Service"

From Gcube Wiki
Jump to: navigation, search
(GCube Ontology Management Service)
Line 2: Line 2:
 
=== Introduction ===
 
=== Introduction ===
 
GCube Ontology Management Service is the service responsible to maintain ontologies into gCube System.
 
GCube Ontology Management Service is the service responsible to maintain ontologies into gCube System.
 +
 +
 +
The service utilizes the functionality of CMS in order to store ontology schemas (ontology classes and properties) as well as to keep data about ontology individuals for back-up reasons.
 +
All the required information about each ontology model is kept locally in the service in order to provide fast response times to the clients.
 +
 +
The Ontology Management Service is a gCube Service that manages arbitrary ontology models.
 +
The service is composed by the following two port types:
 +
the OntologyManagerFactory, a factory service that is responsible for the creation and retrieval of ontologies.
 +
And the OntologyManager, which is the instance service that operates over ontology models
 +
The Ontology Manager Factory Service exposes methods to create and retrieve WS-resources for a given ontology model. At creation time, the schema of the ontology must be imported along with its URI and a name given by the client. Ontologies are identified from their URI and thus the URI is kept unique by the service. The schema is stored in CMS in owl format.
 +
In the case of importing an ontology that contains individuals, the service is responsible to produce the schema (i.e. keep only the class and property definitions of the ontology) and afterwards store it in CMS.
 +
The Ontology Manager is the service that manages a given ontology model. This service provides fine-grained methods for managing ontology individuals, property values and relationships between individuals and on the other hand more generic methods (get, update) to manage the ontology schema.
 +
Internally, the management of the ontologies is performed by using the Jena Semantic Web Framework […]. The data of the ontologies are maintained in persistent embedded databases. This provides clients with fast response times, small memory consumption and persistency to the data of the ontology.
 +
==== Resources and Properties ====
 +
The Ontology Management Service is implemented as a stateful WSRF-compliant web-service, following a factory-instance pattern, and publishes a WS-resource for each annotation model. The resource contains the URI and the name of the ontology as well as the OID of the document containing the schema of the ontology.
 +
==== Functions ====
 +
The main functions supported by the Ontology Manager Factory Service are:
 +
importOntology() – which takes as input the URI of the ontology, the Name of the ontology and the location from where the ontology will be fetched, creates the ontology model, stores the ontology schema to CMS, creates a resource for the ontology model and returns the EPR of the newly created WS-resource.
 +
getAvailableOntologies() – which returns the URIs and the Names of the available ontology models.
 +
getOntologyManager () – which takes as input parameter a message containing the URI of the ontology model and returns the EPR of the ontology WS-resource.
 +
Some of the functions supported by the instance service are:
 +
getOntologySchema() – which returns the schema of the ontology model
 +
getIndividuals() – which takes as input URIs of ontology classes and for each class returns the individuals in the model that have this class among their types.
 +
createIndividuals() - which takes as input URIs of ontology individuals and creates them in this model.
 +
deleteIndividuals() – which deletes individuals from the ontology model.
 +
addEquivalencePropertyToIndividual() – which creates “same-as”, “see-also” relationships between individuals.
 +
addOntologyClassesToIndividual() – which adds the given ontology class as one of the classes to which an individual belongs.

Revision as of 17:04, 6 January 2009

GCube Ontology Management Service

Introduction

GCube Ontology Management Service is the service responsible to maintain ontologies into gCube System.


The service utilizes the functionality of CMS in order to store ontology schemas (ontology classes and properties) as well as to keep data about ontology individuals for back-up reasons. All the required information about each ontology model is kept locally in the service in order to provide fast response times to the clients.

The Ontology Management Service is a gCube Service that manages arbitrary ontology models. The service is composed by the following two port types: the OntologyManagerFactory, a factory service that is responsible for the creation and retrieval of ontologies. And the OntologyManager, which is the instance service that operates over ontology models The Ontology Manager Factory Service exposes methods to create and retrieve WS-resources for a given ontology model. At creation time, the schema of the ontology must be imported along with its URI and a name given by the client. Ontologies are identified from their URI and thus the URI is kept unique by the service. The schema is stored in CMS in owl format. In the case of importing an ontology that contains individuals, the service is responsible to produce the schema (i.e. keep only the class and property definitions of the ontology) and afterwards store it in CMS. The Ontology Manager is the service that manages a given ontology model. This service provides fine-grained methods for managing ontology individuals, property values and relationships between individuals and on the other hand more generic methods (get, update) to manage the ontology schema. Internally, the management of the ontologies is performed by using the Jena Semantic Web Framework […]. The data of the ontologies are maintained in persistent embedded databases. This provides clients with fast response times, small memory consumption and persistency to the data of the ontology.

Resources and Properties

The Ontology Management Service is implemented as a stateful WSRF-compliant web-service, following a factory-instance pattern, and publishes a WS-resource for each annotation model. The resource contains the URI and the name of the ontology as well as the OID of the document containing the schema of the ontology.

Functions

The main functions supported by the Ontology Manager Factory Service are: importOntology() – which takes as input the URI of the ontology, the Name of the ontology and the location from where the ontology will be fetched, creates the ontology model, stores the ontology schema to CMS, creates a resource for the ontology model and returns the EPR of the newly created WS-resource. getAvailableOntologies() – which returns the URIs and the Names of the available ontology models. getOntologyManager () – which takes as input parameter a message containing the URI of the ontology model and returns the EPR of the ontology WS-resource. Some of the functions supported by the instance service are: getOntologySchema() – which returns the schema of the ontology model getIndividuals() – which takes as input URIs of ontology classes and for each class returns the individuals in the model that have this class among their types. createIndividuals() - which takes as input URIs of ontology individuals and creates them in this model. deleteIndividuals() – which deletes individuals from the ontology model. addEquivalencePropertyToIndividual() – which creates “same-as”, “see-also” relationships between individuals. addOntologyClassesToIndividual() – which adds the given ontology class as one of the classes to which an individual belongs.