Faceted Classification for Websites
Kim writes about ideas which would be useful for self-publishing (ala Movable Type) and community-publishing (ala Wiki):
Faceted classification is a technique that lets you categorize “things” into multiple overlapping hierarchies. For example a Madonna CD might be categorized under “Artists / Madonna” as well as “Format / Compact Disc” and “Price / $10 – $15”. The advantage of this is that it doesn’t force a dominant decomposition upon the user (to borrow a phrase from Aspect Oriented Programming). For example, one user might restrict themselves to cheap CD’s first, while another user might want everything Madonna, cost be damned.
Here’s a quick list of the requirements I’m envisioning:
– Web-based administration and editing.
– Multiple navigation paradigms:
— linear — previous and next links
— hierarchical — children and parent links
— web — links between nodes, possibly bi-directional
— feed — every combination of categories has its own RSS feed
— search — all text is keyword searchable
refinements — automatically suggests sub-categories to narrow the search
– Automatic tagging of author and date — this would make weblog-style sites relatively easy to create.
– Permissioning — restrict which users can create new items, change categorizations, etc.
– Comment facility — this affects the permissioning system.
– Publically-editable categorization — this also affects the permissioning system.
– Database backed — this kind of site simply has too many pages to use static pages.
– Easy to install — perhaps CGI?
What kind of site would this system be useful for? Well I could use it for my history idea, for one. It would also be useful for catalog sites like freshmeat. And it might encourage a weblog-wiki hybrid that people might find useful.
The underlying assumption I’m making is that if you make software that structures information differently, then it will find its own unique uses. Think of the difference between web pages (one-way links, read-only), weblogs (single author, public comments, chronological), newsgroups (subject categories, threaded discussions), wiki (interlinked, publically editable), and instant messages (immediate, point-to-point).