There's no such thing as an RPC engine. RPC is just one of the things that SOAP/WS can be used for. Unfortunately, the name of the "JAX-RPC" API made it seem that WS is all about RPC - not so. That's why JAX-RPC 2.0 was renamed to JAX-WS.
SOAP uses document style messaging where RPC is a remote procedure call system where the remote procedure / method is invoked via sending an xml.
No. SOAP (an XML application) is the underlying mechanism, on top of which both document-style and RPC-style WS can be implemented.