Answering XPath queries with search predicates in structured P2P networks