0% found this document useful (0 votes)
48 views

WS-I Overview: Document Status: Public Date: January 15, 2003 Authors

The material contained herein is not a license, either expressly or impliedly, to any intellectual property owned or controlled by any of the authors or developers of this material or WS-I. There is no WARRANTY or condition of merchantability, of fitness for a particular purpose, of accuracy or completeness of responses, of results, of workmanlike effort, of lack of viruses, and of lack of negligence.
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
48 views

WS-I Overview: Document Status: Public Date: January 15, 2003 Authors

The material contained herein is not a license, either expressly or impliedly, to any intellectual property owned or controlled by any of the authors or developers of this material or WS-I. There is no WARRANTY or condition of merchantability, of fitness for a particular purpose, of accuracy or completeness of responses, of results, of workmanlike effort, of lack of viruses, and of lack of negligence.
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

WS-I Overview Whitepaper

WS-I Overview

Document Status: Public


Version: 1.4
Date: January 15, 2003

Authors:
David Ehnebuske ([email protected])
Christopher Ferris ([email protected])
Tom Glover ([email protected])
Christopher Kurt ([email protected])
Tony Roby ([email protected])
Robert Sutor ([email protected])

Notices

© Copyright 2002, 2003 by the Web Services-Interoperability Organization. All rights reserved.

The material contained herein is not a license, either expressly or impliedly, to any intellectual
property owned or controlled by any of the authors or developers of this material or WS-I. The
material contained herein is provided on an "AS IS" basis and to the maximum extent permitted
by applicable law, this material is provided AS IS AND WITH ALL FAULTS, and the authors and
developers of this material and WS-I hereby disclaim all other warranties and conditions, either
express, implied or statutory, including, but not limited to, any (if any) implied warranties,
duties or conditions of merchantability, of fitness for a particular purpose, of accuracy or
completeness of responses, of results, of workmanlike effort, of lack of viruses, and of lack of
negligence. ALSO, THERE IS NO WARRANTY OR CONDITION OF TITLE, QUIET ENJOYMENT, QUIET
POSSESSION, CORRESPONDENCE TO DESCRIPTION OR NON-INFRINGEMENT WITH REGARD TO THIS
MATERIAL.

IN NO EVENT WILL ANY AUTHOR OR DEVELOPER OF THIS MATERIAL OR WS-I BE LIABLE TO ANY
OTHER PARTY FOR THE COST OF PROCURING SUBSTITUTE GOODS OR SERVICES, LOST PROFITS,
LOSS OF USE, LOSS OF DATA, OR ANY INCIDENTAL, CONSEQUENTIAL, DIRECT, INDIRECT, OR
SPECIAL DAMAGES WHETHER UNDER CONTRACT, TORT, WARRANTY, OR OTHERWISE, ARISING IN
ANY WAY OUT OF THIS OR ANY OTHER AGREEMENT RELATING TO THIS MATERIAL, WHETHER OR
NOT SUCH PARTY HAD ADVANCE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES.

Executive Overview

The Web Services Interoperability Organization (WS-I) is dedicated to accelerating the adoption
of Web services by assisting in the selection and interpretation of Web services specifications,
and in the development of common best practices for their usage in the development,
deployment, and integration of business applications.

Towards this end, the WS-I organization is producing a set of deliverables to assist developers
in the creation and deployment of interoperable Web services. This paper introduces the
reader to the WS-I deliverables: interoperability Profiles, testing tools, sample applications,

January 15, 2003 Page 1 of 9

© Copyright 2002, 2003 by The Web Services-Interoperability Organization. All rights reserved.
WS-I Overview Whitepaper

and other material useful to Web services practitioners. This paper also describes the WS-I
Working Group development processes.

Table of Contents
1.0 Introduction 2
2.0 WS-I Deliverables 3
3.0 Process Overview 4
4.0 Profiles 4
4.1 What is a Profile? 5
4.2 Interoperability Guidelines 6
4.3 Producing Testable Assertions from Profiles 6
4.4 The First Profile— WSBasic 6
4.5 Future Profiles 7
5.0 Conformance Testing Web services 7
5.1 Test Tool Development 7
5.2 Profiles, Test Tools, and Sample Applications 7
5.2.1 Observing Web Service Behavior 8
5.2.2 Analyzing Web Service Behavior 8
6.0 Scenarios and Sample Applications 8
6.1 Sample Applications 8
6.2 Supply Chain Sample Application 9
7.0 More Information 9

1.0 Introduction

The WS-I organization is dedicated to meeting the needs of Web services developers, so as to
enable them to develop and deploy interoperable Web services on the platform and
development language of their choosing. The WS-I process reflects the reality of practical
application of Web services technologies to solve real business needs.

Towards this end, the WS-I organization is producing a set of deliverables that is intended to
assist developers in creating and deploying interoperable Web services. Among the key
deliverables are the testing tools, which developers can use to test conformance of their Web
services with the test assertions that represent the interoperability guidelines of established
WS-I Profiles. The process used to develop these Profiles, interoperability guidelines, test
assertions, and testing tools generates other related resources useful to developers. Figure 1
shows the deliverables that the WS-I organization is currently producing, the relationships
between the deliverables, and the WS-I Working Groups responsible for producing each
deliverable.

January 15, 2003 Page 2 of 9

© Copyright 2002, 2003 by The Web Services-Interoperability Organization. All rights reserved.
WS-I Overview Whitepaper

WS-I Deliverables & Relationships

Sample Apps 1.0 Test Materials 1.0


Implementation Sub Team
SA TST
Provides tools & feedback to
Domain Model Functional Spec. Testing Approach Paper
Technical Design Monitor Tool
Implementation Spec Verifies/Provides feedback to Analyzer Tool
Sample App Implementations Test Cases
Functional Test Cases
Interoperability Demos
Verifies / Drives
Provides requirements
feedback to for
Drives
Constrains requirements
for
Basic Profile 1.0

Drives requirements for BP


Scenarios Sub Team
SA Protocol Spec.
Use Cases SA
SA
Usage Scenarios Constrains
Implementation Guidelines
Figure 1. WS-I Working Group Deliverables and their Relationships

2.0 WS-I Deliverables

There are four types of deliverables produced by WS-I. This section provides an overview of
each deliverable:

Profiles: Profiles contain a list of named and versioned Web services specifications together
with a set of implementation and interoperability guidelines recommending how the
specifications should be used to develop interoperable Web services.

More information on Profiles is provided in Section 4.0 Profiles on page 4.

Testing Tools: Testing Tools are used to monitor and analyze interactions with a Web service
to determine whether or not the messages exchanged conform to WS-I Profile guidelines:

Monitor: A tool used to intercept and log interactions with a Web service. This tool
generates a log that is later processed by the Analyzer to verify that the monitored
interactions conform to a Profile.

Analyzer: A tool used to process the logs generated by the Monitor to verify that the
intercepted Web service interactions conform to the given Profile.

More information on Testing Tools is provided in Section 5.0 Conformance Testing Web
services on page 7.

January 15, 2003 Page 3 of 9

© Copyright 2002, 2003 by The Web Services-Interoperability Organization. All rights reserved.
WS-I Overview Whitepaper

Use Cases and Usage Scenarios: Use Cases and Usage Scenarios capture (respectively)
business and technical requirements for the use of Web services. These requirements reflect
the classes of real-world requirements supporting Web services solutions, and provide a
framework to demonstrate the guidelines described in WS-I Profiles.

You can find more information on Use Cases and Usage Scenarios in Section 6.0 Scenarios and
Sample Applications on page 8.

Sample Applications: Sample Applications demonstrate the implementation of applications


that are built from Web services Usage Scenarios and Use Cases, and that conform to a given
set of Profiles. Implementations of the same Sample Application on multiple platforms, using
different languages and development tools allow WS-I to demonstrate interoperability in
action, and to provide readily usable resources for the Web services practitioner.

You can find more information on Sample Applications in Section 6.0 Scenarios and Sample
Applications” on page 8.

3.0 Process Overview

The WS-I process begins with the definition of Use Cases that describe how Web services can be
applied to meet real-world business needs. These Use Cases are then decomposed into Usage
Scenarios supporting various aspects of the Use Cases and design patterns. The Usage Scenarios
describe the ways in which Web services are employed in the context of the collected Use
Cases. This work aids in the demonstration of how Web services specifications are used
individually, in concert with one another, or both.

Use Case analysis forms the foundation for Profile requirements to be defined. Each Profile is
based on a specific set of Web services specifications, each at a particular version and revision
level. Profiles provide a refined usage of these specifications and standards through
implementation and interoperability guidelines, which, in many cases, are captured as a set of
test assertions that can be used to verify the conformance of a given Web service
implementation with the Profile.

WS-I then defines, and implements, Sample Applications. The supporting implementations are
developed in multiple programming languages, such as C# (C sharp) and Java™, and are
deployed on multiple platforms, including Java 2 Platform, Enterprise Edition (J2EE™) and
.NET. This activity demonstrates Profile interoperability by implementing functional
applications using the Use Cases and Usage Scenarios that the Profiles are intended to address.

Finally, to close the loop, WS-I develops testing tools for use by Web services practitioners,
including those members of the WS-I Working Groups developing sample applications. These
tools are used to verify that the interactions observed with the monitored Web service conform
to the set of guidelines and test assertions that define the interoperability Profiles.

In the following sections, we discuss each of the WS-I deliverables and its relationship to the
process outlined before in further detail.

4.0 Profiles

Since Simple Object Access Protocol (SOAP) 1.1 was released in April, 2000, there has been
tremendous industry uptake in the basic specifications that constitute Web services as we know

January 15, 2003 Page 4 of 9

© Copyright 2002, 2003 by The Web Services-Interoperability Organization. All rights reserved.
WS-I Overview Whitepaper

them today. SOAP 1.1, Web Services Description Language (WSDL) 1.1, and Universal Description
Discovery and Integration (UDDI) 2.0 are the core set of specifications used to describe, publish,
enable discovery, and invoke Web services. Each of these specifications is based on XML and
XML Schema. Given this core set of specifications, it would seem a manageable task to keep
track of products and their degree of support for the specifications.

However as developers work to implement support of these specifications the number of


additional efforts focused on expanding the library of Web services related specifications to
support the full Web services vision expands. Viewing each of these new specifications in
isolation is an oversimplification, as many of the areas have multiple interdependencies,
sometimes with conflicting requirements. Over the past few months, additional specifications
in many of these areas have begun to emerge.

Given the potential to have many necessarily interrelated specifications, at various versions
and schedules of development and adoption, it becomes a very difficult task to determine
which products support which levels of the specifications. Thus, even though the industry may
have the best intentions of ensuring interoperability on a specification-by-specification basis, a
CIO, purchaser or other user of a Web service product (be it a tool, runtime, or a Web service
itself) would find it very difficult to match several pieces of software necessary to complete a
task or build a solution.

WS-I addresses this need through the concept of Profiles.

4.1 What is a Profile?

A Profile consists of a list of Web services specifications at specific version levels, along with
recommended guidelines for use, or exclusion, of any optional or loosely specified features of
those specifications. WS-I is developing a collection of Profiles that support interoperability for
general-purpose Web services functionality.

Profiles make it easier to discuss Web services interoperability at a level of granularity that
makes sense for developers, users, and executives making investment decisions about Web
services and Web services products. WS-I focuses on compatibility at the Profile level.

To be a useful concept and to avoid confusion, the number of Profiles will remain relatively
small. Conversely, too few Profiles would force some Web services products to add unneeded
features simply to conform and to assert interoperability. It is an ongoing task of WS-I to design
and update Profiles that reflect real Web services usage.

There is already strong consensus on the underlying protocol standards which form the base for
the most basic Web services Profile. As new standards and specifications emerge which address
aspects of Web services technologies above the level of this most basic Profile, it is likely, but
not required, that the Profiles developed for these will include this basic Profile as a
foundation. Similarly, it is expected that vertical industries will build upon the WS-I Profiles by
adding industry-specific specifications or standards.

WS-I does not consider it to be within its scope to do this industry-specific work directly, but
rather intends to cooperate with industry groups to ensure that WS-I Profiles provide an
adequate base for the work of these organizations, and that they are able to leverage WS-I
testing tools and technologies. However, WS-I looks forward to working with these industry
groups to develop industry-specific Use Cases and Usage Scenarios within WS-I.

January 15, 2003 Page 5 of 9

© Copyright 2002, 2003 by The Web Services-Interoperability Organization. All rights reserved.
WS-I Overview Whitepaper

4.2 Interoperability Guidelines

Previous experience with specifications has demonstrated that despite the best intentions of
the authors, there are ambiguities or areas that are under-specified such that interoperability
becomes difficult to achieve. A specification might also be of such a general nature that
further conventions or recommended guidelines are necessary for interoperability. Or it might
be that specifications that were developed independently do not fit together smoothly when
they are used together.

Therefore, in addition to references to specifications or standards, a Profile might contain


interoperability guidelines that resolve ambiguities or specify how to achieve consistent usage.
These guidelines constrain some of the specifications or standard's MAYs and SHOULDs, which
are often a source of interoperability issues, such that they become MUSTs or MUST NOTs, as
deemed appropriate to satisfy the requirements of the Use Cases and Usage Scenarios. This in
turn increases the potential for interoperability of the implementations of the specification.
The guidelines may also contain information that supplements the standards and specifications
upon which the Profile rests. These guidelines may apply to an individual Web service
specification, or may pertain to how multiple specifications should work together.

These interoperability guidelines are available to the standards and other organizations that
are working on the specifications included within the WS-I Profiles. WS-I will work closely with
each of these organizations to ensure that an effective feedback process is established.

4.3 Producing Testable Assertions from Profiles

Interoperability aspects of the specifications that comprise a given Profile, along with the
additional constraints imposed on them by the Profile, are also documented as a set of
machine-readable test assertions that can be used by the testing tools to verify that the
observed behavior of a given Web service conforms to the Profile. The test assertion
development also endeavors to include applicable tests that have been developed by other
organizations and efforts. These include, but are not limited to, ongoing related work within
industry standards organizations such as OASIS, W3C, IETF, and others.

4.4 The First Profile— WSBasic

Through the first phase of Web services adoption, four specifications have risen to prominence
as providing the basic functionality required. These specifications are XML Schema 1.0, SOAP
1.1, WSDL 1.1, and UDDI 2.0. The first Profile under development is WS-I Basic (WS-Basic) Web
services (see Figure 2).

WS-Basic1 XML Schema 1.0


SOAP 1.1
WSDL 1.1
UDDI 2.0
Figure 2. Web Services Basic Profile: Referenced Specifications.

1
Many of the specifications listed here make normative references to other related work. These
additional specifications are included implicitly, and are equally important to the implementation of
interoperable Web services.

January 15, 2003 Page 6 of 9

© Copyright 2002, 2003 by The Web Services-Interoperability Organization. All rights reserved.
WS-I Overview Whitepaper

4.5 Future Profiles

The development of additional or updated WS-I Profiles depends on the continued evolution
and maturity of Web services usage and the development of the required specifications and
standards. Each of the areas listed earlier in this document is a candidate for additional Profile
work as Web services users document their requirements with Use Cases and Usage Scenarios
and as the required specifications are developed. Additional work in areas such as message
extensibility, binary attachments, routing, correlation, guaranteed message exchange,
signatures, encryption, transactions, process flow, inspection, and discovery is expected and,
in some cases, is underway. This work will help drive the evolution of these areas, support gap
analysis for required functionality, and provide the context for an overall roadmap for vendors,
users, analysts, and the media to understand the direction of Web services standardization and
interoperability. WS-I works proactively with industry standards organizations to help in this
evolution.

5.0 Conformance Testing Web services

WS-I also develops a set of testing resources. These testing tools, and the configuration data
used with them will help Web services developers ensure that their Web services conform to
the Profile’s interoperability guidelines.

The tools developed monitor the interactions with a Web service, record those interactions,
and analyze them to detect implementation errors. The Web service itself is treated as a
”black box”. The testing tools do not interact with the Web services, nor do they have any
view of the supporting code or infrastructure.

This section provides an overview of the testing approach, and some of the thinking on both
the WS-I testing process and the supporting technical resources to be developed by the WS-I
Working Groups.

5.1 Test Tool Development

The Test Materials and Tools Working Group develop Monitor and Analyzer tools that support
the testing of Web services for conformance with WS-I Profiles. These tools log interactions
between or with Web services, and analyze these interactions in a manner that supports each
of the test cases and interoperability guidelines. These tools are developed to gather and
analyze Web service data pertinent to evaluation of conformance with WS-I Profiles.

These tools are configured using the interoperability guidelines established within WS-I
Profiles and within referenced portions of the Web services standards these Profiles contain.
As such, the tools focus on detecting instances where a Web service does not adhere to WS-I
Profiles, and (explicitly) not on verification that every feature of every referenced Profile or
specification is implemented.

5.2 Profiles, Test Tools, and Sample Applications

There is a rather handy relationship between Profiles, Testing Tools, and Sample Applications,
which WS-I exploits. Profiles serve as the “rule set” that the Testing Tools use as they monitor
Web services and analyze their behavior. They also give guidance to those implementing
Sample Applications. When a Test Tool that is run against a Sample Application yields any
result other than conformance, one of the following conditions is true: the Sample Application
contains an error (the implementers missed a portion of the Profile they intended to follow),

January 15, 2003 Page 7 of 9

© Copyright 2002, 2003 by The Web Services-Interoperability Organization. All rights reserved.
WS-I Overview Whitepaper

the Test Tools contain an error (they’re not testing for conformance properly), or the Profile is
internally inconsistent. In order to exploit this “feedback loop,” the Sample Application
developers develop applications that exercise as much of the relevant Profiles as possible. This
process is ongoing.

5.2.1 Observing Web Service Behavior

WS-I is developing, and will make publicly available, a set of Web services and other programs
that record interactions between Web services in an as unobtrusive manner as possible. This
"Monitor" tool treats the Web service and entities it communicates with as black boxes,
recording the messages that are exchanged. This recording is then used to generate a log that
includes rich details about all aspects of the interaction.

5.2.2 Analyzing Web Service Behavior

WS-I also develops a set of programs or Web services that analyzes the captured logs to
determine if the interactions observed conform to WS-I Profiles. Any deviations from the
Profile’s interoperability guidelines are reported, and where possible, recommendations to
assist in bringing the Web service implementation into conformance are provided. Input to the
analysis tool consists of the implementation guideline assertions from the Profile, WSDL and/or
UDDI descriptions of the Web service under test, and the logs gathered from observation of the
deployed Web service.

6.0 Scenarios and Sample Applications

Within the context of a particular Profile, WS-I defines real-world Use Cases and accompanying
Usage Scenarios that exercise salient features of the specifications referenced within the
Profile. From these definitions a Technical Design and Implementation Specification for a
Sample Application is produced that describes the Web services and supporting technical
resources such as WSDL files, XML schema, and UDDI Web service registrations. The detail
provided in the Use Case, Usage Scenarios, and Technical Design and Implementation
Specification is sufficient for a developer to be able to code both sides of the interaction
without additional clarification.

WS-I members provide real-world Web service Use Cases as part of the development process.
Although the first Use Cases defined by the Work Groups are fairly simple, they are expected to
become increasingly complex, driven from real customer needs. Real-world Use Case
contributions act to improve the practical application of WS-I tests in a manner that is most
useful to developers and implementers across the Web services community.

6.1 Sample Applications

WS-I participants use the Use Cases and their related documentation to develop
implementations of Web services and the software that invokes them using their respective
technologies. The intent is to ensure that there are implementations for each of the major
platform environments available. Once development is near completion, members of the
implementation Working Group will cross-test their implementations. As interoperability issues
are identified, these issues are fed back to the Profile Working Group to update the respective
interoperability guidelines, or make necessary changes to the extent appropriate. Identified
issues and their resolution become the foundation for the set of test assertions that drive
Testing Tool functionality.

January 15, 2003 Page 8 of 9

© Copyright 2002, 2003 by The Web Services-Interoperability Organization. All rights reserved.
WS-I Overview Whitepaper

In addition to the cross-testing of different application implementations, message traffic


exchanged between the various Web services components is collected and analyzed using the
Testing Tools. This creates a tight feedback loop that ensures the accuracy of the Testing Tools
as well as the conformance of the sample applications that is constantly refined over time.

6.2 Supply Chain Sample Application

The WS-I Sample Applications Working Group has settled on a Supply Chain business application
as the first sample application to be delivered. The Supply Chain application was chosen
because it was felt that most people could relate to its intended purpose and design, which is
an important attribute of any sample application. The functionality described in this sample
application can be readily generalized for other types of applications.

The iterative design of the sample application is driven largely by the Use Case and Usage
Scenarios developed so as to ensure that significant aspects of the WS-I Basic Profile are
exercised.

7.0 More Information

All organizations are encouraged to join WS-I and actively participate in the design and
development of Profiles, testing tools and other supporting resources. For more information on
membership and activities, visit the WS-I Web site at http://www.ws-i.org. WS-I may be
contacted by e-mail at [email protected].

Legal

Java and all Java-based trademarks and logos are trademarks or registered trademarks of Sun
Microsystems, Inc. in the United States, other countries, or both.

Other company, product, and service names may be trademarks or service marks of others.

January 15, 2003 Page 9 of 9

© Copyright 2002, 2003 by The Web Services-Interoperability Organization. All rights reserved.

You might also like