From 3571d78b20cc9e74fb2dbafd99afb259b8f4a371 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Heiko=20Thei=C3=9Fen?= Date: Wed, 2 Oct 2024 17:52:42 +0200 Subject: [PATCH] Caution: next links (#2001) --- docs/odata-json-format/odata-json-format.html | 2 +- docs/odata-json-format/odata-json-format.md | 4 +++- docs/odata-protocol/odata-protocol.html | 2 +- docs/odata-protocol/odata-protocol.md | 3 ++- odata-json-format/4 Common Characteristics.md | 4 +++- odata-protocol/11 Data Service Requests.md | 3 ++- 6 files changed, 12 insertions(+), 6 deletions(-) diff --git a/docs/odata-json-format/odata-json-format.html b/docs/odata-json-format/odata-json-format.html index 2b89ccdb..50fe4189 100644 --- a/docs/odata-json-format/odata-json-format.html +++ b/docs/odata-json-format/odata-json-format.html @@ -723,7 +723,7 @@

4.6.5 Control Information: nextLink (odata.nextLink)

The nextLink control information indicates that a response is only a subset of the requested collection. It contains a URL that allows retrieving the next subset of the requested collection.

-

This control information can also be applied to expanded to-many navigation properties.

+

This control information can also be applied to expanded to-many navigation properties and to collections of primitive or complex values.

4.6.6 Control Information: delta (odata.delta)

diff --git a/docs/odata-json-format/odata-json-format.md b/docs/odata-json-format/odata-json-format.md index 2dccc6fe..0dc397f1 100644 --- a/docs/odata-json-format/odata-json-format.md +++ b/docs/odata-json-format/odata-json-format.md @@ -923,7 +923,9 @@ is only a subset of the requested collection. It contains a [URL](URLsinMessageB allows retrieving the next subset of the requested collection. This control information can also be applied to [expanded to-many -navigation properties](#ExpandedNavigationProperty). +navigation properties](#ExpandedNavigationProperty) and to collections of +[primitive](#CollectionofPrimitiveValues) or [complex](#CollectionofComplexValues) +values. ### 4.6.6 Control Information: `delta` (`odata.delta`) diff --git a/docs/odata-protocol/odata-protocol.html b/docs/odata-protocol/odata-protocol.html index 67b5040b..8a009ba1 100644 --- a/docs/odata-protocol/odata-protocol.html +++ b/docs/odata-protocol/odata-protocol.html @@ -2100,7 +2100,7 @@
-

Responses that include only a partial set of the items identified by the request URL MUST contain a link that allows retrieving the next partial set of items. This link is called a next link; its representation is format-specific. The final partial set of items MUST NOT contain a next link.

+

Responses that include only a partial set of the items identified by the request URL MUST contain a link that allows retrieving the next partial set of items. This link is called a next link; its representation is format-specific. The final partial set of items MUST NOT contain a next link. Clients MUST check for next links before assuming to have received all items within a collection, including expanded and nested collections.

The client can request a maximum page size through the maxpagesize preference. The service may apply this requested page size or implement a page size different than, or in the absence of, this preference.

OData clients MUST treat the URL of the next link as opaque, and MUST NOT append system query options to the URL of a next link. Services may not allow a change of format on requests for subsequent pages using the next link. Clients therefore SHOULD request the same format on subsequent page requests using a compatible Accept header. OData services may use the reserved system query option $skiptoken when building next links. Its content is opaque, service-specific, and must only follow the rules for URL query parts.

OData clients MUST NOT use the system query option $skiptoken when constructing requests.

diff --git a/docs/odata-protocol/odata-protocol.md b/docs/odata-protocol/odata-protocol.md index 693825de..5f4f6a68 100644 --- a/docs/odata-protocol/odata-protocol.md +++ b/docs/odata-protocol/odata-protocol.md @@ -3555,7 +3555,8 @@ Responses that include only a partial set of the items identified by the request URL MUST contain a link that allows retrieving the next partial set of items. This link is called a *next link*; its representation is format-specific. The final partial set of items MUST NOT contain a next -link. +link. Clients MUST check for next links before assuming to have received +all items within a collection, including expanded and nested collections. The client can request a maximum page size through the [`maxpagesize`](#Preferencemaxpagesizeodatamaxpagesize) preference. The diff --git a/odata-json-format/4 Common Characteristics.md b/odata-json-format/4 Common Characteristics.md index 98448833..daa44aa1 100644 --- a/odata-json-format/4 Common Characteristics.md +++ b/odata-json-format/4 Common Characteristics.md @@ -376,7 +376,9 @@ is only a subset of the requested collection. It contains a [URL](URLsinMessageB allows retrieving the next subset of the requested collection. This control information can also be applied to [expanded to-many -navigation properties](#ExpandedNavigationProperty). +navigation properties](#ExpandedNavigationProperty) and to collections of +[primitive](#CollectionofPrimitiveValues) or [complex](#CollectionofComplexValues) +values. ### ##subsubsec Control Information: `delta` (`odata.delta`) diff --git a/odata-protocol/11 Data Service Requests.md b/odata-protocol/11 Data Service Requests.md index e122e92a..3a5f12d7 100644 --- a/odata-protocol/11 Data Service Requests.md +++ b/odata-protocol/11 Data Service Requests.md @@ -993,7 +993,8 @@ Responses that include only a partial set of the items identified by the request URL MUST contain a link that allows retrieving the next partial set of items. This link is called a *next link*; its representation is format-specific. The final partial set of items MUST NOT contain a next -link. +link. Clients MUST check for next links before assuming to have received +all items within a collection, including expanded and nested collections. The client can request a maximum page size through the [`maxpagesize`](#Preferencemaxpagesizeodatamaxpagesize) preference. The