This abstract DataType is the base data type for identifying binary data internally and externally. Its subtypes are used in objects of RecipeType which is defined in Section 7.7., of ConfigurationDataType which is defined in Section 12.12 and also in results. It is formally defined in Table 144.
The main rationale for introducing a base type and several (identical) subtypes is to facilitate a type-safe enforcing of the distinction between external and internal Ids in method arguments.
Table 144 – Definition of BinaryIdBaseDataType
|Name||Type||Description||O / M|
|Id||TrimmedString||Id is a system-wide unique name for identifying the binary data.||Mandatory|
|Version||TrimmedString||Represents an optional version number of the identified binary data. It is recommended to be of the format Major.minor.patch.build or a subset thereof, but the actual format is implementation defined.||Optional|
|hash||ByteString||Represents an optional hash of the binary content of the actual data (as it would be transmitted by the transfer methods).
The hash is supposed to be provided by the environment if existing. The environment shall use the same hash function on all binary data so that a difference in the hash indicates a difference in the binary data. It is recommended to use the SHA-256 algorithm for computing the hash, however, the actual algorithm is implementation-defined.
|hashAlgorithm||String||Name of the hash function used. Required if internally and externally computed hashes are to be compared||Optional|
|description||LocalizedText||Optional short human readable description of the configuration||Optional|