Soya: An SSDL Framework implementation

A tear almost went down my face. I am so happy to see Patric‘s work finally out there. Patric says:

After almost 4 months of development I’ve uploaded the first release of Soya yesterday night =)

Please feel free to browse through the


web site

, download the

latest release

, check out the

source repository

, join the

mailing list

, report

bugs

, request

new features

, …






http://soya.sourceforge.net

Soya is an SSDL engine implementation. It currently only supports the MEP SSDL Protocol Framework (the alternative to the WSDL 2.0 MEPs) but I hope the open source community will be interested in making one of the other protocols frameworks a reality. Imagine the possibilities… full support for capturing message-oriented conversations through a SOAP-focused, message-focused description language. No more verbs/methods/procedures/etc., no more leaks of programming abstractions through a service’s boundaries.

Patric built Soya around WCF and he has done a great job at providing an attribute-driven, message-oriented programming model.* Have a look at the “Getting Started” guide to get an idea. Here’s a list of Soya features from sourceFORGE:

  • Based on the Windows Communication Foundation (WCF)
  • Straightforward C# attribute-oriented programming model:
    • less code and hence less scope for error introduction
    • more easily maintainable due to single source location
    • seamless integration with WCF’s programming model and provision of familiar idioms to existing C# programmers
  • Programming abstractions that foster SSDL’s underlying message-oriented model
  • Deployment-time generation and validation of SSDL contracts from C# attribute meta-data
  • Run-time validation of SOAP messages according to SSDL contract (XML schema, message structure, message position in conversation)
  • Message correlation and conversation state maintenance purely based on WS-Addressing standard headers (i.e. MessageId, RelatesTo)
  • Intelligent message dispatching to service methods based on conversation state
  • Public API for sending messages makes Soya suitable to be used by both clients and servers
  • HTTP GET meta-data retrieval using ?ssdl convention
  • Implementation of the MEP protocol framework (programming model and runtime)
  • Extensible architecture that allows further protocol frameworks to be plugged in

Well done to Patric. He has done an excellent job and he has kept the small momentum around SSDL going.


Update:
 I forgot to mention the potential relationship between a description language like SSDL, Soya, and workflow technologies like Windows Workflow, as we discussed in our chapter in the recently released book on “Workflows for e-Science: Scientific Workflows for Grids”.

 

* I wish the book chapter

Jim

and I wrote on message-oriented programming abstractions for an upcoming SOA book in 2004 was published at the time we were told it would. We now hear that it will appear this year in 2008 but I think it’s too late as it’s going to be stating the obvious; not to mention the fact that the world has moved on beyond the SOA hype.

Recent Posts

Digital Twin (my playground)

I am embarking on a side project that involves memory and multimodal understanding for an…

2 months ago

“This is exactly what LLMs are made for”

I was in Toronto, Canada. I'm on the flight back home now. The trip was…

9 months ago

AI is enhancing me

AI as an enhancer of human abilities.

10 months ago

“How we fell out of love with voice assistants”

The BBC article "How we fell out of love with voice assistants" by Katherine Latham…

1 year ago

Ontology-based reasoning with ChatGPT’s help

Like so many others out there, I played a bit with ChatGPT. I noticed examples…

1 year ago

Break from work

Hi all… It’s been a while since I posted on this blog. It’s been an…

2 years ago