CICS and web services

CICS® provides support for web services.

What is a web service?

A web service has an interface, which hides the implementation details so that it can be used independently of the hardware or software platform on which it is implemented, and independently of the programming language in which it is written. This independence encourages web service based applications to be loosely coupled, component-oriented, cross-technology implementations. Web services can be used alone or with other web services to carry out a complex aggregation or a business transaction.

Web services supported by CICS

CICS supports two distinct web service protocols, the SOAP and the JavaScript Object Notation (JSON) protocols. These two protocols have distinct characteristics and advantages.

External standards supported by CICS

CICS support for web services conforms to a number of industry standards and specifications. The supported industry standards and specifications are listed in Supported standards.

CICS and z/OS Connect Enterprise Edition

z/OS® Connect Enterprise Edition is a separately-orderable IBM® product that runs in a standalone environment.

z/OS Connect Enterprise Edition provides RESTful API access to z/OS applications and data hosted in subsystems such as CICS, IMS, IBM MQ and Db2®. The framework provides concurrent access, through a common interface, to multiple z/OS subsystems.

z/OS Connect Enterprise Edition also provides the capability that allows CICS, IMS and z/OS applications to access any RESTful endpoint, inside or outside z/OS, through RESTful APIs with JSON formatted messages.

Web services terminology

Extensible Markup Language (XML)
A standard for document markup, which uses a generic syntax to mark up data with simple, human-readable tags. The standard is endorsed by the World Wide Web Consortium (W3C).
Initial SOAP sender
The SOAP sender that originates a SOAP message at the starting point of a SOAP message path.
JavaScript Object Notation (JSON)
A lightweight data-interchange format that is based on the object-literal notation of JavaScript. JSON is programming-language neutral but uses conventions from languages that include C, C++, C#, Java™, JavaScript, Perl, Python.
JSON schema
A JavaScript Object Notation document that describes the structure and constrains the contents of other JSON documents.
RESTful
Pertaining to applications and services that conform to Representational State Transfer (REST) constraints.
Service provider
The collection of software that provides a web service.
Service provider application
An application that is used in a service provider. Typically, a service provider application provides the business logic component of a service provider.
Service requester
The collection of software that is responsible for requesting a web service from a service provider.
Service requester application
An application that is used in a service requester. Typically, a service requester application provides the business logic component of a service requester.
Simple Object Access Protocol
See SOAP.
SOAP
Formerly an acronym for Simple Object Access Protocol. A lightweight protocol for exchange of information in a decentralized, distributed environment. It is an XML-based protocol that consists of three parts:
  • An envelope that defines a framework for describing what is in a message and how to process it
  • A set of encoding rules for expressing instances of application-defined data types
  • A convention for representing remote procedure calls and responses

SOAP can be used with other protocols, such as HTTP.

The specification for SOAP 1.1 is published at Simple Object Access Protocol (SOAP) 1.1.

SOAP intermediary
A SOAP node that is both a SOAP receiver and a SOAP sender and is targetable from within a SOAP message. It processes the SOAP header blocks targeted at it and forwards a SOAP message toward an ultimate SOAP receiver.
SOAP message path
The set of SOAP nodes through which a single SOAP message passes. These nodes include the initial SOAP sender, zero or more SOAP intermediaries, and an ultimate SOAP receiver.
SOAP node
Processing logic that operates on a SOAP message.
SOAP receiver
A SOAP node that accepts a SOAP message.
SOAP sender
A SOAP node that transmits a SOAP message.
Ultimate SOAP receiver
The SOAP receiver that is a final destination of a SOAP message. It is responsible for processing the contents of the SOAP body and any SOAP header blocks targeted at it.
UDDI
See Universal Description, Discovery and Integration.
Universal Description, Discovery and Integration
Universal Description, Discovery and Integration (UDDI) is a specification for distributed web-based information registries of web services. UDDI is also a publicly accessible set of implementations of the specification that allow businesses to register information about the web services that they offer, so that other businesses can find them. The specification is published by OASIS.
Web service
A software system designed to support interoperable machine-to-machine interaction over a network. It has an interface described in a machine-processable format (specifically, Web Service Description Language, or WSDL).
Web Services Addressing
Web Services Addressing (WS-Addressing) provides a transport-neutral mechanism to address web services and messages.
Web Services Atomic Transaction
A specification that provides the definition of an atomic transaction coordination type used to coordinate activities having an "all or nothing" property.

The specification is published by OASIS at Web Services Atomic Transaction.

Web service binding file
A file, associated with a WEBSERVICE resource, that contains information that CICS uses to map data between input and output messages, and application data structures.
Web service description
An XML document by which a service provider communicates the specifications for invoking a web service to a service requester. Web service descriptions are written in Web Service Description Language (WSDL).
Web Service Description Language
An XML application for describing web services. It is designed to separate the descriptions of the abstract functions offered by a service and the concrete details of a service, such as how and where that function is offered.

The specification is published at Web Services Description Language (WSDL).

Web Services Security
A set of enhancements to SOAP messaging that provides message integrity and confidentiality. The specification is published by OASIS at Web Services Security: SOAP Message Security 1.0 (WS-Security 2004).
WS-Atomic Transaction
See Web Services Atomic Transaction.
WS-I Basic Profile
A set of nonproprietary web services specifications, with clarifications and amendments to those specifications, which, taken together, promote interoperability between different implementations of web services. The profile is defined by the Web Services Interoperability Organization (WS-I) and version 1.0 is available at Web Services Interoperability Organization (WS-I) Basic Profile 1.0.
WSDL
See Web Service Description Language.
WSS
See Web Services Security.
XML
Extensible Markup Language.
XML namespace
A collection of names, identified by a URI reference, that are used in XML documents as element types and attribute names.
XML schema
An XML document that describes the structure and constrains the contents of other XML documents.
XML schema definition language
An XML syntax for writing XML schemas, recommended by the World Wide Web Consortium (W3C).