How to store a text with citations and media?

Hi all,

I am in the process of reorganizing my genealogical data using an “everything in Gramps” approach. Rather than having a folder with collections of files and notes next to my family tree in Gramps, I want to make sure every document and file that has relevant information in it is correctly stored/linked in Gramps, linked with all the sources etc.

However, there is one thing I’m currently still struggling with: how to I store text - e.g. a summary article I wrote about a certain branch of the family -, associated with a date and an author, and linking it with the relevant media and sources?

My first idea was to use a note. This would allow me to use formatted text and I could link it from people etc. However, this does not work since notes cannot have source citations or media attached to them (and it seems this is intentional).

My next idea was to use citations. I could add a source called “My articles” or something, and store every article text as a note linked to a citation. The good thing about this would be that it can have an author (me), a date, and media. But it does not work either because a citation obviously cannot have source citations itself, and source citations are pretty crucial for a summary article.

Then I thought about using media. Media can have source citations and have a date. But how to store the text? Either as an external text file (but this would somehow defeat the “all in Gramps” approach) or as a media note (but then what is the actual media object?)… But the main reason why it doesn’t work either is that media objects cannot have media objects.

So now I’m out of ideas. Does anyone have a suggestion?

That is a Source – in this case, an unpublished manuscript. Save it as a PDF file and store that as media for the source. (Or if you wrote it by hand and want to preserve that, scan it and store the image.)

1 Like

I assume your summary of the family was written with a word processor.

Print the document out as a PDF document. Then put this into Gramps as a Media object.

Create your Source which is the PDF “Book” and attach the media record to the Source.

Then each person/family gets a Source/Citation in their main edit window with the appropriate Page:##

I use PDF books a often (from Google Books,, etc) and there is often a difference in the Book’s page number and the PDF’s page number. I put in the citation “Page:## (pdf:##)”

Note: You can keep formatted text in a Note record by checking the box “Preformatted

As other write, Your article are the source (unpublished article or similar type), the repository are where you store it (i.e. your NAS, Computer and any back-up solution you have.

Create a PDF, Doc(x), ODD, MD (Markdown), LaTex, RTF or any other text format file you desire, add this as media, add the media to your source.
Add a “Transcription Note” to your source with your written words, in that Note/Text, you can also create internal links to any or all people, places, events or other documents(sources and citations) that are an object in Gramps.

Create your Citations with page and paragraph references to that source, and if you like, you can also copy that paragraph of text to a “Citation Note” in your Citation.

I try to always add Citations to Events, but you can add your citation, I also try to create Citations for any “new information” or page in a source, but that’s just a personal thing, some only make one citation for a whole book, others for a paragraph, and other for any “new significant information”.

Then add your Citations to any Person, Place, Media, Event or other object you like.

Because of the limitations in the source and citation (and Notes) in Gramps, I use Zotero for all my Sources in addition to add them to Gramps.

I have started to look into Zettlr and Obsidian desktop in addition to Mindforger, Markdown Notebooks for writng Notes. One of the reasons is that Zettlr has integration with Zotero, while Obsidian and Mindforger has knowlegde graphs for the relations between Notes and words in the Notes so there is a way to find other relations while writing down Notations, research logs and other findings.
With an addon to Zotero all Bibliography can be exported as MD files, so there are possibilities to use those in addition…
There aree also a Graphviz addon to Zotero, that export items to a “dot” file, so its possible to merge Graphviz files from different software to one big graph in i.e. Cytoscape or Tulip, to do research and connections not possible in Gramps nor any other lineage-linked genealogy software.
For me its important to be able to create other relation graphs than just plain family relations… and to be able to create graphs that also shows all type of relations between Events, Places, Vessels, Companies and Humans, and be able to also show relations from those to the Sources, as one big “Knowledge Graph”.

Thanks for your suggestions!

But then I have the problem mentioned above: I cannot add the source citations for the text. Of course I could mention the sources in the text file, but it would be a pity not being able to link the text with its sources.

But what I really want to do is to cite the sources I used for the text, and I cannot attach a source citation to a source.

In both your proposed solutions, I would have to edit the text externally rather than in Gramps, which is a pity. Note that this doesn’t necessarily have to be a long article - it could also be just a couple of sentences.

But I can’t add links to source and citation objects in the transcription note, since notes don’t support citations associated with them. Or do you suggest adding a citation and linking the note as citation note? Kind of like a “backwards citation”? That would be kind of illogical to me as it would invert source & conclusion.

I think I understand what you’re trying to do, and I think I was looking at it from a different angle. Suppose that the “summary article” had been written (even published) by someone else, and that it included a bunch of source citations, like any good genealogical document. You would treat it like any other source, right? So even though you wrote the article yourself, and haven’t published it yet, you can still use it as a source.

It sounds like you also want some linking within the summary article that you wrote. Apart from Gramps, that should be possible just within your word processor, creating footnotes and index entries, etc., whose internal links should be preserved in a pdf version.

What I do is as follow:

  1. I create the Source (your article in this situation) as a media object (any kind of format you like)
  2. Then I create a source in Gramps and add the media
  3. Then I add a Note in to the source, in this note I copy all the text from the article
  4. I give this Note a type of “Trancription Note” (or maybe “original text” or “article text”, what you like)
  5. For some Notes I Create internal Gramps links to other objects in Gramps, i.e. to a family, person, place, or anything mentioned in the text that I have a Gramps object for.
  6. then I add a Citation (Source reference) to that source, with page or paragraph reference. this will have a standard format like “My Doc”, JGH, Page 6, Paragraph 3,OoI: “Peder Jensen”: file://{full path to file}.
  7. Then I will some times also add that paragraph as a Note for the Citation, and give it a type of “Citation Note” or similar
  8. I add this and/or any other Citations I have created for that Source where I need it

You don’t need to add links to sources and citations in the Note text itself. The Note are only a transcription of the article.

A practical example:

You have a PDF with 8 pages that you wrote.

You add that PDF as a media file
then You create a source with the name of the article i.e. “The 2019 Summary article of the Jensson Family.”
then you create a Note where you copy all the text in that article, or maybe one Note for each page, (whatever suite you).
In that note you can if you want add Gramps Internal Links to most Gramps Objects, but this is “not important”).

You know that on page 6 you have some information on Jens Jensson and on Page 8 you have some information about an Census Event where 8 people was mentioned

You create one Citation in Gramps for the page where “Jens Jensson” is mentioned and one Citation for the page where the Census are mentioned.

You give the first Citation the name: “The 2019 Summary article of the Jensson Family.”, David M., p. 6, OoI: “Jens Jensson”, {Full path to file}.

The second Citation will get the Citation string: “The 2019 Summary article of the Jensson Family.”, David M., p. 8, OoI: “Census of Stockholm 1885”, {Full path to file}.
You also add a Note on this Citation with the text of the paragraph in the article, because you have added some notes there that is important.
(OoI = Object of Interest)

In addition you should of course add sources and citations to the original sources where you found your information in the first place.

The source you add is the container of your text and information, regardless if its you or anybody else that wrote it, or if its a database.

The Citation is the references to the text and information inside that document, you do not need to cross reference anything.

Same goes for any of your Notes, regardless of if it is a Research Log Note for a Source or a Note holding information that are given from a family member.

If it hold information, it’s a source, and for a source you create citations.

I have the exact same problem as you have, I have a lot of Notes from my Mom and some I have made myself, and also a lot I have found or got from family members.
I threat all of those notes as a source, add them as sources in Gramps, add the Media to those sources, add the information in them as transcribed text notes, and create Citations (source references) to all of them.
If any Note references another Source, I add that as a new source and create citations for it.

As I wrote earlier (or ment to write) I only add Citations to Gramps Objects and if possible to an Event that I relate to a Person, Place and so on. I try to never add a source/citation directly to a person or place.

Regarding internal links in Notes, you can add Internal links in a Note to Citation and Sources.
To a Citation in Gramps:

To a Source in Gramps:

You can also create an Internal Link to another Note:

So if you open a Note in a source, where you have a lot of references to other Sources, Citations or Notes, you can actually create Internal Links to them, so with a little work you can create a Note with a full Citation String to a bibliography (Source) inside that Note.

So if we use the same example as over with “Jens Jensen”, say the information on page 6 was from a Church Book that you have as a source in Gramps, you can add a Citation String (plain text) in the Note, and create an Internal Link for that String to the Church Book’s page reference (Citation) in Gramps.

If you like to create internal links in your document (Article) to other parts of your document, you can as George wrote do this by using internal links in your preferred text editor, It can be done in MS Word, Libre Office and in any Markdown Editor or Wiki Editor, I can’t anything about LaTeX, but I am sure there are Internal linking also there. I have not find a way to do this in Gramps Notes… It would have been possible if the Notes was Python Markdown format or any other Markdown format, but I have not managed to figure out how to do that.

I also hoped that it would be a change in the Note System to support Markdown links and Images, but I think there must be some changes in the Note Editor for that to happen. I also hoped for Citations and Sources in addition to a date field for Notes, but I don’t think other people see it as important…
So for now Notes are sources, as I wrote earlier I am testing out a few Markdown Editors for that, also because of the extra functionality in them as both Zettelkasten systems and Knowledge Graphs systems.
And I use Zotero as a system for all of my Sources.


@StoltHD thanks so much for your detailed answer! I actually had no idea about the “internal link” feature, and that’s brilliant! I looked briefly into the implementation, and it actually stores the link in the database as a string gramps://Person/handle/xyz... where xyz... is the object’s handle, so it would even work when changing the object’s Gramps ID.

So it looks like doing this purely within Gramps is possible after all, which makes me very happy :slight_smile:

To summarize, what I’ll probably do is:

  • Create a repository representing all those textual documents written by myself
  • Create a source for each of them
  • Write the text as a formatted note
  • Add any references to other sources, people, families, … as internal links
  • Add any existing (or new) media objects to the source

An alternative would be to replace “repository” in the above by “source” and “source” by “citation”. From what I can tell, this would work as well, and would have the advantage that a citation has a date (while a source has not). It’s also not too different from other cases when I am using a source to refer to a book and a citation to refer to individual pages/sections.

No need to replace or swap anything. To store date you wrote your document, the source, you can use the publication/publishing information (Pub. Info.) to store it:

Source Title: the title of your document
Author: you
Pub. Info.: Redacted on date you wrote it

Yes, this is the best way to do it I think, else, its also possible to add any date to the source as an attribute, but it would not show the same way…

:boom: :boom: :boom:

Any Citation that is only linked to a note is subject to deletion through the use of Remove Unused Object tool.

Since the citation is not added to a record in the normal way, Gramps does not see it as referenced by any object within Gramps and thus “unused” and subject to deletion.

Steps would need to be taken to ensure they are not erroneously deleted.

:boom: :boom: :boom:

Thanks for the warning!

I think I would not create any new citations for this purpose but only link to sources or to existing citations.

Example: there is a source corresponding to a church register, and a citation corresponding to the record of a person’s birth (with scan of the page as media object attached to the citation). Then I would “cite” this record by creating an internal link to the citation in the note, but the citation would anyway be attached to the birth event of the person.

But indeed it’s good to know that one should try to avoid creating “orphaned” citations.

The notes are attached to Sources and/or Citations that are used…

I never use that tool anyway, because its so often I add something I find, but don’t know where it belong at the moment…

I lost a lot of places and sources in a database because of that tool before I actually know what it did…
So for me its a tool that shouldn’t be possible to run in any database, it should only be possible to run with preset delete tags.
But that’s me.

I have a “person” named “Anchor Do Not Delete”.

He holds any objects that I create that I want to make sure do not get deleted. Most notably notes that I use in the NarrWeb. He (or his cousin in your family) could easily keep track of orphaned citations.

But the citation is not attached to anything in the normal Gramps way.

Of course Citations are connected, any Citation are connected to a source and to any other object you add them to.
you use the Gramps Citations as Connectors between sources and other Gramps object.
The Citation strings inside a Note is just a text string where there are been added an Internal Link pointing to any Gramps object in the database.

But the reason I NEVER use the delete unused objects tool, is because I add a lot of sources and Citations when I found anything, I don’t work the “lineage-linked” way. I work in a document (source), information, claim, fact, Place, Event way, and the people I connect is only because I find them in a document describing an EVENT in/on a PLACE.
For me Information is Information and all information is important until I see it are of no use.

So when I add something to my information store, it never get deleted unless I find other information that prove that the first is false.

I also add Disproven and Unexclusive information.

I add Places and Events without connecting them to any person or family, I add Newspaper with historic articles about a places where someone lived, but I only add them to a place, and most likely to an Event aand always in the form of Source --> Citation --> Event --> Place.

Thats why I have been so active about trying to get more focus on both Events (with sub-events) and on Places and using Places as subject for Events…
that is also why I really want Sources with sub-sources…

And that’s why I have asked for graphs focusing more on places and events… and why I asked for more export formats focusing on other types of relations/connection.
(All this I have given up on, because it’s clear that most users don’t care or don’t understand the benefits of none linkeage-linked research).

So for me, Gramps is only a storage of data now until I find something thats better, like Arches or Heurist, it’s no longer a research tool… it’s to many limitations, just as in any other lineage-linked software. It’s really sad, because it has an enormous potential to become a defacto historic research tool for a lot more researchers than genealogists…

I ran a test to make sure before I posted the warning.

I created a citation with a source, gave myself a new note and Linked the citation into the note.

I then ran the Remove Unused Object tool and the citation at issue was there ready to delete.

I too never use the tool (testing excluded). I have filters in Events, Citations and Notes that search for objects with Reference Counts = 0. I run the three filters in that order once a week to make sure that when I am deleting an unused object, I remember why I have deleted them from a person or family.

I too have added Sources and Places that I may not have used yet so make sure I never delete unused objects from these areas.

That’s because the tool are lineage-linked focus, it’s logic “says” that if something is not connected to a person or a family, it’s not used…
And that is why I never use it…

Same problem when you export a database, it deprecate all unused metadata like “types”, it’s just wrong…

1 Like

To me it seems like this is simply a bug in the remove unused objects plugins that needs fixing. At the moment, it only looks for objects in the database without backlink handles. But it would not be too hard iterating through all existing notes to find objects with links in notes.

For me the whole lineage-linked research approx has become one big bug…

Yes, it’s possible that the tool easily can be altered to look for any type of connections and links, but question is if the Creator want to do it or if it’s “as designed”.