Update 2004-03-31: "Web Services Resource Framework Adds WS-BaseFaults and WS-ServiceGroup."
Update 2004-03-05: "Web Services Notification Framework for Publish-Subscribe Notification Events." The document Web Services Notification (WS-Notification) has been partitioned into three separate specifications in a Web Services Notification Framework: WS-BaseNotification, WS-BrokeredNotification, and WS-Topics.
An announcement from Akamai, The Globus Alliance, HP, IBM, Sonic Software, and TIBCO describes the release of three new specifications providing a scalable publication/subscription messaging model and the ability to model stateful resources using Web services. The new WS-Notification and WS-Resource Framework are designed to integrate Grid and Web services standards, and represent "a common, standards-based infrastructure will be available for business applications, Grid resources and systems management."
Stateful resources are "elements that can be modeled including physical entities (such as servers) to logical constructs (such as business agreements and contracts). Access to these stateful resources enables customers to realize business efficiencies including just in time procurement with multiple suppliers, systems outage detection and recovery and Grid-based workload balancing."
Web Services Notification as presented in WS-Notification "can automatically trigger an action in the IT infrastructure once certain criteria have been met. This can include suppliers automatically being notified to bid to replenish inventory once current inventory drops to a set level. Several suppliers can be notified of this depletion in inventory and WS-Notification can be set up so that only the supplier with the best bid fills the order." The WS-Resource Properties document "defines how data associated with a stateful resource can be queried and changed using Web services technologies. This allows clients to build applications to efficiently read and update data associated with resources, such as contracts, servers or purchase orders." The WS-Resource Lifetime document provides a means for the user to "specify the period during which a resource definition is valid. For example, WS Resource Lifetime can automatically update suppliers from all systems once contracts or service level agreements expire, or deleting products from inventory systems that are no longer being manufactured."
Bibliographic Information and Overview
Three of the six planned WS-Resource Framework Specifications have been released as of 2004-01-20.
Web Services Notification (WS-Notification). By Dave Chappell (Sonic Software), Steve Graham (Editor, IBM), Amy Lewis (TIBCO Software), Nataraj Nagaratnam (IBM), Peter Niblett, IBM (Editor, IBM), Jay Parikh (Akamai Technologies), Sanjay Patil (SAP), Shivajee Samdarshi (TIBCO Software), Steve Tuecke (Globus / Argonne National Laboratory), William Vambenepe (Hewlett-Packard Development Company), Bill Weihl (Akamai Technologies). Version 1.0. 1/20/2004. Copyright (c) 2003, 2004 International Business Machines Corporation, Sonic Software Corporation, SAP AG, Hewlett-Packard Development Company, Akamai Technologies Inc., and Tibco Software Inc. 70 pages.
Abstract: "The Notification model, where a service provider, or other entity, initiates messages based on a subscription or registration of interest from a service requestor, is a common pattern that should be standardized in Web services. This document specifies a standard Web services approach to notification using a topic-based pub/sub pattern. It includes: standard message exchanges to be implemented by service providers that wish to participate in Notifications, standard message exchanges for a notification broker service provider (allowing publication of messages from entities that are not themselves service providers), operational requirements expected of service providers and requestors that participate in notifications, and an XML model that describes topics."
WS-Notification leverages the work defined in the WS-Resource family of specifications. WS-Resource defines the relationship between a Web service and stateful entities (known as WS-Resources, or just resources) by defining a so-called implied resource pattern. WS-Resource standardizes the use of WS-Addressing to specify how a Web service message must contain the identity of a WS-Resource to be used as context for processing the message. Several aspects of WSNotification, particularly Subscriptions, utilize this concept. WS-Notification also uses WS-ResourceProperties. WSResourceProperties defines a mechanism by which a WSDL portType can be associated with an XML element that describes the data associated with a resource. This specification includes standard message exchanges associated with reading and writing a resource's data. WS-Notification uses WS-ResourceLifetime to provide direct, immediate destruction of resources as well as scheduled destruction of resources, based on a leasing or time-based model..." [adapted from the spec]
Web Services Resource Properties (WS-ResourceProperties). By Steve Graham (Editor, IBM), Karl Czajkowski (Globus / USC/ISI), Donald F. Ferguson (IBM), Ian Foster (Globus / Argonne), Jeffrey Frey (IBM), Frank Leyman (IBM), Tom Maguire (IBM), Nataraj Nagaratnam (IBM), Martin Nally (IBM), Tony Storey (IBM), Steve Tuecke (Globus / Argonne), William Vambenepe (Hewlett-Packard), and Sanjiva Weerawarana (IBM). Version 1.0. January 20, 2004. Copyright (c) 2004 International Business Machines Corporation and Hewlett-Packard Development Company. 37 pages.
Abstract: "The relationship between Web services and stateful resources is defined in [this specification]. This relationship is described as the implied resource pattern. In the implied resource pattern, messages to a Web service include a component that identifies a stateful resource that must be use as context to execute the message. We refer to a stateful resource associated with a Web service as a WS-Resource. This document standardizes the means by which the definition of the properties of a WS-Resource may be declared as part of a Web service interface. The declaration of the WS-Resource's properties represents a projection of or a view on the WS-Resource's state. This projection represents an implied resource type which serves to define a basis for access to the resource properties through Web service interfaces..."
Web Services Resource Lifetime (WS-ResourceLifetime). By Jeffrey Frey (IBM), Karl Czajkowski (Globus / USC/ISI), Donald F. Ferguson (IBM), Ian Foster (Globus / Argonne), Frank Leyman (IBM), Tom Maguire (IBM), Nataraj Nagaratnam (IBM), Martin Nally (IBM), Tony Storey (IBM), Steve Tuecke (Globus / Argonne), William Vambenepe (Hewlett-Packard), and Sanjiva Weerawarana (IBM). Version 1.0. January 20, 2004. Copyright (c) 2004 International Business Machines Corporation and Hewlett-Packard Development Company. 22 pages.
Abstract: "The definition of a resource and the relationship between Web services and resources is defined in the document titled Modeling Stateful Resources with Web services. We refer to a stateful resource in this context as a WS-Resource. This specification defines message exchanges to standardize the means by which a WS-Resource may be destroyed, and resource properties [WS-ResourceProperties] that may be used to inspect and monitor the lifetime of a WS-Resource. This specification defines two means of destroying a WS-Resource: immediate destruction and time-based, scheduled destruction."
"The lifecycle of a WS-Resource is defined as the period between its instantiation and its destruction. The WS-ResourceLifetime specification standardizes the means by which a WS-Resource can be destroyed. The specification also defines the means by which the lifetime of a WS-Resource can be monitored. However, this specification does not prescribe (nor proscribe) the means by which a WS-Resource is created... Normally, a service requestor's interest in a WS-Resource is for some period of time, rarely is it indefinite. In many scenarios, it is appropriate for clients of a WS-Resource to cause its immediate destruction. The immediate destruction of a WS-Resource may be accomplished using the message exchanges defined in this specification...
In addition, this specification defines the means by which a resource may be destroyed after the expiration of a period of time. In a distributed computing environment, a client may become disconnected from the service provider's endpoint and therefore may be unable to, or unwilling to cause the immediate destruction of the WS-Resource. This specification defines the means by which any client of a WS-Resource may establish and extend the scheduled termination time of a WS-Resource..." [from the spec Introduction]
Royalty-Free Licensing Planned
A statement from IBM relative to the WS-Resource Framework documents declares that "The authors of the WS-Resource Framework documents intend to submit an updated version of them to a standards body, in which case they intend to grant a Royalty-Free license to their necessary patent claims."
A similar statement from HP was made relative to WS-Notification: "The Authors of the Specification intend to submit revised versions of the Specification to a standards body, in which case they intend to grant a Royalty-Free (zero royalties with other reasonable and non-discriminatory terms) license to their necessary patent claims..."
The WS-Resource Framework is inspired by the work of the Global Grid Forum's Open Grid Services Infrastructure (OGSI) Working Group. Indeed, it can be viewed as a straightforward refactoring of the concepts and interfaces developed in the OGSI V1.0 specification in a manner that exploits recent developments in Web services architecture..."
Summary from the WS-Resource Framework FAQ document: "The WS-Resource Framework (WSRF) is a set of six Web services specifications that define what is termed the WS-Resource approach to modeling and managing state in a Web services context. To date [2004-01-20], drafts of three of these specifications have been released, along with an architecture document that motivates and describes the WS-Resource approach to modeling stateful resources with Web services..."
- WS-ResourceLifetime: defines mechanisms for WS-Resource destruction, including message exchanges that allow a requestor to destroy a resource, either immediately or by using a time-based scheduled resource termination mechanism.
- WS-ResourceProperties: defines how the type definition of a WS-Resource can be associated with the interface description of a Web service, and message exchanges for retrieving, changing, and deleting WS-Resource properties.
- WS-Notification: defines mechanisms for event subscription and notification using a topic-based publish/subscribe pattern.
- WS-RenewableReferences: defines a conventional decoration of a WS-Addressing endpoint reference with policy information needed to retrieve an updated version of an endpoint reference when it becomes invalid.
- WS-ServiceGroup: defines an interface to heterogeneous by-reference collections of Web services.
- WS-BaseFaults: defines a base fault XML type for use when returning faults in a Web services message exchange.
Open Grid Services Infrastructure (OGSI) and WS-Resource Framework (WSRF)
From the public presentation by Ian Foster (Globus Alliance), GlobusWORLD, January 20, 2004:
"... Despite enthusiasm for OGSI, adoption within Web community turned out to be problematic: Too much stuff in one specification, does not work well with existing Web services tooling, Too 'object oriented'. The solution: WSRF partitions OGSI v1.0 functionality into a family of composable specifications, tones down the usage of XML Schema, and makes an explicit distinction between the 'service' and the stateful 'resources' acted upon by that service..." See the 'Refactoring and Evolution', slide #9
From OGSI to WSRF: Refactoring and Evolution OGSI WSRF Grid Service Reference WS-Addressing Endpoint Reference Grid Service Handle WS-Addressing Endpoint Reference HandleResolver portType WS-RenewableReferences Service data defn & access WS-ResourceProperties GridService lifetime mgmt WS-ResourceLifeCycle Notification portTypes WS-Notification Factory portType Treated as a pattern ServiceGroup portTypes WS-ServiceGroup Base fault type WS-BaseFaults
About OGSI Version 1.0
Open Grid Services Infrastructure (OGSI) Version 1.0. From the Open Grid Services Infrastructure Working Group (OGSI-WG). Edited by S. Tuecke (ANL), I. Foster (ANL), J. Frey (IBM), S. Graham (IBM), C. Kesselman (USC/ISI), T. Maquire (IBM), T. Sandholm (ANL), D. Snelling (Fujitsu Labs), and P. Vanderbilt (NASA). Reference: GWD-R (draft-ggf-ogsi-gridservice-33) June 27, 2003. 86 pages.
"This document provides information to the community regarding the specification of the Open Grid Services Infrastructure... Building on both Grid and Web services technologies, the Open Grid Services Infrastructure (OGSI) defines mechanisms for creating, managing, and exchanging information among entities called Grid services. Succinctly, a Grid service is a Web service that conforms to a set of conventions (interfaces and behaviors) that define how a client interacts with a Grid service. These conventions, and other OGSI mechanisms associated with Grid service creation and discovery, provide for the controlled, fault-resilient, and secure management of the distributed and often long-lived state that is commonly required in advanced distributed applications. In a separate document, we have presented in detail the motivation, requirements, structure, and applications that underlie OGSI. Here we focus on technical details, providing a full specification of the behaviors and Web Service Definition Language (WSDL) interfaces that define a Grid service..."
What are the plans for the WSRF specifications? "The authors [of the WSRF specifications] plan to submit the specifications to an appropriate standard body in the near future. Already the drafts have been made available to the GGF OGSI working group for comment. However it may also be advantageous to standardize these specifications through OASIS, where most other web services specifications are done. In fact GGF and OASIS have been discussing ways to collaborate for some time now, and have issued a joint statement specifically addressing collaboration on OGSI and Web Services..." [from the WS-Resource Framework FAQ document, Question #4]
From a memo approved by the Grid Forum Steering Group and the OASIS Communication Staff, under the title "GGF and OASIS Work Together to Review OGSI":
"OASIS develops Web Services standards that enable dynamic distributed systems. The GGF develops standards for Grid Computing, including the Open Grid Services Infrastructure (OGSI). A set of draft specifications revising OGSI has been created that leverages technology from both the GGF and OASIS. OASIS and the GGF have agreed to work together on open review and revisions of the specifications as part of an effort to connect more closely the Grid and Web Services communities."
From the WS-Resource White Paper
The white paper Modeling Stateful Resources with Web Services" (Globus Alliance, Hewlett-Packard, IBM) supplies background for the WS-Resource approach.
Document abstract: "The Web services architecture has been broadly accepted as a means of structuring interactions among distributed software services. Further standardization is now required to facilitate additional interoperability among services. One important area in which further standardization is required concerns interactions with stateful resources. In this paper, we address the constructs used to enable Web services to access state in a consistent and interoperable manner. We introduce the WS-Resource approach to declaring and implementing the association between a Web service and one or more named, typed state components. In this approach, we model state as stateful resources and codify the relationship between Web services and stateful resources in terms of the implied resource pattern, a set of conventions on Web services technologies, in particular WS-Addressing. When a stateful resource participates in the implied resource pattern, we refer to it as a WS-Resource. We describe the means by which a WS-Resource is defined and associated with the description of a Web service interface. We also describe an approach for making the properties of a WS-Resource accessible through a Web service interface, and for managing a WS-Resource's lifetime..."
- Announcement: "Grid and Web Services Standards to Converge. New Specifications Will Ease Development and Deployment of Web Services." [source]
- Invitation to Public Workshop on WS-Notification and WS-Resource Framework. February 23/24, 2004. Hosted by Hewlett-Packard in Cupertino, CA, USA.
- Web Services Notification (WS-Notification)
- Web Services Notification: Resources from SAP. "The Web Services Notification is a specification that enables Web services based subscription and notification messaging. Due to its flexible architecture, it is applicable to almost any domain, including, but not limited to, Grid computing, systems management, integration brokers, and business applications... Web Services Notification fits into the core Web service architecture since it is built on top of XML, XML Schema, WSDL, and SOAP." Web Services Notification specifications include:
- IBM Resources on Web Services Notification and WS-Resource Framework
- Reference information from HP
- "Modeling Stateful Resources with Web Services." White paper authored by IBM and HP. 23 pages. See the overview
- The WS-Resource Framework. Information from the Globus Alliance.
- WS-Resource Framework: Frequently Asked Questions.
- Open Grid Services Infrastructure Working Group
- Open Grid Services Architecture (OGSA)
- Globus Alliance
- "WS-Resource Framework:Globus Alliance Perspectives." By Ian Foster [WWW] (Argonne National Laboratory / University of Chicago / Globus Alliance). Presentation January 20, 2004 at GlobusWORLD. See especially slide #9, "From OGSI to WSRF:Refactoring and Evolution." Similarly the .PPT presentation by Jeffrey Frey (IBM), Steve Graham (IBM), Tom Maguire (IBM), David Snelling (Fujitsu), and Steve Tuecke (Globus). [source .PPT, cache]
- "Globus Details Roadmap for Toolkit. Grid Computing Software to Gain Performance, Reliability and Usability." By Joris Evers. In InfoWorld (January 22, 2004). "The 4.0 release of the Globus Toolkit will include draft WS Resource Framework (WSRF) specifications, announced earlier this week at the GlobusWorld event. WSRF encompasses the WS-Resource Lifetime and WS-Resource Properties specifications introduced at the GlobusWorld event and intended to converge Web services and grid computing."
- "Web Services Event Standards Take Big Step Forward." By Roy W. Schulte and Massimo Pezzini (Gartner Research). Gartner Note, Number FT-22-0670. (January 26, 2004). The note discusses WS-Notification and the WS-Resource Framework (Akamai, The Globus Alliance, HP, IBM, Sonic, and TIBCO) together with WS-Eventing (BEA, Microsoft and TIBCO).
- "HP, IBM and Akamai Bring Web Services to Grid Computing." By Jay Lyman. From TechNewsWorld (January 21, 2004). "Rob Batchelder, industry analyst and president of IT consultancy Relevance, said that joining grid computing with Web services makes perfect sense."
- "Grid and Web Services to Converge." By Peter Abrahams (Bloor Research). In IT-Analysis (January 23, 2004).
- See also: Web Services Addressing (WS-Addressing). Edited by Don Box (Microsoft) and Francisco Curbera (IBM). 13-March-2003.
- See also: "A Grid Application Framework based on Web Services Specifications and Practices." By Savas Parastatidis, Jim Webber, Paul Watson, and Thomas Rischbeck. Copyright (c) 2003 North East Regional e-Science Centre, School of Computing Science, University of Newcastle, UK. 12-August-2003. 28 pages. [cache]
- Related specification: "BEA, Microsoft, and Tibco Release Web Services Eventing (WS-Eventing) Specification."
- Related specification: WS-Events, part of the Web Services Management Framework Version 2.0 (Hewlett-Packard Company).
- Conference: 2004 IEEE International Conference on Web Services (ICWS 2004). Theme: "Convergence of Web Services, Grid Computing, e-Business, and Autonomic Computing." July 6-9, 2004, San Diego, California, USA. Sponsored by IEEE Computer Society Technical Community for Services Computing (TCSC). See the call for participation [source]