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

Clarify rules around handling of custom query options when building URLs

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: V4.0_OS
    • Fix Version/s: V4.0_ERRATA01
    • Component/s: Protocol, URL Conventions
    • Labels:
      None
    • Environment:

      [Applied]

    • Proposal:
      Hide

      Clarify that clients should preserve custom query options included in urls advertised by the service in service documents, $metadata, and payloads, when invoking or appending to those urls.

      Show
      Clarify that clients should preserve custom query options included in urls advertised by the service in service documents, $metadata, and payloads, when invoking or appending to those urls.

      Description

      OData defines custom query options as an extensibility mechanism for services to support service-specific behavior. However, semantics around how services inject, and clients respect, custom query options is not clearly spelled out.

      In particular, when services advertise URLs (in service document, navigation links, read/edit, and media read/edit urls) that include custom query options, clients should preserve those custom query options whether invoking those urls directly or appending segments/additional query options.

      For example, if a service advertises an edit link for an entity as a url with a custom query option, and the client wants to append a property segment to retrieve an individual property from that entity, it should include the custom query option when invoking the url.

        Attachments

          Activity

            People

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

              Dates

              • Created:
                Updated:
                Resolved: