"Structure" is a bad name. It is vague and can mean just about any thing.
PageComponent could be called "structure", too. Maybe rename Structure to
WikiComponent. Or call it WikiStructure in the program and in writing but
just call it Structure when you are talking.
I can now see that SmallWiki is a tree of folders, with leaf nodes being
pages and resources. Each folder has its own name space. WikiWorks has two
levels, SmallWiki allows an arbitrary number. This is a big difference from
other wikis, and you do not emphasize it like you should.
How do you link to a page in a different folder? You need to say that when
you describe the wiki syntax. Does searching just
When you make a link on a page to something, it is created in the same
folder that the page is in.
A resource is something that is uploaded to the wiki. Are these stored in
the image?
Wiki.cs.uiuc.edu has over a gigabyte uploaded. I wouldn't want
them to be stored in the image! That should be easy to fix by using
proxies.
Why are the classes List, Document, ListItem, and Paragraph essentially
empty? They have no instance variables and only have the one method to
support visiting? Is this because any data they hold is in children?
-Ralph