Finished implementation of all requirement types, and split them from
the attribute list