The spec is ambiguous regarding Duration resolution.
It clearly allows passing a ISO 8601 string or passing days, hours, minutes, seconds.
It is unclear it should also allow the string to be an expression that can be resolved to an ISO 8601 string.
In order to allow that, the pattern specified should not applied when deserializing if the string is between ${}. This is generic functionality that affects the SDK, hence a separate issue