Semantic interoperability in ad-hoc computing environments