added additional options to observe entities and allow user specific predicates