[Yanel-dev] yarep search documentation

Michael Wechner michael.wechner at wyona.com
Fri Sep 19 15:21:44 CEST 2008


simon litwan schrieb:
> Michael Wechner schrieb:
>> simon litwan schrieb:
>>> hi all
>>>
>>> i've added some documentation about search in yarep.
>>>
>>> http://localhost:8080/yanel-website/en/documentation/yarep/yarepsearch.html 
>>>
>>
>> very cool, thanks very much
>>>
>>> while documenting i noticed something which i think needs to be 
>>> improved.
>>>
>>> i've also added some FIXME:
>>> at the moment one can control the indexing in several ways.
>>> - configuration auto-indexer
>>> - configuration index-fulltext/index-properties
>>> - do explicit indexing via Indexer.index(node). (in my opinion this 
>>> should be possible independently of 
>>> auto-indexer/index-fulltext/index-properties)
>>>
>>> now if you configure index-fulltext=false and you index explicit 
>>> with Indexer.index(node) it will do nothing. (Not even tell you).
>>> i think index-fulltext=false only make sense if auto-indexer=true 
>>
>> no, I don't think so, because also the custom indexer might want to 
>> differentiate between index-fulltext and index-properties
>> (auto-indexer=false means that one is quite probably using a custom 
>> indexer)
> i don't think auto-indexer=false means that one is quite probably 
> using a custom indexer. it just means one want to control indexing in 
> the pallication rather then automatically.
>
> i very agree that "also the custom indexer might want to differentiate 
> between index-fulltext and index-properties" i would even say this is 
> valid for the standard indexer as well.
>
>>
>>> if you want only auto-index properties. but then still if you want 
>>> to explicit index a node it will do nothing (not even tell you).
>>>
>>> i would propose to remove auto-indexer element and control 
>>> auto-indexing with index-fulltext resp. index-properites. this way 
>>> one can configure auto indexing of nodes AND/OR properties.
>>
>> that might make sense, but I need to first check the current API to 
>> state a clear opinion.
> i'm still very convinced that this makes sense.
>
> this makes sense:
>                         auto-index=true && index-fulltext=true && 
> index-properites=true
>
> this makes sense:
>                         auto-index=false && index-fulltext=false && 
> index-properites=false
>
>
> this makes NO sense:
>                         auto-index=true && index-fulltext=true && 
> index-properites=false
>
> this makes NO sense:
>                         auto-index=true && index-fulltext=false && 
> index-properites=false
>
>
> i'll try another approach:
>
> if we use index-fulltext as switch to turn on/off auto-indexing-nodes 
> and use index-properties as switch to turn on/off 
> auto-indexing-properties,
> i think one can control everything as before with less configuration.
>
> in other words, i think we can reduce the complexity of configuration 
> by having the same power.
just to make clear the goals.

Goal 1) By default the repository does the indexing. How the repository 
does it has not to be clear, but it does it
Goal 2) One wants to replace the default indexer by some custom indexer, 
but still the repository should automatically do the indexing
Goal 3) One wants to turn off the repo indexing, because one wants to 
use an application specific indexing (for instance in order to pass some 
metadata generated by some custom framework, which would be very hard to 
pass into the repository without having to implement a custom repository
Goal 3.1) If using an application specific custom indexer, one still 
wants to access the repo configuration, e.g. getRepository().getIndexer()


1) So let's assume we have two properties repo-auto-index-fulltext and 
repo-auto-index-properties:

repo-auto-index-fulltext=true
repo-auto-index-properties=true

means Goal1 and Goal 2 are accomplished

2) Let's assume

repo-auto-index-fulltext=true
repo-auto-index-fulltext=false

which means the repo will not index the properties automatically and if 
one wants to do the properties indexing within a third-party application 
with a custom indexer it means that one has to implement a custom 
parser, whereas only the properties methods are doing something and the 
fulltext is supposed to do nothing

hence I don't think Goal 3.1 can be accomplished

3) The other way around is the same as above

4) Let's assume

repo-auto-index-fulltext=false
repo-auto-index-fulltext=false

the repo won't do anything, no matter what custom parser has been 
configured and one needs to implement a custom parser which is used 
within a specific application

Hence Goal 3 would be accomplished

So in conclusion I agree that having properties like 
repo-auto-index-fulltext and repo-auto-index-properties are better, but it's
important that only the repository knows about them (and not the 
indexer), but also one needs to be aware that Goal 3.1 is not really be 
nicely handled

Cheers

Michael

>
> WDOT?
> simon
>                       
>
>>
>> Cheers
>>
>> Michael
>>>
>>>
>>> WDOT
>>> simon
>>>
>>>
>>>
>>> _______________________________________________
>>> Yanel-development mailing list
>>> Yanel-development at wyona.com
>>> http://lists.wyona.org/cgi-bin/mailman/listinfo/yanel-development
>>
>> _______________________________________________
>> Yanel-development mailing list
>> Yanel-development at wyona.com
>> http://lists.wyona.org/cgi-bin/mailman/listinfo/yanel-development
>
> _______________________________________________
> Yanel-development mailing list
> Yanel-development at wyona.com
> http://lists.wyona.org/cgi-bin/mailman/listinfo/yanel-development



More information about the Yanel-development mailing list