Search against misc. dictionary info

mikeo

榜眼
Is it possible to search against non-character information, e.g., if I wanted all the characters xiao4 which occur in dictionary entries marked as (topo) or Noun or (in ABC) "F.E.", etc.?
 

mikelove

皇帝
Staff member
Not at the moment, no. These types of searches can get rather hairy on a low-memory device like a Palm/Pocket PC...
 

mikeo

榜眼
Thanks for quick reply.

Would the problem be as bad in searching fielded information, or is it mostly because it's freeform text fields being searched? So, if I had tagged an entry could I search the tag+plus entry.
 

mikelove

皇帝
Staff member
The freeform text fields are part of it, but even searching on fixed tags like F.E. et al you still run into the issue of merging a couple of very big sets of search results; there are about 23,000 F.E. entries in the ABC, and on Palm OS you can't even reliably allocate a buffer big enough to hold all of those results at the same time.
 

mikeo

榜眼
Thanks, Mike, that helps to understand the problem.

To illustrate with my earlier example, the set of all xiao4, and the set of all FE, are both large sets. But the first set you already have, when you search for xiao4.

I'm wondering if it would be feasible to have a (probably very slow) process which ran against those results, one by one, marking only those xiao4s which also happened to contain an FE. The resulting group would probably be fairly small.
 

mikelove

皇帝
Staff member
It's certainly possible (very common CS problem in fact), but because you can't easily keep those sets in memory it does indeed get rather slow. There are ways of working around that (for example, creating an alternate version of the character index that was sorted the same way as the part-of-speech one and then going through them sequentially without having to search the entire results list each time), but they're somewhat involved programming-wise, and we're really trying very hard to avoid adding any more complexity like this until we've got a nice, stable, reliable system to do what we've already said we're doing in 2.0.
 

mikeo

榜眼
As always your answer is quick, clear, and reasonable. I certainly understand and agree that getting a stable initial release is key and requires putting some features aside for future. Thanks for taking time to explain!
 
Top