The dinamicy and uncertainness of resources in mobile networks ask for novel uncoupled, adaptable and autonomous programming abstractions. Although applications are built upon a middleware layer that encapsulates some of that complexity, there is a lot left to fully explore the potential of ubiquitous and pervasive systems. To provide an insight on the challenges to develop interoperable middleware systems, this paper highlights the requirements to build serviceoriented ubiquitous and pervasive middleware. These requirements are divided into primary and cross-cutting requirements. Primary requirements are Message Exchange,