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

Deprecate SRID value variable #1937

Merged
merged 10 commits into from
Jun 26, 2024
Merged
Show file tree
Hide file tree
Changes from 9 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
21 changes: 13 additions & 8 deletions docs/odata-csdl-json/odata-csdl-json.html
Original file line number Diff line number Diff line change
Expand Up @@ -400,31 +400,36 @@ <h2 id="11-changes-from-earlier-versions"><a name="ChangesfromEarlierVersions" h
<td><a href="https://github.com/oasis-tcs/odata-specs/issues/525">525</a></td>
</tr>
<tr class="even">
<td><a href="#SRID">Section 3.4.5</a></td>
<td>SRID value <code>variable</code> is deprecated</td>
<td><a href="https://github.com/oasis-tcs/odata-specs/issues/1935">1935</a></td>
</tr>
<tr class="odd">
<td><a href="#CSDLJSONDocument">Section 4</a></td>
<td>Additional <code>$Version</code> value <code>4.02</code></td>
<td></td>
</tr>
<tr class="odd">
<tr class="even">
<td><a href="#GeoValues">Section 14.3.13</a></td>
<td>Constant Geo values in annotations</td>
<td><a href="https://github.com/oasis-tcs/odata-specs/issues/654">654</a></td>
</tr>
<tr class="even">
<tr class="odd">
<td><a href="#StreamValues">Section 14.3.14</a></td>
<td>Constant Stream values in annotations</td>
<td><a href="https://github.com/oasis-tcs/odata-specs/issues/654">654</a></td>
</tr>
<tr class="odd">
<tr class="even">
<td><a href="#PathEvaluation">Section 14.4.1.2</a></td>
<td>New path evaluation rules for annotations targeting annotations and external targeting via container</td>
<td><a href="https://github.com/oasis-tcs/odata-specs/issues/575">575</a></td>
</tr>
<tr class="even">
<tr class="odd">
<td><a href="#IfThenElse">Section 14.4.7</a></td>
<td>Nested <code>If</code> without else part in collections</td>
<td><a href="https://github.com/oasis-tcs/odata-specs/issues/326">326</a></td>
</tr>
<tr class="odd">
<tr class="even">
<td><a href="#Conformance">Section 17</a></td>
<td>Additional conformance clauses for version 4.02</td>
<td></td>
Expand Down Expand Up @@ -738,7 +743,7 @@ <h2 id="33-primitive-types"><a name="PrimitiveTypes" href="#PrimitiveTypes">3.3
<p><code>Edm.Decimal</code> with a <a href="#Scale"><code>Scale</code></a> value of <code>floating</code>, <code>Edm.Double</code>, and <code>Edm.Single</code> allow the special numeric values <code>-INF</code>, <code>INF</code>, and <code>NaN</code>.</p>
<p><code>Edm.Stream</code> is a primitive type that can be used as a property of an <a href="#EntityType">entity type</a> or <a href="#ComplexType">complex type</a>, the underlying type for a <a href="#TypeDefinition">type definition</a>, or a binding or non-binding parameter or return type of an <a href="#Action">action</a> or <a href="#Function">function</a>. <code>Edm.Stream</code>, or a type definition whose underlying type is <code>Edm.Stream</code>, cannot be used in collections.</p>
<p>Some of these types allow facets, defined in section “<a href="#TypeFacets">Type Facets</a>”.</p>
<p>See rule <code>primitiveLiteral</code> in <a href="#ODataABNF">OData-ABNF</a> for the representation of primitive type values in URLs and <a href="#ODataJSON">OData-JSON</a> for the representation in requests and responses.</p>
<p>Representation of primitive type values within a URL is defined by the rule <code>primitiveLiteral</code> in <a href="#ODataABNF">OData-ABNF</a>. Representation within request and response bodies is format specific.</p>
</details>
<details open><summary>
<h2 id="34-type-facets"><a name="TypeFacets" href="#TypeFacets">3.4 Type Facets</a></h2>
Expand Down Expand Up @@ -843,7 +848,7 @@ <h3><a name="Unicode.1.4" href="#Unicode.1.4"><code>$Unicode</code></a></h3>
<h3 id="345-srid"><a name="SRID" href="#SRID">3.4.5 SRID</a></h3>
</summary>
<p>For a geometry- or geography-typed model element the <code>SRID</code> facet identifies which spatial reference system is applied to its values.</p>
<p>The value of the <code>SRID</code> facet MUST be a non-negative integer or the special value <code>variable</code>. If no value is specified, the facet defaults to <code>0</code> for <code>Geometry</code> types or <code>4326</code> for <code>Geography</code> types.</p>
<p>The value of the <code>SRID</code> facet MUST be a non-negative integer or the special value <code>variable</code>. If no value is specified, the facet defaults to <code>0</code> for <code>Geometry</code> types or <code>4326</code> for <code>Geography</code> types. Services SHOULD NOT use the special value <code>variable</code> as, for example, the <a href="#ODataJSON">OData-JSON</a> format does not define a representation for instance-specific spatial reference systems.</p>
<p>The valid values of the <code>SRID</code> facet and their meanings are as defined by the European Petroleum Survey Group <a href="#_EPSG">EPSG</a>.</p>
<section id="srid" class="varjson rep">
<h3><a name="SRID.1.5" href="#SRID.1.5"><code>$SRID</code></a></h3>
Expand Down Expand Up @@ -2103,7 +2108,7 @@ <h2 id="131-extending-an-entity-container"><a name="ExtendinganEntityContainer"
</summary>
<p>An entity container MAY specify that it extends another entity container in scope. All children of the “base” entity container are added to the “extending” entity container.</p>
<p>If the “extending” entity container defines an entity set with the same name as defined in any of its “base” containers, then the entity set’s type MUST specify an entity type derived from the entity type specified for the identically named entity set in the “base” container. The same holds for singletons. Action imports and function imports cannot be redefined, nor can the “extending” container define a child with the same name as a child of a different kind in a “base” container.</p>
<p>Note: services should not introduce cycles by extending entity containers. Clients should be prepared to process cycles introduced by extending entity containers.</p>
<p>Note: services SHOULD NOT introduce cycles by extending entity containers. Clients should be prepared to process cycles introduced by extending entity containers.</p>
<section id="extends" class="varjson rep">
<h3><a name="Extends.15.1" href="#Extends.15.1"><code>$Extends</code></a></h3>
<p>The value of <code>$Extends</code> is the qualified name of the entity container to be extended.</p>
Expand Down
11 changes: 6 additions & 5 deletions docs/odata-csdl-json/odata-csdl-json.md
Original file line number Diff line number Diff line change
Expand Up @@ -265,6 +265,7 @@ modifications made necessary to fully cover OData CSDL Version 4.01.
Section | Feature / Change | Issue
--------|------------------|------
[Section 3.3](#PrimitiveTypes)| Allow stream-valued non-binding parameters| [525](https://github.com/oasis-tcs/odata-specs/issues/525)
[Section 3.4.5](#SRID)| SRID value `variable` is deprecated| [1935](https://github.com/oasis-tcs/odata-specs/issues/1935)
[Section 4](#CSDLJSONDocument) | Additional `$Version` value `4.02` |
[Section 14.3.13](#GeoValues) | Constant Geo values in annotations | [654](https://github.com/oasis-tcs/odata-specs/issues/654)
[Section 14.3.14](#StreamValues) | Constant Stream values in annotations | [654](https://github.com/oasis-tcs/odata-specs/issues/654)
Expand Down Expand Up @@ -640,10 +641,8 @@ underlying type is `Edm.Stream`, cannot be used in collections.
Some of these types allow facets, defined in section
"[Type Facets](#TypeFacets)".

See rule `primitiveLiteral` in [OData-ABNF](#ODataABNF) for the
representation of primitive type values in URLs and
[OData-JSON](#ODataJSON) for the representation in requests and
responses.
Representation of primitive type values within a URL is defined by the rule `primitiveLiteral` in [OData-ABNF](#ODataABNF).
Representation within request and response bodies is format specific.

## <a name="TypeFacets" href="#TypeFacets">3.4 Type Facets</a>

Expand Down Expand Up @@ -846,6 +845,8 @@ spatial reference system is applied to its values.
The value of the `SRID` facet MUST be a non-negative integer or the
special value `variable`. If no value is specified, the facet defaults
to `0` for `Geometry` types or `4326` for `Geography` types.
Services SHOULD NOT use the special value `variable` as, for example, the [OData-JSON](#ODataJSON)
format does not define a representation for instance-specific spatial reference systems.

The valid values of the `SRID` facet and their meanings are as defined
by the European Petroleum Survey Group [EPSG](#_EPSG).
Expand Down Expand Up @@ -3162,7 +3163,7 @@ holds for singletons. Action imports and function imports cannot be
redefined, nor can the "extending" container define a child with the
same name as a child of a different kind in a "base" container.

Note: services should not introduce cycles by extending entity
Note: services SHOULD NOT introduce cycles by extending entity
containers. Clients should be prepared to process cycles introduced by
extending entity containers.

Expand Down
23 changes: 14 additions & 9 deletions docs/odata-csdl-xml/odata-csdl-xml.html
Original file line number Diff line number Diff line change
Expand Up @@ -399,36 +399,41 @@ <h2 id="11-changes-from-earlier-versions"><a name="ChangesfromEarlierVersions" h
<td><a href="https://github.com/oasis-tcs/odata-specs/issues/525">525</a></td>
</tr>
<tr class="even">
<td><a href="#SRID">Section 3.4.5</a></td>
<td>SRID value <code>variable</code> is deprecated</td>
<td><a href="https://github.com/oasis-tcs/odata-specs/issues/1935">1935</a></td>
</tr>
<tr class="odd">
<td><a href="#CSDLXMLDocument">Section 4</a></td>
<td>Additional <code>Version</code> value <code>4.02</code></td>
<td></td>
</tr>
<tr class="odd">
<tr class="even">
<td><a href="#EntityContainer">Section 13</a></td>
<td>All children of <code>edm:EntityContainer</code> are optional</td>
<td><a href="https://github.com/oasis-tcs/odata-specs/issues/464">464</a></td>
</tr>
<tr class="even">
<tr class="odd">
<td><a href="#GeoValues">Section 14.3.13</a></td>
<td>Constant Geo values in annotations</td>
<td><a href="https://github.com/oasis-tcs/odata-specs/issues/654">654</a></td>
</tr>
<tr class="odd">
<tr class="even">
<td><a href="#StreamValues">Section 14.3.14</a></td>
<td>Constant Stream values in annotations</td>
<td><a href="https://github.com/oasis-tcs/odata-specs/issues/654">654</a></td>
</tr>
<tr class="even">
<tr class="odd">
<td><a href="#PathEvaluation">Section 14.4.1.2</a></td>
<td>New path evaluation rules for annotations targeting annotations and external targeting via container</td>
<td><a href="https://github.com/oasis-tcs/odata-specs/issues/575">575</a></td>
</tr>
<tr class="odd">
<tr class="even">
<td><a href="#IfThenElse">Section 14.4.7</a></td>
<td>Nested <code>If</code> without else part in collections</td>
<td><a href="https://github.com/oasis-tcs/odata-specs/issues/326">326</a></td>
</tr>
<tr class="even">
<tr class="odd">
<td><a href="#Conformance">Section 17</a></td>
<td>Additional conformance clauses for version 4.02</td>
<td></td>
Expand Down Expand Up @@ -734,7 +739,7 @@ <h2 id="33-primitive-types"><a name="PrimitiveTypes" href="#PrimitiveTypes">3.3
<p><code>Edm.Decimal</code> with a <a href="#Scale"><code>Scale</code></a> value of <code>floating</code>, <code>Edm.Double</code>, and <code>Edm.Single</code> allow the special numeric values <code>-INF</code>, <code>INF</code>, and <code>NaN</code>.</p>
<p><code>Edm.Stream</code> is a primitive type that can be used as a property of an <a href="#EntityType">entity type</a> or <a href="#ComplexType">complex type</a>, the underlying type for a <a href="#TypeDefinition">type definition</a>, or a binding or non-binding parameter or return type of an <a href="#Action">action</a> or <a href="#Function">function</a>. <code>Edm.Stream</code>, or a type definition whose underlying type is <code>Edm.Stream</code>, cannot be used in collections.</p>
<p>Some of these types allow facets, defined in section “<a href="#TypeFacets">Type Facets</a>”.</p>
<p>See rule <code>primitiveLiteral</code> in <a href="#ODataABNF">OData-ABNF</a> for the representation of primitive type values in URLs and <a href="#ODataJSON">OData-JSON</a> for the representation in requests and responses.</p>
<p>Representation of primitive type values within a URL is defined by the rule <code>primitiveLiteral</code> in <a href="#ODataABNF">OData-ABNF</a>. Representation within request and response bodies is format specific.</p>
</details>
<details open><summary>
<h2 id="34-type-facets"><a name="TypeFacets" href="#TypeFacets">3.4 Type Facets</a></h2>
Expand Down Expand Up @@ -823,7 +828,7 @@ <h3><a name="AttributeUnicode.1.4" href="#AttributeUnicode.1.4">Attribute <code>
<h3 id="345-srid"><a name="SRID" href="#SRID">3.4.5 SRID</a></h3>
</summary>
<p>For a geometry- or geography-typed model element the <code>SRID</code> facet identifies which spatial reference system is applied to its values.</p>
<p>The value of the <code>SRID</code> facet MUST be a non-negative integer or the special value <code>variable</code>. If no value is specified, the facet defaults to <code>0</code> for <code>Geometry</code> types or <code>4326</code> for <code>Geography</code> types.</p>
<p>The value of the <code>SRID</code> facet MUST be a non-negative integer or the special value <code>variable</code>. If no value is specified, the facet defaults to <code>0</code> for <code>Geometry</code> types or <code>4326</code> for <code>Geography</code> types. Services SHOULD NOT use the special value <code>variable</code> as, for example, the <a href="#ODataJSON">OData-JSON</a> format does not define a representation for instance-specific spatial reference systems.</p>
<p>The valid values of the <code>SRID</code> facet and their meanings are as defined by the European Petroleum Survey Group <a href="#_EPSG">EPSG</a>.</p>
<section id="attribute-srid" class="varxml rep">
<h3><a name="AttributeSRID.1.5" href="#AttributeSRID.1.5">Attribute <code>SRID</code></a></h3>
Expand Down Expand Up @@ -1934,7 +1939,7 @@ <h2 id="131-extending-an-entity-container"><a name="ExtendinganEntityContainer"
</summary>
<p>An entity container MAY specify that it extends another entity container in scope. All children of the “base” entity container are added to the “extending” entity container.</p>
<p>If the “extending” entity container defines an entity set with the same name as defined in any of its “base” containers, then the entity set’s type MUST specify an entity type derived from the entity type specified for the identically named entity set in the “base” container. The same holds for singletons. Action imports and function imports cannot be redefined, nor can the “extending” container define a child with the same name as a child of a different kind in a “base” container.</p>
<p>Note: services should not introduce cycles by extending entity containers. Clients should be prepared to process cycles introduced by extending entity containers.</p>
<p>Note: services SHOULD NOT introduce cycles by extending entity containers. Clients should be prepared to process cycles introduced by extending entity containers.</p>
<section id="attribute-extends" class="varxml rep">
<h3><a name="AttributeExtends.24.2" href="#AttributeExtends.24.2">Attribute <code>Extends</code></a></h3>
<p>The value of <code>Extends</code> is the qualified name of the entity container to be extended.</p>
Expand Down
11 changes: 6 additions & 5 deletions docs/odata-csdl-xml/odata-csdl-xml.md
Original file line number Diff line number Diff line change
Expand Up @@ -265,6 +265,7 @@ Schema Definition Language (XSD) 1.1 as described in
Section | Feature / Change | Issue
--------|------------------|------
[Section 3.3](#PrimitiveTypes)| Allow stream-valued non-binding parameters| [525](https://github.com/oasis-tcs/odata-specs/issues/525)
[Section 3.4.5](#SRID)| SRID value `variable` is deprecated| [1935](https://github.com/oasis-tcs/odata-specs/issues/1935)
[Section 4](#CSDLXMLDocument) | Additional `Version` value `4.02` |
[Section 13](#EntityContainer)| All children of `edm:EntityContainer` are optional| [464](https://github.com/oasis-tcs/odata-specs/issues/464)
[Section 14.3.13](#GeoValues) | Constant Geo values in annotations | [654](https://github.com/oasis-tcs/odata-specs/issues/654)
Expand Down Expand Up @@ -583,10 +584,8 @@ underlying type is `Edm.Stream`, cannot be used in collections.
Some of these types allow facets, defined in section
"[Type Facets](#TypeFacets)".

See rule `primitiveLiteral` in [OData-ABNF](#ODataABNF) for the
representation of primitive type values in URLs and
[OData-JSON](#ODataJSON) for the representation in requests and
responses.
Representation of primitive type values within a URL is defined by the rule `primitiveLiteral` in [OData-ABNF](#ODataABNF).
Representation within request and response bodies is format specific.

## <a name="TypeFacets" href="#TypeFacets">3.4 Type Facets</a>

Expand Down Expand Up @@ -779,6 +778,8 @@ spatial reference system is applied to its values.
The value of the `SRID` facet MUST be a non-negative integer or the
special value `variable`. If no value is specified, the facet defaults
to `0` for `Geometry` types or `4326` for `Geography` types.
Services SHOULD NOT use the special value `variable` as, for example, the [OData-JSON](#ODataJSON)
format does not define a representation for instance-specific spatial reference systems.

The valid values of the `SRID` facet and their meanings are as defined
by the European Petroleum Survey Group [EPSG](#_EPSG).
Expand Down Expand Up @@ -2971,7 +2972,7 @@ holds for singletons. Action imports and function imports cannot be
redefined, nor can the "extending" container define a child with the
same name as a child of a different kind in a "base" container.

Note: services should not introduce cycles by extending entity
Note: services SHOULD NOT introduce cycles by extending entity
containers. Clients should be prepared to process cycles introduced by
extending entity containers.

Expand Down
7 changes: 6 additions & 1 deletion docs/odata-json-format/odata-json-format.html
Original file line number Diff line number Diff line change
Expand Up @@ -338,6 +338,11 @@ <h2 id="11-changes-from-earlier-versions"><a name="ChangesfromEarlierVersions" h
<td><code>mediaContentType</code> can be <code>null</code></td>
<td><a href="https://github.com/oasis-tcs/odata-specs/issues/536">536</a></td>
</tr>
<tr class="odd">
<td><a href="#StructuralProperty">Section 7</a>, <a href="#InformativeReferences">Section A.2</a></td>
<td>Removed reference to obsolete version of GeoJSON</td>
<td><a href="https://github.com/oasis-tcs/odata-specs/issues/456">456</a></td>
</tr>
</tbody>
</table>
</details>
Expand Down Expand Up @@ -892,7 +897,7 @@ <h2 id="71-primitive-value"><a name="PrimitiveValue" href="#PrimitiveValue">7.1
<p>Primitive values that cannot be represented, for example due to server conversion issues or IEEE754 limitations on the size of an <code>Edm.Int64</code> or <code>Edm.Decimal</code> value, are annotated with the <code>Core.ValueException</code> term. In this case, the payload MAY include an approximation of the value and MAY specify a string representation of the exact value in the <code>value</code> property of the annotation.</p>
<p>Enumeration values are represented as JSON strings whose content satisfies the rule <code>enumValue</code> in <a href="#ODataABNF">OData-ABNF</a>. The preferred representation is the <code>enumerationMember</code>. If no <code>enumerationMember</code> (or combination of named enumeration members) is available, the <code>enumMemberValue</code> representation may be used.</p>
<p>Geography and geometry values are represented as geometry types as defined in <a href="#rfc7946">RFC7946</a>.</p>
<p>Geography and geometry types have the same representation in a JSON payload. Whether the value represents a geography type or geometry type is inferred from its usage or specified using the <a href="#ControlInformationtypeodatatype"><code>type</code></a> control information.</p>
<p>Geography and geometry types have the same representation in a JSON payload. Whether the value represents a geography type or geometry type is inferred from its usage or specified using the <a href="#ControlInformationtypeodatatype"><code>type</code></a> control information. <a href="#rfc7946">RFC7946</a> does not define means for expressing instance-specific <a href="https://datatracker.ietf.org/doc/html/rfc7946#section-4">Coordinate Reference Systems</a>.</p>
<div class="example">
<p>Example 12:</p>
<div class="sourceCode" id="cb13"><pre class="sourceCode json"><code class="sourceCode json"><span id="cb13-1"><a href="#cb13-1" aria-hidden="true" tabindex="-1"></a><span class="fu">{</span></span>
Expand Down
Loading