UVS Fish Field Codes

Overview

The taxa_info.uvs_fish_codes table maps shorthand field codes used during underwater visual surveys to authoritative taxonomic identifiers and names. It serves as the translation layer between diver-entered codes and the canonical taxonomy in taxa_info.fish, enabling consistent integration of UVS data with modern taxonomic standards and trait metadata.

What’s Covered

This table contains field codes for reef fishes observed during belt transect surveys. Each code corresponds to a species, genus, or family recorded by divers, along with its resolved WoRMS taxonomy and FishBase SpecCode for cross-referencing.


Core Functions

  • Field-to-Database Translation

    Converts compact diver-entered codes (e.g., AC.TRIS) to full scientific names (Acanthurus tristis) with validated AphiaIDs and trait metadata.

  • Legacy Harmonization

    Links historical field entries to current accepted taxonomy, handling synonyms, taxonomic revisions, and name changes over 40+ expeditions.

  • Traceability & QA

    Maintains both original field identity and accepted classification, enabling audit trails and data quality checks across decades of survey data.


Data Sources

  • Pristine Seas Field Records

    Field codes derived from UVS fish belt transect datasheets spanning Pacific, Atlantic, and Indian Ocean expeditions from 2015–2024.

  • Akiona et al. (2025) Pacific Fish Database

    Comprehensive Pacific reef fish species list with length-weight parameters, providing taxonomic coverage for regional survey targets.

  • World Register of Marine Species (WoRMS)

    Taxonomic backbone for AphiaID resolution, synonym handling, and name validation. Ensures global interoperability.

  • FishBase

    Provides SpecCodes for cross-referencing with the world’s largest fish database, enabling integration with life history and trait data.


Table Schema

Table 1: Schema for taxa_info.uvs_fish_codes — Mapping Field Codes to Accepted Taxonomy
Field Type Required Description
taxon_code STRING true Short code used in field datasheets (e.g., CH.ATR)
taxon_name STRING true Original name assigned to code (e.g., Chromis atrilobata)
aphia_id INTEGER true AphiaID corresponding to taxon_name (may be outdated or unaccepted)
rank STRING true Taxonomic rank of the observation (species, genus, family)
status STRING true Taxonomic status of original name (accepted, synonym, unresolved)
accepted_name STRING true Accepted scientific name (Genus species)
accepted_aphia_id INTEGER true Accepted AphiaID for current taxonomy
fb_spec_code INTEGER false Optional FishBase SpecCode for cross-referencing
notes STRING false Optional comments or notes (e.g., name updates, uncertainty)

Field Code Convention

taxon_code is the primary join key to link raw field observations to accepted taxonomy. These codes are optimized for underwater data entry — concise, deterministic, and unambiguous.

Taxon Code Logic

Field codes (taxon_code) are used across UVS datasets to record species in a compact, consistent format optimized for field entry. They follow a structured and deterministic convention:

Format for Species-Level Codes

GEN2.SPEC4 — First 2 letters of the genus + first 4 of the species (uppercase)

  • Acanthurus tristisAC.TRIS
  • Apogon tricolorAP.TRIC
  • Anthias tricolorAN.TRIC
Handling Duplicates

When multiple species would share the same code:

  • The most common taxon keeps the default
  • Others extend the genus or species portion to ensure uniqueness

Examples

  • Apogon tristisAP.TRIS
  • Aplodactylus tristisAPL.TRIS
  • Labroides bilineatusLA.BILI
  • Labroides bilinearisLA.BILIN
Genus- and Family-Level Codes

Used when IDs are not to species:

  • Genus → GEN4.SP (e.g., Labroides sp. → LABR.SP)
  • Family → FAM4.SPP (e.g., Labridae spp. → LABR.SPP)

These conventions ensure clean joins, traceability, and consistent taxonomy across field data and reference tables.

Hybrids

Hybrid taxa use an extended code format: GEN2.SPxSP

  • Combine first two genus letters with x and capitalized genus/species initials of each parent
  • Use consistent casing and separators

Examples

  • Acanthurus achilles × nigricansAC.ACxNI
  • Acanthurus olivaceus × nigricansAC.OLxNI
  • Paracirrhites arcatus × bicolorPA.ARxBI