-
Type: Bug
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: V4.01_CS01
-
Fix Version/s: V4.0_CSD02, V4.01_CS02
-
Component/s: Vocabularies
-
Labels:None
-
Proposal:
-
Resolution:
In OData-958 we added FilterRestrictions and SortRestrictions to NavigationPropertyDescriptions. This gave us a place to define such restrictions on collection-valued navigation properties. However, we missed some other restrictions and, in OData-1055, proposed to add one of these (DeepInsertSupport) as an annotation that could be applied to a "Collection" (i.e., a collection-valued navigation property). This has a number of issues:
1) It uses the new "Collection" value in AppliesTo, which we did not want to return to OData 4.0 clients,
2) It underspecifies where DeepInsertSupport can be applied (i.e., it doesn't make sense for collection-valued structural properties),
3) It creates multiple places for the client to look to figure out what it can/can't do for a particular navigation property
4) It puts the annotation on the navigation property within the type, which makes it difficult to re-use that type.
A better, more consistent approach would be to add to NavigationPropertyRestrictions all of the restrictions we currently have for EntitySets.