OverviewThis is the Safari online edition of the printed book.
The Ultimate Guide for Designing and
Governing Web Service Contracts
For Web services to succeed as part of SOA,
they require balanced, effective technical contracts that enable
services to be evolved and repeatedly reused for years to come.
Now, a team of industry experts presents the first end-to-end guide
to designing and governing Web service contracts. Writing for
developers, architects, governance specialists, and other IT
professionals, the authors cover the following areas:
Understanding Web Service Contract
Technologies
Initial chapters and ongoing supplementary
content help even the most inexperienced professional get up to
speed on how all of the different technologies and design
considerations relate to the creation of Web service contracts. For
example, a visual anatomy of a Web service contract documented from
logical and physical perspectives is provided, along with a chapter
dedicated to describing namespaces in plain English. The book is
further equipped with numerous case study examples and many
illustrations.
Fundamental and Advanced WSDL
Tutorial coverage of WSDL 1.1 and 2.0 and
detailed descriptions of their differences is followed by numerous
advanced WSDL topics and design techniques, including extreme loose
coupling, modularization options, use of extensibility elements,
asynchrony, message dispatch, service instance identification,
non-SOAP HTTP binding, and WS-BPEL extensions. Also explained is
how WSDL definitions are shaped by key SOA design patterns.
Fundamental and Advanced XML
Schema
XML Schema basics are covered within the
context of Web services and SOA, after which advanced XML Schema
chapters delve into a variety of specialized message design
considerations and techniques, including the use of wildcards,
reusability of schemas and schema fragments, type inheritance and
composition, CRUD-style message design, and combining industry and
custom schemas.
Fundamental and Advanced
WS-Policy
Topics, such as Policy Expression Structure,
Composite Policies, Operator Composition Rules, and Policy
Attachment establish a foundation upon which more advanced topics,
such as policy reusability and centralization, nested,
parameterized, and ignorable assertions are covered, along with an
exploration of creating concurrent policy-enabled contracts and
designing custom policy assertions and vocabularies.
Fundamental Message Design with
SOAP
A broad range of message design-related topics are
covered, including SOAP message structures, SOAP nodes and roles,
SOAP faults, designing custom SOAP headers and working with
industry-standard SOAP headers.
Advanced Message Design with
WS-Addressing
The art of message design is taken to a new
level with in-depth descriptions of WS-Addressing endpoint
references (EPRs) and MAP headers and an exploration of how they
are applied via SOA design patterns. Also covered are WSDL binding
considerations, related MEP rules, WS-Addressing policy assertions,
and detailed coverage of how WS-Addressing relates to SOAP Action
values.
Advanced Message Design with MTOM, and
SwA
Developing SOAP messages capable of
transporting large documents or binary content is explored with a
documentation of the MTOM packaging and serialization framework
(including MTOM-related policy assertions), together with the SOAP
with Attachments (SwA) standard and the related WS-I Attachments
Profile.
Versioning Techniques and
Strategies
Fundamental versioning theory starts off a
series of chapters that dive into a variety of versioning
techniques based on proven SOA design patterns including backward
and forward compatibility, version identification strategies,
service termination, policy versioning, validation by projection,
concurrency control, partial understanding, and versioning with and
without wildcards.
Web Service Contracts and SOA
The constant focus of this book is on the
design and versioning of Web service contracts in support of SOA
and service-orientation. Relevant SOA design principles and design
patterns are periodically discussed to demonstrate how specific Web
service technologies can be applied and further optimized.
Furthermore, several of the advanced chapters provide expert
techniques for designing Web service contracts while taking SOA
governance considerations into account.
About the Web Sites
www.soabooks.com supplements this
book with a variety of resources, including a diagram symbol
legend, glossary, supplementary articles, and source code available
for download.
www.soaspecs.com provides further support by
establishing a descriptive portal to XML and Web services
specifications referenced in all of Erl's Service-Oriented
Architecture books.
Foreword
Preface
Chapter 1: Introduction
Chapter 2: Case Study Background
Part I: Fundamental Service Contract
Design
Chapter 3: SOA Fundamentals and Web Service
Contracts
Chapter 4: Anatomy of a Web Service
Contract
Chapter 5: A Plain English Guide to
Namespaces
Chapter 6: Fundamental XML Schema: Types and
Message Structure Basics
Chapter 7: Fundamental WSDL Part I: Abstract
Description Design
Chapter 8: Fundamental WSDL Part II:
Concrete Description Design
Chapter 9: Fundamental WSDL 2.0: New
Features, and Design Options
Chapter 10: Fundamental WS-Policy:
Expression, Assertion, and Attachment
Chapter 11: Fundamental Message Design: SOAP
Envelope Structure, and Header Block Processing
Part II: Advanced Service Contract
Design
Chapter 12: Advanced XML Schema Part I:
Message Flexibility, and Type Inheritance and Composition
Chapter 13: Advanced XML Schema Part II:
Reusability, Derived Types, and Relational Design
Chapter 14: Advanced WSDL Part I:
Modularization, Extensibility, MEPs, and Asynchrony
Chapter 15: Advanced WSDL Part II: Message
Dispatch, Service Instance Identification, and Non-SOAP HTTP
Binding
Chapter 16: Advanced WS-Policy Part I:
Policy Centralization and Nested, Parameterized, and Ignorable
Assertions
Chapter 17: Advanced WS-Policy Part II:
Custom Policy Assertion Design, Runtime Representation, and
Compatibility
Chapter 18: Advanced Message Design Part I:
WS-Addressing Vocabularies
Chapter 19: Advanced Message Design Part II:
WS-Addressing Rules and Design Techniques
Part III: Service Contract
Versioning
Chapter 20: Versioning Fundamentals
Chapter 21: Versioning WSDL Definitions
Chapter 22: Versioning Message Schemas
Chapter 23: Advanced Versioning
Part IV: Appendices
Appendix A: Case Study Conclusion
Appendix B: A Comparison of Web Services and
REST Services
Appendix C: How Technology Standards are
Developed
Appendix D: Alphabetical Pseudo Schema
Reference
Appendix E: SOA Design Patterns Related to
This Book