The ability to request computational resources, in a manner which hides the detail of the particular physical resources resources on which the computation will be imple-mented, is a core function in a working Grid. Indeed, if the Grid as an abstract concept is to have any meaning, beyond the particular implementations of given middleware systems which describe themselves as Grids, then any well-composed resource request expressed in terms of one system can be translated into the resource description mechanisms of the other. We outline a theoretical framework to provide the basis of such translation and the Grid invariants which underly it. We illustrate this framework via a case study of an architecture for interoperability of two well-established systems, Globus and Unicore, that implement reasonably complete solutions for metacomputing applications running on a computational Grid. A fruit of this approach is the realisation of a highly flexible re-source broker, which enables the end-user scientists to describe their need for computation in terms of the scientific domain rather than as detailed specification for each individual resource Indeed the individual resources to run the work should not need to be known by the end-user.