-
Type: Bug
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: V4.0_CS01
-
Fix Version/s: V4.0_CSD03
-
Component/s: Protocol
-
Labels:None
-
Environment:
[Applied]
-
Proposal:
-
Resolution:
Our current pattern for the context for a single complex types looks like this:
{context-url}#{type-name}And a collection of complex types looks like this:
{context-url}
#Collection(
{type-name})
However, in V4 we have add the ability for complex types to have relationships.Since one of the roles of the context is to provide the base for clients to construct links, how does the client compute relationship links using these context urls?
For example, if I do ~Customers(1)/ns.Address, and Address has navigations to Country, how do represent that?
Option 1: For complex types/collections of complex types, if there are navigation properties, you have to put the navigation links in the payload.
Option 2: We modify the context url for single-valued complex properties to include the property path from the entity in the entity set:
/
{entity-set}/$entity/
{propertyName}For collection-valued complex properties and single- or collection-valued primitive properties we keep the current pattern. Collections of complex types MUST include links, as already stated in JSON section 8.1.