[Zope3-dev] TTW Indexes

Gary Poster gary@modernsongs.com
Sun, 03 Aug 2003 13:08:49 -0400


Anthony Baxter wrote:
> I want to do a reasonably large refactoring of the Indexes - there's 
> 4 types now (more if you include the case-insensitive varieties) and
> they've all got slightly different interfaces for searching and indexing
> objects. If I don't have to worry about the free-floating index objects,
> then it's less work.

I really doubt I'll ever have a chance to do what I wanted with this, 
so, for my part, go ahead and take what appears to be the easier 
road--progress today is more important.  If I ever want to pursue my 
design, I'll just do my own freestanding indexes based on the current 
ones then.

Your use case questions are good ones, btw.  I and some other folks have 
had very positive experience with the free-standing relationship 
"indexes" that Tres did a while back for Zope 2.  I'd argue that other 
sorts of indexes are at a similar level of abstraction: objects that can 
be a part of a larger whole (a relationship service or a catalog) but 
that can have a useful discrete responsibility on their own  While a 
catalog answers the use case of indexing a large set of objects in 
myriad ways, what about a small mini-app that just wants to do a 
free-text index of uploaded docs?  What about a tool that needs a single 
type of index of its own data?

"Monolithic," sometimes a derrogatory description of Zope 2, is not 
necessarily a dirty word for it or for a catalog with non-freestanding 
indexes--it can mean that a given app is designed for a task and has not 
fallen into the trap of over-generalization.  That said, I do think that 
reasonable and even powerful use cases exist for freestanding indexes.

But I'd rather see catalog progress now, and I'm sure many people would 
agree.  Thanks for working on this!

Gary