How can I create a detailed descendant report that includes citation numbering?

Is there a way to create a detailed descendant report [report or book] that makes use of Gramps citation numbering instead of the arbitrary system that is created in the report?

The detailed descendant report creates references like 1a, 1b, 1c, etc. which is not particularly helpful. It would be great if I can get it to use C0001, C0002, C0003, etc. In my case, I have notes attached to some people with information like “C0401 mentions blah blah” which unfortunately makes it impossible to find the reference because the citation numbers aren’t used in the report.

Hopefully someone has some insights into this. Thanks for the help!

(Gramps AIO64-5.1.5-1, Windows 11)

Not an answer, just a pointer to the built-in module for that particular report. Maybe someone could clone it (and a registration file) as an add-on for experimentation?

Is this the section that writes the Source identifier?

I would love to figure this out myself! But I’m not a Python developer, and I’m sure that the task of replacing the auto-increasing reference numbering system with the Gramps citation ID requires some working knowledge of the code.

1 Like

The references are generated in the add_reference() method. You could try replacing the key with source_ref.gramps_id() (the source_ref is actually a gen.lib.Citation object). I’m not sure if it will work without further investigation.

3 Likes

Don’t worry if the public discussion of your question steps outside your skills for a bit.

The point of linking to the report source code is to make it effortless for other readers to look at the code and suggest a hack. And the possibility of playing with a hack piques the interest of others who will try patching the code and comment on the results. This often takes several rounds.

When there is a working hack, yet other readers (who aren’t developers but like helping non-techies) will help you apply the patch.

If the change is useful enough, someone else might make the feature into a selectable option for the report. And then it can be rolled into an update.

But it all starts with opening the discussion.

2 Likes

An easier way is to put more of the actual Source/Citation into the note instead of just the citation’s Gramps ID number. This has the benefit of remaining true whereas a Gramps Id could change as your citation exceed C9999.

There is also the note Link editor. While not too helpful in a text report, moving to the Narrative Web report would allow linking to the desired citation.

To use the link editor, select the desired text of the Source/Citation in the note, select the Link icon, change the Link type to Citation then the select icon (between the Type and New) to select the actual citation record.

The Superscript code refers to the citation’s printed position in the Appendix of the Detailed Descendants Report. Changing the superscript code to be the Citation ID number would therefore require the Appendix to be re-ordered. in Citation ID order.
Creating notes within the tree to refer to ID numbers is not recommended as ID numbers are not permanent.

1 Like

Agreed.

But superscript Citation identifiers are no more persistent.

The citations are probably going to be grouped by Source, right? So sorting by Citation number doesn’t help much during lookup either. Maybe sub-sorting by Volume/page? But that doesn’t help with finding the Citation ID referenced in the Note text.

I’m guessing that the report doesn’t sort the Appendix, it just compiles a list of unique sources then adds unique citations beneath each source in the order they are encountered while compiling the report.

Linking those IDs in the Notes should insert superscript notations to the Notes when generating the reports. So C0401 mentions blah blah” would probably show something like “C04012c mentions blah blah” in the report.

Bottom line?

This example demonstrates that the use of meaningful IDs (or meaningful Media filenames and folder structures) is counterproductive. It is better to reference it conversationally and link that to the Citation. It is best to Gramps handle resolving the references.
e.g,: instead of C0401 mentions blah blah”, write "Volume 6 page 273 of Encyclopædia Britannica, mentions blah blah”*

1 Like

Thanks to all for the replies. It appears that the best practice method is to include the full citation in the note, instead of referencing the Gramps citation ID.

I have a few followup questions and observations:

  1. What would cause a citation number to change? I’m definitely not going to reach 9999 citations, and I don’t understand how this would change existing numbers.
  2. “Conversational” references are tedious and repetitive, given that this information has already been filled out once in the citation. Some of my references are long, for example: “#26, Image 67 of 126 - Archiwum Państwowe w Poznaniu Oddział w Koninie. Parafja Grodziec: 54/853/0/-/14. Księga urodzonych, zaślubionych i zgonu (Akta stanu cywilnego Parafii Ewangelicko-Augsburskiej Grodziec (powiat koniński))” It seems counterproductive that I would need to enter this in a note instead of mentioning C1004, which contains all of this information.
  3. @emyoulation unfortunately a superscript notation is not added to the report when using the link editor. I just tried editing the text “While C0512 lists his age at death to be 78 (making him born in 1753)” to include a link to C0512, and this is what it looks like in the PDF report:

image

(An underline was added, but no citation number)

If adding a superscript citation to a link is indeed a possibility, then it would be an acceptable solution to what I’m trying to achieve.

  1. the previous citation IDs won’t change unless you use the Reorder Gramps ID tool.
    And you will have reason to use this tool when you exceed the 9,999 records that the Preferences citation ID format (“C%04d”) setting allows. Gramps won’t choke at 10,000 but sorting gets weird without enough leading zeroes in the earlier records. (I changed my formats to support 999,999 records … “C%06d” so that the tree won’t need to ‘reorder’ until it exceeds a million records.)

  2. You don’t do FULL references conversationally. You use an abbreviated form of the Source… usually just enough to identify the Source in the full listing in the Endnotes appendix. And maybe a Vol/Page target to narrow it more. You notice that the Source Editor has a field to log the abbrevation.

  3. No superscript notation inserted for Note links? I’m surprised since Links don’t exist in hard-copy.
    Maybe that could be an enhancement request.

I am currently at C076226 and adding more every day. Before migrating to Gramps I was not always diligent documenting the information I gathered so am now going record by record proving that fact.

But to answer the question, once Gramps goes beyond C9999 it will be C10000, C10001… But Gramps Ids are text fields. So if you set a filter to give you Gramps ID C1000, it will also return C10000, C10001 etc. When this occurs it becomes expedient to change the Ids to a 5- or 6-digit number adding leading zeros (0) to existing records.

Users can also re-sequence Ids removing gaps in the sequence from merged or deleted records.

  1. I’m surprised that citation IDs can be changed so easily - I assumed that they would be quite permanent, and if a citation is deleted, then that specific ID can’t be used again. When I have been creating citations for metrical records, I have been attaching an image of the metrical record, and then including the citation ID that gets generated in the filename of the metrical record image. A filename looks like this: “Zelmer, Anna Dorota (I3763) - Birth, 1867 (C1538).jpg”

  2. Your little hint about abbreviations caused me to look into the “Abbreviation” field in the source dialogue, and it seems that I’ve been missing out on a useful feature.

  3. Agree that this would be a great feature. Would you suggest I make a request in the bugtracker and categorize it as a feature request?

1 Like

The user-facing IDs (Person, Citation, Note, or whatever) are a convenience notation. So they are very plastic. (There’s another hidden & unique ‘handle’ that cannot be changed.)

Since most of my current correspondence is with a particular lineage society, my Person IDs (for that line of descendency) have been changed to match with their system. So any reports & graphs shared with them require no extra indoctrination efforts.

1 Like

In GEDCOM, ID’s are used to link persons, and families, and notes, sources, and repositories, and for that purpose they must be unique, within the context of that GEDCOM file. They have no real meaning for Gramps, which has unique handles for all objects, and even those can change, although you can’t change them as a user.

Both handles and ID’s will be changed when you merge trees, to ensure that they’re unique, which means that you should never rely on them. In that sense, this convenience can be quite misleading, because they make you think that they’re sort of stable. And in reality, they are not. They are very likely to get lost when you create a GEDCOM file, and upload that to Ancestry, or another site, and that’s especially true for citation ID’s, which don’t even exist in the GEDCOM standard.

One could argue that it would be helpful to have an external ID that can reference a particular entry in an external system, like a record on FamilySearch.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.