Providing a machine-readable web and implementing service-oriented architectures is the business of today. Virtuoso offers a full range of functionality for these, starting with the base protocols and going all the way to complex process orchestration.
The wave of AJAX applications also reintroduces the notion of client/server database, now over web-services protocols. Virtuoso offers XML for Analysis (XMLA) as a means for AJAX applications to access SQL directly, without page reloads.
Making a REST-ful web service is as easy as writing a dynamic web page in VSP that sends XML output to the user agent.
Stored procedures can be published as SOAP, with the benifit of automatic WSDL generation, checking and processing of input and output parameters, fault messages etc.
SOAP is complemented by WS Security for selective encryption and signing of messages. WS Reliable Messaging provide guaranteed delivery and retry.
The Virtuoso SOAP server and client pass the whole SOAP Interop suite, levels 1-4. The test scripts are part of the Virtuoso test suite provided with the source distribution.
Virtuoso comes with a BPEL4WS execution engine. This is the industry standard way of orchestrating long running business processes implemented as web services.
XML for Analysis?
XML for Analysis is an application of SOAP (Web Services transport) for SQL Data Access.
The net benefit of this protocol is the ability to develop database independent Rich Internet Applications via AJAX.