* [Wish List Item 626] Automatic generation of UniqueID

For Wish List Requests that have either (a) been progressed to the Wish List; or (b) been classified as duplicates, or as redundant because the requirement is already satisfied within FH and/or plugins; or (c) closed because it wasn't possible to arrive at a clear specification of the request within 15 months of it being raised.
avatar
jelv
Megastar
Posts: 611
Joined: 03 Feb 2020 22:57
Family Historian: V7
Location: Mere, Wiltshire

Re: Automatic generation of UniqueID

Post by jelv »

AdrianBruce wrote: 31 Oct 2023 17:24 I'm a touch concerned that we are discussing settings for when Auto-Generation of UniqueId should / could be switched on, without any definition of what this UnqueId is, or how it behaves (or might behave) - so far as I can see and please correct me if I'm wrong (and yes, I have read that part of the GEDCOM 7 spec'n).
We know a lot about how FH behaves with UIDs because some of us have been using them for a considerable time - but we have to remember to manually generate them using the existing menu option whenever we have added new individuals and we are going to do a process that relies on them. All Mark is asking for is an option to bring FH in line with the likes of RootsMagic which automatically generates them for new individuals.
John Elvin
User avatar
AdrianBruce
Megastar
Posts: 2109
Joined: 09 Aug 2003 21:02
Family Historian: V7
Location: South Cheshire
Contact:

Re: Automatic generation of UniqueID

Post by AdrianBruce »

jelv wrote: 31 Oct 2023 21:51...
We know a lot about how FH behaves with UIDs because some of us have been using them for a considerable time - but we have to remember to manually generate them using the existing menu option whenever we have added new individuals and we are going to do a process that relies on them. All Mark is asking for is an option to bring FH in line with the likes of RootsMagic which automatically generates them for new individuals.
Sorry - I now understand the detail of the request - I'd missed that "an additional step of Tools > Record Identifiers > Create UniqueID where missing is required" is actually an existing menu option applicable across all Individuals. :(
Adrian
User avatar
Vyger
Famous
Posts: 159
Joined: 15 Jan 2019 12:11
Family Historian: V7
Location: Northern Ireland

Re: Automatic generation of UniqueID

Post by Vyger »

I just wanted to add a bit of additional fact to the UniqueID discussion as reference.

Round trip from Rootsmagic or Rootsmagic originated import via Family Historian to My Heritage preserves the UniqueID in any future downloaded Gedcom so Unique Person Identification is intact.

Disappointingly any round trip to Ancestry does not preserve the UniqueID generated by Rootsmagic. At present I don't know if Rootsmagic transfer the UniqueID to Ancestry via their Treeshare app or if Ancestry drop it. Either way a Gedcom downloaded from Ancestry does not contain any _UID line.

Individuals in a NEW file download via Rootsmagic Treeshare get a new UniqueID presumably assigned by Rootsmagic, so in my case;

1 _UID C7B607C34EF94BAFBEDDA07611E176680917
has subsequently become;
1 _UID AAE10A4C1EEF43ACAE97AEB529661A3967FF
albeit still with the same RIN as the original upload.

For any doubters of 36 bit hex UID possibilities I lifted the below from a web source;

Combinatorics
Possible 36 hex digit combinations
22,300,745,198,530,623,000,000,000,000,000,000,000,000,000 (~ NaNt)

Thats a LOT of zeros and more than I will ever need.
Genealogy Reviews - research methods for a more productive future
User avatar
Mark1834
Megastar
Posts: 2519
Joined: 27 Oct 2017 19:33
Family Historian: V7
Location: South Cheshire, UK

Re: Automatic generation of UniqueID

Post by Mark1834 »

UniqueID is preserved by Ancestry, but is exported as a UID tag, which is the GEDCOM 7 designation. It’s what enables the Ancestry Sync plugin to compare the Ancestry GEDCOM export with the RM original (TreeSync can cause significant changes in data).

I have a revised wording for the Wish List that I haven’t got round to posting yet. I’ll do that later today.
Mark Draper
avatar
jelv
Megastar
Posts: 611
Joined: 03 Feb 2020 22:57
Family Historian: V7
Location: Mere, Wiltshire

Re: Automatic generation of UniqueID

Post by jelv »

AdrianBruce wrote: 31 Oct 2023 17:24 I just set a UniqueId for an individual in a test project and then cloned said individual. The clone included cloning the exact value of the UniqueId. Now, of course, that's a PlugIn rather than native FH logic but the same thing happens when copying and pasting the items from one individual to an empty one.
That's a fault in the plugin! It should NOT copy the UniqueId. The additional option Mark proposed would allow the plugin to allocate the cloned copy a new UniqueId.
Mark1834 wrote: 21 Oct 2023 08:05 A related but independent option would be to provide an fhCalculateUniqueId(ptrI) function for plugin authors to create values directly.
John Elvin
User avatar
tatewise
Megastar
Posts: 28436
Joined: 25 May 2010 11:00
Family Historian: V7
Location: Torbay, Devon, UK
Contact:

Re: Automatic generation of UniqueID

Post by tatewise »

Mark1834 wrote: 04 Nov 2023 14:48 UniqueID is preserved by Ancestry, but is exported as a UID tag, which is the GEDCOM 7 designation.
When I export an Ancestry GEDCOM its header says it is 5.5.1 and not 7.0:
1 GEDC
2 VERS 5.5.1
IMO it should NOT be using the UID tag as it is invalid in 5.5.1!
Mike Tate ~ researching the Tate and Scott family history ~ tatewise ancestry
avatar
jelv
Megastar
Posts: 611
Joined: 03 Feb 2020 22:57
Family Historian: V7
Location: Mere, Wiltshire

Re: Automatic generation of UniqueID

Post by jelv »

Is that the only aspect of the stated GEDCOM spec. that the Ancestry export doesn't conform to? :roll:
John Elvin
User avatar
Vyger
Famous
Posts: 159
Joined: 15 Jan 2019 12:11
Family Historian: V7
Location: Northern Ireland

Re: Automatic generation of UniqueID

Post by Vyger »

Mark1834 wrote: 04 Nov 2023 14:48 UniqueID is preserved by Ancestry, but is exported as a UID tag, which is the GEDCOM 7 designation. It’s what enables the Ancestry Sync plugin to compare the Ancestry GEDCOM export with the RM original (TreeSync can cause significant changes in data).
I do hope you are correct in some way Mark.

In my example I downloaded my Ancestry tree to a new empty Rootsmagic database and it would appear Rootsmagic assigned a NEW UID to all the individuals and did not preserve the UID of those in the original Treeshare upload.
Genealogy Reviews - research methods for a more productive future
avatar
jelv
Megastar
Posts: 611
Joined: 03 Feb 2020 22:57
Family Historian: V7
Location: Mere, Wiltshire

Re: Automatic generation of UniqueID

Post by jelv »

That's RootsMagic TreeShare not retrieving the Unique Id from Ancestry.

If you export your Ancestry tree to a GEDCOM file you'll find they are all there.
John Elvin
User avatar
ColeValleyGirl
Megastar
Posts: 5508
Joined: 28 Dec 2005 22:02
Family Historian: V7
Location: Cirencester, Gloucestershire
Contact:

Re: Automatic generation of UniqueID

Post by ColeValleyGirl »

I suggest this Wish should not depend on what other programmes do or don't do, but rather on whether it makes sense in the FH context to some people (who will presumably later vote for it) and there are no objections that can't be addressed.

Edit: This is a gentle nudge to stay on topic
avatar
jelv
Megastar
Posts: 611
Joined: 03 Feb 2020 22:57
Family Historian: V7
Location: Mere, Wiltshire

Re: Automatic generation of UniqueID

Post by jelv »

It all makes sense in the FH context and much of the discussion has been due to lack of awareness of the existing handling of UniqueIds by FH.

The proposal is not based on what other software does, it is simply correcting what is an annoyance with the current situation. Pointing out that incidently, what is requested is the a feature of a competitors software, may make CP more inclined to add the feature requested.

Edit: I've seen (and contributed) to Mark's revised wording which clarifies it a bit. As it's his baby I'm leaving it to him to post.
John Elvin
User avatar
Mark1834
Megastar
Posts: 2519
Joined: 27 Oct 2017 19:33
Family Historian: V7
Location: South Cheshire, UK

Re: Automatic generation of UniqueID

Post by Mark1834 »

To bring this thread back to its original purpose, my revised proposal is

Proposal: A Project-level option (probably under Tools > Preferences > General > Advanced, and off by default for consistency with previous practice) be provided that when set automatically generates a UniqueID value for new Individual records added either directly from the user interface or by merging another FH project or external GEDCOM file where this field is missing.

This limited change will be a significant improvement for users who routinely generate UniqueIDs in their projects, without affecting the current format of the UniqueID field or its behaviour on merging records.


I think this makes it clear that all I am requesting is a small addition to what FH does already. Specifically out of scope is changing the way CP have decided to implement this field in FH7.

I suggest a new thread be started if anybody wants to broaden the discussion into what UniqueID does and doesn't currently do, as far as it affects FH users.
Mark Draper
User avatar
ColeValleyGirl
Megastar
Posts: 5508
Joined: 28 Dec 2005 22:02
Family Historian: V7
Location: Cirencester, Gloucestershire
Contact:

Re: Automatic generation of UniqueID

Post by ColeValleyGirl »

I have no objections to the reworded proposal.
avatar
jbtapscott
Megastar
Posts: 515
Joined: 19 Nov 2014 17:52
Family Historian: V7
Location: Corfu, Greece
Contact:

Re: Automatic generation of UniqueID

Post by jbtapscott »

Not something I am particularly interested in as I don't (currently) move data to other genealogy software, but if I did, the proposal looks spot on to me.
Brent Tapscott ~ researching the Tapscott and Wallace family history
Tapscott & Wallace family tree
User avatar
NickWalker
Megastar
Posts: 2612
Joined: 02 Jan 2004 17:39
Family Historian: V7
Location: Lancashire, UK
Contact:

Re: Automatic generation of UniqueID

Post by NickWalker »

Sounds good to me although not something I need to use. I'll add this feature as an option in AS too at some point so that new individuals created in AS can be given an unique id too.
Nick Walker
Ancestral Sources Developer

https://fhug.org.uk/kb/kb-article/ancestral-sources/
avatar
jelv
Megastar
Posts: 611
Joined: 03 Feb 2020 22:57
Family Historian: V7
Location: Mere, Wiltshire

Re: Automatic generation of UniqueID

Post by jelv »

NickWalker wrote: 06 Nov 2023 10:05 Sounds good to me although not something I need to use. I'll add this feature as an option in AS too at some point so that new individuals created in AS can be given an unique id too.
A good proportion of the new individuals I add are created using AS so if Nick is prepared to do this it would need the extra bit Mark suggested.
Mark1834 wrote: 21 Oct 2023 08:05 A related but independent option would be to provide an fhCalculateUniqueId(ptrI) function for plugin authors to create values directly.
John Elvin
User avatar
NickWalker
Megastar
Posts: 2612
Joined: 02 Jan 2004 17:39
Family Historian: V7
Location: Lancashire, UK
Contact:

Re: Automatic generation of UniqueID

Post by NickWalker »

jelv wrote: 06 Nov 2023 10:12
NickWalker wrote: 06 Nov 2023 10:05 Sounds good to me although not something I need to use. I'll add this feature as an option in AS too at some point so that new individuals created in AS can be given an unique id too.
A good proportion of the new individuals I add are created using AS so if Nick is prepared to do this it would need the extra bit Mark suggested.
Mark1834 wrote: 21 Oct 2023 08:05 A related but independent option would be to provide an fhCalculateUniqueId(ptrI) function for plugin authors to create values directly.
AS can create its own Unique ID, it doesn't need to use the method in FH.
Nick Walker
Ancestral Sources Developer

https://fhug.org.uk/kb/kb-article/ancestral-sources/
User avatar
Mark1834
Megastar
Posts: 2519
Joined: 27 Oct 2017 19:33
Family Historian: V7
Location: South Cheshire, UK

Re: Automatic generation of UniqueID

Post by Mark1834 »

In principle, I think UniqueID is calculable from a plugin, but the official method needs access to parameters such as precise system time and network card MAC address. They’re beyond my pay grade to do with plugin libraries, but if Nick and CP can do it more easily with their professional expertise and tools, that’s great.
Mark Draper
User avatar
NickWalker
Megastar
Posts: 2612
Joined: 02 Jan 2004 17:39
Family Historian: V7
Location: Lancashire, UK
Contact:

Re: Automatic generation of UniqueID

Post by NickWalker »

Mark1834 wrote: 06 Nov 2023 10:43 In principle, I think UniqueID is calculable from a plugin, but the official method needs access to parameters such as precise system time and network card MAC address. They’re beyond my pay grade to do with plugin libraries, but if Nick and CP can do it more easily with their professional expertise and tools, that’s great.
As I understand it, I just need to use: Guid.NewGuid() in .Net to generate a unique id using the RFC 4122 standard so , at least on this occasion, it doesn't need a lot of expertise for me to add this to AS! :)
Nick Walker
Ancestral Sources Developer

https://fhug.org.uk/kb/kb-article/ancestral-sources/
User avatar
Vyger
Famous
Posts: 159
Joined: 15 Jan 2019 12:11
Family Historian: V7
Location: Northern Ireland

Re: Automatic generation of UniqueID

Post by Vyger »

Mark1834 wrote: 04 Nov 2023 14:48 UniqueID is preserved by Ancestry, but is exported as a UID tag, which is the GEDCOM 7 designation. It’s what enables the Ancestry Sync plugin to compare the Ancestry GEDCOM export with the RM original (TreeSync can cause significant changes in data).
Mark can you expand on this assertion a little more?. My RM originated 36 bit hex UID becomes a truncated 32 bit hex on Gedcom download from Ancestry, perhaps it is different using Treeshare? see below;

1 _UID 5A4718305B124219B6275DEFAC1472434FB5 (Rootsmagic originated UID)
1 UID 5A4718305B124219B6275DEFAC147243 (Ancestry Gedcom download truncated UID)


Both 32 and 36 bit hex are more than ample to uniquely identify individuals and help in the fight and time wasted reconciling duplication and perhaps there is a spec in the Gedcom 7 brief?

Again I can confirm that My Heritage do preserve this UID in the originating format on a round trip and Gedcom download via their Family Tree Builder software although do not preserve RIN's, see format below;

Code: Select all

0 @I1@ INDI
1 RIN MH:I1
1 _UID 5A4718305B124219B6275DEFAC1472434FB5
I really look forward to the day all genealogy software providers embrace the unique identification of individuals using a common format so transferring of data between platforms can be less of a duplication nightmare.

I also took the time to email Rootsmagic support and received the the reply below this morning;

"Jackson,

Ancestry has their own identification system that they use, so they do not use or store the RM UID number. That is why the Ancestry GEDCOM and Ancestry TreeShare both have the old UID stripped out when importing into the RM database. The RM RIN number is also not preserved by Ancestry.

RootsMagic, Inc."
Genealogy Reviews - research methods for a more productive future
User avatar
Mark1834
Megastar
Posts: 2519
Joined: 27 Oct 2017 19:33
Family Historian: V7
Location: South Cheshire, UK

Re: Automatic generation of UniqueID

Post by Mark1834 »

Brief reply only as I won’t be back at the desk until this evening - the last four characters are an optional checksum. FH UniqueID values don’t use it either, they are also 32 chars, but hyphenated, which is the preferred (but not mandated) format in GEDCOM 7.

As you have shown, Ancestry does store the RM UniqueID, but presumably just as a dumb field that is not displayed in the UI. It is lost on GEDCOM import to RM, as it doesn’t recognise UID. I haven’t tried editing the tags to _UID before input, but it is what it is, so that’s what we have to work with.

To be fair, FH didn’t import UID via GEDCOM originally, but CP added it in a recent update at my request.
Mark Draper
User avatar
tatewise
Megastar
Posts: 28436
Joined: 25 May 2010 11:00
Family Historian: V7
Location: Torbay, Devon, UK
Contact:

Re: Automatic generation of UniqueID

Post by tatewise »

Vyger wrote: 07 Nov 2023 11:31 Both 32 and 36 bit hex are more than ample to uniquely identify individuals and help in the fight and time wasted reconciling duplication and perhaps there is a spec in the Gedcom 7 brief?
As intimated by Nick yesterday, GEDCOM 7 specifies RFC 4122 which defines a 128-bit, i.e. 16-byte or 32 Hex character UUID.
GEDCOM 7 also says:
Note — Some systems used a 16-byte UUID with a custom 2-byte checksum for a total of 18 bytes:
• checksum byte 1 = (sum of (byte i) for i 1 through 16) mod 256
• checksum byte 2 = (sum of ((16 − i) × (byte i)) for i 1 through 16) mod 256
Use of checksums for UIDs is discouraged except in cases where error-prone input is expected and an appropriate action to take in case of an error is known.
Mike Tate ~ researching the Tate and Scott family history ~ tatewise ancestry
User avatar
Mark1834
Megastar
Posts: 2519
Joined: 27 Oct 2017 19:33
Family Historian: V7
Location: South Cheshire, UK

Re: Automatic generation of UniqueID

Post by Mark1834 »

I thought I had prepared an outline list of apps that use UniqueID, and it's here in the help page for the Format UniqueID plugin.

For some reason, it is not shown on the main plugin page, so that could be the Plugin Store WordPress bug that CP were referring to their 'WordPress expert' some time ago but apparently not yet fixed.
Mark Draper
User avatar
tatewise
Megastar
Posts: 28436
Joined: 25 May 2010 11:00
Family Historian: V7
Location: Torbay, Devon, UK
Contact:

Re: Automatic generation of UniqueID

Post by tatewise »

Mark1834 wrote: 08 Nov 2023 13:31 For some reason, it is not shown on the main plugin page...
Mark, in that Help page in the WordPress editor, check the More Fields section at the bottom.
Have you ticked the Main Page Yes option as below? If not then it won't be included in the Plugin home page.

MainPage.png
MainPage.png (3.33 KiB) Viewed 696 times
Mike Tate ~ researching the Tate and Scott family history ~ tatewise ancestry
User avatar
Mark1834
Megastar
Posts: 2519
Joined: 27 Oct 2017 19:33
Family Historian: V7
Location: South Cheshire, UK

Re: Automatic generation of UniqueID

Post by Mark1834 »

Yes, the plugin is correctly cited, and that option ticked:
Capture.PNG
Capture.PNG (5.73 KiB) Viewed 678 times
The help is listed in Plugin Help, and the link on the Help page back to the plugin works, but it's just the actual plugin page that says there is no help available.

What's usually worked in the past for clearing this type of fault is to copy the help text, permanently delete the help file, then copy the contents back into a new file. That hasn't made an immediate difference, but I've noticed other things in the Store like download counts don't update immediately, so perhaps there is a batch process that runs in the background and it will be back working tomorrow...
Mark Draper
Post Reply