2007/11/30, Jérôme <romjerome@yahoo.fr>:
Benny,

> After you removed this else branch, normal and inlaw relations should
> always be calculated.
> Am I correct?

Yes, I see it now ...

aha

It was only displayed on second detailled path. (I get 4 detailled paths
to common ancestors after removing else branch !!!)
Also, this returns too many values (son and son-in-law)

hmm, you mean you want this tool to be perfect instead of just good enough?
In law relations are indeed just added up and displayed at the moment. You must have quite some interlinked family for this to be a problem I would think.
I would like to keep the code as it is at the moment, although I agree the present way can be confusing, it is not incorrect, just displayed inefficiently.
Feel free to do a feature request to improve it though.
Should you nevertheless find a bug, let me know.

Benny

Benny Malengier a écrit :
> Jerome,
>
> I have written the quick report so that inlaw relations are not searched
> if a normal relation is found.
> So what you describe is to be expected.
>
> To see if all works, in all_relations.py, go to line 117 and remove the
> stop:
>
>        else:
>             #stop
>             return
>
> After you removed this else branch, normal and inlaw relations should
> always be calculated.
> Am I correct?
>
> Benny
>
> 2007/11/29, Jérôme <romjerome@yahoo.fr <mailto:romjerome@yahoo.fr >>:
>
>     Benny,
>
>
>     There is an issue with all_relation and inlaw. It is a particular
>     relation/situation. I don't have a testcase database yet, but i could
>     try to explain:
>
>     a. I would like to display inlaw informations between my mother and my
>     great-father (father side). My parents are married.
>
>     b. all_relations quick report just displays normal relation : common
>     ancestors 13th degree for my mother and 10th degree my great-father
>     (father side).
>
>     c. but inlaw relation is ignored !!!
>     (and only between this two persons)
>
>
>     I found a solution by cutting a branch of my family tree !!!
>     After that, I get my inlaw relation. Maybe I know why :
>
>     My great-father have two number 3, which means there is collapse
>     (inbreeding) on his ancestor tree ... shame that ancestors_path was with
>     the same common ancestors as my mother.
>
>
>     Why should I remove a branch on active person, collapse are on home
>     person ?
>
>     Also, maybe we might try to display paths like EndOfLine reports
>     (two or
>     tree lines and data with a separator). I have difficulties to navigate
>     with multiples common relations (height too large)
>
>     And seems that dictionary/lists wasn't refreshed on all_relations.
>     Without parents data my mother should not keep common ancestors with my
>     great-father (except inlaw). Normal relation is still displayed after
>     broken branch. True, it was during test (not standard use) and maybe for
>     saving memory.
>
>
>
>     PS: I will try to generate a testcase database
>
>
>     Benny Malengier a écrit :
>     >
>     >
>     > 2007/11/24, Jérôme <romjerome@yahoo.fr <mailto:romjerome@yahoo.fr>
>     <mailto: romjerome@yahoo.fr <mailto:romjerome@yahoo.fr>>>:
>     >
>     >
>     >     I just have a minor "STEP family" issue on all_relations
>     informations:
>     >
>     >     UNKNOWN relation type between FATHER and (STEP-MOTHER) returns
>     the same
>     >     value as inlaw=True and step=False !!!
>     >
>     >     I try to use:
>     >
>     >     elif gender_b == gen.lib.Person.FEMALE and Ga <
>     len(_mother_level):
>     >                     if inlaw and Ga == 1 and not step:
>     >                         rel_str = "la mère du conjoint"
>     >                     elif step and Ga == 1 and not inlaw:
>     >                         rel_str = "la belle-mère"
>     >                     else:
>     >                         rel_str = self.get_mother (Ga, inlaw)
>     >
>     >
>     > Yes, for siblings you will see the correct step value.
>     > For people who are further away (nephews, ...), I have chosen on
>     the all
>     > relationships to collapse families so father and stepmother is a
>     family.
>     > If a person has a birth relation to one of the two, this is
>     interpreted
>     > as a birth relation to the family, and you obtain hence step = False.
>     >
>     > Note that step is false is only returned for people who have that
>     family
>     > as common ancestors. I believe that is acceptable tradeoff so as
>     not to
>     > add more complexity in the algorithms. That is the siblings at top
>     level
>     > under common ancestors can be half siblings or step siblings. The
>     half
>     > siblings would cause eg nephews (and not 3/4 nephews ;-) ), the step
>     > siblings would cause step siblings.
>     > It would be complicated. Note further that all relationships gives in
>     > the details: Parents, birth Yes. So this means means birth to at
>     least
>     > one parent.
>     >
>     >     I agree, it is not a second marriage, just an other
>     spouse/partner.
>     >     > Traditionally, a stepfamily is the family one acquires when a
>     >     parent enters a new marriage, whether the parent was widowed or
>     >     divorced.
>     >     http://en.wikipedia.org/wiki/Stepfamily
>     >
>     >     Does it mean that STEP is only for family_type = MARRIED and
>     we ignore
>     >     UNMARRIED, CIVIL_UNION, UNKNOWN, CUSTOM ?
>     >
>     >
>     > STEP is for all relation types.  It depends only on the common
>     ancestors
>     > of a family if it is given.
>     >
>     >
>     > Benny
>
>