Nope; cause function is the data structure responsible for holding:
- function name
- arguments
- fallback value (if an implementation of the function cannot be found)

Here is the trouble; we should not of really made our function
implementations be the same as the data structure.

Just like we have PropertyAccessor as the "internals" of PropertyName
expression; we should of had some kind of "FunctionExecution" be the
"internals" of a Function expression.

Since we doubled up, each and every one of our Functions needs to be a
proper Function expression (as we will use them during documentation
generation).

So your confusion represent a design failure on our part; just not perhaps
the one you were expecting?

Jody

On Fri, Apr 29, 2011 at 11:39 AM, Michael Bedward <[email protected]
> wrote:

> Thanks Jody. I still don't quite understand. If a fallback value is a
> Literal returned when a function is not implemented on a system, then
> shouldn't it be held somewhere in the code responsible for calling the
> function (e.g. a finder or factory class) rather than the function
> itself ?  It seems illogical that the function stores a value that is
> only used when the function itself does not exist.
>
> I should add that I think that part of the SE specification is badly
> written, or at least incomplete, and they don't seem to have thought
> about default values, as opposed to fallback values, at all.
>
> Michael
>
> On 28 April 2011 22:29, Jody Garnett <[email protected]> wrote:
> > Good question :-)
> > I will answer twice and both times be right (don't mind me I am a bit
> punch
> > drunk from writing docs):
> > A: The fallback value *is* needed in case you are going to encode a
> document
> > - no sense throwing out information.
> > A: In a related manner you may be constructing a style for use with
> another
> > system does not implement the function.
> >     An easy example is a previous version of a GeoTools; or an
> environment
> > that does not have some of your custom functions defined.
> > So that scary SE quote is correct, we may not need to use the value at
> > execution time, however it is still of use.
> > And idea occurs to me - we could also use the fallback value when
> rendering
> > a style "quickly"; ie configure the renderer to not call functions for a
> > quick preview; and then do the full render if the user is interested. The
> > fallback value is always a literal so the resulting style would be
> "fast".
> > --
> > Jody Garnett
> >
> > On Thursday, 28 April 2011 at 8:37 PM, Michael Bedward wrote:
> >
> > Hello Jody,
> >
> > Many thanks for this. It looks great.
> >
> > I have a question that is peripheral to the tutorial, and that I know
> > we've gone over in the past: what is the valid use of a fallback value
> > with filter functions ? The Symbology Encoding spec says:
> >
> > "The value of the fallbackValue attribute is used as a default value,
> > if the SE implementation does not support the function. If the
> > implementation supports the function, then the result value is
> > determined by executing the function."
> >
> > In that case, a function shouldn't even have a fallback value field
> should
> > it ?
> >
> > I remember struggling with this when helping to do the "env" function.
> > If you look at the code for EnvFunction you'll see that a "default"
> > value can be supplied as an optional extra arg to the evaluate method
> > (this was Andrea's suggestion for how to have a default while not
> > violating the spec). If the setFallbackValue is called an warning is
> > logged.
> >
> > Sorry that this is banal feedback on a nice tutorial - but it's so
> > good to have a teaching page about filter functions at last so I think
> > it's worth checking that it's squeaky clean.
> >
> > Michael
> >
> >
> > On 28 April 2011 01:08, Jody Garnett <[email protected]> wrote:
> >
> > Available now:
> > -
> http://docs.geotools.org/latest/userguide/tutorial/advanced/function.html
> > Review and feedback are of course welcome.
> > --
> > Jody Garnett
> > --
> > Jody Garnett
> >
> >
> >
> ------------------------------------------------------------------------------
> > WhatsUp Gold - Download Free Network Management Software
> > The most intuitive, comprehensive, and cost-effective network
> > management toolset available today.  Delivers lowest initial
> > acquisition cost and overall TCO of any competing solution.
> > http://p.sf.net/sfu/whatsupgold-sd
> > _______________________________________________
> > Geotools-gt2-users mailing list
> > [email protected]
> > https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users
> >
> >
>
------------------------------------------------------------------------------
WhatsUp Gold - Download Free Network Management Software
The most intuitive, comprehensive, and cost-effective network 
management toolset available today.  Delivers lowest initial 
acquisition cost and overall TCO of any competing solution.
http://p.sf.net/sfu/whatsupgold-sd
_______________________________________________
Geotools-gt2-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geotools-gt2-users

Reply via email to