I had touched many many CMS, especially XOOPS2, eZ publish, TikiWiki and RapidWeaver. XOOPS2 shows the Nuke Doctrine. eZp shows the Page-Base Doctrine that is antithetical to XOOPS2. RapidWeaver shows a balance and gives big hint to us.
Problems of X2
XOOPS2 is good core, because module developers are promised freedom on programing. This freedom means that programers don't need to consider connectivity with the core. The core manages only an existence of modules. The core doesn't know what a content is. And each module defines each content.
But, it's a problem that the core doesn't know what a content is. Site owners can assign modules to the site, but can't assign pages to the site. For example, it's impossible to make a child pical page under a pico page. That is a spec and a limitation.
eZp's merits & demerits
Personally I call a style like eZp "Tree Style". That's just CMS. Site Owners can make a new node of the site tree as a content under the root node. Also the owners can add a new nodes under the existing node. This issimilar to file system, 'intuitive' and flexible structure.
A node is an object that the eZp core defines. It's possible that each nodes use each template, total access control, multi-language layer and the general management. The general management means that site owners can edit, move and delete node, even if the node is a special node that human being should not control directly.
Any contents should be controled as an object that eZp defines. That's a merit and a demerit. When you get that you can assign static pages freely, you are surprised at possibility of the Node Style. But, when you try to install forum or blog like XOOPS, you encounter issues.
eZp handles a content as an object. A static page is an object and a node. Also a comment of forum is an object. A topic is a child node of the forum node. And, a responce is a child node of the topic node. Also a entry is a child node of the blog node. And a comment and a trackback are a child node of the entry node.
If your site have 344 messages of the forum, 36 entries and 2056 SPAM comments for the entries, the tree of your site has many node and complex structure. I don't agree that a grain size of my profile page equals a grain size of a SPAM comment that recommends Viagra.
You can handle all contents as a node and an object of eZp, so it's possible to move a comment node from the blog to the forum, make a multi-language layer to a comment node. But, there is no point.
eZp is very very excellent professional CMS. So it is not best way for all XOOPS owners. "Node Style" that handles all content as an object that the core defines is not perfect solution.
RapidWeaver is home page creation tool at Mac OS X. Basically, the RapidWeaver is similar to eZp. You add sibling pages and child pages to the existing page. RapidWeaver recognizes a page. So it's possible to move, edit and delete each page.
But, Blog, Photos and Download type page are handled as a one page. Blog has many entries. These entries are data that Blog page manages. RapidWeaver doesn't handle each entry as a page. You can move blog page to other page, but can not fetch a entry from the blog and move the entry to other page. That's right. Nobody wants to do it. Of course, you can edit and delete entries at the blog management. See the following screenshot for more informations.
RapidWeaver gives many hint to us, so check 30 days free trial version if you have Mac OS X.