Here's my response from the wiki:

The cast arguments aren't necessary. I just put them in there so the reader 
would know what the types were. The code will be expected to infer the types of 
the arguments and then use those to correctly identify the evaluate function 
via Reflection. The current implementation infers the arg types by calling 
getClass on each argument.

On 9/6/19 11:30 AM, Beckerle, Mike wrote:

(I added comments to the wiki page, but doing the discussion on this list is 
probably better from Apache-process considerations: "If it didn't happen on the 
mailing list, it didn't happen.")


The code seems to infer the argument types, but the examples all have explicit 
DPath cast functions being called. Are those xs:float(...) type argument 
conversion calls actually required, or will the DPath implementation know the 
arg type of the function so that it can insure the argument has that type as it 
does for built-in functions?


I ask because a goal for any UDF facility in any system is that once defined, a 
UDF call is as indistinguishable from a built-in function as possible.

________________________________
From: Kilo, Olabusayo <ok...@tresys.com><mailto:ok...@tresys.com>
Sent: Friday, September 6, 2019 10:30 AM
To: dev@daffodil.apache.org<mailto:dev@daffodil.apache.org> 
<dev@daffodil.apache.org><mailto:dev@daffodil.apache.org>
Subject: [DISCUSS] User Defined Functions Capability

I'm requesting a discussion on the addition of the User Defined Functions 
capability to daffodil. The proposal referenced below provides a possible 
solution for Daffodil to be able to process and use User Defined Functions 
referenced in the DFDL Schema.

The original request can be found at 
https://issues.apache.org/jira/browse/DAFFODIL-2186 and the proposal can be 
found 
https://cwiki.apache.org/confluence/display/DAFFODIL/Proposal%3A+User+Defined+Functions.



--
Best Regards
Lola K.

Reply via email to