diff --git a/docs/odata-protocol/odata-protocol.html b/docs/odata-protocol/odata-protocol.html index 0a5a90a4f..b2ad03eb9 100644 --- a/docs/odata-protocol/odata-protocol.html +++ b/docs/odata-protocol/odata-protocol.html @@ -483,10 +483,22 @@

1 Introducti

The OData-CSDLXML specification defines an XML representation of the entity data model exposed by an OData service.

The OData-JSON document specifies the JSON format of the resource representations that are exchanged using OData.

1.1 Changes from Earlier Versions

- - - - + + + + + + + + + + + + + + + +
SectionFeature / ChangeIssue
Section 12.3Encoding of plus character in URLsODATA-1540

1.2 Glossary

1.2.1 Definitions of Terms

1.2.2 Acronyms and Abbreviations

@@ -2791,6 +2803,7 @@

MUST generate PATCH requests for updates, if the client supports updates (section 11.4.3)
  • MUST include the $ prefix when specifying OData-defined system query options
  • MUST use case-sensitive query options, operators, and canonical functions
  • +
  • MUST encode the plus character (octet 0x2B) as %2B in URLs to avoid servers mis-interpreting the plus character as an encoded space
  • SHOULD support basic authentication as defined in RFC7617 over HTTPS
  • MAY request entity references in place of entities previously returned in the response (section 11.2.8)
  • MAY support deleted entities, link entities, deleted link entities in a delta response (section 11.3)
  • @@ -2799,7 +2812,7 @@

    MAY support streaming in a JSON response (see OData-JSON)

    In addition, interoperable OData 4.01 clients

    -
      +
      1. MUST send OData 4.0-compliant payloads to services that don't advertise support for 4.01 or greater through the Core.ODataVersions metadata annotation (see OData-VocCore)
      2. MUST specify identifiers in payloads and URLs in the case they are specified in $metadata
      3. MUST be prepared to receive any valid 4.01 CSDL
      4. diff --git a/docs/odata-protocol/odata-protocol.md b/docs/odata-protocol/odata-protocol.md index bc321407a..7c34e86f9 100644 --- a/docs/odata-protocol/odata-protocol.md +++ b/docs/odata-protocol/odata-protocol.md @@ -344,8 +344,9 @@ resource representations that are exchanged using OData. ## 1.1 Changes from Earlier Versions - - +Section | Feature / Change | Issue +--------|------------------|------ +[Section 12.3](#InteroperableODataClients) | Encoding of plus character in URLs | [ODATA-1540](https://issues.oasis-open.org/browse/ODATA-1540) ## 1.2 Glossary @@ -6644,30 +6645,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