Difference between revisions of "GCube Ontology Management Service"

From Gcube Wiki
Jump to: navigation, search
(GCube Ontology Management Service)
(Ontology Management Service)
Line 3: Line 3:
 
In gCube, the management of ontologies is performed by combining back-end and front-end components. The two classes of components are strongly related, components that present ontologies interact directly with those that instead help manage them. This section focuses exclusively on the back-end component the Ontology Management Service, while front-end components (Ontology Front-End, Ontology Admin Portlet) are discussed in Section … and Section … respectively.
 
In gCube, the management of ontologies is performed by combining back-end and front-end components. The two classes of components are strongly related, components that present ontologies interact directly with those that instead help manage them. This section focuses exclusively on the back-end component the Ontology Management Service, while front-end components (Ontology Front-End, Ontology Admin Portlet) are discussed in Section … and Section … respectively.
  
== GCube Ontology Management Service ==
+
== Ontology Management Service ==
  
 
The Ontology Management Service is a gCube Service that manages arbitrary ontology models. 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.
 
The Ontology Management Service is a gCube Service that manages arbitrary ontology models. 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.

Revision as of 17:14, 6 January 2009

Introduction

In gCube, the management of ontologies is performed by combining back-end and front-end components. The two classes of components are strongly related, components that present ontologies interact directly with those that instead help manage them. This section focuses exclusively on the back-end component the Ontology Management Service, while front-end components (Ontology Front-End, Ontology Admin Portlet) are discussed in Section … and Section … respectively.

Ontology Management Service

The Ontology Management Service is a gCube Service that manages arbitrary ontology models. 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.

Ontology Management 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.
  • ...