Computer history has provided us with a growing number of numeric data types, and quite a few of them are reflected in Edm primitive types.
Integer types:
- Byte (0..2^8)
- SByte
- Int16
- Int32
- Int64
- Decimal Scale=0
Fixed-point types
- Decimal with VariableScale="false", see
ODATA-76
Floating-point types
- Decimal with VariableScale="true", see
ODATA-76 - Single
- Double
Especially for defining vocabularies it would be helpful to have an abstract type Edm.Number that can be applied to any of the numeric primitive types.
Field | Original Value | New Value |
---|---|---|
Proposal |
Define a single Numeric data type with facets to specify its range and precision, e.g. - MinValue - MaxValue - ItFloats - ... Have a close look at XML Schema 1.1 and IEEE 754 to detect the required facets. |
Define an abstract type Edm.Number as a specialization of Edm.PrimitiveType and a generalization of all numeric primitive types that can be used in term definitions and in complex types used within term definitions. |
Description |
Computer history has provided us with a growing number of numeric data types, and quite a few of them are reflected in Edm primitive types. Integer types: - Byte (0..2^8) - SByte - Int16 - Int32 - Int64 - Decimal Scale=0 Fixed-point types - Decimal --> not sure yet if this is fixed or floating point, see Floating-point types - Decimal --> not sure yet if this is fixed or floating point, see - Single - Double Missing numeric types - Quadruple == binary128 - DECFLOAT in various lengths |
Computer history has provided us with a growing number of numeric data types, and quite a few of them are reflected in Edm primitive types. Integer types: - Byte (0..2^8) - SByte - Int16 - Int32 - Int64 - Decimal Scale=0 Fixed-point types - Decimal with VariableScale="false", see Floating-point types - Decimal with VariableScale="true", see - Single - Double Especially for defining vocabularies it would be helpful to have an abstract type Edm.Number that can be applied to any of the numeric primitive types. |
Environment | [Proposed] |
Proposal | Define an abstract type Edm.Number as a specialization of Edm.PrimitiveType and a generalization of all numeric primitive types that can be used in term definitions and in complex types used within term definitions. |
Close without action Accepted: https://www.oasis-open.org/committees/download.php/48549/odata-meeting-29_on-20130314-minutes.html#odata-256 |
Status | New [ 10000 ] | Open [ 1 ] |
Status | Open [ 1 ] | Closed [ 6 ] |
Environment | [Proposed] | [Closed] |
Status | Closed [ 6 ] | Open [ 1 ] |
Resolution | Fixed [ 1 ] | |
Status | Open [ 1 ] | Resolved [ 5 ] |
Status | Resolved [ 5 ] | Applied [ 10002 ] |
Status | Applied [ 10002 ] | Closed [ 6 ] |
Reporter | Ralf Handl [ ralfhandl ] | Ralf Handl [ handl ] |
Assignee | Ralf Handl [ handl ] |
I was going to enter this same issue, for tracking purposes, although I propose we NOT do this. Most implementations have the concept of a 16, 32, or 64 bit integer and it's actually simpler to have the discrete types that reflect those common types than to attempt to define through facets (i.e., MaxValue on a Double, are not straightforward to represent.)