Apaches's ActiveMQ supports a wide range of different protocols and makes it quite easy to find a cross-language-client.
From reading the documentation I get the impression that ActiveMQ is capable of translating protocols, although it is not stated explicitly. So for example a Java Client using AMQP protocol might queue a message which is fetched by a PHP client using STOMP.
My question is: Am I correct? If yes I wonder how ActiveMQ deals with different functionality supported by the protocols. For example AMQP states very clearly how messages might be queued while STOMP doesn't.