While in reality flattened relationships would never span more than 2
db relationships, and loops like that are most likely be limited to
something like many-to-many, there is no hard rules on what is allowed
and what is not. So I'd like modeler to encourage best practices, but
without limiting the possibilities for some crazy people :-)
So maybe instead of "hard culling" we can do a "soft" version. E.g.
grey out relationships in the browser that are more than 2 steps away
from root or those that result in a to-one loop?
Andrus
On Nov 18, 2008, at 4:14 PM, Kevin Menard wrote:
> While Cayenne will traverse that path, it's unnecessary. I think
> allowing such mapping introduces more confusion than anything else and
> such mapped relationships are normally an error than anything else.
> As such, I proposed not allowing the relationship path dialog to grow
> unbounded with such loops.
>
> NB: this does not affect the general case of relationship mapping.
>
> --
> Kevin
>
>
>
> On Tue, Nov 18, 2008 at 9:02 AM, Andrus Adamchik <andru..bjectstyle.org
> > wrote:
>> Hmm... not that I ever mapped a flattened relationship like that
>> myself, but
>> technically this is totally valid:
>>
>> ObjRelationship: Painting.peerPaintings
>>
>> mapped as
>>
>> DbRelationship Path: PAINTING.toArtist.paintings
>>
>> Andrus
>>
>>
>> On Nov 18, 2008, at 3:49 PM, Andrey Razumovsky wrote:
>>
>>> A -> B -> A is culled (B -> A will not be shown) when
>>> relationships are
>>> reverse to each other & A -> B is to-one (e.g. paintings -> Artist
>>> ->
>>> paintings)
>>>
>>> 2008/11/18, Andrus Adamchik <andru..bjectstyle.org>:
>>>>
>>>>
>>>> On Nov 18, 2008, at 3:33 PM, Kevin Menard wrote:
>>>>
>>>> I only was able to play with culling briefly, but it
>>>>>
>>>>> looks to be cutting down my choices considerably, which is good.
>>>>>
>>>>
>>>> BTW, what's this about? Looks like I missed something.
>>>>
>>>> Andrus
>>>>
>>>>
>>
>>
>
This archive was generated by hypermail 2.0.0 : Tue Nov 18 2008 - 09:22:26 EST