Overall Architecture Of The DotGNU Webservices Platform
DGEE, the DotGNU Execution Environment provides the core webservice component of DotGNU and provides the functionality of accepting, validating and satisfying web service requests.
DGEE will be capable of executing multiple different bytecode formats in appropriate Virtual Machine implementations (VMs). The dotgnu-pnet is building (among many other things, which include compilers and system libraries) a VM implementation for IL. For Java bytecode, we will use one of the existing available Free JVM implementations, possibly SableVM.
Support for other popular Free Software bytecode systems is also considered desirable, such as in particular Python bytecode and Parrot, the bytecode system of Perl6. (In fact Parrot aims to become the bytecode language of choice for a whole range of dynamic languages.)
In addition, DotGNU would like to be the platform of choice for computer science research projects on innovative new bytecode systems. (Some early discussion of such ideas has occurred on the arch mailing list but this has not led to concrete development efforts yet.
All components of DotGNU will support the standard webservice protocols for synchronous webservice interactions such as XML-RPC and SOAP, and in addition asynchronous webservice interactions via Jabber will be supported.
DotGNU's native authentication and authorization subsystem will probably be founded on a FOAF-based virtual identities system. In addition, MACS, the Modular Access Control System will be available for integrating DotGNU with other auth systems, as well as making DotGNU's authentication and authorization subsystem available to non-DotGNU-based applications.
In addition to the components of a Webservice platform, and development tools, there are also a few (currently two) development projects for webservice applications which are part of DotGNU: phpGroupWare and Forum.
DotGNU webservice applications export their functionality via webservice protocols such as XML-RPC , while they can at the same time also be used as browser-based "web applications". When the needed infrastructure (SEE) is available, downloadable user interfaces will be added as a third option for accessing the webservice applications.
Your comments please...
You are invited to add your comments concerning this at the appropriate page of the DotGNU Wiki