Andrea Aime wrote:
> Ben Caradoc-Davies ha scritto:
>> I would like to see support for functions dynamically discoverable from
>> data sources. The use case is a database that exposes functions that can
>> be called in a filter query. GeoTools will not know about these
>> functions until it connects to the database. If the data store is
>> configured to permit it, the functions are passed to the database for
>> execution.
>> The "registered functions" prototype in community-schemas does this by
>> overriding bits of FilterFactoryImpl. In effect, any unknown function is
>> passed to the data store as a fallback, and the data store SQL encoder
>> will have to decide whether it should be encoded.
[snip]
> Hum, I will have to look into your modifications... can you point me
> at the file?

The prototype is here:
http://svn.geotools.org/branches/2.4.x/modules/unsupported/community-schemas/jdbc-regfunc
This version just passes *all* unrecognised functions to the database. 
Registration is not yet implemented. Filtering works.

> While I see the usage of such a feature, I also see serious problems:
> the filter functions are declared at a global level, but these you're
> talking about are available only for a specific datastore, yet
> there is no way to tell which one, this poses a serious usability
> problem in environments where there are multiple data stores.
> Say I generate the WFS capabilities from the list of available
> functions, some are available only on postgis, yet there is no
> way to tell so, and one such functions is used against a shapefile
> instead.
[snip]

Because WFS does not allow different functions by feature type, 
functions not supported by all feature types cannot be published in the 
WFS capabilities. So how do clients know what they can call? There has 
to be some sort of back-channel agreement. Some have referred to this as 
a profile, and the publication and discovery of these is an open 
question. (Cue Rob Atkinson ...)

> Sorry I did not have the time to follow the debate on this topic
> when it was happening (a couple months ago I believe), so maybe
> I'm missing something obvious here?

No, these are the right questions to ask.

-- 
Ben Caradoc-Davies <[EMAIL PROTECTED]>
Software Engineer, CSIRO Exploration and Mining
Australian Resources Research Centre
26 Dick Perry Ave, Kensington WA 6151, Australia

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Geotools-devel mailing list
Geotools-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geotools-devel

Reply via email to