In this paper, we consider semantic service discovery in a global computing environment. We propose creating a dynamic overlay network by grouping together semantically related services. Each such group of services is termed a community. Communities are organized in a global taxonomy whose nodes are related contextually. The taxonomy can be seen as an expandable distributed semantic index over the system services, which aims at improving service discovery. Our performance results indicate that in certain cases, our service discovery mechanism outperforms even the case in which service indexes are fully replicated at all system sites. Keywords Mobile computing, pervasive computing, service discovery.