Add Annotation Groups to JSON format

    • Type: Improvement
    • Resolution: No Action
    • Priority: Major
    • None
    • Affects Version/s: V4.0_WD01
    • Component/s: JSON Format
    • None
    • Hide

      Defining this right is tricky. Since this is an incremental optimization I would suggest we defer to a future version.

      Show
      Defining this right is tricky. Since this is an incremental optimization I would suggest we defer to a future version.
    • Hide

      Value Paths in metadata annotations achieve the same purpose and use standard properties to transport the "annotation" values, so no need to make the JSON Format more complicated.

      Show
      Value Paths  in metadata annotations achieve the same purpose and use standard properties to transport the "annotation" values, so no need to make the JSON Format more complicated.

      Annotation values may vary per entity, so they can be included in the JSON representation if they deviate from the default specified in $metadata.

      A common case is that the lifecycle of an entity is decribed by a finite and typically small set of states, and that some or all instance annotations depend on the state only.

      So it would really compress JSON responses if the response could define several named groups of annotation values and refer to them in other entities.

      Example: as long as an order item hasn't been shipped, its quantity and delivery address can be updated. Once it has been shipped these properties become read-only. The first order item in state "shipped" defines an annotation group named "Shipped" that annotates the quantity- and address-related properties as read-only. Subsequent "shipped" items only refer to that group without having to repeat all annotations in that group.

            Assignee:
            Unassigned
            Reporter:
            handl
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved: