Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ODATA-1540 #203

Merged
merged 8 commits into from
Feb 21, 2024
Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 8 additions & 2 deletions docs/odata-protocol/odata-protocol.html
Original file line number Diff line number Diff line change
Expand Up @@ -497,6 +497,11 @@ <h2 id="11-changes-from-earlier-versions"><a name="ChangesfromEarlierVersions" h
<td>Response code <code>204 No Content</code> after successful data modification if requested response could not be constructed</td>
<td><a href="https://issues.oasis-open.org/browse/ODATA-1609">ODATA-1609</a></td>
</tr>
<tr class="even">
<td><a href="#InteroperableODataClients">Section 12.3</a></td>
<td>Encoding of plus character in URLs</td>
<td><a href="https://issues.oasis-open.org/browse/ODATA-1540">ODATA-1540</a></td>
</tr>
</tbody>
</table>
<h2 id="12-glossary"><a name="Glossary" href="#Glossary">1.2 Glossary</a></h2>
Expand Down Expand Up @@ -2807,15 +2812,16 @@ <h2 id="123-interoperable-odata-clients"><a name="InteroperableODataClients" hre
<li>MUST generate <code>PATCH</code> requests for updates, if the client supports updates (<a href="#UpdateanEntity">section 11.4.3</a>)</li>
<li>MUST include the <code>$</code> prefix when specifying OData-defined system query options</li>
<li>MUST use case-sensitive query options, operators, and canonical functions</li>
<li>MUST encode the plus character (octet <code>0x2B</code>) as <code>%2B</code> in URLs to avoid servers mis-interpreting the plus character as an encoded space</li>
<li>SHOULD support basic authentication as defined in <a href="#rfc7617">RFC7617</a> over HTTPS</li>
<li>MAY request entity references in place of entities previously returned in the response (<a href="#RequestingEntityReferences">section 11.2.8</a>)</li>
<li>MAY support deleted entities, link entities, deleted link entities in a delta response (<a href="#RequestingChanges">section 11.3</a>)</li>
<li>MAY support asynchronous responses (<a href="#AsynchronousRequests">section 11.6</a>)</li>
<li>MAY support <code>metadata=minimal</code> in a JSON response (see <a href="#ODataJSON">OData-JSON</a>)</li>
<li>MAY support <code>streaming</code> in a JSON response (see <a href="#ODataJSON">OData-JSON</a>)</li>
<li>MAY support <code>streaming </code>in a JSON response (see <a href="#ODataJSON">OData-JSON</a>)</li>
</ol>
<p>In addition, interoperable OData 4.01 clients</p>
<ol start="16" type="1">
<ol start="17" type="1">
<li>MUST send OData 4.0-compliant payloads to services that don’t advertise support for 4.01 or greater through the <a href="https://github.com/oasis-tcs/odata-vocabularies/blob/master/vocabularies/Org.OData.Core.V1.md#ODataVersions"><code>Core.ODataVersions</code></a> metadata annotation (see <a href="#ODataVocCore">OData-VocCore</a>)</li>
<li>MUST specify identifiers in payloads and URLs in the case they are specified in <code>$metadata</code></li>
<li>MUST be prepared to receive any valid 4.01 CSDL</li>
Expand Down
24 changes: 13 additions & 11 deletions docs/odata-protocol/odata-protocol.md
Original file line number Diff line number Diff line change
Expand Up @@ -347,6 +347,7 @@ resource representations that are exchanged using OData.
Section | Feature / Change | Issue
--------|------------------|------
[Section 11.4](#DataModification)| Response code `204 No Content` after successful data modification if requested response could not be constructed| [ODATA-1609](https://issues.oasis-open.org/browse/ODATA-1609)
[Section 12.3](#InteroperableODataClients) | Encoding of plus character in URLs | [ODATA-1540](https://issues.oasis-open.org/browse/ODATA-1540)

## <a name="Glossary" href="#Glossary">1.2 Glossary</a>

Expand Down Expand Up @@ -6660,30 +6661,31 @@ updates ([section 11.4.3](#UpdateanEntity))
query options
9. MUST use case-sensitive query options, operators, and canonical
functions
10. SHOULD support basic authentication as defined in
10. MUST encode the plus character (octet `0x2B`) as `%2B` in URLs to avoid servers mis-interpreting the plus character as an encoded space
11. SHOULD support basic authentication as defined in
[RFC7617](#rfc7617) over HTTPS
11. MAY request entity references in place of entities previously
12. MAY request entity references in place of entities previously
returned in the response ([section 11.2.8](#RequestingEntityReferences))
12. MAY support deleted entities, link entities, deleted link entities
13. MAY support deleted entities, link entities, deleted link entities
in a delta response ([section 11.3](#RequestingChanges))
13. MAY support asynchronous responses ([section 11.6](#AsynchronousRequests))
14. MAY support `metadata=minimal` in a JSON response (see
14. MAY support asynchronous responses ([section 11.6](#AsynchronousRequests))
15. MAY support `metadata=minimal` in a JSON response (see
[OData-JSON](#ODataJSON))
15. MAY support `streaming` in a JSON response (see
16. MAY support `streaming `in a JSON response (see
[OData-JSON](#ODataJSON))

In addition, interoperable OData 4.01 clients

16. MUST send OData 4.0-compliant payloads to services that don't
17. MUST send OData 4.0-compliant payloads to services that don't
advertise support for 4.01 or greater through the
[`Core.ODataVersions`](https://github.com/oasis-tcs/odata-vocabularies/blob/master/vocabularies/Org.OData.Core.V1.md#ODataVersions)
metadata annotation (see [OData-VocCore](#ODataVocCore))
17. MUST specify identifiers in payloads and URLs in the case they are
18. MUST specify identifiers in payloads and URLs in the case they are
specified in `$metadata`
18. MUST be prepared to receive any valid 4.01 CSDL
19. MUST be prepared to receive any valid 4.01 response according to
19. MUST be prepared to receive any valid 4.01 CSDL
20. MUST be prepared to receive any valid 4.01 response according to
the requested format
20. SHOULD use capabilities (see [OData-VocCap](#ODataVocCap)) to
21. SHOULD use capabilities (see [OData-VocCap](#ODataVocCap)) to
determine if a 4.01 feature is supported but MAY attempt syntax and be
prepared to handle either
[`501 Not Implemented`](#ResponseCode501NotImplemented) or
Expand Down
1 change: 1 addition & 0 deletions odata-protocol/1 Introduction.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ Section | Feature / Change | Issue
[Section ##DataModification]|
Response code `204 No Content` after successful data modification if requested response could not be constructed|
[ODATA-1609](https://issues.oasis-open.org/browse/ODATA-1609)
[Section ##InteroperableODataClients] | Encoding of plus character in URLs | [ODATA-1540](https://issues.oasis-open.org/browse/ODATA-1540)

## ##subsec Glossary

Expand Down
23 changes: 12 additions & 11 deletions odata-protocol/12 Conformance.md
Original file line number Diff line number Diff line change
Expand Up @@ -385,30 +385,31 @@ updates ([section ##UpdateanEntity])
query options
9. MUST use case-sensitive query options, operators, and canonical
functions
10. SHOULD support basic authentication as defined in
10. MUST encode the plus character (octet `0x2B`) as `%2B` in URLs to avoid servers mis-interpreting the plus character as an encoded space
11. SHOULD support basic authentication as defined in
[RFC7617](#rfc7617) over HTTPS
11. MAY request entity references in place of entities previously
12. MAY request entity references in place of entities previously
returned in the response ([section ##RequestingEntityReferences])
12. MAY support deleted entities, link entities, deleted link entities
13. MAY support deleted entities, link entities, deleted link entities
in a delta response ([section ##RequestingChanges])
13. MAY support asynchronous responses ([section ##AsynchronousRequests])
14. MAY support `metadata=minimal` in a JSON response (see
14. MAY support asynchronous responses ([section ##AsynchronousRequests])
15. MAY support `metadata=minimal` in a JSON response (see
[OData-JSON](#ODataJSON))
15. MAY support `streaming` in a JSON response (see
16. MAY support `streaming `in a JSON response (see
[OData-JSON](#ODataJSON))

In addition, interoperable OData 4.01 clients

16. MUST send OData 4.0-compliant payloads to services that don't
17. MUST send OData 4.0-compliant payloads to services that don't
advertise support for 4.01 or greater through the
[`Core.ODataVersions`](https://github.com/oasis-tcs/odata-vocabularies/blob/master/vocabularies/Org.OData.Core.V1.md#ODataVersions)
metadata annotation (see [OData-VocCore](#ODataVocCore))
17. MUST specify identifiers in payloads and URLs in the case they are
18. MUST specify identifiers in payloads and URLs in the case they are
specified in `$metadata`
18. MUST be prepared to receive any valid 4.01 CSDL
19. MUST be prepared to receive any valid 4.01 response according to
19. MUST be prepared to receive any valid 4.01 CSDL
20. MUST be prepared to receive any valid 4.01 response according to
the requested format
20. SHOULD use capabilities (see [OData-VocCap](#ODataVocCap)) to
21. SHOULD use capabilities (see [OData-VocCap](#ODataVocCap)) to
determine if a 4.01 feature is supported but MAY attempt syntax and be
prepared to handle either
[`501 Not Implemented`](#ResponseCode501NotImplemented) or
Expand Down