[Seaside] SmallWiki questions

Lukas Renggli renggli at student.unibe.ch
Sat Nov 29 10:17:51 CET 2003

Hi Nevin,

> 1. The "contents" of a SmallWiki is a combination of pages, folders, 
> and resources.


> 2. A "page" and a "resource" are components, and a "folder" is a 
> composite of those two components.

yes, it is a composite-pattern, but there are not just those two 
components that might be put into a folder:

- First of all it is possible to nest folders, to allow putting 
together related content. Furthermore folders are a kind of a 
namespace, so you might have pages with the same title in different 

- There are other components available to be used with SmallWiki as 
extension. As an example some time ago I have written a component 
displaying a keyword-index of your wiki. A lot of other components 
(have been|are|will be) written during software design courses at the 
University of Bern and Brussels. Just to name a few examples: link 
collection, photo gallery, forum, address-book, calendar pages, rss 
viewer, ...

> 3. A "resource" is some uploaded file resource, such as a sound, a 
> video clip, or a picture.

Exactly, usually this is for things like you mention: jpg, gif, mp3, 
mpg, zip, pdf, doc, ... Actually it is also possible to upload a 
html-file to serve static pages/style-sheets ...

> OK, what if I don't care to allow anybody to upload file resources? 
> That would leave a "page" as the only interesting component left.

For further information about the design, see the diagrams in the 

	Smallwiki - Collaborative Content Management

> And why bother having a composite (a "folder") of only one component?

Wikis have always been flat (WikiWorks has one level: Book -> Page, 
SWiki has two levels: Shelf -> Book -> Page) and in my opinion this has 
a lot of drawbacks. Therefor I decided to implement a real composite 
and this gives a lot of power to the users to organize their things. Of 
course it also adds some complexity, but I think today everybody is 
used to work with folders and files in their filesystem.

After all, it is possible to use SmallWiki without creating any folder: 
just put everything into the root, but there will be a mess very soon 

> In other words, if I don't care to allow people to upload files to my 
> SmallWiki, why would I be interested in anything other than pages (eg, 
> children of type SWPage)?

See the examples above.


Lukas Renggli

More information about the Seaside mailing list