-
Type: Improvement
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: V4.0_WD01
-
Fix Version/s: V4.0_WD01
-
Component/s: Protocol, URL Conventions
-
Labels:None
-
Environment:
[Applied]
-
Proposal:
-
Resolution:
CSDL spec (2013-03-12) states in section 10.5.3.4 "Function overload resolution"
Functions overloads are supported in OData, meaning a service MAY expose multiple functions with the same name that take a different set of parameters.
When a function is invoked (using any of the three parameter syntaxes) the parameter names and parameter values are specified in the URL, and the parameter types can be deduced from each parameter value. The combination of the Function name and the unordered list of parameter types and names is always sufficient to identify a particular function overload.
However, if one or more parameter values are null, there might be multiple functions (with same-named parameters but differing types corresponding to the null-valued parameter(s)). A null value can resolve to any primitive/complex/entity type. Thus overload resolution would be ambiguous.