Is there a reason to prefer isDefined over isEmpty? Despite being duals, it seems that they would otherwise be equivalent.