xml-xindice-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Guy De Schepper" <pr...@de-schepper.be>
Subject RE: nr of results && starting position
Date Wed, 19 Jun 2002 12:33:58 GMT
Tnx Jeff, I'll try to work around it for now by using intermediate
result sets as you suggested.

I hope the new XQuery (will) support(s) it and will soon be implemented
in Xindice.


-----Original Message-----
From: Jeff Greif [mailto:jgreif@alumni.princeton.edu] 
Sent: Wednesday, June 19, 2002 14:26
To: prive@de-schepper.be; xindice-users@xml.apache.org
Subject: Re: nr of results && starting position

Xindice is missing many things that a complete database implementation
would have.  Personally, I would put security and full transaction
support higher in priority than being able to browse query results in
pages, since what you want is obtainable in some less than optimal way
by retrieving more than you want and filtering the results.

The XPath query service specified by the xmldb consortium is not
complete enough to support the equivalent of cursors supplied by
relational DBMS systems, which allow the kind of browsing behavior you
mention.  XPath does not (as far as I know, but I'm just a beginning
student of the spec) support limiting the count of results, and it is
the query language currently available.  I think that the new XQuery
(still under development as a spec and not yet implemented in Xindice)
may support this.

At least one of the mechanisms I've seen for cursors suitable for
browsing in RDBMS systems is in concept similar to what I'm about to
propose as a solution for your problem, since it uses temporary storage
on the DBMS server for a result set, and then delivers segments of the
result set.

In Xindice, you could execute a query to select a set of items, based on
a timestamp or other criteria, store the resulting document in a
collection reserved for such intermediate results, return the ID of that
document, and then page through that document with queries using
restrictions on position().  It would be best to do this using the XML
Object extension mechanism (see Xindice Developer's Guide) to avoid
having the intermediate results make a round trip to the client and back
to the temporary collection.  The Xindice example code showing the use
of XPath in an XML Object (Developer's guide) lays out the basic idea.

----- Original Message -----
From: <develop@de-schepper.be>
To: "'Jeff Greif'" <jgreif@alumni.princeton.edu>;
Sent: Wednesday, June 19, 2002 4:00 AM
Subject: RE: nr of results && starting position

> Nevertheless, I think you are missing the core of the problem: 
> limiting the number of results. Let's say someone wants all items 
> since the last 2 weeks, displaying 25 results per page
> How can I achieve this ?
> My point is, I think Xindice is missing some features, such as:
> - limiting the number of results returned by a query,
> - Indicating a starting point from where to start the search, based on

> something else than position() e.g. the content of an attribute of an 
> element ( e.g. timestamp )
> - and possible others

View raw message