-
Type: New Feature
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: V4.0_CS01
-
Fix Version/s: V4.0_CSD03
-
Component/s: CSDL XML
-
Labels:None
-
Environment:
[Applied]
-
Proposal:
-
Resolution:
[CSDL] does function overload resolution by the unordered set of parameter names. Most languages do function overload resolution according to the ordered set of parameter types.
Currently, [CSDL] allows two function overloads with different parameter names to have the same types:
<Function Name="Evaluate" ReturnType="Integer">
<Parameter Name="Input" Type="Edm.Integer"/>
</Function>
<Function Name="Evaluate" ReturnType="Integer">
<Parameter Name="Variable" Type="Edm.Integer"/>
</Function>
This doesn't add significant value, could be confusing, and would not be supported in most programming languages.
It is okay for OData to be more restrictive than conventional programming languages, but having it arbitrarily less restrictive makes it difficult to expose a client side programming model in a conventional language.