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

Qualifiers for annotations: Preference odata.include-annotations

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: V4.0_ERRATA02
    • Fix Version/s: V4.0_ERRATA03
    • Component/s: ABNF, Protocol
    • Labels:
      None
    • Environment:

      [Applied]

    • Proposal:
      Hide

      Adapt the definition of the Preference odata.include-annotations:
      Allow in addition to the current definition
      ns.term#qualifier
      ns.*#qualifier
      *#qualifier
      and combined with the excludeoperator -
      -ns.term#qualifier
      -ns.*#qualifier
      -*#qualifier

      omission of #qualifier means all, regardless of qualifier
      No way to specify unqualified only.

      ABNF needs to be updated to explicitly show a single hash followed by an identifier. This would preclude ## or #(nothing)

      New ABNF:
      annotationIdentifier = [ excludeOperator ]
      ( STAR
      / namespace "." ( termName / STAR )
      )
      [ '#' simpleIdentifier ]

      Applied:
      https://www.oasis-open.org/committees/download.php/55616/odata-v4.0-wd08-part1-protocol-2015-05-07.docx
      https://tools.oasis-open.org/version-control/browse/wsvn/odata/trunk/spec/ABNF/odata-abnf-construction-rules.txt?rev=671
      https://tools.oasis-open.org/version-control/browse/wsvn/odata/trunk/spec/ABNF/odata-abnf-testcases.xml?rev=671

      Show
      Adapt the definition of the Preference odata.include-annotations: Allow in addition to the current definition ns.term#qualifier ns.*#qualifier *#qualifier and combined with the excludeoperator - -ns.term#qualifier -ns.*#qualifier -*#qualifier omission of #qualifier means all, regardless of qualifier No way to specify unqualified only. ABNF needs to be updated to explicitly show a single hash followed by an identifier. This would preclude ## or #(nothing) New ABNF: annotationIdentifier = [ excludeOperator ] ( STAR / namespace "." ( termName / STAR ) ) [ '#' simpleIdentifier ] Applied: https://www.oasis-open.org/committees/download.php/55616/odata-v4.0-wd08-part1-protocol-2015-05-07.docx https://tools.oasis-open.org/version-control/browse/wsvn/odata/trunk/spec/ABNF/odata-abnf-construction-rules.txt?rev=671 https://tools.oasis-open.org/version-control/browse/wsvn/odata/trunk/spec/ABNF/odata-abnf-testcases.xml?rev=671

      Description

      Qualifiers are not supported by the preference odata.include-annotations, which is a kind of omission.
      If a consumer is only interested in annotations with a specific qualifier like #mobile, he can't express this today.
      Currently we can express:
      ns.term
      ns.*
      *
      and combined with the excludeoperator -
      -ns.term
      -ns.*
      -*
      Any existing qualifiers are ignored by the matching operator. E.g. if you use odata.description#mobile and odata.description#desktop as annotations, you can only include or exclude all qualifiers together.

        Attachments

          Activity

            People

            • Assignee:
              handl Ralf Handl
              Reporter:
              martinzurmuehl Martin Zurmuehl
            • Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: