Add support for joining entities with instances of their related collections

    • Type: Improvement
    • Resolution: Fixed
    • Priority: Major
    • V4.0_CSD04
    • Affects Version/s: V4.0_CSD03
    • Component/s: Data Aggregation
    • None
    • Environment:

      Applied

    • Hide

      To support such use cases, this gap could be closed by a new transformation join that allows decomposing the collections on the property path and hereby combining entities with instances of their related collections.

      The proposal is described in section 3.21 and examples 57 and 58 in this file: https://www.oasis-open.org/apps/org/workgroup/odata/download.php/68332/ODATA-1409-2.docx

      Show
      To support such use cases, this gap could be closed by a new transformation join that allows decomposing the collections on the property path and hereby combining entities with instances of their related collections. The proposal is described in section 3.21 and examples 57 and 58 in this file: https://www.oasis-open.org/apps/org/workgroup/odata/download.php/68332/ODATA-1409-2.docx

      Such a feature would allow handling property paths with one or more collection-valued segments in it, i.e. collection-valued navigation or complex properties.

      There are use cases in data aggregation that require to deal with such paths, e.g. to group by properties that can only be reached via a path involving a collection-valued navigation property like this:

      GET ~/Products?$apply=groupby((Name,Sales/Customer/ID), aggregate(TaxRate with average as AverageTaxRate))

       

      ODATA-1206 declared support for such paths with collection-valued properties in groupby, however it lacks a description how to process them and furthermore ODATA-1404 withdraws this statement by restricting grouping properties to be reached via single-valued navigation and complex properties.

            Assignee:
            Unassigned
            Reporter:
            gerald.krause1
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: