Am Sonntag, 13. November 2005 12:07 schrieb Jean-Marc Orliaguet: > Helmut Merz wrote: > >Anyway, what we are talking about are not "references". > > The approach is quite different: references start from the > objects themselves that they connect to other objects using > one-way relations (a pointer, an arrow).
And this can be easily implemented by using assignments to object attributes. > The application has > to know how to interpret the references. I don't think that > you can build a robust relation engine only with that. > Relations start from "the top": you first define an ontology > (a set of general predicates) that you use to relate the > objects of your application. This is a conceptual schema. Here > is the cpsskins ontology: > http://svn.nuxeo.org/trac/pub/file/z3lab/cpsskins/branches/jmo >-perspectives/ontology.py > > The relation engine then manages all the necessary references, > but the application does not need to know about the references > at all. The interaction with the relation engine is done only > via the ontology. OK, I see. I now also understand why you include monadic relations which could just be attributes or annotations... (I ignored them up to now but I think I should change this.) OTOH I'd like to have a relation management API that could as well be used for cases where the relations are controlled by the application or the objects involved. This is then just a convenience API that cares about the problems of keeping up-to-date references in both directions, deletion handling, the complexity arising with connecting more than two objects, attributed or annotated relations, etc. Helmut _______________________________________________ Zope3-dev mailing list [email protected] Unsub: http://mail.zope.org/mailman/options/zope3-dev/archive%40mail-archive.com
