nwingfield@che-llp.com wrote at 2003-11-10 17:51 -0500:
I'm working on an enterprise document management system that needs highly flexible metadata structures - based on dynamic, customizable document types - and lightning fast queries on this metadata. The idea is to use the metadata associated with each document to dynamically generate flexible navigation routes and search interfaces (think iTunes or iPod) for any document type. Question is: is ZCatalog robust enough for this purpose or will I be better served by a relational data model? Up to this point, I have relied on Zope's object database, but I'm afraid that ZCatalogs are just not sophisticated enough to do the job. I would appreciate input from anyone with real world experience in ZCatalogs.
The ZCatalog has very limited search capabilities. All it provides out of the box is the intersection of subqueries to a set of indexes. ZCatalog has a flexible indexing framework and you can plug in sophisticated indexes. With respect to a single index, you can have (depending on the index type) and/or/not/near/synonym/thesaurus/... subqueries. However, such subqueries can only be combined by intersection. You do not have union, difference and you do not have things like joins. For really complex queries, I would not go for ZCatalog. -- Dieter