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

Enhance orderby $apply-transformation with sorting of undefined properties

    XMLWordPrintable

    Details

    • Type: New Feature
    • Status: Closed
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: V4.0_CSD03
    • Fix Version/s: V4.0_CSD04
    • Component/s: Data Aggregation
    • Labels:
      None
    • Environment:

      Proposed

    • Proposal:
      Hide

      Details are described in the document “Grid-Like Access to Aggregated Data”, sections 4 and 8.1: https://www.oasis-open.org/committees/document.php?document_id=62593&wg_abbrev=odata

      Excerpt from relevant section 8.1: Extend the expressions that can be passed to the orderby transformation by an optional suffix that, if specified, determines the position of undefined values of properties that have been aggregated away:

      With orderby( <orderbyItem> undefined first ) undefined values of the orderby item come before any defined value. The order among the undefined values is undefined.

      With orderby( <orderbyItem> undefined last ) undefined values of the orderby item come after any defined value. The order among the undefined values is undefined.

      Show
      Details are described in the document “Grid-Like Access to Aggregated Data”, sections 4 and 8.1: https://www.oasis-open.org/committees/document.php?document_id=62593&wg_abbrev=odata Excerpt from relevant section 8.1: Extend the expressions that can be passed to the orderby transformation by an optional suffix that, if specified, determines the position of undefined values of properties that have been aggregated away: With orderby( <orderbyItem> undefined first ) undefined values of the orderby item come before any defined value. The order among the undefined values is undefined. With orderby( <orderbyItem> undefined last ) undefined values of the orderby item come after any defined value. The order among the undefined values is undefined.
    • Resolution:
      Hide

      As per 2018-6-7, closing with no action. We can already support this by putting expressions in the orderby:

       

      orderby(Continent,isdefined(Country) desc,Country desc)
      orderby(Continent,isdefined(Country) asc,Country desc)
      orderby(Continent,Country eq null asc,Country desc)
      Show
      As per 2018-6-7, closing with no action. We can already support this by putting expressions in the orderby:   orderby(Continent,isdefined(Country) desc,Country desc) orderby(Continent,isdefined(Country) asc,Country desc) orderby(Continent,Country eq null asc,Country desc)

      Description

      Extend $orderby expressions accepted by the orderby transformation with the option to specify how to sort undefined properties.

      In general, the demand for being able to specify the position of entities with undefined properties emerges from combining transformation sequences using concat or by applying groupby(rollup(...), ...). A concrete use case is described in more detail in https://www.oasis-open.org/committees/document.php?document_id=62593&wg_abbrev=odata.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              gerald.krause1 Gerald Krause
            • Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated: