Empty is returned when the object you're using as input for the inheritance split doesn't exist.
For example, you did an xpath query which should have returned 1 object but returned nothing. Then you're executing the inheritance split on this object (without checking yourself if the object is empty). This means the inheritance split needs a way to tell you that the object is neither of the possible types but empty.