[June 06, 2001] The Web Services Flow Language (WSFL) "is an XML language for the description of Web Services compositions. WSFL considers two types of Web Services compositions: The first type (flow models) specifies the appropriate usage pattern of a collection of Web Services, in such a way that the resulting composition describes how to achieve a particular business goal; typically, the result is a description of a business process. The second type (global models) specifies the interaction pattern of a collection of Web Services; in this case,the result is a description of the overall partner interactions." IBM's Web Services Flow Language, under development in Q2 2001, may be harmonized with the Microsoft XLANG specification [per Gartner analysis, "...Gartner expects IBM and Microsoft to jointly agree to submit a proposal to W3C that combines XLANG and WSFL by year-end 2001"].
"Web Services Flow Language. WSFL supports two types of composition and choreography: Flow models: describes business processes; Global models: describe overall partner interactions. Flow models - Describe how to choreograph the functionality provided by a collection of Web services to achieve a particular business need Global models - Describe how a set of Web services interact with each other." [From "Web Services Architecture Directions," by Rod Smith, Donald F Ferguson, and Sanjiva Weerawarana.
[May 22, 2001] "Web Services Flow Language (WSFL 1.0)." By Prof. Dr. Frank Leymann (Distinguished Engineer; Member IBM Academy of Technology, IBM Software Group). May 2001. 108 pages. [Summary: 'The Web services Flow Language guide (WSFL) describes how Web services may be composed into new Web services to support business processes. Composition comes in two types: The first type allows to specify the logic of a business process; the second type allows to define the mutual exploitation of Web services of participants in a business process. A brief concepts of composition sketch is provided in an introductory chapter of the document. A detailed discussion of the metamodel behind composition follows. The language proper is described and illustrated by code snippets, followed by an XML schema of the language.'] "The Web Services Flow Language (WSFL) is an XML language for the description of Web Services compositions. Flow Models: In the first case, a composition is created by describing how to use the functionality provided by the collection of composed Web Services. This is also known as flow composition, orchestration, or choreography of Web Services. WSFL models these compositions as specifications of the execution sequence of the functionality provided by the composed Web Services. Execution orders are specified by defining the flow of control and data between Web Services. For this reason, in this document, we will also use the term flow model to refer to the first type of Web Services compositions. Flow models can especially be used to model business processes or workflows based on Web Services... Global Models: In the second case, no specification of an execution sequence is provided. Instead, the composition provides a description of how the composed Web Services interact with each other. The interactions are modeled as links between endpoints of the Web Services interfaces, each link corresponding to the interaction of one Web Service with an operation of another Web Service's interface. Because of the decentralized or distributed nature of these interactions, we will use the term global model in this document to refer to this type of Web Services composition. Recursive Composition: WSFL provides extensive support for the recursive composition of services. In WSFL, every Web Service composition (a flow model as well as a global model) can itself become a new Web Service, and can thus be used as a component of new compositions. The ability to do recursive composition of Web Services provides scalability to the language and support for top-down progressive refinement design as well as for bottom-up aggregation. For these reasons, recursive composition has been a central requirement in the design of the WSFL language. Hierarchical and Peer-to-Peer Interaction: WSFL compositions support a broad spectrum of interaction patterns between the partners participating in a business process. In particular, both hierarchical interactions and peer-to-peer interactions between partners are supported. Hierarchical interactions are often found in more stable, long-term relationships between partners, while peer-to-peer interactions reflect relationships that are often established dynamically on a per-instance basis... The guiding principle behind WSFL is to fit naturally into the Web Services computing stack. It is layered on top of the Web Services Description Language (WSDL). WSDL describes the service endpoints where individual business operations can be accessed WSFL uses WSDL for the description of service interfaces and their protocol bindings WSFL also relies on an envisioned 'endpoint description language' to describe non-operational characteristics of service endpoints, such as quality-of-service properties. Here, we will refer to this language as the 'Web Services Endpoint Language' (WSEL)..." Section 5 'Appendix A: WSFL Schema' features the W3C XML schema for WSFL [2000/10 schema version]. Note: "The Web Services Flow Language is the result of a team effort: Francisco Curbera, Frank Leymann, Dieter Roller, and Marc-Thomas Schmidt created the language and its underlying concepts. Matthias Kloppmann and Frank Skrzypczak focused on its lifecycle aspects. Francis Parr worked on details of the example in the appendix. Many others helped by reviewing and discussing earlier versions of the document, most notably Sanjiva Weerawarana and Claudia Zentner."
References:
- Web Services Flow Language (WSFL 1.0). Edited by Prof. Dr. Frank Leymann (Distinguished Engineer; Member IBM Academy of Technology, IBM Software Group). May 2001. [cache]
- Comments on WSFL: wbservcs@us.ibm.com
- Announcement for IBM's Web Services infrastructure plans.
- 'Web Services Flow Language'. From ebPML.org.
- "WebSphere Portal Server and Web Services White Paper." By Thomas Schaeck (IBM Software Group). "This paper describes how WebSphere Portal Server will be used to set up distributed enterprise portal systems allowing administrators to easily share portlets across portals and how content providers will be able to use WebSphere Portal Server to publish their content as remote portlet Web services that can be integrated by portal administrators of other portals very easily through a web administration interface, without any programming effort..." [cache]
[February 04, 2002] "WSFL in Action, Part 1. When Web Services Cooperate." By Ajamu Wesley (Senior software architect, IBM Software Group). From IBM developerWorks, Web services Zone. January 2002. ['This article is based upon a chapter from Programming Web Services with Java (Manning, 2002) which explains how you can use the flexible Web Services Flow Language (WSFL) to create new Web services by integrating other Web services. This is the first of a two part series with a detailed example of how several Web services from different service providers can work in a flow model. The article is a programming example that illustrates the features of the Web Services Flow Language. It assumes that you already know the basic concepts behind workflow and WSFL.] "Let's imagine that Strong.com acts as a brokerage and hosts a Web service which manages client financial accounts. Additionally consider that the New York Stock Exchange (NYSE) hosts a Web service that allows traders to buy and sell stocks just as if they were on the trading floor. Strong.com realizes that they can provide a compelling service to their end users if they integrate these Web services together... When clients request stock purchases from the brokerage service, it kicks off a business process that first checks the real-time stock quote service from our fictional service provider StockQuote.com, to determine the stock price. After determining the stock price, the total price of the transaction may be computed based on the number of shares requested. Strong.com's account manager Web service will determine if the client has enough funds to cover the transaction. After successfully verifying the client's ability to purchase the stock, the trade is executed by invoking the NYSE's virtual trading floor Web service. Thus, Strong.com will define a new stock-trading Web service by integrating its account manager service with StockQuote.com's stock quote service and the NYSE's virtual trading floor Web service. This programmatic integration of remote Web services into a single Web service is accomplished by defining the sequencing and integration of Web service operations within a WSFL flow... In the next part we will look into how to link together these activities and complete the flow..." See also from July 2001: "WSFL and Recursive Composition." Article also in PDF format.
- [July 2001] "Implementing Roles in WSFL. The Web services insider, Part 6: Assuming responsibility." By James Snell (Software engineer, IBM Emerging Technologies). From IBM developerWorks. July 2001. "Web services offer the potential for creating highly dynamic and versatile distributed applications that span technological and business boundaries, allowing service providers and service consumers to improve the way they do business. Web Service Flow Language (WSFL) extends this potential by building a framework in which service providers and consumers can come together to implement standard business processes; a place where the '"Who is doing what' is less important than the 'What is being done.' This framework allows anyone who properly implements the appropriate Web service interfaces to assume the various roles of business process. In this installment of the Web service insider, I continue my discussion of WSFL, focusing on how to become a service provider... The previous Web services insider installment introduced business process modeling and the concept of service provider types that fulfill the various responsibilities of implementing those business processes. In this installment, I'm going to take a much more in-depth look at becoming a WSFL service provider. The good news is that it takes nothing more than properly implementing either a single WSDL-defined Web service interface or several, using any Web services-enabled platform -- whether or not that platform is WSFL or even WSDL capable. In other words, you really don't have to know anything about WSFL to assume the role of a WSFL service provider. What you do have to know is how to take a Web services interface definition and turn it into an actual Web service implementation, and that's the process that I intend to explain here... Every activity within a WSFL flow model is implemented in the form of a Web service offered by a Web service provider and fulfilling one of the defined roles within the process. Each service provider is naturally expected to properly fulfill the requirements of implementing the Web service, or set of Web services that actually execute that activity. Each activity within a WSFL flow model is linked to an actual Web service implementation using information contained in the WSFL global model... WSFL's ability to allow any Web service provider to implement any of the activities defined in the business process is perhaps one of its most powerful and useful features. The ability to dynamically locate, and bind to providers based on a user-defined set of rules adds a new dimension to conducting business on the Web that did not exist prior -- dynamic federation and integration of loosely coupled application components. In the next installment of this column, I'll introduce you to another cool feature of WSFL: the ability to recursively compose new business processes from existing business processes..." Article also in PDF format. [cache]
[December 21, 2001] "IBM Connects Its Software Layers. [Integration.]" By Ed Scannell, Tom Sullivan, and Martin LaMonica. In InfoWorld Issue 51 (December 17, 2001), pages 15-16. ['IBM's focus for middleware growth, the CrossWorlds application integration product, will become IBM's process integration engine in WebSphere. The Xperanto database project, due in 2003, marries structured and unstructured data through XML. Xperanto also marks the materialization of IBM's work on other Web services-related standards such as XQuery and XML Schema. Server-based software such as WebSphere, MQSeries Integrator, and DB2 will gain features allowing them to interoperate more tightly for a wider range of integration among business processes.'] "IBM is embarking on a technical crusade to tie up key elements of its software and drive its users closer to the Holy Grail: business process integration and common access to structured and unstructured data... According to IBM officials, the company is already creating visual business process modeling with a 'microflows' tool in its WebSphere Business Integrator version, due to ship in the first quarter next year. The tool allows developers to visually compose a business process workflow between software systems. At the data level, IBM is hatching Xperanto, a native XML database that is currently in development at IBM's research labs and will function as a subset of the company's DB2 Universal Database, due in the fourth quarter of 2002. Xperanto will act as a dedicated server for information integration and will be packaged as a stand-alone server , as part of DB2 or WebSphere. By using XML and relying on XQL (XML Query Language), Xperanto will be a critical piece of IBM's long-term vision to marry structured and unstructured data... IBM is also stepping up a three-phase initiative to set new Web services standards through the World Wide Web Consortium (W3C). IBM executives believe such a concerted effort to establish Web services standards is necessary to crystallize the Web services vision to integrate applications, information, and business processes. 'We needed to get the acceptance of SOAP (Simple Object Access Protocol) and WSDL (Web Services Description Language), these so-called Phase 1 Web services standards. Unless you have the lower-level plumbing, you can't do upper-level functionality,' said Bob Sutor, director of IBM's e-business standards strategy. Phase 2 technologies, which are expected to be standardized by the end of the second quarter of 2002, comprise security , reliability, and authorization on a more granular level. Phase 3 technologies, which will overlap with the end of Phase 2 and are currently labeled 'enterprise Web services capabilities,' will address workflow, transactions, systems management, and provisioning... IBM, Microsoft, and the Business Process Management Initiative standards group are creating XML-based languages for describing business processes. IBM is proposing WSFL (Web Services Flow Language), which it expects to become a standard in 2002 and the mechanism for manipulating its own business process integration software. Some analysts caution that it will take IBM some time to pull together the far-flung pieces that are part of this initiative..." [XPERANTO 'provides a general and efficient means to (a) store and query XML documents using a relational database system and (b) publish existing relational data as XML documents. Some of the key architectural features of the XPERANTO system are that it provides users with a high-level, declarative, XML query interface, and that it executes XML queries efficiently by pushing most of the computation down to the underlying relational database system.']
- [June 06, 2001] "W3C Works on Standards Development." By Stephen Lawson. In InfoWorld (June 1, 2001). "Conscious that the future success of e-commerce and Web services hinges on interoperability between different vendors' products, the World Wide Web Consortium (W3C) attempted to fill in some of the gaps in the current array of standards at its 10th annual World Wide Web Conference last month in Hong Kong. The W3C's painstaking standards work is critical for enabling companies to use the Web for commerce, according to Roger Cutler, a senior staff research scientist at the Chevron Information Technology division of Chevron U.S.A. and a member of the W3C for the past year. With this in mind, IBM revealed it is preparing to propose to the W3C a new standard dubbed the WSFL (Web Services Flow Language). WSFL is designed to describe how a series of functions would work in providing Web services, according to Robert Sutor, director of e-business standards strategy at IBM in Somers, N.Y. It would help developers and corporate users specify the many pieces they need to plug into workflow applications or business processes and the sequence in which they should operate, he says. For example, WSFL might include a way to describe how well a service, such as a transaction engine, should perform. That would enable a Web services provider to guarantee QoS (quality of service), according to Sutor. Getting the industry to agree on such workflow standards has been a common problem over the years, Sutor says, acknowledging that other initiatives compete with the WSFL, including ones from the Workflow Management Coalition and the Business Process Management Initiative. But Sutor senses a growing desire among many to consolidate the various proposals and technologies into one, and adds that he doesn't see why intelligent compromises can't be made. '[WSFL] is not something we are trying to force down people's throats as the de facto standard. We think it has a lot of good ideas in it that are very consistent with some of the other Web services standards people are working on,' Sutor says. Sutor feels confident that the W3C will get a Web Services workflow group charted by year's end, which can bring a number of proposals together into a single, cohesive standard..."
- [May 03, 2001] "WWW10: IBM Readies Web Services Workflow Proposal." By Stephen Lawson. In InfoWorld (May 03, 2001). "IBM in the next few weeks will unveil Web Services Flow Language (WSFL), a proposal for how to define workflows for Web services, the company's director of e-business standards strategy said on Thursday at the 10th International World Wide Web Conference (WWW10) here. Robert Sutor told hundreds of attendees here that now is a critical time in the development of Web services, which are functions that can be carried out over the Web through communication among both humans and machines. Examples of Web services may include matching vendors and customers or carrying out and recording transactions. . . WSFL will provide a way to describe how a series of functions will work in providing Web services, Sutor said in a keynote address on the second day of WWW10. For example, it will propose a way to define how a service will perform, which will let providers of any kind of Web service guarantee a level of performance in a standard way. Then companies looking for such a service will be able to tell how fast or reliable it will be. . . IBM's upcoming proposal for workflow is designed to follow on earlier specifications, such as the work of the Workflow Management Coalition, but take a 'clean slate' approach for the new age of services provided over the Web, Sutor said in an interview following the keynote. It is intended only as an initial proposal and IBM expects it to be refined by other companies and standards bodies."
- See also: "XLANG."