Added a way to specify requirements using selectors