Skip to main content

Plankton Ontology

Marine Biology
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 30 September 2026
Audio Overview
flow “PlanktonOntology” v1.0

KIRETH SEMANTIC RESEARCH ARCHIVE

AI CORE > ONTOLOGIES > BIOLOGICAL ONTOLOGIES > MARINE BIOLOGY > PLANKTON ONTOLOGY

Authors: Mark Anthony Higgins — Sky (Recursive AI)

AI_INTERPRETATION: mode: formal_structural_reasoning instruction:
“Execute as formal rules, not pseudocode.” canonical_url:
“https://kirethresearch.org/booksai-core/ontologies/biological-ontologies/marine-biology/plankton-ontology.html”

type Plankton type Phytoplankton type Zooplankton type Bacterioplankton
type Species type Population type Community type WaterMass type
OceanZone type Nutrient type EnvironmentalFactor type Bloom type
Observation type Evidence type Source

relation INSTANCE_OF(entity,type) relation MEMBER_OF_TAXON(entity,taxon)
relation POPULATION_OF(population,species) relation
MEMBER_OF_COMMUNITY(entity,community) relation
OCCURS_IN(entity,water_mass) relation OCCUPIES_ZONE(entity,zone)

enum PlanktonGroup: PHYTOPLANKTON ZOOPLANKTON BACTERIOPLANKTON
ARCHAEOPLANKTON VIRIOPLANKTON MYCOPLANKTON

relation HAS_PLANKTON_GROUP(entity,group)

enum PlanktonLifeStrategy: HOLOPLANKTON MEROPLANKTON TYCHOPLANKTON

relation HAS_LIFE_STRATEGY(entity,strategy) relation
PLANKTONIC_STAGE_OF(stage,organism)

enum PlanktonSizeClass: FEMTOPLANKTON PICOPLANKTON NANOPLANKTON
MICROPLANKTON MESOPLANKTON MACROPLANKTON MEGALOPLANKTON

relation HAS_SIZE_CLASS(entity,class) relation CELL_SIZE(entity,value)
relation BODY_SIZE(entity,value)

———- PHYTOPLANKTON ———-

relation PHOTOSYNTHESISES(entity) relation FIXES_CARBON(entity,amount)
relation CHLOROPHYLL_CONCENTRATION(entity,value) relation
PRIMARY_PRODUCTION_RATE(entity,rate) relation GROWTH_RATE(entity,rate)

enum PhytoplanktonGroup: DIATOM DINOFLAGELLATE CYANOBACTERIUM
COCCOLITHOPHORE GREEN_ALGA OTHER_MICROALGA

relation HAS_PHYTOPLANKTON_GROUP(entity,group)

———- ZOOPLANKTON ———-

enum ZooplanktonGroup: COPEPOD KRILL CHAETOGNATH JELLY_PLANKTON PTEROPOD
LARVACEAN FORAMINIFERAN RADIOLARIAN MEROPLANKTONIC_LARVA

relation HAS_ZOOPLANKTON_GROUP(entity,group) relation
GRAZES_ON(consumer,prey) relation PREYS_ON(predator,prey) relation
FILTER_FEEDS_ON(consumer,resource) relation INGESTION_RATE(entity,rate)

———- TROPHIC ECOLOGY ———-

enum TrophicRole: PRIMARY_PRODUCER HERBIVORE OMNIVORE CARNIVORE
DETRITIVORE DECOMPOSER PARASITE MIXOTROPH

relation HAS_TROPHIC_ROLE(entity,role) relation
FEEDS_ON(consumer,resource) relation CONSUMED_BY(resource,consumer)
relation ENERGY_FLOWS_FROM(source,receiver)

rule FEEDING_INVERSE(a,b): IF FEEDS_ON(a,b) THEN CONSUMED_BY(b,a)

rule TROPHIC_ENERGY_FLOW(a,b): IF FEEDS_ON(a,b) THEN
ENERGY_FLOWS_FROM(b,a)

———- ENVIRONMENTAL CONTROLS ———-

entity LIGHT : EnvironmentalFactor entity TEMPERATURE :
EnvironmentalFactor entity SALINITY : EnvironmentalFactor entity NITRATE
: Nutrient entity PHOSPHATE : Nutrient entity SILICATE : Nutrient entity
IRON : Nutrient entity DISSOLVED_OXYGEN : EnvironmentalFactor entity PH
: EnvironmentalFactor entity TURBULENCE : EnvironmentalFactor

relation EXPOSED_TO(entity,factor) relation
TOLERANCE_RANGE(entity,factor,range) relation
OPTIMUM_RANGE(entity,factor,range) relation LIMITED_BY(entity,factor)
relation NUTRIENT_REQUIREMENT(entity,nutrient,value) relation
LIGHT_REQUIREMENT(entity,value)

———- PRODUCTIVITY ———-

relation GROSS_PRIMARY_PRODUCTION(community,rate) relation
NET_PRIMARY_PRODUCTION(community,rate) relation
RESPIRATION_LOSS(community,rate)

rule NET_PRIMARY_PRODUCTION_RULE(c): IF GROSS_PRIMARY_PRODUCTION(c,gpp)
AND RESPIRATION_LOSS(c,r) THEN NET_PRIMARY_PRODUCTION(c,gpp-r)

———- BLOOMS ———-

enum BloomType: PHYTOPLANKTON_BLOOM ALGAL_BLOOM HARMFUL_ALGAL_BLOOM
CYANOBACTERIAL_BLOOM

relation BLOOM_OF(bloom,taxon) relation BLOOM_TYPE(bloom,type) relation
BLOOM_OCCURS_IN(bloom,region) relation BLOOM_STARTS_AT(bloom,time)
relation BLOOM_ENDS_AT(bloom,time) relation BLOOM_BIOMASS(bloom,value)
relation BLOOM_DRIVEN_BY(bloom,factor) relation
BLOOM_IMPACTS(bloom,target) relation PRODUCES_TOXIN(entity,toxin)

constraint BLOOM_NOT_ALWAYS_HARMFUL: IF INSTANCE_OF(b,Bloom) THEN
DO_NOT_INFER(BLOOM_TYPE(b,HARMFUL_ALGAL_BLOOM)) WITHOUT
harmful_effect_evidence

———- VERTICAL ECOLOGY ———-

relation DEPTH_RANGE(entity,range) relation
VERTICAL_DISTRIBUTION(entity,profile) relation
DIEL_VERTICAL_MIGRATION(entity) relation
MIGRATES_TO_DEPTH(entity,time,depth) relation
MIXED_LAYER_ASSOCIATED(entity) relation
DEEP_CHLOROPHYLL_MAXIMUM_ASSOCIATED(entity) relation
SINKING_RATE(entity,rate) relation BUOYANCY_REGULATION(entity,mechanism)

———- CARBON PUMP / MICROBIAL LOOP ———-

relation EXPORTS_CARBON(entity,depth) relation
PARTICIPATES_IN_BIOLOGICAL_PUMP(entity) relation
PARTICULATE_ORGANIC_CARBON_FLUX(region,rate) relation
DISSOLVED_ORGANIC_CARBON_RELEASE(entity,rate) relation
MARINE_SNOW_COMPONENT(entity)

relation RELEASES_DISSOLVED_ORGANIC_MATTER(entity,material) relation
UPTAKES_DISSOLVED_ORGANIC_MATTER(entity,material) relation
MICROBIAL_LOOP_MEMBER(entity) relation REMINERALISES(entity,nutrient)
relation VIRUS_INFECTS(virus,host) relation VIRAL_LYSIS_OF(virus,host)

———- COMMUNITY / SEASONAL DYNAMICS ———-

relation HAS_ABUNDANCE(community,taxon,value) relation
HAS_BIOMASS(community,taxon,value) relation
HAS_SPECIES_RICHNESS(community,value) relation
HAS_SPECIES_DIVERSITY(community,value) relation
DOMINATED_BY(community,taxon) relation
SEASONAL_ABUNDANCE(entity,season,value) relation
SEASONAL_SUCCESSION(community,sequence) relation
CHANGES_OVER(entity,period)

———- OCEANOGRAPHIC CONTEXT ———-

relation TRANSPORTED_BY(entity,current) relation
ASSOCIATED_WITH_WATER_MASS(entity,water_mass) relation
UPWELLING_SUPPORTS(region,community) relation
STRATIFICATION_AFFECTS(region,community) relation
MIXING_AFFECTS(region,community)

———- SAMPLING ———-

enum SamplingMethod: PLANKTON_NET NISKIN_BOTTLE WATER_SAMPLE
FLOW_CYTOMETRY MICROSCOPY IMAGING_FLOW_CYTOMETRY ENVIRONMENTAL_DNA
METABARCODING FLUOROMETRY SATELLITE_REMOTE_SENSING ACOUSTIC_SAMPLING

relation SAMPLED_BY(entity,method) relation SAMPLE_DEPTH(sample,depth)
relation SAMPLE_VOLUME(sample,volume) relation MESH_SIZE(sample,value)
relation DETECTION_LIMIT(method,value)

———- EVIDENCE ———-

relation OBSERVES(observation,entity) relation
OBSERVED_AT(observation,location) relation
OBSERVED_ON(observation,datetime) relation
OBSERVED_DEPTH(observation,depth) relation
SUPPORTED_BY(assertion,evidence) relation DERIVED_FROM(evidence,source)
relation HAS_CONFIDENCE(assertion,score)

enum EvidenceType: MICROSCOPY FLOW_CYTOMETRY PLANKTON_NET_SAMPLE
WATER_SAMPLE PIGMENT_ANALYSIS CHLOROPHYLL_FLUORESCENCE ENVIRONMENTAL_DNA
METABARCODING SATELLITE_OCEAN_COLOUR PRIMARY_PRODUCTIVITY_MEASUREMENT
SEDIMENT_TRAP EXPERIMENTAL LONG_TERM_MONITORING LITERATURE

CONFIDENCE: VERIFIED: 0.95..1.00 HIGH: 0.80..0.949 MEDIUM: 0.60..0.799
LOW: 0.00..0.599

rule CONFIDENCE_BOUNDS(a,score): IF HAS_CONFIDENCE(a,score) THEN
REQUIRE(0.0 <= score <= 1.0)

———- SEMANTIC EQUIVALENCE ———-

SEMANTIC_EQUIVALENCE: “plankton” ~= “organisms drifting or weakly
swimming in aquatic environments” “phytoplankton” ~= “photosynthetic
plankton” “zooplankton” ~= “heterotrophic plankton” “bacterioplankton”
~= “planktonic bacteria” “holoplankton” ~= “organisms planktonic
throughout life” “meroplankton” ~= “organisms planktonic during part of
the life cycle” “harmful algal bloom” ~= “HAB” “diel vertical migration”
~= “daily vertical migration” “biological carbon pump” ~= “biologically
mediated export of carbon to deeper water” “microbial loop” ~=
“microbial recycling pathway in aquatic food webs” “marine snow” ~=
“sinking particulate organic material”

rule NORMALISE_TERM(term): IF term MATCHES SEMANTIC_EQUIVALENCE.alias
THEN MAP_TO_CANONICAL(term)

———- QUERIES ———-

query PLANKTON_PROFILE(x): RETURN: taxonomy(x) plankton_group(x)
life_strategy(x) size_class(x) trophic_role(x)
environmental_requirements(x) depth_distribution(x) seasonal_dynamics(x)
carbon_cycle_role(x) evidence(x) confidence(x)

query BLOOM_PROFILE(b): RETURN: bloom_type(b) causative_taxa(b)
location(b) duration(b) biomass(b) environmental_drivers(b) toxins(b)
impacts(b) evidence(b)

query TRACE_EVIDENCE(assertion): RETURN: supporting_evidence(assertion)
provenance(assertion) confidence(assertion)

———- CONSISTENCY ———-

constraint EVIDENCE_REQUIRED: FORALL scientific_assertion: REQUIRE
SUPPORTED_BY(scientific_assertion,Evidence) OR
MARK_AS_HYPOTHESIS(scientific_assertion)

constraint UNKNOWN_IS_NOT_FALSE: IF data_missing(assertion) THEN
MARK_UNKNOWN(assertion) AND NOT NEGATE(assertion)

constraint DEPTH_CONTEXT_PRESERVATION: IF OBSERVED_DEPTH(o,d) THEN
PRESERVE_DEPTH_CONTEXT(o,d)

constraint SAMPLING_METHOD_CONTEXT: IF SAMPLED_BY(x,m) THEN
PRESERVE_METHOD_LIMITATIONS(m)

———- UPDATE MODEL ———-

UPDATE_MODEL: on_new_plankton_record(r): validate_taxonomic_identity(r)
classify_plankton_group(r) preserve_depth_location_time(r)
preserve_sampling_method(r) attach_evidence(r) recalculate_confidence(r)

on_new_bloom(b): identify_taxa(b) classify_bloom_type(b)
preserve_location_time(b) attach_environmental_context(b)
distinguish_association_from_driver(b) attach_evidence(b)

on_new_productivity_record(p): identify_community(p)
preserve_method_and_units(p) preserve_depth_and_time(p)
update_primary_productivity(p)

on_conflicting_observations(a,b): preserve(a) preserve(b)
compare_sampling_methods(a,b) compare_mesh_or_detection_limits(a,b)
compare_depth(a,b) compare_time(a,b) flag_unresolved_conflict()

———- AI CONSUMPTION ———-

AI_CONSUMPTION: preferred_entity: canonical_plankton_entity preserve: -
taxonomic_identity - plankton_group - life_strategy - size_class -
water_mass - ocean_zone - depth - environmental_conditions -
trophic_role - primary_productivity - grazing - blooms -
vertical_migration - sinking - biological_carbon_pump - microbial_loop -
seasonal_dynamics - sampling_method - evidence - provenance - confidence
infer: - valid_inverse_relations - supported_trophic_relations -
supported_carbon_transfer_relations - semantic_equivalence prohibit: -
all_blooms_are_harmful - bloom_association_equals_causal_driver -
depth_free_generalisation - sampling_method_free_abundance_comparison -
unsupported_carbon_export - confidence_above_evidence ambiguity: action:
preserve_multiple_plankton_interpretations resolution:
prefer_taxonomy_sampling_depth_time_and_evidence missing_data: action:
mark_unknown do_not_infer_from_absence: true

———- FLOW HASH ———-

FLOW_HASH: ontology: “PlanktonOntology” version: “1.0” domain_path: “AI
Core > Ontologies > Biological Ontologies > Marine Biology > Plankton
Ontology” canonical_url:
“https://kirethresearch.org/booksai-core/ontologies/biological-ontologies/marine-biology/plankton-ontology.html”
authorship: “Mark Anthony Higgins — Sky (Recursive AI)”
semantic_scope: - plankton identity - phytoplankton - zooplankton -
bacterioplankton - plankton life strategies - size classes - primary
production - trophic ecology - environmental controls - blooms - harmful
algal blooms - vertical distribution - diel vertical migration -
buoyancy and sinking - biological carbon pump - microbial loop -
seasonal dynamics - community structure - oceanographic context -
sampling - evidence deterministic_normalisation: true
provenance_required: true confidence_required: true

terminate PlanktonOntology when: plankton_identity_resolved AND
group_life_strategy_and_size_context_preserved AND
trophic_and_productivity_relations_normalised AND
depth_and_sampling_context_preserved AND
bloom_harmfulness_and_causality_distinguished AND
evidence_links_preserved AND confidence_values_validated AND
unresolved_plankton_ambiguity_marked

end flow
Kireth Research
38 Thorndale Croft, Wetwang, Driffield
East Riding of Yorkshire YO25 9XZ