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

Clarify read-write access via URLs differing from the canonical/read/edit URL

    XMLWordPrintable

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: V4.01_CS01
    • Fix Version/s: V4.01_CS02
    • Component/s: Protocol
    • Labels:
      None
    • Proposal:
      Hide
      Section Current Text New Text
      11.2.2 Requesting Individual Entities  To retrieve an individual entity, the client makes a GET request to the read URL of an entity. To retrieve an individual entity, the client makes a GET request to a URL that identifies the entity, e.g. its read URL.
      11.4.3 Update an Entity  (no statement) To update an individual entity, the client makes a PATCH or PUT request to a URL that identifies the entity. Services MAY restrict updates only to requests addressing the edit URL of the entity.
      11.4.4 Upsert an Entity An upsert occurs when the client sends an update request to a valid URL that identifies a single entity that does not exist. An upsert occurs when the client sends an update request to a valid URL that identifies a single entity that does not yet exist.
      11.4.5 Delete an Entity A successful DELETE request to an entity's edit URL deletes the entity. To delete an individual entity, the client makes a DELETE request to a URL that identifies the entity. Services MAY restrict deletes only to requests addressing the edit URL of the entity.
      Show
      Section Current Text New Text 11.2.2 Requesting Individual Entities   To retrieve an individual entity, the client makes a GET request to the read URL of an entity. To retrieve an individual entity, the client makes a GET request to a URL that identifies the entity, e.g. its read URL. 11.4.3 Update an Entity  (no statement) To update an individual entity, the client makes a PATCH or PUT request to a URL that identifies the entity. Services MAY restrict updates only to requests addressing the edit URL of the entity. 11.4.4 Upsert an Entity An upsert occurs when the client sends an update request to a valid URL that identifies a single entity that does not exist. An upsert occurs when the client sends an update request to a valid URL that identifies a single entity that does not yet exist. 11.4.5 Delete an Entity A successful DELETE request to an entity's edit URL deletes the entity. To delete an individual entity, the client makes a DELETE request to a URL that identifies the entity. Services MAY restrict deletes only to requests addressing the edit URL of the entity.
    • Resolution:
      Show
      https://www.oasis-open.org/committees/download.php/64834/odata-v4.01-wd06-part1-protocol-2019-03-08.docx

      Description

      Section 11.2.2 Requesting Individual Entities states:

      To retrieve an individual entity, the client makes a GET request to the read URL of an entity.

      This seems to suggest that read access is only possible via the readLink (and in subsequent paragraphs: the editLink or the canonical URL), and not for example via a navigation URL such as Employees(123)/Manager.

      Section 11.4.3 Update an Entity does not state at all which kinds of URLs can be used with PATCH or PUT.

      Section 11.4.4 Upsert an Entity allows any valid URL that identifies a single entity.

      Section 11.4.5 Delete an Entity only allows the edit URL.

      This is inconsistent and confusing.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              handl Ralf Handl
            • Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: