Service compatibility is more than type compatibility
Using WS-Policy, services describe their service-assurance capabilities and requirements in the form of a computer-readable policy expression containing combinations of assertions. This allows services to select each other based on "how" or "with what quality" they deliver their contracts.
Each policy assertion is identified by a stable and globally-unique name, which has a meaning that is consistent in time and space no matter which service the assertion is applied to. A policy assertion can also have parameters that qualify the exact interpretation of the assertion.