In this paper we argue for middleware languages that aid in service composition. We outline where such languages could be useful through the description of our current architecture, and describe what we believe are the key requirements of such a language. We outline the current state of our implementation, and conclude by describing what requirements are placed on service providers by such composition middleware. Categories and Subject Descriptors D.2.12 [Software Engineering]: Interoperability Keywords Pervasive Computing, Middleware, Language Design