[ https://arctosdb.wordpress.com/documentation/catalog/#parse_otherid is current ]
Under individual specimen records, Other Identifiers are a three-part field:
- Prefix (text)
- Number (integer)
- Suffix (text)
The specimen bulkloader has only one field for (each of several) Other Identifiers. At load, the values provided in this field are parsed into individual fields according to the following rules.
- Integers are loaded as Number
- Strings consisting on a single alpha character followed by a number (V12345) are split into Prefix and Number (V and 12345, respectively)
- Strings consisting of a number and a single alpha character (12345a) are split, as above, into Number and Suffix
- Strings containing one or two "separator characters" (| - . ;) are split at those characters.
- The results of the above are checked to ensure that Number is an integer
- Finally, the re-concatenated value is checked against the original. If they don't match, the original becomes Prefix.
| Input | Prefix | Number | Suffix | Display | Explanation |
|---|---|---|---|---|---|
| v12345 | v | 12345 | NULL | v12345 | One character plus number |
| v-12345 | v- | 12345 | v-12345 | v-12345 | Split at a separator character |
| v-12345-1 | v- | 12345 | -1 | v-12345-1 | Split at separator characters |
| 1[12345]1 | 1[12345]1 | NULL | NULL | 1123451 | Brackets are treated as characters. |
| 1-abc-2 | 1-abc-2 | NULL | NULL | 1-abc-2 | Number is not numeric |
| v-00001 | v-00001 | NULL | NULL | v-00001 | Above rules would lead to dropped leading zeroes in Number |
(Much of this procedure is included in Arctos Definitions and Standards as a broader description of Other Identifiers.)