Represents a single value, of a specific data type, for an Attribute.
Values are assigned to and stored relative to a parent object (e.g. a Dimension
Node); however, the set of possible Attributes, their data types, and validation
constraints are defined separately (see: AttributeDefinition)
and not as a part of this object.
Fields
attrID
0.6required when...attrName is not set
string
|
The internal ID (in UUID canonical string format) of the
previously-defined Attribute to which this value corresponds.
If both the attrID and attrName fields are present,
then the id field should take precedent to avoid ambiguity in
cases where the ID and name could be mismatched.
|
attrName
0.6required when...attrID is not set
string
|
The name of the previously-defined Attribute to which this value corresponds;
this name is used to identify the Attribute to external systems.
If both the attrID and attrName fields are present,
then the id field should take precedent to avoid ambiguity in
cases where the ID and name could be mismatched.
0.6
min length:
1
0.6
max length:
255
|
type
string
|
Indicates the specific type of data held by this value object.
0.6
valid values:
base64
decimal
integer
percent
text
datetime
date
|
base64
string
|
Required when type is: base64
Encoded data must use only the ASCII symbols matching [A-Za-z0-9+/ ]
and the ASCII character '= ' used for trailing padding, as necessary.
Binary content of zero(0) byte length is represented as the empty string ("").
|
content
string
|
Required when type is: base64
Specifies the type of data encoded in the base64 field. The value
of this field should be a standard-compliant media (MIME) type; for example:
application/octet-stream , image/jpeg , etc.
|
integer
string
|
Required when type is: integer
Supports signed integer values up to and including those values that can be
represented as a 64-bit wide Two's Compliment binary number. With the exception
of an optional leading sign (+ or - ), all other symbols
must be ASCII characters '0' through '9'.
The service will accept raw, native JSON integer values
as well as quoted string versions of the same. However, the service will generally
send values in string (enclosed in double-quote "
characters); this is to avoid representation overflow issues on the recipient's
side (e.g. receiving a 64-bit value for a 32-bit wide field) and to enable possible
future support for values wider than 64 bits.
|
decimal
string
|
Required when type is one of:
Supports signed decimal values of an exact, but arbitrary, precision. With the
optional exceptions of a single leading sign (+ or - )
and single decimal separator (. ), all other symbols must be ASCII
characters '0' through '9'.
This value is always in a standard machine-readable format and encodes values
suited for use in mathematical computations. For example, the percentage value
10% is represented, mathematically, as 0.10 .
The service will accept raw, native JSON decimal values
as well as quoted string versions of the same. However, the service will generally
send values in string (enclosed in double-quote "
characters); this is to avoid representation and floating-point precision issues
on the recipient's side. For instance, Javascript-based clients may translate
a native JSON value into a 32- or 64-bit IEEE floating-point value which is incapable
of exactly representing the value 0.01 .
|
percent
string
|
Should be present when type is: percent.
If this field and decimal are both defined, preference should be
given to the value of the decimal field; however, it is important
to note the difference in scale between these two fields. This field
has the decimal place shifted right by two(2) places.
Supports signed percentage values of an exact, but arbitrary, precision. With the
optional exceptions of a single leading sign (+ or - )
and single decimal separator (. ), all other symbols must be ASCII
characters '0' through '9'.
This value is always in a standard machine-readable format and encodes percentage
values pre-scaled as often expected by Humans. For example, the
percentage value 12.3% is represented in this field as 12.3 .
See the decimal field for the unscaled representation (0.123).
The service will accept raw, native JSON decimal values
as well as quoted string versions of the same. However, the service will generally
send values in string (enclosed in double-quote "
characters); this is to avoid representation and floating-point precision issues
on the recipient's side. For instance, Javascript-based clients may translate
a native JSON value into a 32- or 64-bit IEEE floating-point value which is incapable
of exactly representing the value 0.01 .
|
text
string
|
Required when type is one of:
For other data types, this field may be provided as a convenience for display
purposes. For example, numeric value types may format the value for a particular
locale. Unless the data type is listed above as one for which this field is
required, then recipients must not be required to read or parse this field.
|
datetime
string
|
Required when type is: datetime
Supports datetime values up to and including those values that can be
represented as a valid datetime. Encoded data must meet ISO-8601 format
[yyyy-MM-ddTHH:mm:ssZ ].
|
date
string
|
Required when type is: date
Supports date values up to and including those values that can be
represented as a valid date. Encoded data must meet ISO-8601 format
[yyyy-MM-dd ].
|
Example
- text data (non-localized)
{
"attrID" :"c689acc7-ee13-3482-aa7b-c6a13419431a",
"attrName" :"MY_SIMPLE_TEXT",
"type" :"text",
"text" :"Some text goes here."
}
Example
- binary data (base-64 encoded)
{
"attrID" :"c689acc7-ee13-3482-aa7b-c6a13419431b",
"attrName" :"MY_BINARY_DATA",
"type" :"base64",
"base64" :"VGhpcyBpcyBteSBiaW5hcnkgZGF0YS4=",
"content" :"application/octet-stream"
}
Example
- integer value
{
"attrID" :"c689acc7-ee13-3482-aa7b-c6a13419431c",
"attrName" :"MY_INTEGER",
"type" :"integer",
"integer" :"123456789",
"text" :"123,456,789"
}
Example
- decimal value
{
"attrID" :"c689acc7-ee13-3482-aa7b-c6a13419431d",
"attrName" :"MY_DECIMAL",
"type" :"decimal",
"decimal" :"1234.5678",
"text" :"1,234.5678"
}
Example
- percent value
{
"attrID" :"c689acc7-ee13-3482-aa7b-c6a13419431e",
"attrName" :"MY_PERCENT",
"type" :"percent",
"decimal" :"12.3456",
"percent" :"1234.56",
"text" :"1,234.56%"
}
Example
- datetime value
{
"attrID" :"c689acc7-ee13-3482-aa7b-c6a13419431f",
"attrName" :"MY_DATETIME",
"type" :"datetime",
"dateTime" :"2007-12-03T10:15:30Z",
"text" :"03/12/2007 10:15:30"
}
Example
- date value
{
"attrID" :"c689acc7-ee13-3482-aa7b-c6a13419431g",
"attrName" :"MY_DATE",
"type" :"date",
"date" :"2007-12-03",
"text" :"03/12/2007"
}