Do we need null checks here and for similar non-nullable properties of the other domain objects, or are we assuming that we'll always be constructing these correctly from internal code?