Why are nulls not permitted in OSID contracts?
Primarily, this was done to avoid interoperability issues where two OSID Providers exhibit different behaviors. An application coded to a strict OSID Provider that never has nulls will look like this:
...