The way it indicates an optional value is by wrapping it in a Vector from Ada.Containers, and add a pre-condition that there can only be 0 or 1 element in that vector.
Why a Vector and not just a Holder? That would avoid the need for a pre-condition.