Service Composition in Open Agent Societies