[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Ozone object identity...



Here is the problem I have at hand. 

In RDF, Model is a "set" of Statements which are "triples" of (Resource,
Resource, Resource|literal). 

In the design, Model, Statement and Resource are implemented as
persistent object in the Ozone DB. Model and Resource are named using
their URL. The user of the RDF DB will query the model using a
find(resource, resource, resource|literal) pattern in which null means
all match wildcard.

The implementation use two indexes on the names of the first and second
resource of the triple as the key and statement object as the value. 

However, statement is not named for two reason. First, it doesn't make
much sense to name statement as their are not often refered by name
because of the search/query model above. Second, naming the statement in
a unique fashion by the model will complicate the implementation. Also,
from time to time, some statement can be named using URL and this will
conflict with the naming in the model itself.

So, in here, I'd like to use the object id of the statement object as
the index value and leave the naming part for the programmer.

I agree to present the Ozone to client side programmer as totally
transparent object persistent system. 

However, for the server side logic programmer, they should be able to
access the object identity as this will be great help for the server
side system. I believe the same issues will raise from the query kernel
as well.

David Li
DigitalSesame

Falko Braeutigam wrote:
> 
> On Thu, 26 Apr 2001, David Li wrote:
> > I am finally done with testing out the XXL indexing and it perform quite
> > well. The API is clean and easily expandable. Good one to recommand to
> > everyone.
> >
> > However, as I am integrating with my RDF database, I surprisingly found
> > out that I can't retrive an object by its ID. In fact, there doesn't
> > seem to be a place to get object ID. That's surprising.
> >
> > Currently, it looks like using the name as a index key is the only way
> > to do this. However, I'd like to be able to use an object id in case the
> > object is not named.
> >
> > I am wondering how the others solve this problem with Ozone.
> >
> > Also, I'd like to know if Ozone should support retrive object by it's
> > object identity.
> 
> The object ID is the identity of an object. This is one of the basic of the
> ozone object model. However, the ozone API is designed to never give this ID to
> the client/programmer in order to let the ozone specific extensions to the
> ordinary Java model as transparent to the programmer as possible.
> 
> There is no way to find an object by its ID because there is no (documented) way
> to get the ID of an object (which is perfectly intended!).
> 
> What is the actual problem where you need to access/find objects by its ID?
> 
> Basicall ozone does nothing than finding objects by its ID. So, having an
> proxy (which basically is the object ID) _is_ finding the target object.
> 
> Falko
> --
> ______________________________________________________________________
> Falko Braeutigam                              mailto:falko@smb-tec.com
> SMB GmbH                                        http://www.smb-tec.com