Skip to content

Commit

Permalink
Protocol 4.01 OS content (#76)
Browse files Browse the repository at this point in the history
Part of #52 

- [x] retarget to `main` after #48 has been merged
- [ ] Conformance: turn "section x.y" text into section references
- [x] Fix formatting of headlines starting with "OData" - currently get
surrounded with "[" and "]"
- [x] How to deal with headlines that differ only in numbers such as
"OData 4.0 Minimal Conformance Level" and "OData 4.01 Minimal
Conformance Level"?
  - Currently the numbers are removed from the anchors
- [x] Keeping them in the anchors would break all `#ResponseCodeXxx`
anchors because they would now include the numeric response code

---------

Co-authored-by: D024504 <[email protected]>
  • Loading branch information
ralfhandl and HeikoTheissen authored Aug 1, 2023
1 parent 442a63e commit da3a927
Show file tree
Hide file tree
Showing 39 changed files with 16,097 additions and 38,434 deletions.
6 changes: 5 additions & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
{
"cSpell.words": [
"asec",
"CSDL",
"ETag",
"odata",
"pandoc",
"subasec",
"subsec",
"subsubsec"
"subsubsec",
"subsubsubsec"
]
}
Binary file modified docs/odata-csdl-json/odata-csdl-json.pdf
Binary file not shown.
8 changes: 4 additions & 4 deletions docs/odata-csdl-json/styles/odata.css
Original file line number Diff line number Diff line change
Expand Up @@ -3,22 +3,22 @@ a:target {
}

a[href^="#_"],
a[href^="#OData"],
a[href^="#OData"]:not(a[href^="#OData4"]),
a[href^="#rfc"],
a[href^="#XML-"] {
font-weight: bold;
}

a[href^="#_"]::before,
a[href^="#OData"]::before,
a[href^="#OData"]:not(a[href^="#OData4"])::before,
a[href^="#rfc"]::before,
a[href^="#XML-"]::before {
content: "[";
font-weight: bold;
}

a[href^="#_"]::after,
a[href^="#OData"]::after,
a[href^="#OData"]:not(a[href^="#OData4"])::after,
a[href^="#rfc"]::after,
a[href^="#XML-"]::after {
content: "]";
Expand Down Expand Up @@ -195,4 +195,4 @@ h6 {

h2[id="22-example-data"] {
page-break-before: always;
}
}
Binary file modified docs/odata-csdl-xml/odata-csdl-xml.pdf
Binary file not shown.
8 changes: 4 additions & 4 deletions docs/odata-csdl-xml/styles/odata.css
Original file line number Diff line number Diff line change
Expand Up @@ -3,22 +3,22 @@ a:target {
}

a[href^="#_"],
a[href^="#OData"],
a[href^="#OData"]:not(a[href^="#OData4"]),
a[href^="#rfc"],
a[href^="#XML-"] {
font-weight: bold;
}

a[href^="#_"]::before,
a[href^="#OData"]::before,
a[href^="#OData"]:not(a[href^="#OData4"])::before,
a[href^="#rfc"]::before,
a[href^="#XML-"]::before {
content: "[";
font-weight: bold;
}

a[href^="#_"]::after,
a[href^="#OData"]::after,
a[href^="#OData"]:not(a[href^="#OData4"])::after,
a[href^="#rfc"]::after,
a[href^="#XML-"]::after {
content: "]";
Expand Down Expand Up @@ -195,4 +195,4 @@ h6 {

h2[id="22-example-data"] {
page-break-before: always;
}
}
Binary file not shown.
8 changes: 4 additions & 4 deletions docs/odata-data-aggregation-ext/styles/odata.css
Original file line number Diff line number Diff line change
Expand Up @@ -3,22 +3,22 @@ a:target {
}

a[href^="#_"],
a[href^="#OData"],
a[href^="#OData"]:not(a[href^="#OData4"]),
a[href^="#rfc"],
a[href^="#XML-"] {
font-weight: bold;
}

a[href^="#_"]::before,
a[href^="#OData"]::before,
a[href^="#OData"]:not(a[href^="#OData4"])::before,
a[href^="#rfc"]::before,
a[href^="#XML-"]::before {
content: "[";
font-weight: bold;
}

a[href^="#_"]::after,
a[href^="#OData"]::after,
a[href^="#OData"]:not(a[href^="#OData4"])::after,
a[href^="#rfc"]::after,
a[href^="#XML-"]::after {
content: "]";
Expand Down Expand Up @@ -195,4 +195,4 @@ h6 {

h2[id="22-example-data"] {
page-break-before: always;
}
}
6 changes: 2 additions & 4 deletions docs/odata-json-format/odata-json-format.html
Original file line number Diff line number Diff line change
Expand Up @@ -358,7 +358,7 @@ <h2 id="31-controlling-the-amount-of-control-information-in-responses"><a name="
<p>If a client prefers a very small wire size and is intelligent enough to compute data using metadata expressions, the <code>Accept</code> header should include <a href="#metadataminimalodatametadataminimal"><code>metadata=minimal</code></a>. If computation is more critical than wire size or the client is incapable of computing control information, <a href="#metadatafullodatametadatafull"><code>metadata=full</code></a> directs the service to inline the control information that normally would be computed from metadata expressions in the payload. <a href="#metadatanoneodatametadatanone"><code>metadata=none</code></a> is an option for clients that have out-of-band knowledge or don't require control information.</p>
<p>In addition, the client may use the <code>include-annotations</code> preference in the <code>Prefer</code> header to request additional control information. Services supporting this MUST NOT omit control information required by the chosen <code>metadata</code> parameter, and services MUST NOT exclude the <a href="#ControlInformationnextLinkodatanextLink"><code>nextLink</code></a>, <a href="#ControlInformationdeltaLinkodatadeltaLink"><code>deltaLink</code></a>, and <a href="#ControlInformationcountodatacount"><code>count</code></a> if they are required by the response type.</p>
<p>If the client includes the <code>OData-MaxVersion</code> header in a request and does not specify the <code>metadata</code> format parameter in either the <code>Accept</code> header or <code>$format</code> query option, the service MUST return at least the <a href="#metadataminimalodatametadataminimal">minimal control information</a>.</p>
<p>Note that in OData 4.0 the <code>metadata</code> format parameter was prefixed with <code>odata.</code>. Payloads with an <code>OData-Version</code> header equal to <code>4.0</code> MUST include the <code>odata.</code> prefix. Payloads with an <code>OData-Version </code>header equal to <code>4.01</code> or greater SHOULD NOT include the <code>odata.</code> prefix.</p>
<p>Note that in OData 4.0 the <code>metadata</code> format parameter was prefixed with <code>odata.</code>. Payloads with an <code>OData-Version</code> header equal to <code>4.0</code> MUST include the <code>odata.</code> prefix. Payloads with an <code>OData-Version</code> header equal to <code>4.01</code> or greater SHOULD NOT include the <code>odata.</code> prefix.</p>
<h3 id="311-metadataminimal-odatametadataminimal"><a name="metadataminimalodatametadataminimal" href="#metadataminimalodatametadataminimal">3.1.1 <code>metadata=minimal</code> (<code>odata.metadata=minimal</code>)</a></h3>
<p>The <code>metadata=minimal</code> format parameter indicates that the service SHOULD remove computable control information from the payload wherever possible. The response payload MUST contain at least the following <a href="#ControlInformation">control information</a>:</p>
<ul>
Expand Down Expand Up @@ -476,7 +476,7 @@ <h2 id="44-payload-ordering-constraints"><a name="PayloadOrderingConstraints" hr
<li>All other control information can appear anywhere in the payload as long as it does not violate any of the above rules.</li>
<li>For 4.0 payloads, annotations and control information for navigation properties MUST appear after all structural properties. 4.01 clients MUST NOT assume this ordering.</li>
</ul>
<p>Note that in OData 4.0 the <code>streaming</code> format parameter was prefixed with <code>odata.</code>. Payloads with an <code>OData-Version</code> header equal to <code>4.0</code> MUST include the <code>odata.</code> prefix. Payloads with an <code>OData-Version </code>header equal to <code>4.01</code> or greater SHOULD NOT include the <code>odata.</code> prefix.</p>
<p>Note that in OData 4.0 the <code>streaming</code> format parameter was prefixed with <code>odata.</code>. Payloads with an <code>OData-Version</code> header equal to <code>4.0</code> MUST include the <code>odata.</code> prefix. Payloads with an <code>OData-Version</code> header equal to <code>4.01</code> or greater SHOULD NOT include the <code>odata.</code> prefix.</p>
<h2 id="45-control-information"><a name="ControlInformation" href="#ControlInformation">4.5 Control Information</a></h2>
<p>In addition to the "pure data" a message body MAY contain <a href="#InstanceAnnotations">annotations</a> and control information that is represented as name/value pairs whose names start with <code>@</code>.</p>
<p>In requests and responses with an <code>OData-Version</code> header with a value of <code>4.0</code> control information names are prefixed with <code>@odata.</code>, e.g. <code>@odata.context</code>. In requests and responses without such a header the <code>odata.</code> prefix SHOULD be omitted, e.g. <code>@context</code>.</p>
Expand Down Expand Up @@ -2085,8 +2085,6 @@ <h2 id="c2-participants"><a name="Participants" href="#Participants">C.2 Partici
</table>
<hr />
<h1 id="appendix-d-revision-history"><a name="RevisionHistory" href="#RevisionHistory">Appendix D. Revision History</a></h1>
<!-- Optional section -->

<table>
<thead>
<tr class="header">
Expand Down
7 changes: 2 additions & 5 deletions docs/odata-json-format/odata-json-format.md
Original file line number Diff line number Diff line change
Expand Up @@ -375,7 +375,7 @@ information](#metadataminimalodatametadataminimal).
Note that in OData 4.0 the `metadata` format parameter was
prefixed with `odata.`. Payloads with an `OData-Version` header equal to
`4.0` MUST include the `odata.` prefix. Payloads with an
`OData-Version `header equal to `4.01` or greater SHOULD NOT
`OData-Version` header equal to `4.01` or greater SHOULD NOT
include the `odata.` prefix.

### <a name="metadataminimalodatametadataminimal" href="#metadataminimalodatametadataminimal">3.1.1 `metadata=minimal` (`odata.metadata=minimal`)</a>
Expand Down Expand Up @@ -714,7 +714,7 @@ constraints have to be met:
Note that in OData 4.0 the `streaming` format parameter was prefixed with
`odata.`. Payloads with an `OData-Version` header equal to
`4.0` MUST include the `odata.` prefix. Payloads with an
`OData-Version `header equal to `4.01` or greater SHOULD NOT
`OData-Version` header equal to `4.01` or greater SHOULD NOT
include the `odata.` prefix.

## <a name="ControlInformation" href="#ControlInformation">4.5 Control Information</a>
Expand Down Expand Up @@ -3676,7 +3676,6 @@ In addition, in order to comply with the OData 4.01 JSON format, a service:
28. MUST honor the `odata.etag` control information within `PUT`, `PATCH` or `DELETE` payloads, if specified
29. MUST support returning, in the final response to an asynchronous request, the `application/json` payload that would have been returned had the operation completed synchronously


-------

# <a name="References" href="#References">Appendix A. References</a>
Expand Down Expand Up @@ -3800,8 +3799,6 @@ The contributions of the OASIS OData Technical Committee members, enumerated in

# <a name="RevisionHistory" href="#RevisionHistory">Appendix D. Revision History</a>

<!-- Optional section -->

| Revision | Date | Editor | Changes Made |
| :--- | :--- | :--- | :--- |
| Working Draft 01 | 2023-07-20 | Ralf Handl | Import material from OData JSON Format Version 4.01 |
Expand Down
Binary file modified docs/odata-json-format/odata-json-format.pdf
Binary file not shown.
8 changes: 4 additions & 4 deletions docs/odata-json-format/styles/odata.css
Original file line number Diff line number Diff line change
Expand Up @@ -3,22 +3,22 @@ a:target {
}

a[href^="#_"],
a[href^="#OData"],
a[href^="#OData"]:not(a[href^="#OData4"]),
a[href^="#rfc"],
a[href^="#XML-"] {
font-weight: bold;
}

a[href^="#_"]::before,
a[href^="#OData"]::before,
a[href^="#OData"]:not(a[href^="#OData4"])::before,
a[href^="#rfc"]::before,
a[href^="#XML-"]::before {
content: "[";
font-weight: bold;
}

a[href^="#_"]::after,
a[href^="#OData"]::after,
a[href^="#OData"]:not(a[href^="#OData4"])::after,
a[href^="#rfc"]::after,
a[href^="#XML-"]::after {
content: "]";
Expand Down Expand Up @@ -195,4 +195,4 @@ h6 {

h2[id="22-example-data"] {
page-break-before: always;
}
}
Loading

0 comments on commit da3a927

Please sign in to comment.