GenoPro Home
GenoPro Home  |  Get Started With My Genealogy Tree  |  Buy  |  Login  |  Privacy  |  Search  |  Site Map
 
Kinship, or blood relationship, calculator


https://support.genopro.com/Topic22844.aspx
Print Topic | Close Window

By genome - Wednesday, October 15, 2008
In a desperate attempt to stem further decline in the cells of my grey matter I have spent a couple days exercising them Hehe; putting together a script to determine blood relationships between individuals in a .gno file that may be of some use to other users.

It is written as a custom skin, so just unzip the files in the attachment to this post into a folder 'Kinship Calculator' under your GenoPro Skins folder. (See 'Options' tab of GenoPro's Tools/Generate Report dialog to discover or change where your GenoPro custom skins are held.

To use it, simply select the two, and only two, individuals for whom your require blood relationship details on their respective GenoMaps and then run thescript via the GenoPro Tools/Generate Report dialog, selecting Kinship Calculator from the drop down list of skins. If the two individuals are on the same genomap then selecting that genomap in the drop down list in the 'Report Data Source' field will sped up the report.

At present it does not report relationships with 'in-laws' or by marriage, nor the reciprocal of non symmetrical relationships e.g. sister/brother for brother/sister or aunt/uncle for nephew/niece, but maybe I'll add these later.

An HTML chart is produced inthe 'Destination folder for generated report' showing the lineage between te two selected individuals and their common ancestor(s).

http://support.genopro.com/Uploads/Images/33d079d8-f21f-41f6-8d39-375c.png

Unfortunately it is a bit long-winded having to run the Report Generator for each onewhen youwant to check several relationships.

If one day GenoPro implements the previously mooted 'macro' facility then perhaps there could be a shorter way of doing this.

Update 2008/10/22 now caters for half blood relatives and in-laws (related by marriage or other union)
Update 2008/11/16 added HTML report showing lineage/pedigree chart of the relationship.
Update 2008/11/18 further fixes.
Update 2008/11/19 added date formatting section to Dic.
Update 2008/11/26 another revision.
Update 2008/11/27 (f) pour les cousins français
Update 2008/12/04 (g) generate valid XHTML + bug fixes & ease some translation issues.
Update 2008/12/12 (j) more bugs and translation issues resolved
By appleshaw - Wednesday, October 15, 2008
My grey cells shiver at such a thought.

Two comments.
I have over 30 GenoMaps on my main tree and the first time I tried it, it reported more than two selections. Is there a simple way to clear all selections? or restrict the report to the visible map.

Second I ran a trial and got this result

Peter John Beaven is the 3x great grandson of Betty d_Joshua Beaven.
Thomas Mitchell & Betty d_Joshua Beaven are 3x great grandparents of Peter John Beaven.

However Betty had another son by a different father and this reports that we are not blood related. Is this correct? You will gather that I am not a genealogist as I would know if this was the correct answer

By GenoProSupport - Wednesday, October 15, 2008
appleshaw (10/15/2008)
Is there a simple way to clear all selections? or restrict the report to the visible map.

From the Edit menu, select Clear selections in all GenoMaps.

By genome - Wednesday, October 15, 2008
appleshaw (10/15/2008)
Is there a simple way to ............ restrict the report to the visible map.

Yes, select that genomap in the drop down list under Report Data Source

Betty had another son by a different father and this reports that we are not blood related. Is this correct? You will gather that I am not a genealogist as I would know if this was the correct answer.

I'm no genealogist either. Betty's other son is a half-brother. At present the report does not consider half-blood relationships e.g. half-brothers half-cousins etc. I will look into the possibility, but for now the message should perhaps read 'are not full blood relatves'

By maru-san - Thursday, October 16, 2008
Have tested this report, but have a suggestion. A "cousin" can be male or female, however this is not reflected in the report. I think this is valid for many other languages.
By IainTait - Friday, October 17, 2008
To use it, simply select the two, and only two, individuals for whom your require blood relationship details on their respective GenoMaps and then run the script via the GenoPro Tools/Generate Report dialog, selecting Kinship Calculator from the drop down list of skins.

Hi Ron,

I have used this facility in Legacy in the past though finding the relatives to choose was not easy.

I have a problem with your invention in that I can't seem to "select" two people.

Perhaps you could indicate how to do this.

This idea is a great one and will be very handy when finished.

By genome - Friday, October 17, 2008
IainTait (10/17/2008)

I have a problem with your invention in that I can't seem to "select" two people.

Perhaps you could indicate how to do this.

Select the 1st individual on the genomap with a mouse click, then, without clicking anywhere else on the genomap first (which would cause deselection of the 1st individual), hold down the Shift key whilst clicking on the 2nd individual. The 2nd individual can be on a different GenoMap, just click the tab for the required genomap before selecting the 2nd individual.

By genome - Friday, October 17, 2008
maru-san (10/17/2008)
A "cousin" can be male or female, however this is not reflected in the report. I think this is valid for many other languages.

I haven't considered all 'localization' issues as yet. I will add two extra params to all the narrative phrases giving the gender ID (M, F, or P) of the two individuals concerned so that it can be tested directly in the phrase.

By IainTait - Saturday, October 18, 2008
Thanks Ron, I finally got it to work.
By maru-san - Saturday, October 18, 2008
Ron (10/17/2008)
maru-san (10/17/2008)
A "cousin" can be male or female, however this is not reflected in the report. I think this is valid for many other languages.


I haven't considered all 'localization' issues as yet. I will add two extra params to all the narrative phrases giving the gender ID (M, F, or P) of the two individuals concerned so that it can be tested directly in the phrase.


Have made this modification for German and it works just fine.
By genome - Wednesday, October 22, 2008
I have updated the custom skin attached to the 1st post of this thread. The script now (hopefully) deals with half blood relationships, i.e. just one shared [[great..]grand]parent, rather than a couple, and also 'in-laws', i.e. those related by marriage, or in these more enlightened times any other union (i.e. 'in-common-law').

Also added gender IDs for each individual as paramters to the phrases.

By Talulah - Thursday, October 23, 2008
Ron, sorry but I'm a relative newcomer to Genopro power features. I copied the files to the folder C:\Program Files\GenoPro\Skins, but the choice of "Kinship calculator" dosn't appear in the drop down "Skin Name" combo. Have I copied it to the right place, and how do I get it to appear in the drop-down combo?

cheers,
paul
By Talulah - Thursday, October 23, 2008
....fixed it, sorry!
By appleshaw - Thursday, October 23, 2008
Ron
Sorry to have such awkward ancestors who do not fit into your kinship calculator. It does give:-

"Peter John Beaven is the 3x great grandson of Betty d_Joshua Beaven.
Thomas Mitchell & Betty d_Joshua Beaven are 3x great grandparents of Peter John Beaven."

However Betty had another son, which we know about from a bastardy order. I have entered this in GenoPro as the result (hopefully for their sakes) of a Love Affair. GenoPro recognises George as a son of Betty but the kinship calculator says:-
"Betty d_Joshua Beaven & George Beaven are not blood relatives and not related by marriage or other union."

So obviously it will not consider that George is any sort of my relatives
By genome - Thursday, October 23, 2008
I'm unclear as to what is happening here. I tested the simple case

and the calculator correctly returns:

s2 is a half-brother of s1.

Common ancestor f1 is the mother of s2 and s1.

and if I select f1 and either s1 or s2 then a a mother-son relationship is correctly shown.

Have you checked that the pedigree link from Betty to George is a biological link? What does the calculator indicate for the relationship between George and his half brother?

I will be happy to take a look if you send be a sample .gno via GenoPro's built in Send facility on the File menu.

By appleshaw - Friday, October 24, 2008
Hope you got the gno file. The difference is that in Family Properties the relation between Betty and George's father is 'Love Affair'.
The Family tag in Properties shows Betty as George's mother
By appleshaw - Sunday, October 26, 2008
I am not sure how it happened but a problem exists in the gno file where George's family shows expected mother but two fathers as:-

[2] James Parsons, Thomas Mitchell

Will try and delete and reconstruct things (tomorrow) to see what happens
By maru-san - Friday, October 31, 2008
Ron, may be there is one point, which needs to be clarified. If somebody is adopted, he/she is regarded as a member of the family and thus a cousin of somebody, although not blood related. This is true for some countries, for others may be not.
So if I select two persons in order to find out the kinship relation and one person is adopted or the son/daughter of an adopted person, the result is not related. Can we do something about this?
By genome - Friday, October 31, 2008
I can look into this although superficially it appears to be quite complicated. For example, IsAdopted in GenoPro can be either adopted or fostered and it is not that straightforward identifying adoptive parents. I also need to consider at some stage 'step' relationships e.g. step brother or sister.

Adopted and step children are still not blood relatives, hence the word 'blood' appearing in the current message when no relationship found.

Some further items I have on my 'to do' list' :

  • Produce an HTML page showing the pedigree links from the common ancestor to the two selected individuals.
  • In some countries, e.g. Germany I believe, cousins but of different generations are not described as 'n'th cousin 'x' times removed , but as [[[great]...]grand]son/daughter of 'n'th cousin
  • For 'half' blood relationships, the 'half-' suffix should immediately precede the type of relationship, i.e. cousin/nephew/niece and not any great or grand adjective, e.g. great great grand half-nephew, not half-great great grand nephew.
  • Appleshaw's problem was caused by having two biological fathers for and individual. This was a mistake but GenoPro does not flag this as an error when the relationship is created. Perhaps it should do and this is also one for the proposed 'Problem Spotter' enhancement to GenoPro. Maybe this report should flag such situations. The only time this would be valid is when the user wishes to express uncertainty as to the father. There have been dscussions elsewhere in this forum regarding a 'possible child' pedigree relationship but this has yet to be implemented.
By appleshaw - Friday, October 31, 2008
I also considered that GenoPro should have flagged my mistake - two biological fathers. However I realised that it is possible to have two fathers where a second husband/mate adopts a son from a previous relationship. So it was just my mistake
By Howard53 - Friday, November 14, 2008
Ron,

Excellent job on the Kinship Calculator, but I have found an occasion where a little error checking may be required.

In the case where first cousins marry:

if you run the kinship calculator on the husband and wife the result is, as expected:

However, if you break the link between Father (W) and the grandparents, the result is:

whereas it should indicate no blood relationship. The result is the same for any husband and wife unrelated by blood.

By genome - Friday, November 14, 2008
Isn't the definition of 'in-law' 'related by marriage' ? :Wink: The script does attempt to show in-laws as well as blood relations but would be better here if it said 'partner of'. I'll change that in he revision I am working on.

It is proving difficult at the moment to show all possible relationships for some pairings where their paths cross higher up the tree, so for now it will just show the 1st one discovered.

By genome - Sunday, November 16, 2008
Time for an update, although probably not the last. If have now added an HTML report providing a lineage, or pedigree, chart of the relationship including each generation along the way.The updated skin is attached to the 1st post in this thread as usual.

A sample report however is attached to this post.

By appleshaw - Sunday, November 16, 2008
Ron
The links on the first post of this topic point to GenoPro update
By genome - Sunday, November 16, 2008
Don't know what happened there, I could have sworn that I had updated the attachment, but then it disappeared. Perhaps it was too late in the day. Any how, I've put it back now.
By Howard53 - Monday, November 17, 2008
Ron,

there is a gender problem on the new report when selecting in-laws. For the following family:

running the report on the highlighted individuals results in this report:

By maru-san - Monday, November 17, 2008
Ron, the section "KinshipChild" needs to be redone.
A "son" in German is "Sohn", however a "grandson" is called "Enkel", which means the word son is not carried on, but the word "Enkel" with the Prefix "ur" for "great" grandson. The same goes for "daughter".
How can I reduce the space in the upper section between the header and the next two phrases?
How can I reduce the font in the squares in the lower section, below the common ancestors?

update: solved the font problem, thanks
By jcguasp - Tuesday, November 18, 2008
Ron,
I think it is quite a complexe subject you tackled, with so many options/depth of pedigree links and relations.
Even in my own FR language, I don't even know how some particular links or relations are called, when the links/relations are too deep!
Unfortunately, this may prevent me of doing a full proper FR translation. Pity.
In the meantime, I noticed the following:
- when two husbands (of the same F) are selected, the script wrongly says: Husb1 is a partner of Husb2. I think the <KinshipNotRelated> ph should rather be used/shown.
- when, say, one of the selected Ind is a 'divorced Husb or Wife', should the script says 'was' instead of 'is' whatever relation?

Despite, I suppose, that you're not focusing on the translations facility yet, I anticipate the requirement for the following F gender provisions:
- a <KinshipCousin_F>
- a <KinshipCousin1_F>
- a <KinshipGreatGrand_F>
- a <KinshipHalf_F>
- a <KinshipInLaw_F>
- a <KinshipPartner_F>
- a <KinshipPerson_F>
- a <KinshipUnion_F>

The above ph could be replaced by provision of gender ID as {params}.
JC

By genome - Tuesday, November 18, 2008
Howard53 (11/17/2008)
there is a gender problem on the new report when selecting in-laws.

Have updated skin to fix this. Thanks for reporting.

maru-san (11/17/2008)
Ron, the section "KinshipChild" needs to be redone.
A "son" in German is "Sohn", however a "grandson" is called "Enkel", which means the word son is not carried on, but the word "Enkel" with the Prefix "ur" for "great" grandson. The same goes for "daughter".

I have updated the skin and added a 'mode' param to KinshipGreatGrand (also genders for good measure). So if your Dictionary has

<KinshipChild T="[{1}][{2}][{?1=}[{?0=M}sohn][{!}tochter]][{3}]" />
<KinshipChild_M T="{0} ist der {2}{4}[{?!2}sohn]{5} von {1}." />
<KinshipGreatGrand T="[{?1}{2}.Ur][{!}[{?2=1}Ur][{?2=2}Ur-ur]][{?0}[{?3}{\br}][{?4=1}enkel][{!}groß]]" />
Then according to my limited testing things should get better. Apologies if my German translation is lacking. 


How can I reduce the space in the upper section between the header and the next two phrases?
update: solved the font problem, thanks

I have made some changes here but I need to add a stylesheet to the skin to make it easier to change fonts, colours etc.

jcguasp
I think it is quite a complexe subject you tackled, with so many options/depth of pedigree links and relations.
Even in my own FR language, I don't even know how some particular links or relations are called, when the links/relations are too deep!
Unfortunately, this may prevent me of doing a full proper FR translation.

Yep, the deeper you go the more complex it gets. Plenty of info on the web re full blood relations, but when you get to half, step and in-laws less so.

I have added some gender params but others may require further coding (e.g. Half). Please advise on specifics if and when you try translating.

By maru-san - Tuesday, November 18, 2008
Ron, among other few things I noticed:
dates are only reported if full date is available; if only year is known, it is not shown.
By genome - Tuesday, November 18, 2008
jcguasp
when two husbands (of the same F) are selected, the script wrongly says: Husb1 is a partner of Husb2. I think the <KinshipNotRelated> ph should rather be used/shown.

You are right, have fixed this now -don't think Husband-in-law wold have been right either!


- when, say, one of the selected Ind is a 'divorced Husb or Wife', should the script says 'was' instead of 'is' whatever relation?
Yes it should to be grammatically correct, but where would this end? what about when one or both individuals are dead? Is a son-in-law still a son-in-law if they were married after his in-laws died? Fof now I'll keep it (sort of) simple.

maru-san
dates are only reported if full date is available; if only year is known, it is not shown.
Have now added <DateFormatting> section to Dictionary to fix that.
By jcguasp - Wednesday, November 19, 2008
Ron,
Actually I already translated the whole except the Cousins Phrases (see 3) below for this).

1) Ref: the end of your posting 23088: I need for sure an '_F' variant (or sexe ID as param) for:
- <KinshipHalf>
- <KinshipInLaw>
- <KinshipPerson>
- <KinshipUnion>

2) I noticed some wrong reported sexe in the chart. Here are 2 samples:

3) <KinshipCousin> and <KinshipCousin1>:
I don't know what to do with these Ph. In FR it's totally different.
I managed to get an informative (quite complete I suppose) table showing the various names of pedigree links based on the positions of Ind1 and Ind2 in relation to a common ancestor. It is actually quite complicated.
The table, in FR, can be seen at http://pages.videotron.com/veeren/Parente.html.
With all these links names, I don't think the 2 Ref Ph are suitable.
I wonder if the solution isn't to provide a proper 2 Dim array which will be accessd, based on the position/depth of Ind1 and Ind2?
If so, M and F sexes should also be supported, maybe meaning 2 arrays?
If you need some more explanations about this table, don't hesitate to ask.
Thank you Ron,
JC

By genome - Wednesday, November 26, 2008
Have at last found the energy on this chilly autumnal day to tackle some of the outstanding points from the reviews of this skin. The skin, attached to 1st post, now has a stylesheet (style.css) allowing customisation of the appearance, although I have also tightened up the spacing in the default report. Have added optional gender specific phrases as requested by JC. The KinshipUnion phrase also has gender IDs of both parties for good measure. The wrong gender issue in the HTML chart should also be fixed.

Ran out of the said energy before tackling the thorny issue of French cousins so that will have to wait for another day.
By maru-san - Wednesday, November 26, 2008
Ron, I have one more item to be looked at(see below)

A grandson becomes in German "Enkel" and a granddaughter "Enkelin". This phrase is only needed if you want to check on one of the direct ancestors and a person down below the line.

By genome - Wednesday, November 26, 2008
This can be handled in the Dictionary as per my earlier post. I have now improved these phrases to cater for daughters as well i.e.
     <KinshipChild T="[{1}][{2}][{?!1}[{?0=M}sohn][{!}tochter]][{?1}[{?0=F}in]][{3}]" />
    <KinshipChild_M T="{0} ist der {2}{4}[{?!2}sohn]{5} von {1}." />
    <KinshipChild_F T="{0} ist die {2}{4}[{?!2}tochter][{!}in]{5} von {1}." />
    <KinshipGreatGrand T="[{?1}{2}.Ur-][{!}[{?2=1}Ur-][{?2=2}Urur-]][{?0}[{?3}{\br}][{?4=1}enkel][{!}groß]]" />

Using these in my English Dictionary I get


By maru-san - Wednesday, November 26, 2008
Thanks!
By genome - Thursday, November 27, 2008
....and so on to french cousins. A bit of a brain teaser this one, but I think I got there in the end. There is yet another revision of the skin (f) that adds a couple of extra params to the Cousins phrases in the Dictionary. Make the following substitutions for their English counter-parts to see it in action

   <KinshipCousin T="{0} et {3} sont [{?10}[{?!9=4}{9}e ]arrières ][{?9=1}germains cousins][{!}[{?9=2}cousins issus de germains cousins][{!}petits cousins]][{?!2=0} éloigné au {2}e[{?2=1}r] degré]."/>
  <KinshipCousin1 T="[{0} et {3} sont ][{?10}[{?!9=4}{9}e ]arrières{\br}][{?9=1}germains cousins][{!}[{?9=2}cousins issus{\br}de germains cousins][{!}petits cousins]][{?!2=0}{\br}éloigné au{\br}{2}e[{?2=1}r] degré]."/>

  <KinshipCousins T="{\U}[{?4=3}petits ][{?5}[{?!4=4}{4}e ]arrières{\br}petits ][{?0=MM}cousins][{!}[{?0=FF}cousins][{!}cousins]][{?4=1} germains][{?4=2} issus{\br}de germains]" />

I have not added prefix(e.g. half-) and suffix  (e.g. in-law) details as I do not know where to put them Unsure

Note for JC: The 'depth' param I use is actually one less than that in your 'Sommes-Nous Cousins?' chart as the common ancestors is deemed to be depth 0 and not 1.

By genome - Thursday, December 4, 2008
Added further revision (2.0.1.7g attached to 1st post of thread) fixing some points raised by JC. i.e.

Several issues with HTML validation - output now passes XHTML 1.0 Transistional validator.
If couple selected they were reported as not related. Now indicated as partners.
Optional double gender variants (_MM, _MF, _FF & _FM) added to the three 'cousin' phrases.
Hopefully fixed wrong gender for some relationships when selection order reversed.

By beraha - Thursday, December 4, 2008
It's a great feature. Thank you Ron Smile

I was wondering...

Is it possible to write a PHP script that would create this feature online from the "server" side?

I mean that any user  will choose 2 individuals from a list (which will be created from the genopro.xml), and then a php script would create and display the "Kinship.htm" file of the "chosen" two individuals

By genome - Friday, December 5, 2008
beraha (12/5/2008)
Is it possible to write a PHP script that would create this feature online from the "server" side?

Not as it stands. It relies heavily on the objects and methods/properties of GenoPro's SDK. I wonder if it is possible to make the SDK available as a free standing ActiveX control? But I don't suppose that would be any good on a non-MS server.

I have been considering a possible 'next generation' of the Narrative Report. I would like it to be dynamic, driven straight from the .gno XML and use an open source CMS for styling purposes. I am wondering if I can provide some of the functionality of the SDK in a javascript object and use AJAX to retrieve bits of the .gno XML from a server as required in a 'widget' design approach. One big problem I see would be the phrase generator. But maybe.....

By genome - Friday, December 12, 2008
One more update, 2.0.1.7j - see 1st post of thread, (final?) that has more params for languages where gender matters and some fixes for in-laws and partners. Many thanks to JC for his patience and testing for this version. Hopefully he can now release his French version.  
By Johnnycrash - Friday, December 19, 2008
Hi Ron,

Thanks for working on this. It's a very useful tool. It would help me when I am talking to people to know the relationship. Sure, I can working it, but I'm no expert. Yet. Smile

But, it doesn't seem to work with my gedcom. Well, sometimes it does, and other times no. So I am very confused.

When I select myself and my mother, it tells me there is NO blood relation or any relationship period. And so on. It seems that no one (almost) on my tree is related to anyone else. BigGrin: Now, I know there are times I would like to dissown my family, but...

I have double checked the links within GenoPro, to make sure that we are linked correctly, and everything seems fine. Other reports, and such show everything just fine.

So, what did YOU do wrong?? :Wink:
By appleshaw - Friday, December 19, 2008
Try updating the program (you are not using the latest version) and make sure that you have the latest version of the skin.
If you check on the Properties menu tag 'Family' this will show if GenoPro recognises your parents
By Johnnycrash - Friday, December 19, 2008
Well now, thats interesting. It appears I don't have a mom and dad. w00t

So, uh, why would GenoPro do that to my links?? The report shows everything correctly. Well, other than the Kinship issue I have. So, how do I get it to show a family?? Do I have to remake ALL the links between individuals?? Holy crap, I'm screwed. Crying
By Johnnycrash - Friday, December 19, 2008
OK. I disconected myself from my parents, and then reconected. All seems fine now. I must have made a mistake at the very begining. I started with me. So... Now it works just fine Ron. Thank you for a great little tool. Now I can say what releation people have to me when I am taking to them.
By maru-san - Friday, December 19, 2008
Ron, I am receiving following error message when creating a report between two certain individuals. It shows correctly the relationship (both the same in German and English reports) but stops creating the kinship webpage. It creates the report page on other individuals.

What does this mean? I am using the latest version.

By genome - Saturday, December 20, 2008
maru-san (12/20/2008)
Ron, I am receiving following error message when creating a report between two certain individuals. It shows correctly the relationship (both the same in German and English reports) but stops creating the kinship webpage. It creates the report page on other individuals.

What does this mean? I am using the latest version.

It means that having found and recorded a path up to the common ancestors, the script cannot find its way back down again!  I'm stumped as to what is causing this at the moment. My only guess is that it has something to do with hyperlinks - do you have hyperlinks in the affected relationship chain? If so try changing line 295 of Kinship Calculator.js
from

  oTree1.Add(sID, oInd0);
to
  oTree1.Add(sID, dataID(oInd0));
as I say, this is only a guess as I cannot reproduce the error myself. If this does not fix it perhaps you could send me the relevant subset of your .gno, changing the names to protect the innocent if desired.
By maru-san - Saturday, December 20, 2008
Changed the code in Line 241 (Line 295 is the end of the file) and I am receiving an error pointing to Line 263: `IndividualInternalHyperlink` is null or not an object.

There are actually two ways of getting to the same ancestor for one of the two individuals. There are many individuals with the same ancestors some 7 to 10 generations back.
By Johnnycrash - Sunday, December 21, 2008
I seem to have broken it. Whistling

Since last we spoke... I have managed to add 409 people. It not sits at 1132 people. And now the calulator doesn't work at all. When I run it, this is what I get;

Error at line 227, position 1 (Code/Utils.js) generating 'kinship.htm': Out of memory
Microsoft JScript runtime error 800A0007


So, uh, what did I do??

BTW, I have rebooted, same issue.
By appleshaw - Sunday, December 21, 2008
Not sure if this is the problem, but update to 2.0.1.6 and make sure that you have the latest Report skins. See if that is the problem - even if not it is always better to have the latest version
By Johnnycrash - Sunday, December 21, 2008
Well, I am up to date. Not that I was very out of date.. Still the same error. I mean, it DID work. I used it, and it was VERY useful. Now I gone done broke it.:Sad:
By maru-san - Sunday, December 21, 2008
Try closing some of your programs, which do run in the background, in order to minimize the use of memory.
Be careful!!!
By genome - Sunday, December 21, 2008
johnnycrash (12/21/2008)
Error at line 227, position 1 (Code/Utils.js) generating 'kinship.htm': Out of memory
Microsoft JScript runtime error 800A0007


So, uh, what did I do??

The most likely cause is that you have inadvertently created a loop in your tree, e.g. making a child the parent of one of his/her own ancestors. I have managed to create the same error by doing this.

By genome - Monday, December 22, 2008
Forget my last post, it's a 'red herring'. Yes that causes an 'out of memory' error but not the same one as johnnycrash has. The problem is more likely to be a mismatch between the Config.xml file and the Kinship Calculator.js file in his skin folder (e.g. not from same version of skin). This 'out of memory' error occurs when an error message referenced in the script is not found in Config.xml. I'll fix that bug together with the loop condition shortly.
By Johnnycrash - Monday, December 22, 2008
Hmm... I do have a few "loop" like structures, but I checked them, and they do not violate the time/space continuum. But there are a few creepy situations... My gggrandfather married his niece (Sisters daughter). I am a desendant of his second married... Whew!! Anyways...

I have run it with ONLY GenoPro running after a reboot, and still no joy. I am running GenoPro 2.01.6, and Kinship Calculator 2.01.7j. I am up to date. So, uh, Ron... FIX IT WILL YOU!!!!!! :Wink:

BTW, really do appriciate the time/effort put into this. Wish I knew how to do this stuff. I used to be able to program... In Fortran and Cobal. BigGrin:
By maru-san - Friday, March 13, 2009
Just came across a situation where the common ancestors are grgrandfather and his wife, however what is shown are more distant grandparents (8x gr grandparents), which is also correct. But should not the closest ancestors be good enough to be shown?
By genome - Saturday, March 14, 2009
Yes you are correct the closest relation should be used. Unfortunately the code at present stops after the first common ancestor is found. The fact that earlier common ancestors are selected is probably due to the order in which the target individuals are selected and/or processed. One day I would like to enhance it to search for all common ancestors but that probably will not be any day soon.
By Elmar - Sunday, August 30, 2009
This is an interesting tool, but it seems to leave behind some of the more extended relationships, e.g.

my mother's brother's wife's brother's daughter is coming up unrelated, instead of as my first cousin twice removed (I think) Smile
By appleshaw - Sunday, August 30, 2009
The tool is for direct blood relatives - it's in the title! I think your example is not direct.
By Elmar - Sunday, August 30, 2009
appleshaw (8/30/2009)
The tool is for direct blood relatives - it's in the title! I think your example is not direct.

More than agreed! Smile It's a relationship over two marriages, but the point is actually important to an inheritance linkage, as the indicated individual is a niece and I am a nephew-in-law. I have another relationship slightly inverted (I am the nephew and the other person is a nephew-in-law). And the tool will in fact label these correctly, when pointed at the root of the relationship. I was just pointing out that an more extended tool might be interesting, as especially in places like the Appalachians, such extended relationships are "tended" with some interest.
By Johnnycrash - Sunday, December 27, 2009
Johnnycrash (12/22/2008)
Hmm... I do have a few "loop" like structures, but I checked them, and they do not violate the time/space continuum. But there are a few creepy situations... My gggrandfather married his niece (Sisters daughter). I am a descendant of his second married... Whew!! Anyways...

I have run it with ONLY GenoPro running after a reboot, and still no joy. I am running GenoPro 2.01.6, and Kinship Calculator 2.01.7j. I am up to date. So, uh, Ron... FIX IT WILL YOU!!!!!! :Wink:

BTW, really do appreciate the time/effort put into this. Wish I knew how to do this stuff. I used to be able to program... In Fortran and Cobal. BigGrin:



Hey Ron,

Since this tool is so very useful, I took the challenge to get it to work again. Turns out, it was just one tab on my genogram that was the issue. After isolating each tab, and checking, I found the offender. I'm still not sure WHAT within that genogram is the issue. The good news for me, is that it's an extraneous genogram for me. It's extended research for another member of the family. So, I can take my time finding what exactly in it is causing the run-time error. I'll find it though, and pass it on. It's probably NOT important, but you never know.



But, I have a another issue...

Is there a way to show the relation in both directions?? For instance, my grandnephew - My sister's son's son. He is my grandnephew, but I am his??? Well, I know, great uncle. But I can't not get the Kinship Calc to show that. I have tried selecting me them him, him then me... Same result.

Is there a way to show this relationship in both directions when the report is generated??
By 222357 - Monday, October 11, 2010
I am interested in the kinship calculator, and extracted the file (only one) from Kinship_2.0.1.7j.zip, which is named Kinship_2.0.1.7j, and put it in the Skins folder C:\Program Files (x86)\GenoPro\Skins.  The problem is when running GenoPro, no kinship skin appears in the Report Skin pulldown list.
By Howard53 - Tuesday, October 12, 2010
Did you follow the instructions in the first post in this theme: http://support.genopro.com/FindPost22844.aspx ? In particular, did you create a sub-folder entitled 'Kinship Calculator' in the Skins folder?
By Jakk - Wednesday, August 10, 2016
So... I was thinking about how useful a relationship calculator would be in GenoPro after my recent post regarding my Icelandic ancestors here... and I found this thread from six-plus years ago.

I'm curious as to whether this report skin has been kept updated and if it works with the current version of GenoPro. I suppose there's an easy way to find out...

What would be really nice, however, is if we had a relationship calculator built into GenoProX. For those who are stubborn enough to do this manually, I found this great chart a while back:

http://support.genopro.com/Uploads/Images/f1d8cf00-1d4d-4826-a1a0-1ccf.png
By genome - Thursday, August 11, 2016
The Kinship Calculator skin is included with the GenoPro 2016 download and as far as I know is still working. If not let me know and I'll fix it. 

I used a similar chart when writing to skin what seems an age ago. I agree it would be nice to have it built in to GenoProX.
By Jakk - Friday, August 12, 2016
I am in the process of "Webifying" (is that a word? It is now!) my tree with geni.com (I'm using them because I have a distant relative who has already done a lot of the work for the later generations on there and it seemed silly not to (a) take advantage of that and (b) contribute my own findings to fill in the blank spots). GenoPro remains my go-to program for my tree construction, as Geni still has some major shortcomings, such as not being able to display multiple sets of parents simultaneously (as I've already mentioned elsewhere, my Icelandic great-grandmother was adopted, and I now have her biological ancestors tracked down as well as her adopted family). Anyway, the reason I mention Geni is because they have a kinship calculator built in... the catch is that it only works for finding the user's relation to another specific member of their tree. I think GenoPro can do better than this, and give us something that works for any two selected individuals.

GenoPro developers: The challenge has been made. Are you ready? BigGrin
By Jakk - Friday, August 12, 2016
So... it seems that the report skin crashes GenoPro for any relationship more complex than those that I can calculate for myself within a reasonable time frame... although I admit that the latter is only possible because I know the data so well. I'm not sure if this crashing is because of the code, or simply because my system is running out of memory... although I don't get a memory-related error message; GenoPro just crashes and I get the usual notification to send error report data to Microsoft.

It seems to have difficulty with anything other than a direct ancestor-descendant relationship if the generation gap is more than ten generations. A 20x-great-grandparent/child report works fine.

Oh, and just a little thing, but it would be nice (and this goes for all report skins) if it would create a new tab to report the results instead of using the currently open tab. I lost my report in order to post this reply, because the reply was in progress at the time the report finished. I'm just glad that I didn't lose my reply. Smile

For one test, I got some interesting "tag no longer valid" messages... I have copied and pasted them below.

[15.74] The tag 'Family.Marriage.religious.date' is no longer valid. Try 'Family.Marriages(0).Date'

[15.74] The tag 'Family.Marriage.civil.date' is no longer valid. Try 'Family.Marriages(0).Date'

[15.74] The tag 'Family.separation.date' is no longer valid. Try 'Family.Marriages(0).Divorce.Date'

[15.74] The tag 'Family.Divorce.date' is no longer valid. Try 'Family.Marriages(0).Divorce.Date'

[15.77] The tag 'Occupation.Start.Date' is no longer valid. Try 'Occupation.DateStart'

[15.77] The tag 'Occupation.End.Date' is no longer valid. Try 'Occupation.DateEnd'
By genome - Saturday, August 13, 2016
If you can PM me with a test file and a note of which individuals to select I can look into this issue to see if the scriot is at fault.

My default browser (Chrome) always opens report output in a new tab. If you are using IE then you should look at your  'Internet Options / Tabs / Open links from other programs' settings.
By Jakk - Saturday, August 13, 2016
Thanks for the settings tip. I thought I'd checked through all of those. My bad. Blush

As for the error messages, my scripting skills are rusty to the point of collapse, and I have done nothing with GenoPro in this regard. How do I tell which objects are generating the errors?
By Jakk - Saturday, August 13, 2016
Another question just occurred to me: How does your script deal with multiple lines of ancestry between the same two people? For anyone else who hasn't yet truly fallen down the rabbit hole that is genealogical research, this is far more common than you might think.
By genome - Sunday, August 14, 2016
At present the script reports only on the first connection it finds but I can consider what it would entail to do a full search.

The error messages appear to emanate from GenoPro's Report Generator and can appear when any report skin is first run.  It has been reported here in the past but I'll have another attempt at getting Dan to look into it.

Regarding the test .gno, I was refering to your problem with GenoPro crashing. It could be that the script is looping and filling memory causing GenoPro to crash.  I'll see if I can reproduce it with my tree but if you could send a test case it could be useful in diagnosing the issue.
By NiKo - Wednesday, April 12, 2017
Ron,

I would greatly appreciate it if you had time to add the calculation of multiple relationships to the Kinship Calculator.  I have a lot of endogamy in my family tree, and I would love to be able to "see" all of those connections.

From what I've found out so far, TMG (The Master Genealogist) generates output that looks like this:http://support.genopro.com/Uploads/Images/41ccc1fe-5198-42b6-a995-59d2.jpg




The Deluxe version of Legacy also has this functionality. Here's a link to their info: http://support.legacyfamilytree.com/article/AA-00936/0/The-Relationship-Calculator.html




If you could somehow get the relationship calculator to work for 3 people, that would be awesome.  DNA or Genetic Triangulation is powerful tool for determining common ancestors:

https://isogg.org/wiki/Triangulation

http://blog.kittycooper.com/2015/02/triangulation-proving-a-common-ancestor/
By NiKo - Thursday, April 13, 2017
Also found this discussion of possible algorithms:
By genome - Tuesday, April 25, 2017
Thanks for the SO link. I had a quick look but seemed to be similar to what I was doing anyway.  However I decided to have a shot at modifying my script to find all relationships.

I now have something that appears to be working but very probably needs more thorough testing. The attached zip file contains an update to the {EN} Kinship Calculator skin folder in GenoPro 2016.  If you would like to try it I suggest you rename your existing {EN} Kinship Calculator folder before unzipping the attached into your skins folder.

I would be interested to know how it matches up against TMG.





Update: I found a bug in the script I posted earlier and so this is an update to the earlier one.
By NiKo - Tuesday, April 25, 2017
Thank you for your work!

I think I successfully renamed the Kinship folder, and replaced everything with the new Kinship Calculator.

I think it's still giving me the same results thought.  Can I email you the .gno file I'm using to test it?

When I run the report for person A vs M .. there are 3 possible paths by which they are related.

When I run person K vs L ... it only reports on one path, and does not state that they are married.

I've tested a few married couples, and the output I get is "A & B are not blood relatives and not related by marriage or other union." I would expect it to say they are married, or husband and wife, etc.

I will approach the person I know who owns TMG, and see what kind of output she gets.

Thank you!
By genome - Thursday, April 27, 2017
Something was going wrong when processing immediate partners/spouse. As often happens with programming, at least it does with mine, you fix or change one bit and it breaks somewhere else. 

I have made a few changes and done a little more testing on my own tree, actually discovering a couple of relationships I wasn't previously aware of. 

So once again I offer the revised skin for use/testing but as usual make no promises!  As before unzip the attached into your GenoPro 2016 skins folder after renaming the existing one for safe keeping.

Please do email your test .gno if you still get the wrong results.

Update amended script in .zip to remove some diagnostic logging to Report Log
By NiKo - Thursday, May 4, 2017
Wow! Love the changes!

Will email you the .gno file.  Thank you for fixing the "spouses" issues.


When I ran person K vs L, it came back with 2 of the 3 connections:
1. K is a second cousin once removed (ascending) of L.
2. K is a partner of L

When I ran person L vs K, it came back with 2 of the 3 connections again:
1. L is a third cousin of K.
2. K is a second cousin once removed (ascending) of L.

Is there a way to get all 3 connections in one output?


As well, when I ran person A vs M, the output was:
1. M is the 3x great granddaughter of A.
2. M is the 4x great granddaughter of A.
3. M is the 3x great granddaughter of A.
4. M is the 3x great granddaughter-in-law of A.

But for M vs A, the output was:
M & A are not blood relatives and not related by marriage or other union.


When I run A vs H:
1. H is the great granddaughter of A.
2. H is the great granddaughter-in-law of A.
3. H is the granddaughter-in-law of A.

Running H vs A yields:
1. H is the granddaughter-in-law of A.

Thank you for your help!!
By genome - Wednesday, May 17, 2017
The attached zipped skin appears to now work correctly for all the problem pairings in your post.  Thanks for the test .gno by the way, it was a great help.

It has taken a lot longer than I had anticipated, but may be third time lucky, or is it if at first you don't succeed, try, try again!
By NiKo - Wednesday, June 28, 2017
Thank you so much genome!

I finally downloaded your update and installed it, but haven't had a chance to play with it yet.  Will let you know as soon as I do.

Thanks!