Hybrid reasoning in the CARE middleware for context-awareness