The Shapeshifter (shapeCMS) system is a discussion forum/blog website script package for Apache Cocoon, with the eXist XML database. This is an early release, with all the limitations in functionality and usability that this causes. Go to the Create! page to read about how to create things with shapeCMS.
If you have a question, or just want to comment on something, send an email to firstname.lastname@example.org
12 January 2006
I have added the first part of the site search function: The blog archive. In an XML database, the issue is not to find things, but to prevent the visitors from finding things that they should not be allowed to see.
Web form handling has been improved for HTML areas by a form-processing function, which rebuilds the html structure without copying name spaces. Name spaces could potentially be used to send commands to the system, which could cause a security problem. Therefore they are not copied (you can, of course change that if you like).
To make it easier to understand the system, I have added a view function, that allows you to see all the page layout and stream layout patterns used for a page. You can also, as admin user, preview pages as they will look for other users.
I have also corrected a minor omission from the installation instructions.
3 January 2006
This update makes the system a lot faster.
Basic version management for texts is now implemented. See the News One sample. This update therefore changes the data structure of the contents, which means that it is not compatible with previous versions.
I have started implementing a Blog Magazine template. It is not yet finished. If you like the idea, but not the page layout and look, then you are most welcome with your own improved layouts!
ShapeCMS allows you to create traditional hierarchical web sites, using virtual hierarchies. That means that contents aren’t stored in the hierarchy, they are associated with it. That also means that you could associate the contents with several hierarchies at the same time.
ShapeCMS also allows you to store documents either using a strict metadata structure (e.g heading, body, author (or your own tag)), or as a HTML document, or both. Metadata both allows you to create a strict uniform layout, and it also allows you to sort contents based on the data field. Using HTML instead allows you to create documents with a varied layout.
There are pre-defined page templates for a classic discussion forum with conferences, discussions, and threads. There are also page templates for plain blogs. You have to work a bit with these to get a personal layout. Moreover, there are basic content management templates, and audience templates, that you can apply to get a traditional web site with a web interface.
A classic blog, with entries ordered by date.
A classic discussion forum overview, similar to the Venice system.
A classic online newspaper layout, with the news categories to the left, a main headline in the top-mid, more general news of high interest to the right, and section headlines at the bottom.
A modern online newspaper layout, with contents rendered in a more varied way (can be even more varied than in this example, since the sample text is identical for all sample items). Also features related news (related to the top news item, in this case).
Pages are composed of elements, defined as stream patterns. These can be reused on different pages. You can use that to define newspaper-like streams, with for instance, the 10 latest posts. The streams are defined in HTML mixed with my own stream definition xml tags.
No, you have to run your test cases, and do whatever modifications you need.
No, the shapeCMS scripts are provided with the Apache 2.0 open source license.