%define;short_display_person_image(xxx,yyy,zzz) %let;personinfo;%if;("xxx"="child")%sp;(%childrank;)%nn; %elseif;("xxx"="child.spouse") %if;("zzz"="siblings" or "zzz"="spouse.siblings") %sp;(%nn; %if;xxx.is_male;[a brother-in-law/a sister-in-law]0%nn; %elseif;xxx.is_female;[a brother-in-law/a sister-in-law]1%nn; %else;[a sibling-in-law/siblings-in-law]0%nn; %end;)%nn; %elseif;("zzz"="child" or "zzz"="child.halfsiblings") %sp;(%nn; %if;xxx.is_male;[a son-in-law/a daughter-in-law]0%nn; %elseif;xxx.is_female;[a son-in-law/a daughter-in-law]1%nn; %else;[a child-in-law/children-in-law]0%nn; %end;)%nn; %elseif;("zzz"="halfsiblings" or "zzz"="spouse.halfsiblings") %sp;(%apply;a_of_b%with;%if;(xxx.is_male)([the spouse]0%else;[the spouse]1%end;%and;%childrank;%end;)%nn; %end; %elseif;("xxx"="spouse")%spouserank;%nn; %elseif;("xxx"="self")%selfsex;%nn; %elseif;("xxx"="father") ([the father/the mother/a parent]0)%nn; %elseif;("xxx"="mother") ([the father/the mother/a parent]1)%nn; %elseif;("xxx"="spouse.father") ([the father-in-law/the mother-in-law]0)%nn; %elseif;("xxx"="spouse.mother") ([the father-in-law/the mother-in-law]1)%nn; %elseif;("xxx"="father.father" or "xxx"="mother.father" or "xxx"="spouse.father.father" or "xxx"="spouse.mother.father") ([a grandfather/a grandmother/a grandparent]0)%nn; %elseif;("xxx"="father.mother" or "xxx"="mother.mother" or "xxx"="spouse.father.mother" or "xxx"="spouse.mother.mother") ([a grandfather/a grandmother/a grandparent]1)%nn; %end; %if;(xxx.birth_date!="")    ° %xxx.slash_birth_date;%nn;%end; %if;(xxx.birth_place!="")%sp;%xxx.birth_place;%nn;%end; %if;xxx.is_dead;    †%end;%if;(xxx.death_date!="") %xxx.slash_death_date;%nn;%end; %if;(xxx.death_place!="")%sp;%xxx.death_place;%nn;%end; %if;(xxx.is_dead and xxx.computable_death_age)      %xxx.death_age;%elseif;(not xxx.is_dead and xxx.computable_age)       %xxx.age;%end;%nn; %if;(xxx.has_sosa) %if;(xxx.sosa=1) [*n° Sosa] 1%nn; %else; %apply;a_of_b%with;[*n° Sosa] %xxx.sosa;%and;%sosa_ref;%end;%nn; %end; %end; %in;
%if;(not (cancel_links or xxx.is_restricted)) %end; %if;(evar.image!="off" and ("yyy"="yes" or "yyy"="force")) %if;xxx.has_image; %if;not cancel_links; %nn; %end; [image/images]0%nn; %if;not cancel_links;%end; %elseif;(bvar.default_image="yes") %if;(wizard and not cancel_links) %nn; %end; [missing image] %if;(wizard and not cancel_links)%end; %else; ? %end; %end; %(%if;(xxx.has_sosa)%apply;display_sosa("xxx")%end; %apply;image_MF("xxx")%) %if;(not (cancel_links or xxx.is_restricted)) %nn; %end; %xxx; %if;(not (cancel_links or xxx.is_restricted)) %end; %if;(wizard and not cancel_links) %nn; %end; %nn; %if;(xxx.dates!="")%xxx.dates;%nn; %elseif;(wizard and not cancel_links)-%nn; %elseif;(cancel_links)
%end;%nn;
%nn; %if;(wizard and not cancel_links)
%end;
%end; %define;in_full(ccc,maj) %if;(maj=1)%apply;capitalize%with;%apply;nth%with;[n (number)]%and;ccc%end;%end; %else;%apply;nth%with;[n (number)]%and;ccc%end; %end; %end; %define;addpar(xx,yy) %if;("xx"="spouse")
%end;
%if;(wizard) %end;
%if;("xx"="")
%end; %end; %define;ancestorlv4(vv,ww,xx,yy,zz) %foreach;vv_level(4) %foreach;ancestor %if;(level=3) %if;(not ancestor.has_parents and ((ancestor.anc_sosa.v=4 and ww=8) or (ancestor.anc_sosa.v=6 and ww=12))) %apply;addpar("ancestor",ancestor.index) %end; %end; %if;(level=4) %if;(ancestor.anc_sosa.v=ww or ancestor.anc_sosa.v=xx or ancestor.anc_sosa.v=yy or ancestor.anc_sosa.v=zz)
%nn; %if;(not ancestor.is_restricted) %nn; %end; %ancestor.anc_sosa.v; %if;(not ancestor.is_restricted) %end;
%end; %end; %end; %end; %foreach;vv_level(3) %foreach;ancestor %if;(level=3) %if;(not ancestor.has_parents and ((ancestor.anc_sosa.v=5 and ww=8) or (ancestor.anc_sosa.v=7 and ww=12))) %apply;addpar("ancestor",ancestor.index) %end; %end; %end; %end; %end; %define;border()
%end; %define;short_display_person_spouse_image(xx,yy) %apply;short_display_person_image("xx", "yes", "yy") %if;(evar.spouse!="") %foreach;child.family;
%if;(evar.image!="off")%apply;border()%end; &%if;(child.marriage_date.year!="")%child.marriage_date.year;%end; %if;(evar.image!="off" and nb_children>0)
%if;(not cancel_links) %nn; %end; %nb_children; %if;(not cancel_links)%end;%nn;
%end;
%apply;short_display_person_image("xx.spouse", "yes", "yy")
%end; %end; %end; %let;evm;%if;(evar.m="F")m=F;%end;%in; %let;prefx;%if;(evar.m="F")%prefix_no_pmod;%else;%prefix;%end;%in; %if;(not cancel_links)
%let;evfam;%if;(evar.fam!="" and evar.fam!=1)%evar.fam;%end;%in; %let;evsemi;%if;(evar.semi!="")%evar.semi;%end;%in; %let;evspou;%if;(evar.spouse!="")%evar.spouse;%end;%in;
½ %nn;
%end; %if;((p_mod="zz" or p_mod="") and evar.m!="F")
%end; %let;fam_cnt;%if;(evar.fam!="")%evar.fam;%else;1%end;%in;
%( Grand-parents et parents individu %)
%if;(has_parents)
%if;father.has_parents; %if;(not cancel_links)
%apply;ancestorlv4("ancestor",8,9,10,11)
%end;
%apply;short_display_person_image("father.father", "yes", "") %apply;short_display_person_image("father.mother", "yes", "")
%apply;border() %else; %apply;addpar("father",father.index) %end;
%apply;short_display_person_image("father", "yes", "")
%if;mother.has_parents; %if;(not cancel_links)
%apply;ancestorlv4("ancestor",12,13,14,15)
%end;
%apply;short_display_person_image("mother.father", "yes", "") %apply;short_display_person_image("mother.mother", "yes", "")
%apply;border() %else; %apply;addpar("mother",mother.index) %end;
%apply;short_display_person_image("mother", "yes", "")
%apply;border() %else;
%apply;addpar("",index)
%end;
%( Grand-parents et parents conjoint %)
%foreach;family; %if;(family_cnt=fam_cnt) %if;(spouse!="" and spouse.has_parents)
%if;spouse.father.has_parents; %if;(not cancel_links)
%apply;ancestorlv4("spouse.ancestor",8,9,10,11)
%end;
%apply;short_display_person_image("spouse.father.father", "yes", "") %apply;short_display_person_image("spouse.father.mother", "yes", "")
%apply;border() %else; %apply;addpar("spouse.father",spouse.father.index) %end;
%apply;short_display_person_image("spouse.father", "yes", "")
%if;spouse.mother.has_parents; %if;(not cancel_links)
%apply;ancestorlv4("spouse.ancestor",12,13,14,15)
%end;
%apply;short_display_person_image("spouse.mother.father", "yes", "") %apply;short_display_person_image("spouse.mother.mother", "yes", "")
%apply;border() %else; %apply;addpar("spouse.mother",spouse.mother.index) %end;
%apply;short_display_person_image("spouse.mother", "yes", "")
%apply;border() %else;
%apply;addpar("spouse",spouse.index)
%end; %end; %end;
%( Individu et sa fratrie %)
%let;selfsex; (%if;(self.is_male)[him/her]0%else;[him/her]1%end;)%in; %apply;short_display_person_image("self", "force", "") %let;selfsex;%in;
%if;(has_parents) %let;fath;%father.index;%in; %let;moth;%mother.index;%in; %foreach;father.family;
%if;(father.spouse.index=moth or evar.semi!="")
%reset_count;%reset_count1;%reset_count2; %foreach;child; %if;(child.index=central_index) %if;child.has_siblings;
%end; %else; %incr_count; %let;childrank; %if;child.is_male;%incr_count1; [a brother/a sister/a sibling]0%nn; %elseif;child.is_female;%incr_count2; [a brother/a sister/a sibling]1%nn; %else; [a brother/a sister/a sibling]2%nn; %end;%nn; %in; %apply;short_display_person_spouse_image("child", "siblings") %let;childrank;%in; %end; %end;
%if;(father.spouse.index=moth) %if;self.has_siblings; %if;(count1=0) %if;(count2=1)[*a brother/a sister/a sibling]1 %elseif;(count2>1)%apply;in_full(count2,1) [brothers/sisters/siblings]1 %end; %elseif;(count1>=1) %if;(count1>1)%apply;in_full(count1,1) [brothers/sisters/siblings]0 %elseif;(count1=1)[*a brother/a sister/a sibling]0 %end; %if;(count2>1) [and] %apply;in_full(count2,0) [brothers/sisters/siblings]1 %elseif;(count2=1) [and] [a brother/a sister/a sibling]1 %end; %elseif;(count!=1) %apply;in_full(count,1) [brothers/sisters/siblings]2 %else; [*a brother/a sister/a sibling]2 %end; %end; %elseif;(count>0 and evar.semi!="") %if;(count1!=0 and count2=0) %if;(count1=1)[*a half-brother/a half-sister/a half-sibling]0 %elseif;(count1>1)%apply;in_full(count1,1) [half-brothers/half-sisters/half-siblings]0 %end; %elseif;(count1=0 and count2!=0) %if;(count2=1)[*a half-brother/a half-sister/a half-sibling]1 %elseif;(count2>1)%apply;in_full(count2,1) [half-brothers/half-sisters/half-siblings]1 %end; %elseif;(count=1) [*a half-brother/a half-sister/a half-sibling]2 %else; %apply;in_full(count,1) [half-brothers/half-sisters/half-siblings]2 %end; %apply;on_side%with;%father.first_name; [with] %father.spouse;%end; %end;
%end;
%end; %foreach;mother.family;
%if;(mother.spouse.index!=fath and evar.semi!="")
%reset_count;%reset_count1;%reset_count2; %foreach;child; %if;(child.index=central_index)
%else; %incr_count; %let;childrank; %if;child.is_male;%incr_count1; [a half-brother/a half-sister/a half-sibling]0%nn; %elseif;child.is_female;%incr_count2; [a half-brother/a half-sister/a half-sibling]1%nn; %else; [a half-brother/a half-sister/a half-sibling]2%nn; %end;%nn; %in; %apply;short_display_person_spouse_image("child", "halfsiblings") %end; %end;
%if;(count>0)
%if;(count2=0 and count1!=0) %if;(count1=1)[*a half-brother/a half-sister/a half-sibling]0 %elseif;(count1>1)%apply;in_full(count1,1) [half-brothers/half-sisters/half-siblings]0 %end; %elseif;(count1=0 and count2!=0) %if;(count2=1)[*a half-brother/a half-sister/a half-sibling]1 %elseif;(count2>1)%apply;in_full(count2,1) [half-brothers/half-sisters/half-siblings]1 %end; %elseif;(count=1) [*a half-brother/a half-sister/a half-sibling]2 %else; %apply;in_full(count,1) [half-brothers/half-sisters/half-siblings]2 %end; %apply;on_side%with;%if;(mother.public_name!="")%mother.public_name;%else;%mother.first_name;%end; [with] %mother.spouse;%end;
%end; %end;
%end; %end;
%( Enfants %)
%let;nb_ch_tot;%nb_children;%in; %foreach;family; %if;(family_cnt=fam_cnt) %if;(spouse!="" or (evar.semi!="" and nb_ch_tot>0))
%if;(on_marriage_date!="" and marriage_date.year!="")&%marriage_date.year;%end;%if;(nb_children!=0)  %nb_children;%end;
%end; %if;(has_children or (evar.semi!="" and nb_ch_tot>0))

%end; %end; %end;
%foreach;family; %if;(family_cnt=fam_cnt and nb_children>0)
%reset_count; %foreach;child; %incr_count; %let;childrank;%nn; %if;child.is_male;[a son/a daughter/a child]0%nn; %elseif;child.is_female;[a son/a daughter/a child]1%nn; %else;[a son/a daughter/a child]2%nn; %end; %if;(child.has_siblings) , %apply;nth%with;[nth (cousin)]%and;%count;%end; [child/children]0%nn; %end;%nn; %in; %apply;short_display_person_spouse_image("child", "child") %end;
%end; %end; %foreach;family; %if;(family_cnt!=fam_cnt and nb_children>0 and evar.semi!="") %reset_count;%reset_count1;%reset_count2; %foreach;child; %incr_count; %if;child.is_male;%incr_count1;%end; %if;child.is_female;%incr_count2;%end; %end; %if;(nb_children=1) %foreach;child; %if;child.is_male;[*a son/a daughter/a child]0 %elseif;child.is_female;[*a son/a daughter/a child]1 %else;[*a son/a daughter/a child]2 %end; %end; %else; %if;(count2=0 and count1!=0) %if;(count1=1)[*a son/a daughter/a child]0 %elseif;(count1>1)%apply;in_full(count1,1) [sons/daughters/children]0 %end; %elseif;(count1=0 and count2!=0) %if;(count2=1)[*a son/a daughter/a child]1 %elseif;(count2>1)%apply;in_full(count2,1) [sons/daughters/children]1 %end; %elseif;(count=1) [*a son/a daughter/a child]2 %else; %apply;in_full(count,1) [sons/daughters/children]2 %end; %end; [with] %spouse;
%foreach;child; %let;childrank; %if;child.is_male; [a son/a daughter/a child]0%nn; %elseif;child.is_female; [a son/a daughter/a child]1%nn; %else; [a son/a daughter/a child]2%nn; %end; %in; %apply;short_display_person_spouse_image("child", "child.halfsiblings") %end;
%end; %end;
%( Conjoint et sa fratrie %)
%( Conjoint·s %) %( Fratrie·s conjoint·s %) %foreach;family; %if;(family_cnt=fam_cnt and spouse.has_parents) %let;selfspouse;%self.spouse;%in; %let;spfath;%self.spouse.father;%in; %let;spfathfn;%if;(self.spouse.father.public_name!="")%self.spouse.father.public_name;%else;%self.spouse.father.first_name;%end;%in; %let;spmoth;%self.spouse.mother;%in; %let;spmothfn;%if;(self.spouse.mother.public_name!="")%self.spouse.mother.public_name%else;%self.spouse.mother.first_name;%end;%in; %foreach;spouse.father.family;
%if;(spouse=spfath or spouse=spmoth or evar.semi!="")
%reset_count;%reset_count1;%reset_count2; %foreach;child; %if;(child=selfspouse) %if;(child.has_siblings)
%end; %else; %incr_count; %let;childrank; %if;child.is_male;%incr_count1; [a brother-in-law/brothers-in-law/a sister-in-law/sisters-in-law]0%nn; %elseif;child.is_female;%incr_count2; [a brother-in-law/brothers-in-law/a sister-in-law/sisters-in-law]2%nn; %else; [a sibling-in-law/siblings-in-law]0%nn; %end; %in; %apply;short_display_person_spouse_image("child", "spouse.siblings") %end; %end;
%end;
%if;(count>0) %if;(spouse=spfath or spouse=spmoth) %if;(count2=0 and count1!=0) %if;(count1=1)[*a brother-in-law/brothers-in-law/a sister-in-law/sisters-in-law]0 %elseif;(count1>1)%apply;in_full(count1,1) [a brother-in-law/brothers-in-law/a sister-in-law/sisters-in-law]1 %end; %elseif;(count1=0 and count2!=0) %if;(count2=1)[*a brother-in-law/brothers-in-law/a sister-in-law/sisters-in-law]2 %elseif;(count2>1)%apply;in_full(count2,1) [a brother-in-law/brothers-in-law/a sister-in-law/sisters-in-law]3 %end; %elseif;(count=1) [a sibling-in-law/siblings-in-law]0 %else; %apply;in_full(count,1) [a sibling-in-law/siblings-in-law]1 %end; %elseif;(evar.semi!="") %if;(count2=0 and count1!=0) %if;(count1=1)[*a half brother-in-law/half brothers-in-law/a half sister-in-law/half sisters-in-law]0 %elseif;(count1>1)%apply;in_full(count1,1) [a half brother-in-law/half brothers-in-law/a half sister-in-law/half sisters-in-law]1 %end; %elseif;(count1=0 and count2!=0) %if;(count2=1)[*a half brother-in-law/half brothers-in-law/a half sister-in-law/half sisters-in-law]2 %elseif;(count2>1)%apply;in_full(count2,1) [a half brother-in-law/half brothers-in-law/a half sister-in-law/half sisters-in-law]3 %end; %elseif;(count=1) [a half sibling-in-law/half siblings-in-law]0 %else; %apply;in_full(count,1) [a half sibling-in-law/half siblings-in-law]1 %end; %apply;on_side%with;%spfathfn; [with] %spouse;%end; %end; %end;
%end; %foreach;spouse.mother.family;
%if;(not (spouse=spfath or spouse=spmoth) and evar.semi!="")
%reset_count;%reset_count1;%reset_count2; %foreach;child; %if;(child=selfspouse)
%else; %incr_count; %let;childrank; %if;child.is_male;%incr_count1; [a half brother-in-law/half brothers-in-law/a half sister-in-law/half sisters-in-law]0%nn; %elseif;child.is_female;%incr_count2; [a half brother-in-law/half brothers-in-law/a half sister-in-law/half sisters-in-law]2%nn; %else; [a half sibling-in-law/half siblings-in-law]0%nn; %end; %in; %apply;short_display_person_spouse_image("child", "spouse.halfsiblings") %end; %end;
%if;(count>0 and evar.semi!="")
%if;(not (spouse=spfath or spouse=spmoth)) %if;(count2=0 and count1!=0) %if;(count1=1)[*a half brother-in-law/half brothers-in-law/a half sister-in-law/half sisters-in-law]0 %elseif;(count1>1)%apply;in_full(count1,1) [a half brother-in-law/half brothers-in-law/a half sister-in-law/half sisters-in-law]1 %end; %elseif;(count1=0 and count2!=0) %if;(count2=1)[*a half brother-in-law/half brothers-in-law/a half sister-in-law/half sisters-in-law]2 %elseif;(count2>1)%apply;in_full(count2,1) [a half brother-in-law/half brothers-in-law/a half sister-in-law/half sisters-in-law]3 %end; %elseif;(count=1) [*a half sibling-in-law/half siblings-in-law]0 %else; %apply;in_full(count,1) [a half sibling-in-law/half siblings-in-law]1 %end; %apply;on_side%with;%spmothfn; [with] %spouse;%end; %end;
%end; %end;
%end; %end; %end;