Skip to content

Group the eight flagellar arrangement values under their axis, keeping flagellated as a parent - #625

Merged
turbomam merged 3 commits into
mainfrom
fix/616-flagellar-arrangement-two-parents
Sep 3, 2026
Merged

Group the eight flagellar arrangement values under their axis, keeping flagellated as a parent#625
turbomam merged 3 commits into
mainfrom
fix/616-flagellar-arrangement-two-parents

Conversation

@turbomam

@turbomam turbomam commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

Why

Closes #616. METPO:1007005 flagellar arrangement was adopted to group the flagellation-pattern values, but seven of the eight stayed under METPO:1000704 flagellated and only polytrichous flagellation sat under the axis. The axis had one child and the values were split across two parents, so anything enumerating the arrangement axis had to look in two places.

What changed

Column 4 of src/templates/metpo_sheet.tsv on eight rows: METPO:1005031 to 1005037 gain flagellar arrangement; METPO:1007006 polytrichous flagellation gains flagellated. Each of the eight now reads flagellar arrangement|flagellated.

Two parents rather than one, so that peritrichous flagellation still entails flagellated, motile and motility, as it does today and as all seven definitions state ("A motility phenotype in which..."). Moving them under the axis alone would have silently dropped that entailment. METPO already asserts two parents on nine rows in the numeric-limits family (e.g. temperature optimum), and OMP models this axis the same way (OMP:0000078 flagellum arrangement phenotype with peritrichous, lophotrichous, monotrichous, amphitrichous as children).

Validation

Built with the repo's own component rule from metpo.Makefile (stubs, metpo_sheet, metpo-properties and deprecated templates together), ROBOT 1.9.10, on this branch and on main.

robot diff --left main.owl --right branch.owl
+ SubClassOf(METPO:1005031 METPO:1007005)
+ SubClassOf(METPO:1005032 METPO:1007005)
+ SubClassOf(METPO:1005033 METPO:1007005)
+ SubClassOf(METPO:1005034 METPO:1007005)
+ SubClassOf(METPO:1005035 METPO:1007005)
+ SubClassOf(METPO:1005036 METPO:1007005)
+ SubClassOf(METPO:1005037 METPO:1007005)
+ SubClassOf(METPO:1007006 METPO:1000704)

8 added, 0 removed. robot reason --reasoner ELK succeeds on both.

Documentation impact

None. Definitions are unchanged and remain true under the new placement.

Scope and complexity

One file, eight cells in one column.

🤖 Generated with Claude Code

https://claude.ai/code/session_01FcR9NMbL1o3svKyBqsNKpA

…g flagellated as a parent

METPO:1007005 flagellar arrangement was adopted as the grouping class for the
flagellation-pattern values, but seven of the eight values stayed under
METPO:1000704 flagellated and only polytrichous sat under the axis. The axis
was near-empty and the values were split across two parents.

Each of the eight now has both parents: flagellar arrangement, so the axis
groups its values, and flagellated, so peritrichous still entails flagellated,
motile and motility as it does today and as its definition ("A motility
phenotype in which...") says. METPO already asserts two parents on nine rows
in the numeric-limits family; OMP models the same axis the same way
(OMP:0000078 flagellum arrangement phenotype).

Verified with the repo's own template rule (stubs + metpo_sheet + properties +
deprecated, ROBOT 1.9.10): robot diff against main shows exactly 8 axioms
added and 0 removed; both builds are consistent under ELK.

Closes #616

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FcR9NMbL1o3svKyBqsNKpA
Copilot AI lite review requested due to automatic review settings September 3, 2026 18:45

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The change is narrowly scoped to parent-field updates in the template TSV and aligns the hierarchy with the stated modeling intent without introducing inconsistencies in the edited rows.

Pull request overview

This PR fixes the ontology class hierarchy for the flagellar arrangement axis by ensuring all eight flagellar arrangement values are grouped under METPO:1007005 flagellar arrangement, while preserving METPO:1000704 flagellated as a parent where needed so existing entailments (e.g., motility-related ancestry) are not lost.

Changes:

  • Re-parented METPO:1005031METPO:1005037 to have two parents: flagellar arrangement|flagellated.
  • Added flagellated as an additional parent for METPO:1007006 polytrichous flagellation so it aligns with the other arrangement values.
File summaries
File Description
src/templates/metpo_sheet.tsv Updates the parent column for eight flagellar-arrangement classes to consistently group them under the flagellar arrangement axis while keeping flagellated as a parent.
Review details
  • Files reviewed: 1/1 changed files
  • Comments generated: 0
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Same command the artifact-freshness workflow runs, in obolibrary/odkfull:v1.6.1:
make IMP=false PAT=false MIR=false TODAY=2026-06-12 prepare_release.
robot diff of metpo.owl against main: 8 axioms added, 0 removed, the eight
SubClassOf statements from the template change and nothing else.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FcR9NMbL1o3svKyBqsNKpA
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

METPO:1007005 'flagellar arrangement' was adopted but the seven arrangement classes were never moved under it

2 participants