I am working on a VBA project that interfaces with VexDB’s API to analyze data for our team, and i am curious about one piece of data. The event SKU, taken from robot events, has four parts. (ex. RE-VRC-16-1992) “RE” being Robot Events, “VRC” being the Vex Robotics Competition, “16” being the year, but i have yet to find an identifiable pattern to the last four digits. Some of my original thoughts were that they could indicate the region, the organization, the size, but none of those seem to be true. The last theory is that they are just serialized based on when the event was scheduled, but I am not sure how i would verify that. Does anyone know if there is a significance to these digits beyond a unique serial number?
I assume it is a simple monatomically increasing serial number. To be clear, I don’t know, but I perform data migrations professionally. This means I often have to determine exactly that kind of question. Based on the way the field value is constructed, it is unlikely that it carries two pieces of information. That is, if there were a region code, it would likely be separated from the “uniquifier” part of the data, rather than embedded in it. There could be a range of serial values that end up assigned to a region, but that’s a bit different from what you’re asking.
In this case, a very simple way to determine what the field might be is to count the number of unique field values, then compare that to the maximum for that field. If the counts match, or even if it’s close (say the difference is less than the number of countries times two, for instance) it’s a serial number. The reason for the “difference is less than the number of countries times two” is that there could be some special reserved values, and it would make sense that the reserved values correlate to the number of regions, whatever a region is. “Number of countries times two” is a good surrogate (okay, “guess”) for number of regions, and therefore for the number of reserved values, if any.
Other ways to analyze this include picking three countries with a similar number of events, with at least one of them being geographically separated from the others (all three dispersed is fine too) and comparing the difference between the numbers pairwise. That is, sort the match IDs by date for country A and country B, align the two lists in date order, and subtract the subfield value for country B from the subfield value for country A. Take the absolute value of each of those differences.
Now do that for A and C and B and C.
If it is a serial number, the absolute value of the differences will cluster near a single number (probably 0) like magic. If it doesn’t cluster at all, it’s not a serial number. If it cluster into more than one distinct value (two or three) it is a serial number with a region code in it.
Forgot to say: If, for some reason, the values are encrypted, it’s more difficult to ananlyze. Not impossible, just harder.
There is no chance these are intentionally encrypted, really.
As far as I’m aware they’re some kind of incremental ID that RobotEvents must use somehow. I know in the past when our EPs have created multiple events one after the other they receive sequential IDs.
Of course those are still from within the same region, so it doesn’t rule out “blocks” being devoted to regions, but I haven’t seen anything that really supports that claim.
Also as far as I’ve noticed the “year” part of the SKU seems to correspond to the year when the event was created, not when it’s scheduled to occur.