KEx: a peer-to-peer solution for distributed knowledge management