Aerik Sylvan schreef:
Wow, awesome! - you (and your employer) beat the heck
out of all my good
intentions to acquaint myself with the current version of Mediawiki and
write code good enough for production! I can't wait to see it.
I guess money helps. As does having more free time to develop it.
Lucene doesn't allow edits, it only allows add and
delete. Presumably too
many deletes make the index inefficient or something. But I think all that
is moot - once you've got the categories into their own table, it *should*
be simple to set up another index on the same type schedule/etc. as the base
search index, and point it to that table. Then, change the interface to
point to Lucene instead of MySQL. I'm not familiar with Wikipedia's Lucene
backend, but... It seems reasonable to assume that this is not a major
endeaver.
That's kind of what I was saying: if we have some kind of searchindex
<--> Lucene interface, a categorysearch <--> Lucene interface should be
easy.
What's your UI for the intersections look like?
That was the killer for me;
I'm a weak UI guy. I'd imagine (and implemented a rough prototype years
ago) that let you "browse" intersections - ie, given intersection a it would
show you the set of all categories B that have documents that have category
a. Ideally the most frequently used categories appear at the top :-) But I
never did any performance testing for this set up, and additionally, I'm not
sure how to do it in Lucene... Anyway, what's your interface like?
I'm also
not much of a UI guy, but the UI for this extension was mostly
imposed on me by my 'employer', and after some discussion we settled on
a format where the category intersection part (it does more) is
basically a text box where you can enter "Living people AND American
people OR Presidents of the United States". AND takes precedence over
OR, so the example would get all living Americans plus all deceased
ex-Presidents. Expressions with parentheses like "Living people AND
(American people OR Canadian people)" aren't supported yet, but can be
emulated with "Living people AND American people OR Living people AND
Canadian people" (more complex expressions will probably be impossible
to emulate that way, and of course the extension should really support
parentheses, I'm working on that).
Anyway, you'll be able to play around with it around the beginning of
next week, probably.
Roan Kattouw (Catrope)