Closed xrotwang closed 2 years ago
Btw. the definition in the schema does not have the "world-wide unique" clause.
OK, let me play dumb and naïve here. Why would it be so terrible if we simply enforce uniqueness within our tools once a set of packages gets read in? Why do we have to somehow enforce "world-wide-uniqueness" at the format specification level? So, in other words, why does "uniqueness of identifier" have to be something that we need to somehow guarantee globally, rather than locally?
I agree that "world-wide-unique" may be a bad trade-off. Often somewhat meaningful local IDs are a lot easier to maintain, and combined with some sort of prefix (possibly derived from provenance) when aggregating data, things work well. I'd still say that having identifiers for things that are referred to from other objects are an important piece of data - and should not only be minted upon reading data - and samples seem to be such a thing.
Fair enough. Well, Clemens and I have pondered some kind of "Poseidon" sample ID, which we declare once a new package is taken into our central repository. That may make sense at some point.
This was discussed again on Oct 14.
Version ID
vs Master ID
, where the Master ID
is arguably a unique identifier. We could adopt something like this, which we could then call Poseidon Master Individual ID
or something more with a ring to it.Related_To
and Degree_of_relatedness
which would act as key into the same table to describe relationships.Preliminary decision:
Individual ID
to Poseidon ID
AKA
column which lists multiple other names the individual is known as (list column)Related_To
column, also listRelation_Type
column, also list, choice field something like Identical
, 1st degree
...
The definition of
Individual_ID
seems inconsistent:If
Individual_ID
has to equal the identifier used in the publication, how can one make sure it's also a UUID? The specification goes on to saywhich might create even more problems to reconcile "identifier as in publication" with what Poseidon wants. From my experience, I'd recommend to distinguish local IDs and global UUIDs explicitly, and specify all of the constraints for the UUID.