From d82e8da3f5b51f61bf348c2ffd6fff49b9ad88ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Heiko=20Thei=C3=9Fen?= Date: Thu, 28 Nov 2024 17:15:52 +0100 Subject: [PATCH] @ralfhandl's suggestion --- docs/odata-json-format/odata-json-format.html | 11 ++++++++--- docs/odata-json-format/odata-json-format.md | 4 +++- odata-json-format/1 Introduction.md | 3 +++ odata-json-format/4 Common Characteristics.md | 3 ++- 4 files changed, 16 insertions(+), 5 deletions(-) diff --git a/docs/odata-json-format/odata-json-format.html b/docs/odata-json-format/odata-json-format.html index c20e7c00..b6b17c64 100644 --- a/docs/odata-json-format/odata-json-format.html +++ b/docs/odata-json-format/odata-json-format.html @@ -389,16 +389,21 @@

1928 +Section 4.6.10 +Control information "@etag": "" to prevent updates +2021 + + Section 4.6.12 mediaContentType can be null 536 - + Section 7, Section A.2 Removed reference to obsolete version of GeoJSON 456 - + Section 15.3 type control information, if present, must come immediately after removed @@ -778,7 +783,7 @@

The etag control information MAY be applied to an entity or collection in a response. The value of the control information is an entity tag (ETag) which is an opaque string value that can be used in a subsequent request to determine if the value of the entity or collection has changed.

-

For details on how ETags are used, see OData-Protocol, section 11.4.1.1. The special value "@etag": "" is equivalent to the header If-None-Match: *, see OData-Protocol, section 11.4.12.

+

For details on how ETags are used, see OData-Protocol, section 11.4.1.1. The special value "@etag": "*" is equivalent to the header If-Match: *, and the special value "@etag": "" is equivalent to the header If-None-Match: *, see OData-Protocol, section 11.4.12.

The etag control information is ignored in request payloads for single entities and not written in responses if metadata=none is requested.

diff --git a/docs/odata-json-format/odata-json-format.md b/docs/odata-json-format/odata-json-format.md index dc88008f..5e0dd114 100644 --- a/docs/odata-json-format/odata-json-format.md +++ b/docs/odata-json-format/odata-json-format.md @@ -218,6 +218,7 @@ Section | Feature / Change | Issue --------|------------------|------ [Section 4.6.1](#ControlInformationcontextodatacontext)| Fragment portion of Context URL is not percent-encoded| [368](https://github.com/oasis-tcs/odata-specs/issues/368) [Section 4.6.8](#ControlInformationidodataid)| Transient entities can be identifiable| [1928](https://github.com/oasis-tcs/odata-specs/issues/1928) +[Section 4.6.10](#ControlInformationetagodataetag)| Control information `"@etag": ""` to prevent updates| [2021](https://github.com/oasis-tcs/odata-specs/issues/2021) [Section 4.6.12](#ControlInformationmediaodatamedia)| `mediaContentType` can be `null`| [536](https://github.com/oasis-tcs/odata-specs/issues/536) [Section 7](#StructuralProperty), [Section A.2](#InformativeReferences)| Removed reference to obsolete version of GeoJSON| [456](https://github.com/oasis-tcs/odata-specs/issues/456) [Section 15.3](#DeletedEntity) | `type` control information, if present, must come immediately after `removed` | @@ -1047,7 +1048,8 @@ opaque string value that can be used in a subsequent request to determine if the value of the entity or collection has changed. For details on how ETags are used, see [OData-Protocol, section 11.4.1.1](https://docs.oasis-open.org/odata/odata/v4.02/odata-v4.02-part1-protocol.html#UseofETagsforAvoidingUpdateConflicts). -The special value `"@etag": ""` is equivalent to the header `If-None-Match: *`, +The special value `"@etag": "*"` is equivalent to the header `If-Match: *`, +and the special value `"@etag": ""` is equivalent to the header `If-None-Match: *`, see [OData-Protocol, section 11.4.12](https://docs.oasis-open.org/odata/odata/v4.02/odata-v4.02-part1-protocol.html#UpdateaCollectionofEntities). The `etag` control information is ignored in request payloads for diff --git a/odata-json-format/1 Introduction.md b/odata-json-format/1 Introduction.md index 9d8e31c5..fdaa5e3c 100644 --- a/odata-json-format/1 Introduction.md +++ b/odata-json-format/1 Introduction.md @@ -27,6 +27,9 @@ Fragment portion of Context URL is not percent-encoded| [Section ##ControlInformationidodataid]| Transient entities can be identifiable| [1928](https://github.com/oasis-tcs/odata-specs/issues/1928) +[Section ##ControlInformationetagodataetag]| +Control information `"@etag": ""` to prevent updates| +[2021](https://github.com/oasis-tcs/odata-specs/issues/2021) [Section ##ControlInformationmediaodatamedia]| `mediaContentType` can be `null`| [536](https://github.com/oasis-tcs/odata-specs/issues/536) diff --git a/odata-json-format/4 Common Characteristics.md b/odata-json-format/4 Common Characteristics.md index 5ec11f9a..268816ac 100644 --- a/odata-json-format/4 Common Characteristics.md +++ b/odata-json-format/4 Common Characteristics.md @@ -499,7 +499,8 @@ opaque string value that can be used in a subsequent request to determine if the value of the entity or collection has changed. For details on how ETags are used, see [#OData-Protocol#UseofETagsforAvoidingUpdateConflicts]. -The special value `"@etag": ""` is equivalent to the header `If-None-Match: *`, +The special value `"@etag": "*"` is equivalent to the header `If-Match: *`, +and the special value `"@etag": ""` is equivalent to the header `If-None-Match: *`, see [#OData-Protocol#UpdateaCollectionofEntities]. The `etag` control information is ignored in request payloads for