WS-Context moving thru OASIS standard process

From Mark I am reminded to mention that we are (finally) moving the WS-Context spec toward a vote for possible acceptance as an OASIS standard.
One of the things that I have always liked about WS-Context (and this by the way is something I picked up during the Web Services Architecture work from Mark Baker and others) is the opportunity to model the context as a Web reference. It can also be passed by value directly in a SOAP header.
WS-Context defines an XML structure in which to store data elements related to the service execution environment, such as transaction context (from which the idea was generalized), database connection IDs, user IDs, security tokens, and so on. These are values typically generated by the service infrasturcture rather than created by the application, but need to be associated with the application.
Some of the committee members used to suggest a better name for the spec would be “WS-Cookie” and that is a good way to think about its purpose.
When Mark and I first created the spec (I think it was Mark’s idea initially) we wanted to ensure that this type of data also could be used in a RESTful manner.
The spec underwent somewhat significant revision during the WS-CAF TC process, but I am glad to say that the RESFful behavior has been preserved. It is perfectly reasonable to implement a “context service” (as defined in the spec) using HTTP GET and PUT to obtain a representation of, and update the state of, a Web resource in order to share context across multiple service invocations.
I highlight this because the expected behavior of a WS-* related spec is to pass information by value as a SOAP header, which WS-Context certainly does. However I believe WS-Context is a little bit different in also supporting a RESTful behavior.
We are, of course, hopeful that the proposal to standardize WS-Context will succeed, and that WS-Context will find its place in the SOA world.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s