Search Mailing List Archives

Limit search to: Subject & Body Subject Author
Sort by: Reverse Sort
Limit to: All This Week Last Week This Month Last Month
Select Date Range     through    

[protege-discussion] Protege as data access layer for "serious" multi-user application

Sergey V. Gerasimov gerasimov at
Wed Jan 16 07:05:37 PST 2008

Hello Jennifer,

thank you very much for your answers!

My idea is to implement Hibernate ( back-end for Protege.
OWL and (or) frames ontologies will be mapped to programming language classes and relational tables at one time.

While ontology editing following models should be synchronized:
- Protege ontology
- Java (or C#) classes
- Hibernate mapping files
- Relational tables 

Protege back-end interface functions like "Give all individuals of class X" can be implemented via Hibernate Quering API.
Ontology structure editing can be implemented like altering Java classes, mapping files and relational tables.

In case of success we can have really cool software to create high-performance information systems with or without
knowledge management features.

A also asked about form editor feature for OWL in versions 4.x because it is very helpfull
while implementation of information systems.

I will be glad to receive any comments from you.

Moscow State University
  ----- Original Message ----- 
  From: Jennifer Vendetti 
  To: User support for Core Protege and the Protege-Frames editor 
  Sent: Wednesday, January 16, 2008 3:08 AM
  Subject: Re: [protege-discussion] Protege as data access layer for "serious" multi-user application

  Hello Sergey,

  Sergey V. Gerasimov wrote: 
    Open questions are as follows:

    1. Can Protege API be used as data access layer for "serious" multi-user application?

  I can give you a couple of examples of organizations that currently use Protege in client-server mode:

  1).  The National Cancer Institute uses Protege to edit/maintain a large OWL ontology.
  2).  Perot Systems has approx. 100 people that actively edit an ontology that represents Stanford's School of Medicine IT infrastructure.

  I think it is fair to say that these are "serious" projects, but you would still need to evaluate whether or not Protege meets your particular needs.

    Can business logic of the application efficiently use Protege quering API?  Or Protege is additional framework for knowledge management tasks?
  I am not sure what the issue is here.

    I found simple one-table relational default back-end plug-in and article reg. motivation of this solution.  Slot values are stored as strings and if I understand correctly queries with conditions x > 5 can't use database indexes (Am I right?)

  I think that you are asking about a query like get all frames that have a p slot value greater than 5.  I don't believe that there is such a call in the Protege API, so an implementation of this based on the Protege API would not be too efficient.  There might be some hybrid way to get at this but it would take some thought.

    But if I understood correctly custom backend plug-in can be implemented.  For example something like class->table and slot/property->column strategy.
  Yes you can write your own custom back-end.  It is a bit of work but it can be done.  It is also not clear that this would help the above problem.  If you were going to make the queries you mentioned above efficiently then it seems you would have to bypass the Protege API.

    I also found Protege server feature.. 
    But question is open.

    2.  I didn't find form editor and database backend feature in Protege 4.0 Alpha.  Will this features implemented later or not?

  Yes, we plan to provide a database back-end for Protege 4.0, but work will not begin on this immediately.  The soonest we will be available to work on this is the end of February.

    Will 3.x versions of Protege supported in the next 2-3 years?
  Yes, primarily because we have a number of important clients using Protege 3.x.



  protege-discussion mailing list
  protege-discussion at

  Instructions for unsubscribing: 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the protege-discussion mailing list