First-Generation Web Services

Second-Generation Web Services

|
Web Services Description Language (WSDL)
|
|
Web services need to be defined in a consistent manner so that they can be discovered by and interfaced with other services and applications. The Web Services Description Language is a W3C specification providing the foremost language for the description of Web service definitions.
|
WSDL 1.1
Status: Working Group Note
Location: W3C (html)
|
WSDL 2.0 Part 1 (core language)
Status: Recommendation
Location: W3C (html)
|
WSDL 2.0 Part 2 (message patterns)
Status: Recommendation
Location: W3C (html)
|
|
Simple Object Access Protocol (SOAP)
|
|
Although originally conceived as a technology to bridge the gap between disparate RPC-based communication platforms, SOAP has evolved into the most widely supported messaging format and protocol for use with XML Web services.
|
|
The SOAP specification establishes a standard message format that consists of an XML document capable of hosting RPC and document-centric data. This facilitates synchronous (request and response) as well as asynchronous (process-driven) data exchange models. With WSDL establishing a standard endpoint description format for applications, the document-centric message format is much more common.
|
SOAP 1.1
Status: W3C Note
Location: W3C (html)
|
SOAP 1.2 Part 0 (primer)
Status: Recommendation
Location: W3C (html)
|
SOAP 1.2 Part 1 (messaging framework)
Status: Recommendation
Location: W3C (html)
|
SOAP 1.2 Part 2 (adjuncts)
Status: Recommendation
Location: W3C (html)
|
SOAP 1.2 (assertions and test collection)
Status: Recommendation
Location: W3C (html)
|
SOAP Message Transmission Optimization Mechanism (MTOM)
Status: Recommendation
Location: W3C (html)
|
XML-binary Optimized Packaging (XOP)
Status: Recommendation
Location: W3C (html)
|
Universal Description, Discovery, and Integration (UDDI)
|
|
One of the fundamental components of a service-oriented architecture is a mechanism for Web service descriptions to be discovered by potential requestors. To establish this part of a Web services framework, a central directory to host service descriptions is required. Such a directory can become an integral part of an organization or an Internet community, so much so, it is considered an extension to infrastructure.
|
|
This is why the Universal Description, Discovery, and Integration specification has become increasingly important. A key part of UDDI is the standardization of profile records stored within such a directory, also known as a registry. Depending on who the registry is intended for, different implementations can be created.
|
UDDI 2.0 Specifications
Status: Standard
Location: OASIS (html)
|
UDDI 3.0 Specifications
Status: Standard
Location: OASIS (html)
|
|
WS-I Profiles and Web Services Architecture
|
|
To promote the evolution of industry standard, interoperable Web services platforms, architecture and technology profile specifications have been developed by the WS-I and the W3C, respectively.
|
WS-I Basic Profile 1.0a
Status: Final Material
Location: WS-I (html)
|
WS-I Basic Profile 1.1
Status: Working Group Draft
Location: WS-I (html)
|
WS-I Basic Profile 1.2
Status: Board Approval Draft
Location: WS-I (html)
|
WS-I Basic Security Profile 1.0
Status: Final Material
Location: WS-I (html)
|
WS-I Basic Security Profile 1.1
Status: Working Group Approval Draft
Location: WS-I (html)
|
WS-I Simple SOAP Binding Profile 1.0
Status: Working Group Draft
Location: WS-I (html)
|
WS-I Attachments Profile 1.0
Status: Final Material
Location: WS-I (html)
|
Web Services Architecture
Status: Working Group Note
Location: W3C (html)
|
|
Context and Transaction Management
|
|
The initial set of Web services technologies lacked the ability to support the structured maintenance of context throughout a service activity. Without an active, stateful context, Web services act independently and cannot support distributed transactions.
|
|
The WS-Coordination specification provides a context management system, which is applied to support atomic and long-running transactions, using protocols described in the WS-Transaction specification.
|
|
The atomic transaction part of the WS-Transaction specification is superseded by a separate specification titled WS-AtomicTransaction. Similarly, the WS-BusinessActivity specification replaces the corresponding coordination type definition within WS-Transaction.
|
Referenced Specifications:
WS-Coordination
WS-Transaction (and the WS-TX TC)
WS-AtomicTransaction
WS-BusinessActivity
|
Locations:
IBM
Microsoft
OASIS (WS-TX TC)
|
|
Business Process Definition and Execution
|
|
In order to compose Web services into a structured workflow, a standard vocabulary is required. The Business Process Execution Language for Web Services provides a process description vocabulary that can be compiled into runtime scripts, executable by middleware products that support orchestration. BPEL4WS (and its successor, WS-BPEL) brings Web services into the realm of enterprise integration.
|
Referenced Specifications:
WS-BPEL
BPEL4WS
|
Locations:
IBM (BPEL4WS)
Microsoft (BPEL4WS)
OASIS (WS-BPEL)
|
|
Probably the largest gap in the first-generation Web services platform was an absence of any real security standards. Consequently, organizations were reluctant to expose business processes over the Internet.
|
|
The WS-Security framework institutes a thorough security model consisting of a stack of complementary specifications. It establishes security measures to protect SOAP messages throughout a message path, and supports the creation of policies and the unification of trust boundaries. The core WS-Security specifications are further supplemented by a series of established XML security specifications.
|
Referenced Specifications:
WS-Security (and the WS-SX TC)
WS-Federation
WS-SecureConversation
WS-Trust
XML Encryption
XML Signature
XKMS
XACML
SAML
WS-I Basic Security Profile
|
Locations:
Microsoft (WS-Security)
IBM (WS-Security)
W3C (XML Encryption, XML Signature, XKMS)
OASIS (WS-Security, SAML)
OASIS (WS-SX TC)
|
|
Reliability, Routing, and Attachments
|
|
In order for a solution to be capable of enterprise-level automation, its communications framework must be failsafe, flexible, and efficient. The following WS-* specifications propose critical features that deal with reliabile delivery, self-governing messaging, and message attachments.
|
Referenced Specifications:
WS-ReliableMessaging (and the WS-RX TC)
WS-Attachments
SwA
DIME
|
Locations:
Microsoft (WS-ReliableMessaging)
IBM (WS-ReliableMessaging)
IBM (WS-Attachments)
OASIS (WS-RX TC)
W3C (WS-Addressing)
|
|
Within a service-oriented enterprise, it would be useful to be able to abstract high-level business rules, security rules, and descriptive properties so that they can be applied to groups of services as policies.
|
|
The WS-Policy framework consists of a set of specifications that allow for the description of such policies, as well as a standard means of attaching them to Web services. WS-MetadataExchange complements WS-Policy (and WSDL) by providing a standardized means of querying Web services for metadata.
|
Referenced Specifications:
WS-Policy
WS-PolicyAssertions
WS-PolicyAttachments
WS-MetadataExchange
|
Locations:
Microsoft
IBM (WS-Policy)
IBM (WS-MetadataExchange)
W3C (WS-Policy)
|
|
Other Referenced Specifications
|
Referenced Specifications:
WS-CDL (Choreography Description Language)
WS-Eventing
WS-Notification
WS-RF (Resource Framework)
|
Locations:
W3C (WS-CDL)
W3C (WS-Eventing)
IBM (WS-Notification)
OASIS (WS-RF)
|
|
Articles and Tutorials

• The WS-Coordination Context Management
Framework

• Cross-Service Transactions with
WS-AtomicTransaction

• Long-Running Transactions with WS-BusinessActivity

• An Overview of the WS-Security Framework

• Service-Oriented Business Processes with BPEL

• Building a Communications Framework with WS-Policy
and WS-ReliableMessaging

• Defining the Web Service with WSDL

• An Inside Look into SOAP Messaging

• UDDI In and Out of the Enterprise

• A W3C Web Services Glossary

• Understanding WS-Policy Part I:
Operator Composition Rules and Attachments

• Understanding WS-Policy Part II:
Operator Composition Rules and Attachments

• Web Service Contract Versioning Fundamentals
Part I: Version Identifiers and Versioning Strategies

• Web Service Contract Versioning Fundamentals
Part II: Version Identifiers and Versioning Strategies
SOA Design Patterns
by Thomas Erl

Foreword by Grady Booch

With contributions from David Chappell, Jason Hogg, Anish Karmarkar, Mark Little, David Orchard, Satadru Roy, Thomas Rischbeck, Arnaud Simon, Clemens Utschig, Dennis Wisnosky, and others.

Web Service Contract Design & Versioning for SOA
by Thomas Erl, Anish Karmarkar, Priscilla Walmsley, Hugo Haas, Umit Yalcinalp, Canyang Kevin Liu, David Orchard, Andre Tost, James Pasley

Foreword by David Chappell
SOA Principles of Service Design
by Thomas Erl

Service-Oriented Architecture:
Concepts, Technology, and Design
by Thomas Erl

Service-Oriented Architecture:
A Field Guide to Integrating XML and Web Services
by Thomas Erl

Coming Soon

Modern SOA Infrastructure:
Technology, Design, and Governance
by David Chappell, Thomas Erl, Mark Little, Thomas Rischbeck, Arnaud Simon
SOA with REST
by Raj Balasubramanian, Benjamin Carlyle, Thomas Erl, Cesare Pautasso
Next Generation SOA:
A Real-World Guide to Modern Service-Oriented Computing
by Pethuru Cheliah, Thomas Erl, Berthold Maier, Vijay Narayanan, Hajo Normann, Bernd Trops, Clemens Utschig-Utschig, Torsten Winterberg
SOA with .NET & Azure
by David Chou, John deVadoss, Thomas Erl, Nitin Gandhi, Darryl Hogan, Hanu Kommalapati, Brian Loesgen, Christoph Schittko, Herbjorn Wilhelmsen
SOA with Java
by Raj Balasubramanian, Khanderao Kand, Satadru Roy, Philip Thomas, Andre Tost, Clemens Utschig-Utschig
SOA Governance
by Toufic Boubez, Dirk Krafzig, Anne Thomas Manes, Robert Schneider, Leo Shuster, Andre Tost
SOA Security:
Practices, Patterns, and Technologies for Securing Services
by Toufic Boubez, Thomas Erl, Maryann Hondo, Francois Lascelles
SOA and Cloud Computing:
Practices, Patterns, Technologies
by Toufic Boubez, Thomas Erl, Nitin Gandhi, Tom Plunkett, Herbjorn Wilhelmsen



For more information about these books, visit: www.soabooks.com
|
More Resources

• www.soapatterns.org

• www.whatissoa.com

• www.soaprinciples.com

• www.soamagazine.com

• www.soamethodology.com

• www.soaglossary.com

• www.soa-manifesto.org

SOA Certified Professional

The books in this series are part of the official curriculum for the SOA Certified Professional program.

For more information:

• www.soaschool.com

• www.soacp.com

|
|