The project
CMOS — A new Open Source platform to build content-management systems with multi-device delivery — is an industrial-research and experimental-development project funded by MIUR under the Pacchetto Integrato di Agevolazioni (PIA) scheme, running from September 2002 to February 2005 (30 months), with Bassilichi S.p.A. (today part of the Nexi group) as lead partner together with noze and the University of Florence.
Goals
Build a fully Open Source content-management platform, modular and scalable, able to:
- Manage dynamic, multi-user, multi-channel content (web, mobile, kiosk)
- Personalise content delivery by user profile, device and language
- Support editorial workflows with approvals, revisions, expiry dates and notifications
- Integrate with existing databases and external systems (LDAP, SQL, file systems)
- Be fully accessible (WAI/W3C compliant) and usable
The idea anticipated, in fact, what we today call a headless CMS / content-as-a-service — built however with the most mature Open Source environment of the time.
noze’s role
In CMOS noze brought its pioneering experience with the Zope/CMF world, gained on its own product InFlow (noze’s Open Source CMS, already in production at the time at customers like Radio 105, Katalavoro, the University of Pisa, Prometeia, Mate, Radio Montecarlo). noze’s technical and scientific contributions to the project are documented across several project papers, in particular:
- “Why Zope and CMF” — a comparative analysis of the main Open Source CMSs of the time (eZ publish, phpWebSite, Slash, SteelBlue, Typo3, phpCMS, Midgard, Velocity, Zope+CMF) and the technical rationale for choosing Zope + CMF (the base from which Plone would shortly emerge) as the foundation of the CMOS system
- “Module considerations” — architectural design of the platform’s modular split
- Specifications for workflow, security/permissions, XML indexing, and taxonomy/ontology modules
The value noze brought was hands-on experience on a technology (Zope + CMF) still little used in Italy at the time but destined to become the Open Source CMS standard for the following decade.
During the project the platform was migrated to a Java Enterprise (J2EE) architecture, chosen as the definitive stack for its maturity in the enterprise domain, the availability of robust application servers and the wider adoption among the industrial partners.
Technologies
Java Enterprise (J2EE) as the definitive architecture; in the initial prototyping phase: Linux, Zope (a Python web-application server), CMF — Content Management Framework, DTML, Python; across both phases: XML/XSLT, LDAP, integration with SQL and object databases.