[Zope-CMF] Re: Reference Engine Componentization

Jens W. Klein jens at bluedynamics.com
Thu Jan 26 06:36:33 EST 2006


hi!

Am Tue, 24 Jan 2006 22:32:36 -0600 schrieb whit:

> howdy philip! just getting back to this. thanks for your input ;)
> 
> Philipp von Weitershausen wrote:
>> whit wrote:
>> 
>>>sorry for the cross post, but I know there are a number of other
>>>reference engines out there and I would like to get input as we look
>>>at moving the AT ref engine being a component.
>>>
>>>here is a rough list of steps:
>>>
>>>1) move current storage of references to use IAnnotations for new
>>>content / reference classes. Create a layer of indirection, making
>>>reference storage a configurable option.
>>>
>>>2) refactor UID storage to use IAnnotations
>> 
>> 
>> I don't think neither references nor UID capabilities have to do with
>> annotations. In fact, Zope 3 doesn't use annotations for either one:
> 
> noted...currently, in AT, references are stored in an annotation pattern 
> (actually as a Folder stored as an attr on the holding object).  The 
> reimplementation requires some sort of persistent storage, and the 
> reference objects aren't content so storing them as using IAnnotation 
> seemed logical.
> Currently, references are very contentish. some sort of persistence 
> mechanism will be required, though the behavior on a reference can be 
> abstracted out through adapters, so what the object is created from 
> matters less.
> 
> But they have to go somewhere...any suggestions?

Well, at the moment archetypes allows real contentish references. In UML
this is called also an "Assocation-Class". We're using this heavily in
ZUCCARO. However this is implemented, the feature is a must have.

> 
>> - UID capabilities: Zope 3 has the intid utility which allows one to
>> assign any object a unique integer id. This should be adopted for Zope
>> 2 and I think it would be fairly easy to do wrt persistent objects (as
>> the ZODB is the same)

> 
> The AT uid is suppose to be a UUID, thus enabling content migration from
> system to system.  would it be possible to combine the uuid into a
> derivative of the intid utility?

I propose to support the different UUID mechanisms described in RFC 4122
"A Universally Unique IDentifier (UUID) URN Namespace"
http://www.rfc-editor.org/rfc/rfc4122.txt. I found a nice Python
implementation at http://zestyping.livejournal.com/157957.html
 
[...]

Jensens

-- 
Jens W. Klein,               WEB APPLICATIONS: ZOPE, PLONE - MDA, SOA
BlueDynamics Tyrol           production: concept, development, design
Klein & Partner KEG          consulting: analysis, coaching, training
http://www.bluedynamics.com  management: projects, process, community




More information about the Zope-CMF mailing list