Is SOAP a transport protocol? if yes could you please explain how it can be defined as a transfer protocol if it's dependant on other application protocols like HTTP and SMTP?
SOAP is not a transport protocol. SOAP is an application layer protocol that relies on other application layer protocols (most commonly HTTP) to transport it. (The application layers are 5-7 in the OSI model, with SOAP usually considered part of layer 7.)
Transport protocols like TCP are more concerned with the reliability of transmitting data through flow control, error checking, guaranteeing delivery.