Added a check for empty origin and identifier specifications, to avoid creating arrays that are mistaken for values