BTW, it *is* possible to use AND, NOT, OR, and ANDNOT in the body of a
textindex query, e.g.

<dtml-in "Catalog(textindex="foo and bar or farfoo andnot flea")>

This is not a problem.

But the original question (and what is not possible currently), is how
to do something like:

<dtml-in "Catalog(textindex='foo' AND fieldindex='bar' OR

...currently the best you can do is:

<dtml-in "Catalog(textindex='foo', fieldindex='bar',

... which does an implicit intersection (AND) of all the results from
the indexes "textindex", "fieldindex" and "keywordindex".

To change this behavior, you need to do things like:

<dtml-let a="Catalog(textindex='foo')">
<dtml-let b="Catalog(fieldindex='bar')">
<dtml-let c="Catalog(keywordindex=['flop'])">

<dtml-let result="a + b + c">
<dtml-in result>

the above example is a way to service a query like "textindex='foo' OR
fieldindex='bar' OR keywordindex=['flop']".

- C

Chris McDonough wrote:
> Marco Nova wrote:
> > > DC has no no concrete plans to implement operators or precedence in
> > > catalog queries, although I think it's a really
> > > super-worthwhile idea.
> > > We're currently focusing on the things in the Zope 2.4 plan (see
> > >  If
> > > someone wanted to
> > > try to implement it, they could create a fishbowl project and I can
> > > provide assistance.
> >
> > Why don't integrate already working search engine such as pls (
> > ?
> > It shouldn't be so much difficult to integrate.
> It would not be possible to do field and keyword index queries against
> methods of Zope objects with a third-party indexer.  It would
> additionally not be possible to full-text-index anything but the results
> of a rendered HTML page.
> If ZCatalog did nothing but create full text indexes of rendered HTML, I
> think we'd be all for going with a third-party search engine instead of
> continuing to maintain it. But ZCatalog is not just about searching
> text.  ZCatalog currently lets you relate objects in a Zope instance to
> each other in ways that aren't possible without it.  For example, you
> can catalog a bunch of different kinds of objects, and perform a catalog
> query to retrieve only DTML Document objects.  Likewise, you can create
> and index and subsequently perform a query that lets you get at objects
> which have an attribute "foo" that starts with the letter "g".  This
> kind of granularity is not possible with nonintegrated indexers.
> Of course that doesn't mean you can't use htdig or pls to index a Zope
> site if that's what you'd like to do...

Zope-Dev maillist  -  [EMAIL PROTECTED]
**  No cross posts or HTML encoding!  **
(Related lists - )

Reply via email to