Other Identifiers
Other ID Type
Other ID Number
Other ID References
General Guidelines
Forming URIs
bulkload_otherid
search_other_id
parse_otherid
Other IDs (Identifiers)
Other IDs (identifiers) are identifiers applied to specimens or resources related to specimens. For example, a collector number is from the field catalog of the collector of the item. Other types include catalog numbers from other institutions where the specimen may have also been cataloged. Yet another category of Other ID results from scientific usage of the specimens. For example, GenBank accession numbers link specimen records to DNA sequences derived from the specimen.
VARCHAR2(75) not null
ctcoll_other_ID_type
Other Identifier Type describes the kind of identifier. This field uses values that are controlled by, and defined in, a code table. Users who are logged in can choose one Other ID Type to be their “preferred identifier.” The preferred identifier will then be the default displayed in several forms.
This same code table can be used to systematically form URIs from pre-set strings and other_id values. For example, the complete code-table entry for GenBank is
The columns are “other ID type,” “definition,” and “base_URL.”
The full base_url is
http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=search&db=nucleotide&doptcmdl=GenBank&term=
and the code from, for example, http://arctos.database.museum/guid/UAM:Mamm:86892
is
returning the link to the GenBank record for that specimen
Coll_Obj_Other_ID_Num.Other_ID_Number NUMBER
Coll_Obj_Other_ID_Num.Other_ID_Suffix VARCHAR2(60)
Other Identifier is the value of an Other ID. Such values are not necessarily real numbers, but rather, strings of characters intended to be unique and sequential within their series. Some such values are used by their creators in inconsistent formats. (e.g., “ABC 123,” “ABC123,” ABC-123,” “ABC0123,” etc.) One format may appear on specimen labels while another format appears in the field catalog. In these cases, it falls to those of us recording such data to choose the most consistent or the most useful format, and to annotate the discrepancy in Specimen Remarks.
Because many of these value are alphanumeric, and because we must often sort, order, and increment them as if they were numeric, it is sometimes desirable to treat them as true numbers, but with the option of prefixes, suffixes, or both.
Other IDs are displayed as a concatenation of
- Prefix (text)
- Other ID Number (integer, displayed with no leading zeroes)
- Suffix (text)
Any (but not all) of these three may be null. In forms for editing individual specimen records, Other IDs are a three-part field.
Importantly, if the Other ID is representing a character string which may include leading zeroes on the numeric segment, then the full value of the string must be placed in the Prefix. This is critical if the Other ID must match a character string within another database (such as GenBank).
Values should be separated when their format allows to facilitate query and sorting. For example, collector numbers of the format
ABC-123-2012
(where ABC is collector initials, 123 is a sequential integer, and 2012 is a year) should be entered into individual fields to facilitate query and sorting.
Top
ID References
ID References is a code table controlled vocabulary defining the specimen to which the other ID was originally applied. “Self” is used when an ID was applied to the current specimen; all other values create a relationship. Note that the “other half” of an ID-created relationship does not necessarily resolve to a cataloged item (but it should), and is not limited to Arctos (relationships can be formed to any online resource).
Relationships should be reciprocal, and all possible relationships should be made explicitly; there is nothing automatic or reciprocal about the system. See below for more information in specificity of identifiers, but relationships should if at all possible be made to resolvable identifiers; ones with a URL in the code table.
Example, given three cataloged items:
- ABC:123 (parent)
- ABC:124 (child of ABC:123)
- ABC:125 (child of ABC:123)
the following Other IDs would be appropriate
| Item | OtherID | IDReferences |
|---|---|---|
| ABC:123 | ABC:124 | child |
| ABC:123 | ABC:125 | child |
| ABC:124 | ABC:123 | parent |
| ABC:125 | ABC:123 | parent |
| ABC:125 | ABC:124 | sibling |
| ABC:124 | ABC:125 | sibling |
General Guidelines
Be as specific and complete as possible in choosing both an Other ID Type and assigning an Other ID Number. Everything that follows is an elaboration of this simple concept.
Other ID numbers are in a 1:zero-or-one-or-many relationship with Cataloged Items. There is no limit to the number of Other IDs that may be assigned to a catalog item, and there is no implication that IDs must be unique, particularly identifying, or even useful. Capture every identifier associated with a specimen – someone at some time considered the identifier useful, and may wish to locate the specimen using it.
Loaned specimens occasionally return with de-facto other IDs (in the form of attached barcodes, GenBank numbers, “personal numbers,” etc.). Record all these as Other IDs.
The vast majority of the current 150 (one hundred and fifty!) ID types in Arctos are completely useless. For example, there are 6 identifier types referencing MVZ, only one of which has a definition:
Considering that the one and only mission of Other Identifiers is to serve as a hopefully-unique “name” for specimens, it is hard to imagine what of value might be lost if all those were merged into something like
Term: MVZ: Museum of Vertebrate Zoology
Defintion: Various inactionable identifiers assigned by the MVZ
Better than “MVZ” would be the identifier type “MVZ:Bird,” which in conjunction with a base_url could serve as a GUID to specimens. (Note that this example would work best from outside the MVZ – for example, if the MSB Bird Collection had co-cataloged an MVZ specimen.)
Actionable Other IDs (at least those that can or could be used to form URIs) should always be recorded as specific types. Everything else is subject to curatorial discretion.
Bulk-loading Rules:
The bulk-loader accepts a single string which is parsed out into three fields at runtime. Strangely formatted strings may be manually entered into the correct fields under Specimen Detail.
The specimen bulk-loader has only one field for (each of several) Other IDs. At load, the values provided in this field are parsed into individual fields according to the following rules
- Integers are loaded as Number
- Square brackets ( [ and ] ) may be used to explicitly define the numeric portion of an identifier
- Curly brackets ( { and } ) may be used around the entire Identifier only
to force the Identifier into Prefix. This is most useful when leading zeros would otherwise be lost in the numeric portion of the Identifier. - 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
- Any errors or ambiguities result in the entire input being recorded as Prefix
Examples:
| 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 | 1123451 | Number explicitly defined. |
| 1-abc-2 | 1-abc-2 | NULL | NULL | 1-abc-2 | Value not numeric. |
| [1]-abc-2 | NULL | 1 | -abc-2 | 1-abc-2 | Number explicitly defined. |
| v-00001 | v- | 1 | NULL | v-1 | Leading zeros are not stored with NUMBERs. |
| {v-00001} | v-00001 | NULL | NULL | v-00001 | {} force to prefix |
| [1]-abc-2 | NULL | 1 | -abc-2 | 1-abc-2 | Number explicitly defined. |
Top
Searching by Other ID: Most searches by Other ID match text strings (or substrings) to the concatenated value of Other ID (Prefix + Other ID Number + Suffix). To search by the integer part (Other ID Number) of an Other ID:
- Click Customize on the Identifiers pane.
- Change “Show 3-part ID Search” to “yes” and click “Close.”
- In the Number box, enter a range of values, e.g., “50000-50110.”
- The submitted SQL is
...AND customIdentifier.other_id_type = 'ALAAC' AND customIdentifier.other_id_number between 50000 and 50110
Note that this relies on having other IDs entered as a 3-part number. Many Other IDs have been entered entirely in Prefix. Note also that you may specify Prefix and/or Suffix in the 3-part search boxes to produce SQL like:
...AND customIdentifier.other_id_type = 'ALAAC' AND upper(customIdentifier.other_id_prefix) LIKE '%I TYPED THIS IN THE PREFIX BOX%' AND customIdentifier.other_id_number between 50000 and 50110
Under individual specimen records, Other Identifiers are a three-part field:
- Prefix (text)
- Number (integer)
- Suffix (text)
All search features rely on a (stored) concatenation of these fields, called Display_Value.
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.
Examples:
| 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 |
See also Searching Arctos


