Clients should be prepared to deal with new derived types

    • Type: Bug
    • Resolution: Fixed
    • Priority: Minor
    • V4.0_ERRATA01
    • Affects Version/s: V4.0_OS
    • Component/s: Protocol
    • None
    • Environment:

      [Applied]

    • Hide

      Clarify that clients should be prepared to see new types in the payload by extending the paragraph following the bulleted list of accepatable changes in 5.2, Model Versioning, with the following:

      "Clients SHOULD be prepared for services to make such incremental changes to their model. In particular, clients should be prepared to receive properties and types, including derived types, not previously defined by the service."

      Remove the misleading verbage "that does not derive from any entity types exposed by existing entity sets, or returned by existing functions or actions.

      Show
      Clarify that clients should be prepared to see new types in the payload by extending the paragraph following the bulleted list of accepatable changes in 5.2, Model Versioning, with the following: "Clients SHOULD be prepared for services to make such incremental changes to their model. In particular, clients should be prepared to receive properties and types, including derived types, not previously defined by the service." Remove the misleading verbage "that does not derive from any entity types exposed by existing entity sets, or returned by existing functions or actions.

      In metadata versioning we currently say that it's safe to add a new type as long as it "does not derive from any entity types exposed by existing entity sets, or returned by existing functions or actions"

      This implies that it is not safe to add a new entity type that derives from an entity type used in an entity set/function/action. But this restriction is unnecessary, as clients should always be prepared for new types not specified in $metadata (for example, types of dynamic properties).

      The same is true for complex types.

      For such derived types, the payload will contain the @odata.type annotation with the qualified name of the metadata describing the type, and clients should always be prepared for such types.

            Assignee:
            Michael Pizzo (Inactive)
            Reporter:
            Michael Pizzo (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: