A Web service is an application that can be accessed and used over the Internet (or an intranet) using industry-standard protocols. In OpenEdge, a Web service is usually an AppServer™ application that is accessible to a client application through a Web server.
In OpenEdge, you can:
Create new Web services that you build as ABL (Advanced Business Language) applications and deploy on an AppServer.
Expose existing AppServer applications as Web services.
Create an interface to your Web services and deploy it on a Web server.
Create the client-side applications that interact with your Web services.
OpenEdge includes support for Web services that are based either on SOAP, or on REST.
SOAP (Simple Object Access Protocol) uses XML messages to exchange information between client-side applications and Web services. WSDL files publicize and describe the public interface to Web services. The XML Schema standard describes both simple and complex data types in WSDL files. SOAP uses HTTP only as a transport protocol. In OpenEdge, you deploy SOAP Web services on a Web Services Adapter (WSA) which runs in a Java Servlet Container on a Web server.
REST (Representation State Transfer) uses HTTP more extensively than SOAP. REST uses URIs to identify resources and employs HTTP verbs (GET, PUT, POST, DELETE) as methods to act upon resources. In OpenEdge, JSON is used as the data-interchange format. In OpenEdge, you deploy REST Web services in Web Application Archive files which run in a Java Servlet Container on a Web server.
Both SOAP and REST are industry standards, but there are many variations on how they are implemented. If you do a Web search, you will find a wealth of information on the standards and the variety of their implementation. For a high-level view of how they are implemented in OpenEdge, see Overview of REST Web services in OpenEdge and Overview of SOAP Web services in OpenEdge.