Related to FacetedNavigation and FacetedClassificationInMoin.
Automagical Menus are (pseudo) hierarchical menus generated from the contents (bottom up, from the categories or other facets). What follows was refactored from FacetedClassificationInMoin.
Possible imaginary example of facets in Moin
Possible facets in Moin
These are just examples. Any piece of info about a page (MetaData) can be a facet.
About: the issue (like today categories) the page is about. Possible values are Development, Use, Application, Interface, Look, etc.
Kind: this is maybe the most used term when you speak about books/sites and like. There is a how to page, an article, an index/road map page, home page, help page, tutorial and like. You can write different kinds of page on the same subject.
Rank: how people rate the pages from * to ***
State: how it is being worked. Possible values are Static, Flux, Stable, etc.
- This could be either static state tag that people give to the page, or an magic value the system give to each page, according to the type and amount of changes in the past.
System: Only if they belong to the system pages. Possible values are Help, Administration, Installation, Translations, etc.
- System is not a good facet. System pages are small amount of clear structured, static, well refined pages, possibly read only and shared between wiki instances. We can and should organize them using static index pages.
Possible page categorization
Given these facets, a node could be categorized and automatically included in the (pseudo)hierarchical menu just adding a link to:
CategoryAbout/Development
CategoryState/Flux
CategorySystem/Administration
More complex, but more powerful also, is the situation in which both mechanisms can coexist. This can be done if simply the first word that identifies the facet is not Category but Facet instead. In this case, the links will be:
FacetAbout/Development
FacetState/Flux
FacetSystem/Administration
These examples uses current (1.3) Moin technology, but a mechanism to make the facets explicit metadata would be more useful in the long run.
Example facets list
Some values are same for every wiki, like Help and Find, other values are wiki specific.
About
- Development (n)
- Use (n)
- Application (n)
- Interface (n)
- Look (n)
- Help (n)
- Find (n)
- None (n)
Rank
*** (n)
** (n)
* (n)
- None (n)
State
- New (n) - Just opened, nobody changed the content since they where created
- Flux (n) - Had a lot of changes recently
- Stable (n) - Did not changed over a long time
Other Wiki Facet
- Wiki Specifc value
- Other wiki specific value
Requirements for the proposed solution
(note that since I'm no programmer, I don't know exactly how complex could be to implement this).
We could create a setting to generate or not the automagical menu, stripping the Category of Facet word before the first meaninful one (as shown in the previous example). This setting can include the definition of the word used to identify the facets (analog like the word "category" today).
If its value is true, the identified links are scanned and the menu is created from its names as shown in the previous example. This menu could be generated after the navigation bar (actually, it can be any place since from version 1.2 we have skinning, see ThemeMarket).
If it is not very CPU intensive (maybe it can be turned on/off via some setting) we could even show the number of pages in each group after each group name (with a class in order not to clutter the menu display), as in:
- About (54)
- Development (25)
- Use (9)
- Application (5)
- Interface (8)
- Look (7)
Other simpler automagical menus
Even if we don't use the proposed faceted mechanism, the automatical listing of Categories (removing the non-meaningful first word in each ocurrence and putting it just once as the list label) in the navbar could be useful as a first approach to facilitate wiki content understanding and access.
See also FacetBrowsingTheme.