I've just started using GRAMPS to plot out something people might find silly: family trees of comic book characters.

Now I know this probably isn't something people would od here, but it mostly works, and I'm using gramps without relying on an RL data (that I don't have). At some point I might introduce my grandad to this software.

Anyway! I have hit up against a 'problem'. Some of the characters in the 'family tree' have ~arbitrary relationships, such as 'clone of' and so on and so forth.

Is this able to be shown in GRAMPS, and if so, how do I set up this kind of arbitrary relationship?

  • I've just used an association like this to link a servant to a person, but it would be more appropriate if I could link the servant to the family. Commented May 2, 2019 at 11:48

2 Answers 2


You can add any type of relation between persons using the Associations tab in the person editor. When you do that, the association type defaults to Godfather, but you can change the type to anything you like, by typing in the association field.

Another way to get a similar result is to add a birth like event for a clone, with the newborn character in the primary role, and the parent character as an accomplice. The advantage of that is that you can add a date to that event.

For more details about this, please read:


All in all, I see no need to change Gramps code for this. You may need to add a few gramplets to the UI to actually see these custom relations though.


The great thing about GRAMPS is that if it does not do something you want it to do you, you can patch the software or even rewrite parts to add the extra functions. That is the essence of Open Source software.

If you know how to program in Python, then have a look at the GRAMPS Wiki for advice on how to extend the application. In your case, you will want to look at the section on the Relationship Calculator.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.