Hello again.
I just had a descussion with JeLuF on #mediawiki about the concept of categories. Here is a summary of the main points that came up (but where not neccessarily agreed upon):
* Categories as they are have prooven rather useless and confusing (at least in the german WP). Cross-Sections and transitive covers have been agreed there to be the core features missing to create a functioning structure of categories.
* Nikola Smolenski proposed a patch for linking to cross-sections of categories using a syntax like [[:Category:Woman/German/Author]] to get female german authors. That syntax would break some existing categories, but changing the syntax is not a problem. The patch was discussed here and dismissed as not practical (why exactly?).
* Cross-Sections of categories are only useful if we also have a seach-page that allows for that feature. Possibly, this is even more important than linking to cross-sections.
* Cross-Sections of categories are only useful if we can search over the transitive closures (members of all subcategories, recursively). An alternative would be to dispose of subcategories all together - but that would require extensive redundant categorisation of articles.
* Besides linking to cross-sections, it would be useful and intuitive to allow an article to be added directly to a cross-section. That is, [[Category:Woman/German/Soccer player]] should put the articles into [[Category:Woman]], [[Category:German]] and [[Category:Soccer player]].
* One problems with transitive closures are circularities in the sub-category relation. As I can't think of any situation where such a circularity would make sense, I think they sould be avoided alltogether. Maybe the software could output an error when it is attempted to create a circular dependency?
* Another way of avoiding circular dependencies and non-intutitive results of transitive closures would be to allow categories to *belong* to other categories, without being a *subcategorie*. IMHO subcategories should be declared using a special syntax, like [[Supercategory:Foobar]].
* Another problem with transitive closures is efficiency: storing graphs in a relational database is not trivial and generally ineficient. I think it would be best to store all "implicite" memberships of an article whenever the articles assignment to categories changes. But that would mean that a *lot* of article-entries have to be updated when a subcategory-relation is added or removed. I belive this point to be the main issue with my proposal for advancing the concept of categories.
* The concept that is actually wanted (in the de:WP) is general metadata, consiting (at least) of the dimensions Time, Space, Type (of objet or article), Topic (field of study), and Keyword (loose bibliographical collections). Using this dimensions together with cross-sections and transitive closures would yield a truely powerful structure. The existing concept of categories should be expanded to meet those requirement - the distinction of the dimensions, however, do not need to be hard coded. Naming-conventions would be sufficient.
Could you please give me your opinion about these points? I would be especially interrested in knowing if anyone has a good ideas as to how to implement transitive closures efficiently. I belive that to be the core problem here... and it would be *extremely* helpful to have that feature. If someone can give me a definite "forget about it" with a good reason, I would be disappointed, but it would be OK too...
Thank you very much Daniel
wikitech-l@lists.wikimedia.org