The Grid paradigm of accessing heterogeneous distributed resources proved to be extremely effective, as many organizations are relying on Grid middlewares for their computational needs. Many of such middlewares exist, the result being a proliferation of selfcontained, non-interoperable "grid-islands". This means that different Grids, based on different middlewares, cannot share resources, e.g. jobs submitted on one Grid cannot be forwarded for execution on another one. To address this concern, standard interfaces are being proposed for some of the important functionalities provided by most Grids, namely job submission and management, authorization and authentication, resource modeling, and others.In this paper we review some recent standards which address interoperability for three important Grid services: the BES/JSDL specifications for job submission and management, the SAML notation for authorization and authentication, and the GLUE specification for resource modeling. We describe how standards-enhanced Grid components can be used to form interoperable building blocks for a Grid architecture, and describe how existing Grid software components have actually been re-engineered to support these specifications. From this experience we draw some conclusions on the strengths and weaknesses of the standards, and how they can be improved to address some of the issues we encountered.