Distinguish expandability for a collection vs expandability for an item within a collection

    • Type: Improvement
    • Resolution: Unresolved
    • Priority: Major
    • None
    • Affects Version/s: None
    • Component/s: Vocabularies
    • None

      Gareth Jones opened https://github.com/oasis-tcs/odata/issues/12:

      It's very useful to be able to distinguish capabilities of a single entity in a collection vs the capabilities of a collection.

      This is embodied in ReadRestrictions vs ReadByKeyRestrictions for support for GET foos vs GET foos/{fooId}

      In practice we've found that implementing $expand on a single entity is frequently cost-effective, whereas implementing it across a whole collection is not. Consequently we'd like to be able to qualify ExpandRestrictions with something akin to an ExpandByKeyRestrictions.

      A cheap and cheerful variant of this would be a boolean control flag in ExpandRestrictions, but it misses the possibility that the expandable set of nav properties varies between single/collection.

      For clarity, we need a vocabulary annotation that allows us to express

      1. NOT Supported: GET /foos?$expand=bars
      2. Supported: GET /foos/{fooId}?$expand=bars

      Another issue of ExpandRestrictions isĀ ODATA-1502.

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

              Created:
              Updated: