Some Italian developers have come up with an API for moodle, using SOAP. They presented a paper (PDF) at OSS2005 describing the rationale; essentially getting Moodle to talk to other student-information management systems at Genoa. This would be an alternative to hacking Moodle’s database to replace some tables with views of CMIS.

The plug-in is still in development (of course), but can be downloaded from the Moodle Development section in Using Moodle