[Chandler-dev] is a unified displayName a good thing?

Ted Leung twl at osafoundation.org
Mon Apr 10 10:39:28 PDT 2006


Alec,

Did we come to resolution on this?  Is there some additional  
discussion that we need?

Ted

On Apr 3, 2006, at 11:59 AM, Brian Kirsch wrote:

> > If you look at Bug 1745: <https://bugzilla.osafoundation.org/  
> show_bug.cgi?id=1745>, you'll see that there's another issue  
> related  to
> > displayName /  title, which is localization.   I think that the   
> localization stuff points to a separate Title attribute rather than
> > displayName.   I suppose that you could even argue that the two  
> names  (title and displayName) are reversed in their meanings if you
> >have  both of them - title being the "system" name for the item  
> and  'displayName' being the text that is localized, indexed, and   
> >presented to the user.
>
> +1
>
> Brian Kirsch -  Cosmo Developer / Chandler Internationalization  
> Engineer
> Open Source Applications Foundation
> 543 Howard St. 5th Floor
> San Francisco, CA 94105
> http://www.osafoundation.org
>
>
>
> Ted Leung wrote:
>
>>
>> On Mar 31, 2006, at 1:09 PM, Alec Flett wrote:
>>
>>>
>>> Andi pointed out to me that we can actually have an overridden   
>>> attribute at any level in the class hierarchy.. this means we  
>>> can  say, for instance
>>>
>>> class Note(...):
>>>    displayName = ....
>>>
>>> and that displayName will override any underlying displayName,   
>>> including any attribute aspects like 'indexed'
>>>
>>> This sounds like the optimal solution to the PyLucene problem I   
>>> described below. Does anyone have any objections to this? Ted,  
>>> this  is domain model stuff.. how does this sound to you?
>>
>>
>>
>> If you look at Bug 1745: <https://bugzilla.osafoundation.org/  
>> show_bug.cgi?id=1745>, you'll see that there's another issue  
>> related  to displayName /  title, which is localization.   I think  
>> that the  localization stuff points to a separate Title attribute  
>> rather than  displayName.   I suppose that you could even argue  
>> that the two names  (title and displayName) are reversed in their  
>> meanings if you have  both of them - title being the "system" name  
>> for the item and  'displayName' being the text that is localized,  
>> indexed, and   presented to the user.
>>
>> Ted
>>
>>>
>>> Alec
>>>
>>> Alec Flett wrote:
>>>
>>>> So we have this great attribute, 'displayName' which is used  
>>>> all  over the place from Block to CalendarEvent and comes in  
>>>> quite  handy most of the time.
>>>>
>>>> I've recently run into a snag with it however.
>>>>
>>>> In the repository, you can indicate that an attribute is  
>>>> indexed  by PyLucene simply by adding a 'indexed=True' to the  
>>>> attribute  definition.
>>>>
>>>> The problem is that from a user's perspective we only want to  
>>>> be  searching 'Note'-based items... not all Items in the  
>>>> system.  Further complicating this is that things like  
>>>> attributes are also  Items.
>>>>
>>>> This means that if you do a PyLucene search for "a" you'll get   
>>>> literally hundreds, if not thousands, of results, even if you  
>>>> only  have "Welcome to Chandler" in your All collection. Now of  
>>>> course  it is easy to filter out the items that don't derive  
>>>> from Note and  only display them... but it seems like a lot of  
>>>> work to iterate  1000 items that we know will never be displayed  
>>>> just to get 1  result back.
>>>>
>>>> There are a few options that I can think of, and I'll indicate  
>>>> my  preference below:
>>>> 1) change the repository so PyLucene only indexes one  
>>>> particular  type of Item... maybe a specific subclass or something.
>>>> 2) don't use displayName for user-visible Items, and don't put   
>>>> 'indexed=True' on displayName. Instead, come up with a new   
>>>> attribute, say 'title' that shows up only on Note-based items,  
>>>> and  put indexed=True on that attribute.
>>>>
>>>> Either way the end result is that when you search PyLucene, we   
>>>> don't have to filter out 1000 non-Note items.
>>>>
>>>> I vastly prefer the 2nd option, and I think it makes a lot of   
>>>> sense from a domain model perspective anyway.
>>>>
>>>> I realize there is a lot of history here... (Andi says "Brian  
>>>> made  me do that" when we found some oddities in chandler.pack)  
>>>> but  honestly a Note-based item's "title" is a dynamic, changing  
>>>> part  of a user's data, while a displayName tends to be a more  
>>>> static  description of a well known Item. I see a semantic  
>>>> difference and  we should probably reflect that in the schema.
>>>>
>>>> When you're searching PyLucene, we don't want to say "only find   
>>>> these things" - instead we want the things to indicate if they   
>>>> want to be found. The title of an event wants to be found. The   
>>>> displayName of a MenuItem block doesn't!
>>>>
>>>> Thoughts?
>>>>
>>>> Alec
>>>> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>>>>
>>>> Open Source Applications Foundation "chandler-dev" mailing list
>>>> http://lists.osafoundation.org/mailman/listinfo/chandler-dev
>>>
>>>
>>>
>>> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>>>
>>> Open Source Applications Foundation "chandler-dev" mailing list
>>> http://lists.osafoundation.org/mailman/listinfo/chandler-dev
>>
>>
>>
>> ----
>> Ted Leung                 Open Source Applications Foundation (OSAF)
>>
>>
>>
>> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>>
>> Open Source Applications Foundation "chandler-dev" mailing list
>> http://lists.osafoundation.org/mailman/listinfo/chandler-dev
>
>
>
> _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
>
> Open Source Applications Foundation "chandler-dev" mailing list
> http://lists.osafoundation.org/mailman/listinfo/chandler-dev

----
Ted Leung                 Open Source Applications Foundation (OSAF)





More information about the chandler-dev mailing list