SOA is not a implementation/programming technology or service itself.
According to wiki SOA can be defined as:
SOA is an architecture style consists of design principles and rules based on loosely coupled services used in system development and integration in computing with following characteristics:
•Standardized service contract – Services adhere to a communications agreement, as defined collectively by one or more service-description documents.
•Service Loose Coupling – Services maintain a relationship that minimizes dependencies and only requires that they maintain an awareness of each other.
•Service abstraction – Beyond descriptions in the service contract, services hide logic from the outside world.
•Service reusability – Logic is divided into services with the intention of promoting reuse.
•Service autonomy – Services have control over the logic they encapsulate.
•Service granularity – A design consideration to provide optimal scope and right granular level of the business functionality in a service operation.
•Service statelessness – Services minimize resource consumption by deferring the management of state information when necessary
•Service discoverability – Services are supplemented with communicative meta data by which they can be effectively discovered and interpreted.
•Service composability – Services are effective composition participants, regardless of the size and complexity of the composition.
•Service normalization – Services are decomposed and/or consolidated to a level of normal form to minimize redundancy. In some cases, services are denormalized for specific purposes, such as performance optimization, access, and aggregation.
•Service optimization – All else equal, high-quality services are generally preferable to low-quality ones.
•Service relevance – Functionality is presented at a granularity recognized by the user as a meaningful service.
•Service encapsulation – Many services are consolidated for use under the SOA. Often such services were not planned to be under SOA.
•Service location transparency – This refers to the ability of a service consumer to invoke a service regardless of its actual location in the network. This also recognizes the discoverability property (one of the core principle of SOA) and the right of a consumer to access the service. Often, the idea of service virtualization also relates to location transparency. This is where the consumer simply calls a logical service while a suitable SOA-enabling runtime infrastructure component, commonly a service bus, maps this logical service call to a physical service.