Uploaded image for project: 'OASIS Open Data Protocol (OData) TC'
  1. OASIS Open Data Protocol (OData) TC
  2. ODATA-574

Rationalize Aggregatable Properties, Dynamic Aggregates, and floating aggregates

    XMLWordPrintable

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: V4.0_CSD01
    • Fix Version/s: V4.0_CSD02
    • Component/s: Data Aggregation
    • Labels:
      None
    • Environment:

      [Proposed]

    • Proposal:
      Hide

      Define two types of aggregates;
      -aggregation methods (standard and custom), which may be applied to aggregatable properties or expressions
      -custom aggregates which may be associated with an entity type or entity container.

      The use of aggregate methods always requires an alias.
      We achieve the previous simplification of "default aggregation" for a property by allowing a custom aggregate to be defined with the same name as a property with the same type.

      Show
      Define two types of aggregates; -aggregation methods (standard and custom), which may be applied to aggregatable properties or expressions -custom aggregates which may be associated with an entity type or entity container. The use of aggregate methods always requires an alias. We achieve the previous simplification of "default aggregation" for a property by allowing a custom aggregate to be defined with the same name as a property with the same type.
    • Resolution:
      Show
      Applied and reviewed 2013-12-12: https://www.oasis-open.org/apps/org/workgroup/odata/download.php/51703/odata-data-aggregation-ext-v4.0-wd02-2013-12-12.docx

      Description

      In the CSD01 specification we sometimes treat properties as aggregates by applying a "default aggregation method". This was confusing to folks who didn't expect this special aggregation behavior to automatically apply to properties. other times the user can apply an aggregation method to a property or expression. In some cases an alias was required, in others it was not, and the type could be dependent on whether or not an alias was used.

      The addition of floating aggregates added yet a new way to apply define aggregates, leaving services multiple ways to do the same thing and clients either having to support all different combinations or pick a subset of combinations and not be interoperable.

      Also, we could use this opportunity to refactor the annotations so they are not nested under one huge annotation but are more naturally specified in the context which they apply.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              mikep Michael Pizzo
            • Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: