Benthos LPI Surveys

Overview

The Line Point Intercept (LPI) protocol is used to quantify benthic community composition at Pristine Seas UVS sites. Divers swim along a fixed transect line and record the benthic taxon or category directly beneath a series of regularly spaced sampling points.

Points are recorded every 20 cm along a 50-meter transect, yielding 250 point intercepts per station, typically divided into five 10-meter sections (50 points each). In some cases, shorter transects (e.g., 30 m) are used, resulting in fewer total points.

This method yields high-resolution estimates of percent cover for key benthic groups—such as hard coral, macroalgae, crustose coralline algae (CCA), and cyanobacteria—and supports assessments of reef condition and spatial variability.


Data Architecture

The dataset employs a three-tier normalized structure linking individual observations to station-level summaries and taxonomic aggregations.

  • uvs.lpi_observations - Point intercept counts per morphotaxon, station, and section
  • uvs.lpi_stations - Metadata and summary metrics for each LPI transect station
  • uvs.lpi_cover_by_station_taxa - Percent cover summaries by taxon or functional group, per station

All tables link via ps_station_id. Taxonomy uses accepted_aphia_id as the canonical key to taxa_info.benthos; accepted_name is denormalized for convenience. Site context (region, subregion, locality, habitat, exposure) mirrors uvs.sites.

Relational Model

Primary Key Relationships:

  • All tables link via ps_station_id (composite station identifier)
  • Taxonomic joins use accepted_aphia_idtaxa_info.inverts
  • Spatial context inherits from uvs.sites via ps_site_id

Denormalization Strategy:

Site context fields (region, subregion, locality, habitat, exposure) are denormalized in summary tables to optimize query performance for common filtering operations.


Tables


Observations

This table stores raw, QAQC, point intercept data from LPI transects. Each row represents the number of points at which a given morphotaxon was recorded within a specific station and transect section.

Each record includes:

  • A diver-entered morphotaxon label (e.g., “Porites sp.”, “CCA”, “Turf”)
  • A standardized accepted_name and accepted_aphia_id (minimum taxonomic resolution)
  • A functional group classification (e.g., coral, CCA, macroalgae)

The n_points field indicates how many times the morphotaxon was recorded in the section. This format supports fine-scale spatial summaries while preserving compatibility with aggregate-level analyses.

Table 1: uvs.lpi_observations Table Schema
Field Type Required Description
ps_station_id STRING true Station identifier (FK → uvs.lpi_stations)
exp_id STRING true Expedition identifier. Format: {ISO3}_{YEAR}
diver STRING true Observer name
depth_m FLOAT true Recorded depth (m)
transect STRING true Transect label (A, B, OFF)
transect_length_m INTEGER true Transect length (m). Standard = 50
transect_section STRING true Transect section (0-10, 10-20, 20-30, 30-40, 40-50)
morphotaxon STRING true Consolidated field identification name
accepted_name STRING true Valid scientific name
accepted_aphia_id INTEGER false WoRMS AphiaID (FK → taxa_info.inverts)
rank STRING false Taxonomic rank: species, genus, or family
family STRING false Family name
functional_group STRING true Functional group classification (e.g., coral, CCA, turf, macroalgae)
count FLOAT true Number of points at which the morphotaxon was recorded
notes STRING false Optional comments or QA annotations

Stations

Each row in this table represents a single depth-stratified LPI survey at a UVS site. Fields include spatial and habitat metadata, survey effort (e.g., transect length, number of sections, total points), and benthic summary metrics such as percent cover of hard coral, CCA, and cyanobacteria.

Table 2: uvs.lpi_stations Table Schema
Field Type Required Description
ps_station_id STRING true Unique station identifier. Format: {ps_site_id}_{depth}
ps_site_id STRING true Site identifier (FK → uvs.sites)
exp_id STRING true Expedition identifier. Format: {ISO3}_{YEAR}
region STRING true Geographic region (from uvs.sites)
subregion STRING true Geographic subregion (from uvs.sites)
locality STRING false Specific locality (from uvs.sites)
habitat STRING true Habitat classification (from uvs.sites)
exposure STRING true Wave exposure category (from uvs.sites)
depth_strata STRING true Depth category: supershallow, shallow, or deep
depth_m FLOAT true Mean recorded depth (m)
divers STRING true Pipe-delimited list of observer names
n_transects FLOAT true Number of transects completed
survey_dist_m FLOAT true Total distance surveyed (m)
n_points INTEGER true Total number of points sampled
n_taxa INTEGER false Total unique morphotaxa observed
pct_coral FLOAT false Percentage of points classified as hard coral (Scleractinia)
pct_cca FLOAT false Percentage of points classified as crustose coralline algae (CCA)
pct_cyano FLOAT false Percentage of points classified as cyanobacteria
pct_algae_encrust FLOAT false Percentage of points classified as encrusting algae
pct_algae_erect FLOAT false Percentage of points classified as erect algae
pct_turf FLOAT false Percentage of points classified as turf
pct_rubble FLOAT false Percentage of points classified as sediment, rubble, or barren
pct_soft_coral FLOAT false Percentage of points classified as soft coral
pct_sponges FLOAT false Percentage of points classified as sponges
pct_eam FLOAT false Percentage of points classified as Endolithic Algae Matrix
pct_seagrass FLOAT false Percentage of points classified as seagrass
pct_kelp FLOAT false Percentage of points classified as kelp
pct_other FLOAT false Percentage of points classified as other (e.g., tunicates)
notes STRING false Field notes or QA comments

Cover by Station & Taxa

This table contains station-level summaries of benthic percent cover by morphotaxa. Each row represents a unique combination of ps_station_id and benthic taxon, with cover calculated as the proportion of total points assigned to that taxon.

Taxonomic identity is standardized via accepted_name and accepted_aphia_id. Functional group assignments support grouped summaries such as total coral, algae, or CCA cover, and are consistent with those used across reef condition assessments and visualizations.

Table 3: Schema for uvs.lpi_cover_by_taxa: percent cover by taxon at each LPI station
Field Type Required Description
ps_station_id STRING true Station identifier (FK → uvs.lpi_stations)
ps_site_id STRING true Site identifier (FK → uvs.sites)
exp_id STRING true Expedition identifier. Format: {ISO3}_{YEAR}
region STRING true Geographic region (from uvs.sites)
subregion STRING true Geographic subregion (from uvs.sites)
habitat STRING true Habitat classification (from uvs.sites)
exposure STRING true Wave exposure category (from uvs.sites)
depth_strata STRING true Depth category: supershallow, shallow, or deep
depth_m FLOAT true Mean recorded depth (m)
divers STRING true Pipe-delimited list of observer names
n_transects FLOAT true Number of transects completed
survey_dist_m FLOAT true Total distance surveyed (m)
morphotaxon STRING true Consolidated field identification name
accepted_name STRING true Valid scientific name
accepted_aphia_id INTEGER false WoRMS AphiaID (FK → taxa_info.inverts)
rank STRING false Taxonomic rank: species, genus, or family
family STRING false Family name
functional_group STRING true Functional group classification (e.g., coral, CCA, turf, macroalgae)
total_count FLOAT true Number of points at which the morphotaxon was recorded
pct_cover FLOAT true Percent cover across the entire transect
pct_cover_sd FLOAT false Standard deviation of percent cover across transect sections