Web services are a collection of technologies driven by standards. Standards are extremely important for the adoption of Web services to be successful. The interoperability of different vendors' Web service implementations rests on the standards process. A vague specification will ultimately mean that different vendor implementations will not work together.
Today, Web services consist of specifications that are not quite standards yet. This is because it takes a long time for a specification to ultimately mature to a standard. Typically, once a specification is available in a working draft, vendors will build products that implement the specification. In fact, many specifications become de facto standards before the are ultimately approved as standards by the organization that proposes them.
Several organizations manage Web service specifications. These organizations are consortiums of companies, universities, and individuals, each of which is responsible for one or more of the specifications. Table 1.3 shows which group owns what specification.
Organization |
Web site |
Description |
Standard |
---|---|---|---|
World Wide Web Consortium (W3C) |
The W3C is a consortium of over 500 member organizations that sets standards for the Internet. |
XML, SOAP, HTTP |
|
Web Services Interoperability Organization (WS-I) |
WS-I is a consortium of mostly vendor companies focusing on Web services standards. |
BPEL4WS WS-Security WS-Transaction WS-Coordination WS-Attachments WS-Inspection WS-Referral WS-Routing |
|
Organization for the Advancement of Structured Information Standards (OASIS) |
OASIS is an consortium that focuses on the development of e-business standards. |
UDDI |
|
UN/CEFACT (United Nations Centre for Trade Facilitation) |
The UN/CEFACT and OASIS are joint committees on the ebXML standard. UN/CEFACT is sponsored by the UN and focuses on standards for trade. |
ebXML |
|
The Internet Engineering Task Force (IETF) |
IETF is a consortium of vendors, universities and individuals. It handles mostly low-level Internet protocol standards. |
DIME |
Each group has a slightly different process for creating a standard. Many standards bodies follow a process similar to that of the World Wide Web Consortium (W3C), which is as follows (W3C 2002):
A need is identified that is in the domain of the standards body.
A working group is formed that analyzes the need and creates a working draft of a specification document that addresses the need.
The working group creates a last-call working draft that the working group feels is complete. Thise draft goes to other W3C groups and members as well as to the general public for review.
Once all issues and objections the reviewers raise have been answered, the draft becomes a candidate recommendation.
The candidate recommendation is used in software implementations. If it can be shown that all objections have been answered and if two or more of the implementations of the candidate recommendation are shown to be interoperable, the candidate recommendation can become a proposed recommendation.
If progress on the adoption of the proposed recommendation continues within the W3C and the public, the proposed recommendation becomes a recommendation. The recommendation is the highest level of maturity within the W3C. The recommendation stays at recommendation level indefinitely. At this point, the recommendation can also be submitted to other standards bodies for approval.
If at any level the proper entrance criteria are not met, the specification will not progress through the other levels of approval. It is also possible that the recommendation may fall back to a previous level if sufficient objections or issues are raised.
The WS-I organization is taking the lead in Web services standards. This body was formed primarily by IBM, Microsoft, and BEA. Sun has also joined this body. An important aspect to the WS-I process, in addition to the creation of specifications, is the creation of test suites. The test suites make sure an implementation of the specification conforms to the specification. In addition, WS-I also requires sample applications, built in many languages and run on many platforms, that implement the proposed specification. These applications are also used to validate the correctness of the test suites. Vendors who implement the specifications can self-certify their implementations by running the test suites and the sample applications.
The standards process involves several organizations responsible for pieces of the Web services specifications. WS-I is attempting to coordinate the efforts of various standards bodies involved in Web services standards. Also, when a standard is required, WS-I is taking the lead in creating and promoting it. Because the major benefit to Web services is interoperability, the success or failure of Web services rests largely on the efforts of these groups.