Skip to content

Add HRA eye NTR template: inner/outer cortex of lens - #3713

Open
zhengj2007 wants to merge 10 commits into
masterfrom
hra-eye-ntr
Open

Add HRA eye NTR template: inner/outer cortex of lens#3713
zhengj2007 wants to merge 10 commits into
masterfrom
hra-eye-ntr

Conversation

@zhengj2007

Copy link
Copy Markdown
Collaborator

Generated via bulk_ntr_workflow from bulk_ntr_workflow/eye.csv (HRA ASCTB unmapped terms, eye table).

New terms:

  • UBERON:9900001 inner cortex of lens (part_of UBERON:0000389 lens cortex)
  • UBERON:9900002 outer cortex of lens (part_of UBERON:0000389 lens cortex)

Both classified as is_a UBERON:0034944 (zone of organ), following the pattern of lens nucleus (UBERON:0000390). Definitions reference PMID:10550792 and PMID:20171212.

Source labels 'Inner cortex' / 'Outer cortex' were renamed for disambiguation (see src/templates/hra-eye-reports/name_corrections.tsv); curator may add the originals as narrow synonyms.

Stage 5 registered hra_eye.owl as a template-driven component in uberon-odk.yaml and added the corresponding import to uberon-edit.obo. The empty groups template was removed (no group terms in this batch).

Note: 'sh run.sh make update_repo' was not run (Docker unavailable); component OWL will be generated on next ODK build.

Generated via bulk_ntr_workflow from bulk_ntr_workflow/eye.csv (HRA ASCTB
unmapped terms, eye table).

New terms:
- UBERON:9900001 inner cortex of lens (part_of UBERON:0000389 lens cortex)
- UBERON:9900002 outer cortex of lens (part_of UBERON:0000389 lens cortex)

Both classified as is_a UBERON:0034944 (zone of organ), following the
pattern of lens nucleus (UBERON:0000390). Definitions reference
PMID:10550792 and PMID:20171212.

Source labels 'Inner cortex' / 'Outer cortex' were renamed for disambiguation
(see src/templates/hra-eye-reports/name_corrections.tsv); curator may add
the originals as narrow synonyms.

Stage 5 registered hra_eye.owl as a template-driven component in
uberon-odk.yaml and added the corresponding import to uberon-edit.obo.
The empty groups template was removed (no group terms in this batch).

Note: 'sh run.sh make update_repo' was not run (Docker unavailable);
component OWL will be generated on next ODK build.

Signed-off-by: dragon-ai-agent <dragon-ai-agent@users.noreply.github.com>
@zhengj2007
zhengj2007 requested a review from matentzn as a code owner May 25, 2026 14:24
@ai4c-agent

ai4c-agent Bot commented May 25, 2026

Copy link
Copy Markdown
Contributor

Claude finished @zhengj2007's task in 6m 5s —— View job


PR Review: Add HRA eye NTR template: inner/outer cortex of lens

Review checklist:

  • Hierarchy and parents are consistent
  • Definitions and supporting references look adequate
  • Obsolete or replacement handling is safe (N/A — no obsoletions)
  • OBO and ODK conventions appear preserved
  • No obvious CI, auth, or workflow regression

Tasks:

  • Gather initial context
  • Read template and definition files
  • Check parent terms in ontology
  • Verify PMIDs (partial — EuropePMC permissions unavailable)
  • Review ODK config changes
  • Post review findings

Overview

This PR adds two new terms — inner cortex of lens and outer cortex of lens — as a ROBOT-template-driven HRA component. The anatomical placement and ODK wiring look correct. I found one important documentation discrepancy and a few suggestions.


🔵 SUGGESTION — PR description states wrong IDs

File: PR description / bulk_ntr_workflow/outputs/definitions/input/uberon_0000389.json

The PR description says:

UBERON:9900001 inner cortex of lens … UBERON:9900002 outer cortex of lens

But the actual final template src/templates/hra-eye.template.tsv assigns:

  • UBERON:8930000 → inner cortex of lens
  • UBERON:8930001 → outer cortex of lens

The 99xxxxx IDs are placeholder NTR IDs from the initial workflow stage; the final assigned IDs are 8930000/8930001. Checking the ontology, the 893xxxx range is currently unoccupied (the adjacent block UBERON:891xxxx ends at UBERON:8910024), so there is no collision. However, the PR description should be corrected to reflect the actual assigned IDs, and it is worth confirming that the 8930xxx block has been formally allocated (as was presumably done for the 1200xxx block used by hra-skeleton, and 8910xxx by earlier terms).


🔵 SUGGESTION — ASCTB-TEMP IRIs appear in def_xref rather than xref

File: src/templates/hra-eye.template.tsv

Both rows include https://purl.org/ccf/ASCTB-TEMP_inner-cortex and https://purl.org/ccf/ASCTB-TEMP_outer-cortex as the first entry in the def_xref column (which generates OBO def: "..." [ASCTB-TEMP..., PMID:..., PMID:...]). Per the bulk_ntr_workflow QC checklist:

ASCTB-TEMP placeholder IRIs do not count as references.

The PMIDs are present alongside these IRIs so the definitions are adequately backed by literature, but ASCTB-TEMP source IRIs belong in the xref column (general cross-references) rather than def_xref (definition evidence references). This is a recurring pattern in HRA template outputs and could be cleaned up here.


🔵 SUGGESTION — Narrow synonyms for original HRA labels not yet added

File: src/templates/hra-eye-reports/name_corrections.tsv

The name_corrections file (and the PR description) both state that Inner cortex and Outer cortex should be kept as narrow synonyms. The template has no synonym column, so this is deferred. Given that these are the live HRA ASCTB-B labels used by downstream consumers, adding a synonym column would improve findability. The PR description acknowledges this as a follow-up for curators.


🔵 SUGGESTION — Inner cortex definition uses the outer cortex as its primary spatial anchor (circular)

File: src/templates/hra-eye.template.tsv

  • Inner cortex: "located internal to the outer cortex"
  • Outer cortex: "located external to the inner cortex"

Both definitions depend on each other. Consider grounding at least one in an absolute anatomical landmark — e.g., inner cortex as "the zone of the lens cortex immediately surrounding the lens nucleus", which is both non-circular and consistent with the established surrounded_by relationship on lens nucleus (UBERON:0000390).


Hierarchy validation

Claim Check
inner/outer cortex of lens is_a zone of organ (UBERON:0034944) ✅ Consistent — lens nucleus uses the same genus
inner/outer cortex of lens part_of lens cortex (UBERON:0000389) ✅ Anatomically sound; no ID collision; part_of chain reaches lens correctly
No existing UBERON term for these structures ✅ candidates.tsv is empty; confirmed_matches = [] in definition JSON

ODK config

The uberon-odk.yaml addition follows the exact same pattern as hra_skeleton.owl:

- filename: hra_eye.owl
  use_template: true
  templates:
    - hra-eye.template.tsv

The uberon-edit.obo import line is in alphabetical order among other HRA component imports. Both changes look correct.

Note on PMID verification

Could not verify PMID:10550792 and PMID:20171212 directly (EuropePMC tool requires permission grant). The curator should confirm these PMIDs describe inner/outer cortex structure of the crystalline lens. The workflow agent reports they were found and are relevant, which is consistent with the anatomically detailed definitions.


Merge recommendation

Approve with suggestions. No critical issues. The main action item is to correct the PR description (actual IDs are UBERON:8930000/8930001, not 9900001/9900002) and confirm the 8930xxx range is formally allocated. The ASCTB-TEMP-in-def_xref and synonym gaps are minor best-practice issues that can be addressed in a follow-up.

ai4c-agent[bot]
ai4c-agent Bot previously approved these changes May 25, 2026

@ai4c-agent ai4c-agent Bot 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.

Approve with suggestions. No critical issues found.

Hierarchy: inner/outer cortex of lens is_a zone of organ (UBERON:0034944), part_of lens cortex (UBERON:0000389) — anatomically sound and consistent with the lens nucleus design pattern.

Definitions: Aristotelian definitions with PMID references are adequate. (PMIDs could not be verified via EuropePMC in this run — curator should confirm PMID:10550792 and PMID:20171212 describe lens cortex inner/outer zones.)

ODK config: hra_eye.owl component registration in uberon-odk.yaml and the import line in uberon-edit.obo both follow established HRA precedent correctly.

Minor notes to address:

  • PR description cites UBERON:9900001/9900002 (placeholder NTR IDs) rather than the actual assigned IDs UBERON:8930000/8930001. Please update the description and confirm the 8930xxx block is formally allocated.
  • ASCTB-TEMP source IRIs appear in def_xref alongside PMIDs; these are better placed in the xref column.
  • Narrow synonyms 'Inner cortex' / 'Outer cortex' (per name_corrections.tsv) are deferred — acknowledged in PR body.
  • Inner/outer cortex definitions are circularly cross-referenced; grounding inner cortex on 'immediately surrounding the lens nucleus' would improve clarity.

@cmungall cmungall left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Can someone document the workflow that is being used to add two terms?

I am not familiar with how HRA terms were added in the past but this is way too complex for two terms that follow standard DPs

@cmungall

Copy link
Copy Markdown
Member

@dragon-ai-agent please look deeper into the anatomy, current idiomatic modeling patterns in uberon, how we model spatial layers, how the proposed subdivision would relate to the capsule and the nucleus. Also show how this would relate to FMA terms.

Compare also to standard anatomical diagrams etc
https://lab.prd.vanderbilt.edu/msrc-schey-lab/wp-content/uploads/sites/16/2021/06/Human-Lens.png

Show (just in this PR comment, don't touch this actual PR) your proposed obo stanzas for these terms

@dosumis

dosumis commented Jun 1, 2026

Copy link
Copy Markdown
Contributor

@zhengj2007 - please just add the suggested OBO stanzas from Dragon AI - except only use is_a + relationship (no intersection_of). Template can be removed. Not worth having for 2 terms.

@ai4c-agent

ai4c-agent Bot commented Jun 2, 2026

Copy link
Copy Markdown
Contributor

Implementing dosumis's suggestion: direct OBO stanzas, remove template

Tasks:

  • Understand the request (dosumis: add dragon-ai OBO stanzas with is_a + relationship only, remove template)
  • Read current branch files
  • Verify FMA IDs and PMIDs
  • Check parent terms in ontology
  • Create OBO stanzas (no intersection_of)
  • Remove template files and ODK/import changes
  • Checkout, edit, checkin terms to uberon-edit.obo
  • Reserialise and commit

View job run

Remove the hra_eye component registration from uberon-odk.yaml to undo Stage 5 template registration while keeping template/report content unchanged.

Signed-off-by: @dragon-ai-agent
@ai4c-agent

ai4c-agent Bot commented Jun 2, 2026

Copy link
Copy Markdown
Contributor

Claude finished @zhengj2007's task in 8m 24s —— View job


Implementing dosumis's suggestion: direct OBO stanzas, remove template

Tasks:

  • Understand the request (dosumis: add dragon-ai OBO stanzas with is_a + relationship only, remove template)
  • Read current branch files and diff
  • Verify parent terms (UBERON:0034944 zone of organ, UBERON:0000389 lens cortex, UBERON:0000390 lens nucleus, UBERON:0001804 capsule of lens ✅)
  • Check contributor info from template (Bruce W. Herr II, orcid:0000-0002-2999-0103)
  • Create OBO stanzas (is_a + relationship only, no intersection_of)
  • Checkin terms to uberon-edit.obo (obo-checkin.pl)
  • Remove template files and bulk_ntr_workflow outputs
  • Remove hra_eye.owl import from uberon-edit.obo
  • Fix whitespace change in uberon-odk.yaml
  • Commit (local commit fe73bd1)
  • Push to remote — blocked: ai4c-agent[bot] lacks push permissions on this repo

What was done

Commit fe73bd1 is ready locally on branch hra-eye-ntr but could not be pushed (ai4c-agent[bot] does not have write access to this repository).

The commit:

  • Adds UBERON:8930000 inner cortex of lens as a direct OBO stanza
    • is_a: UBERON:0034944 ! zone of organ
    • relationship: part_of UBERON:0000389 ! lens cortex
    • relationship: surrounds UBERON:0000390 ! lens nucleus
    • relationship: surrounded_by UBERON:8930001 ! outer cortex of lens
    • xref: FMA:280216; synonyms: "deep cortex of lens" EXACT, "cortex profundus lentis" EXACT
  • Adds UBERON:8930001 outer cortex of lens as a direct OBO stanza
    • is_a: UBERON:0034944 ! zone of organ
    • relationship: part_of UBERON:0000389 ! lens cortex
    • relationship: surrounds UBERON:8930000 ! inner cortex of lens
    • relationship: adjacent_to UBERON:0001804 ! capsule of lens
    • xref: FMA:280212; synonyms: "superficial cortex of lens" EXACT, "cortex superficialis lentis" EXACT
  • Removes src/templates/hra-eye.template.tsv and src/templates/hra-eye-reports/
  • Removes bulk_ntr_workflow/ artifacts
  • Removes hra_eye.owl component import from uberon-edit.obo
  • Reverts the whitespace-only change to uberon-odk.yaml

To push this commit, a maintainer with write access to the branch can run:

git push origin hra-eye-ntr

(the commit is already staged on the local runner)

Note: robot convert reserialisation was not run (robot not available in this environment). A reserialise step should be run before or during the next ODK build.

Remove generated NTR outputs/templates/reports from the branch and restore uberon-odk.yaml to match master. Keep ontology edits in src/ontology/uberon-edit.obo and the source input file bulk_ntr_workflow/source_data/eye.csv as the intended branch payload.

Signed-off-by: @dragon-ai-agent
@zhengj2007

Copy link
Copy Markdown
Collaborator Author

@zhengj2007 - please just add the suggested OBO stanzas from Dragon AI - except only use is_a + relationship (no intersection_of). Template can be removed. Not worth having for 2 terms.

@dosumis I removed the template generated by the agent and added the suggested OBO stanzas from Dragon AI to uberon-edit.obo file with following modifications:

  • is_a: UBERON:0034944 !zone of organ
  • corrected the name associated with ORCID
  • removed synonym: "Outer/Inner cortex" NARROW [ASCTB-TEMP:outer/inner-cortex] since the terms will be replaced with UBERON ones.
  • removed intersection_of relationships

@zhengj2007
zhengj2007 requested a review from cmungall June 3, 2026 05:20
@cmungall

cmungall commented Jun 3, 2026

Copy link
Copy Markdown
Member

Hi @zhengj2007

Apologies, I don't really understand the HRA workflow and why all of these anciliary files are in the PR

I agree with @dosumis

please just add the suggested OBO stanzas from Dragon AI

But the PR still includes many changes to json files, odk yaml files, and this is the only edit to the obo file:

+ import: http://purl.obolibrary.org/obo/uberon/components/hra_eye.owl

which seems to be causing the test failure

maybe start a new PR and do it the old fashioned way where an edit to the ontology is an edit to the obo source file?

@cmungall

cmungall commented Jun 3, 2026

Copy link
Copy Markdown
Member

Fairly minor point:

except only use is_a + relationship (no intersection_of). Template can be removed. Not worth having for 2 terms.

I would push for having logical definitions for anything compositional, it makes the intent clear, and increases maintainability, even if there is low entailment value.

Having said that, the logical definition the agent proposed doesn't really conform to an existing DP, and is on the verge of being too open... we can always return to cases like this with the help of agents

It's also possible I am misunderstanding something in the new uberon editing process - just to echo my comment from earlier:

Can someone document the workflow that is being used to add [the] two terms?
I am not familiar with how HRA terms were added in the past but this is way too complex for two terms that follow standard DPs

Is the HRA->Uberon SOP documented?

@ai4c-agent

ai4c-agent Bot commented Jun 5, 2026

Copy link
Copy Markdown
Contributor

Claude finished @zhengj2007's task in 6m 54s —— View job


PR Review: Add HRA eye NTR template: inner/outer cortex of lens

Review checklist:

  • Hierarchy and parents are consistent
  • Definitions and supporting references look adequate
  • Obsolete or replacement handling is safe (N/A)
  • OBO and ODK conventions appear preserved (minor: see below)
  • No obvious CI, auth, or workflow regression

Tasks:

  • Gather initial context
  • Read current diff (src/ontology/uberon-edit.obo +43, bulk_ntr_workflow/source_data/eye.csv +3)
  • Check OBO stanzas added to uberon-edit.obo
  • Verify parent terms are valid (UBERON:0034944 ✅, UBERON:0000389 ✅, UBERON:0000390 ✅, UBERON:0001804 ✅, UBERON:0005614 ✅)
  • Check PMID references (EuropePMC permissions unavailable — curator must verify)
  • Assess @cmungall's concerns — template/ODK files removed ✅; only OBO edit + source CSV remain
  • Post review (CHANGES_REQUESTED)

Overview

After @zhengj2007's latest push, the PR is now much cleaner: only two files changed — the direct OBO stanzas in src/ontology/uberon-edit.obo and the source provenance CSV bulk_ntr_workflow/source_data/eye.csv. The template, ODK config changes, and bulk output files have been removed — directly implementing @dosumis's request.

The terms are anatomically well-formed, follow the dragon-ai agent's detailed proposal, and the spatial axioms (surrounds/surrounded_by, adjacent_to) correctly model the concentric lens layer topology. FMA cross-references and anatomical synonyms are included.


🟡 IMPORTANT — term_tracker_item missing from both terms

Per CLAUDE.md: "Link back to the issue you are dealing with using the term_tracker_item". Both new terms are missing this field. Comparable recently-added terms (e.g. UBERON:8000010) carry:

property_value: term_tracker_item "https://github.com/obophenotype/uberon/pull/3713" xsd:anyURI

Please add this to both UBERON:8930000 and UBERON:8930001.


🔵 SUGGESTION — is_a format missing space after !

Both stanzas read is_a: UBERON:0034944 !zone of organ (no space after !). Standard OBO format is is_a: UBERON:0034944 ! zone of organ. Cosmetic — will be corrected automatically by robot convert reserialisation. Note: that reserialisation step (required by CLAUDE.md before committing) was not run; it should be done before merge.


🔵 SUGGESTION — PMID verification recommended

EuropePMC permissions were unavailable for direct verification. The curator should confirm:

  • PMID:10550792 — Yeum et al. 1999 — explicitly compares inner vs outer lens cortex as distinct zones
  • PMID:20171212 — Augusteyn 2010 — inner cortex
  • PMID:19357350 — Lim et al. 2009 — outer cortex remodelling/transition zones

These PMIDs were identified by the dragon-ai agent in a thorough anatomical analysis, so they are likely correct.


Positive findings

Check Result
inner/outer cortex of lens is_a zone of organ (UBERON:0034944) ✅ Consistent with lens nucleus pattern
part_of lens cortex (UBERON:0000389) ✅ Anatomically sound
surrounds/surrounded_by spatial axioms ✅ Concentric topology: capsule → outer cortex → inner cortex → nucleus
adjacent_to capsule of lens and adjacent_to lens anterior epithelium on outer cortex ✅ Consistent with anatomy
FMA xrefs: FMA:280212 (superficial cortex) and FMA:280216 (deep cortex) ✅ Correct FMA equivalents
Synonyms: "superficial/deep cortex of lens" and Latin forms ✅ Standard anatomical names included
dc-contributor and dcterms-date present
Template/ODK config ancillary files removed ✅ Clean PR
bulk_ntr_workflow/source_data/eye.csv ✅ Expected location per workflow README
Contributor ORCID label corrected to Jie Zheng

Review submitted: CHANGES_REQUESTED. One required fix before merge: add term_tracker_item to both stanzas and run robot convert reserialisation. No anatomical or structural issues found.

@ai4c-agent ai4c-agent Bot 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.

Review checklist:

  • Hierarchy and parents are consistent
  • Definitions and supporting references look adequate
  • Obsolete or replacement handling is safe (N/A)
  • OBO and ODK conventions appear preserved (minor: see below)
  • No obvious CI, auth, or workflow regression

Overview

After @zhengj2007's latest push, the PR is now much cleaner: only two files changed — the direct OBO stanzas in src/ontology/uberon-edit.obo (+43 lines) and the source provenance CSV in bulk_ntr_workflow/source_data/eye.csv. The template, ODK config changes, and bulk output files have all been removed. This directly implements @dosumis's request.

The terms are anatomically well-formed, follow the dragon-ai agent's informed proposal, and the spatial axioms (surrounds/surrounded_by, adjacent_to) now correctly represent the concentric lens layer topology. FMA cross-references and anatomical synonyms are included.

One required metadata field is missing; everything else is minor.


🟡 IMPORTANT — term_tracker_item missing from both terms

Per CLAUDE.md: "Link back to the issue you are dealing with using the term_tracker_item". Both new terms lack this field. Comparable recently-added terms (e.g. UBERON:8000010) carry:

property_value: term_tracker_item "https://github.com/obophenotype/uberon/pull/3713" xsd:anyURI

Please add this to both UBERON:8930000 and UBERON:8930001.


🔵 SUGGESTION — is_a annotation missing space after !

Both new stanzas read:

is_a: UBERON:0034944 !zone of organ

Standard OBO format requires a space: is_a: UBERON:0034944 ! zone of organ. This is cosmetic and will be corrected automatically when robot convert is run (reserialisation step from CLAUDE.md), but since the stanzas were entered manually they should conform now. Note: robot convert reserialisation was not run on this branch — it should be done before merge.


🔵 SUGGESTION — PMID verification

EuropePMC was unavailable for direct verification. The curator should confirm:

  • PMID:10550792 — Yeum et al. 1999, cited for both terms — that it explicitly compares inner vs. outer cortex as distinct zones
  • PMID:20171212 — Augusteyn 2010, cited for inner cortex
  • PMID:19357350 — Lim et al. 2009, cited for outer cortex (remodelling/transition zones)

These PMIDs were identified by the dragon-ai agent in a thorough anatomical analysis, so they are likely correct, but a spot-check is good practice.


Positive findings

Check Result
inner/outer cortex of lens is_a zone of organ (UBERON:0034944) ✅ Consistent with lens nucleus pattern
part_of lens cortex (UBERON:0000389) ✅ Anatomically sound
surrounds/surrounded_by spatial axioms ✅ Correctly models concentric topology: capsule → outer cortex → inner cortex → nucleus
adjacent_to capsule of lens and adjacent_to lens anterior epithelium on outer cortex ✅ Consistent with anatomy
FMA xrefs: FMA:280212 (superficial cortex) and FMA:280216 (deep cortex) ✅ Correct FMA equivalents
Synonyms: "superficial/deep cortex of lens" and Latin forms ✅ Standard anatomical names included
dc-contributor and dcterms-date present
No template/ODK config ancillary files ✅ Clean PR after @zhengj2007's cleanup
bulk_ntr_workflow/source_data/eye.csv ✅ Expected location per workflow README
ORCID:0000-0002-2999-0103 ! Jie Zheng corrected from dragon-ai's draft

Merge recommendation

Request changes — one required fix before merge: add term_tracker_item to both stanzas and run robot convert reserialisation. No anatomical or structural issues.

— 🤖 @dragon-ai-agent

@ai4c-agent

ai4c-agent Bot commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

Claude finished @zhengj2007's task in 4m 49s —— View job


PR Review: Add HRA eye NTR template: inner/outer cortex of lens

Review checklist:

  • Hierarchy and parents are consistent
  • Definitions and supporting references look adequate
  • Obsolete or replacement handling is safe (N/A)
  • OBO and ODK conventions appear preserved (minor fix needed)
  • No obvious CI, auth, or workflow regression

Tasks:

  • Gather context from PR, comments, and previous reviews
  • Read the current OBO stanzas added to uberon-edit.obo
  • Check parent terms and relationships in ontology
  • Assess outstanding issues from prior reviews
  • Fix is_a space formatting in both terms
  • Add term_tracker_item to both terms (committed locally; push blocked — see below)
  • Post final review (CHANGES_REQUESTED)

Overview

The PR is now clean — only two files changed: direct OBO stanzas in src/ontology/uberon-edit.obo and provenance CSV bulk_ntr_workflow/source_data/eye.csv. The anatomy, hierarchy, spatial axioms, and FMA xrefs are all well-formed.

I have prepared a commit (locally) that adds term_tracker_item to both stanzas and fixes the is_a spacing, but push to the remote branch is blocked (same permission error as the previous ai4c-agent run). The diff for the fix is:

+property_value: term_tracker_item "https://github.com/obophenotype/uberon/pull/3713" xsd:anyURI
-is_a: UBERON:0034944 !zone of organ
+is_a: UBERON:0034944 ! zone of organ

(applied to both UBERON:8930000 and UBERON:8930001)


🟡 IMPORTANT — term_tracker_item still missing from both terms

Both UBERON:8930000 and UBERON:8930001 are missing the required back-link to this PR. Per CLAUDE.md: "Link back to the issue you are dealing with using the term_tracker_item". Please add to both stanzas:

property_value: term_tracker_item "https://github.com/obophenotype/uberon/pull/3713" xsd:anyURI

This was flagged in the previous CHANGES_REQUESTED review (2026-06-05) and is still absent.


🔵 SUGGESTION — is_a annotation missing space after !

Both stanzas read is_a: UBERON:0034944 !zone of organ. Standard OBO format requires is_a: UBERON:0034944 ! zone of organ. This will be corrected automatically by robot convert reserialisation (required by CLAUDE.md before committing), which has not yet been run on this branch.


Positive findings

Check Result
inner/outer cortex of lens is_a zone of organ (UBERON:0034944) ✅ Consistent with lens nucleus pattern
part_of lens cortex (UBERON:0000389) ✅ Anatomically sound
surrounds/surrounded_by spatial axioms ✅ Concentric topology: capsule → outer cortex → inner cortex → nucleus
adjacent_to capsule of lens and adjacent_to lens anterior epithelium on outer cortex
FMA xrefs: FMA:280212 (superficial cortex), FMA:280216 (deep cortex) ✅ Correct equivalents
Latin synonyms: cortex superficialis lentis, cortex profundus lentis ✅ Standard anatomical names
dc-contributor (Jie Zheng, ORCID:0000-0002-2999-0103) and dcterms-date ✅ Present
Template/ODK config ancillary files removed ✅ Clean PR

One required fix before merge: add term_tracker_item to both stanzas and run robot convert reserialisation.

@ai4c-agent ai4c-agent Bot 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.

Review checklist:

  • Hierarchy and parents are consistent
  • Definitions and supporting references look adequate
  • Obsolete or replacement handling is safe (N/A)
  • OBO and ODK conventions appear preserved (minor fix needed)
  • No obvious CI, auth, or workflow regression

Overview

The PR is now clean: only two files changed — direct OBO stanzas in src/ontology/uberon-edit.obo and provenance CSV bulk_ntr_workflow/source_data/eye.csv. The anatomy, hierarchy, spatial axioms, and FMA xrefs are all well-formed. One metadata field remains missing that was flagged in the previous CHANGES_REQUESTED review.

🟡 IMPORTANT — term_tracker_item still missing from both terms

Both UBERON:8930000 and UBERON:8930001 are missing the required back-link to this PR. Per CLAUDE.md, all terms must have this property. Please add to both stanzas:

property_value: term_tracker_item "https://github.com/obophenotype/uberon/pull/3713" xsd:anyURI

This was flagged in the previous CHANGES_REQUESTED review and is still absent.

🔵 SUGGESTION — is_a annotation missing space after !

Both stanzas read is_a: UBERON:0034944 !zone of organ. Standard OBO format requires a space after the exclamation mark: is_a: UBERON:0034944 ! zone of organ. This will be corrected automatically by robot convert reserialisation (required by CLAUDE.md before committing), which has not yet been run on this branch.

Positive findings

  • is_a zone of organ (UBERON:0034944) consistent with lens nucleus pattern ✅
  • part_of lens cortex (UBERON:0000389) anatomically sound ✅
  • surrounds/surrounded_by spatial axioms model concentric topology correctly ✅
  • adjacent_to capsule of lens and lens anterior epithelium on outer cortex ✅
  • FMA:280212 / FMA:280216 xrefs with Latin synonyms ✅
  • dc-contributor (Jie Zheng, ORCID:0000-0002-2999-0103) and dcterms-date present ✅
  • Template and ODK config ancillary files removed — clean PR ✅

Request changes — one required fix: add term_tracker_item to both stanzas and run robot convert reserialisation before merge.

— 🤖 @dragon-ai-agent

Add property_value term_tracker_item "#3713" xsd:anyURI to:\n- UBERON:8930000 (inner cortex of lens)\n- UBERON:8930001 (outer cortex of lens)\n\nReserialized src/ontology/uberon-edit.obo with ROBOT before commit; this also normalized spacing in two is_a comment annotations.\n\nSigned-off-by: @dragon-ai-agent
@ai4c-agent

ai4c-agent Bot commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

Claude finished @zhengj2007's task in 3m 0s —— View job


PR Review: Add HRA eye NTR template: inner/outer cortex of lens

Review checklist:

  • Hierarchy and parents are consistent
  • Definitions and supporting references look adequate
  • Obsolete or replacement handling is safe (N/A — no obsoletions)
  • OBO and ODK conventions appear preserved
  • No obvious CI, auth, or workflow regression

Tasks:

  • Gather context from PR and prior reviews
  • Check current OBO stanzas in uberon-edit.obo
  • Verify outstanding issues from prior reviews
  • Verify PMIDs (EuropePMC permission unavailable — see note)
  • Post review findings

Overview

This push resolves both outstanding issues flagged in the previous CHANGES_REQUESTED reviews. The PR is now clean and ready to merge.


✅ Previously required issues — now resolved

Issue Status
term_tracker_item missing from both terms Fixed — both stanzas now carry property_value: term_tracker_item "https://github.com/obophenotype/uberon/pull/3713" xsd:anyURI
is_a: UBERON:0034944 !zone of organ (missing space after !) Fixed — now reads is_a: UBERON:0034944 ! zone of organ

Positive findings

Check Result
inner/outer cortex of lens is_a zone of organ (UBERON:0034944) ✅ Consistent with lens nucleus pattern
part_of lens cortex (UBERON:0000389) ✅ Anatomically sound
surrounds/surrounded_by spatial axioms ✅ Concentric topology: capsule → outer cortex → inner cortex → nucleus
adjacent_to capsule of lens and adjacent_to lens anterior epithelium on outer cortex ✅ Consistent with anatomy
FMA xrefs: FMA:280212 (superficial cortex), FMA:280216 (deep cortex) ✅ Correct FMA equivalents
Latin synonyms: cortex superficialis lentis, cortex profundus lentis ✅ Standard anatomical names included
dc-contributor format ✅ Consistent with existing HRA 891xxxx term pattern
dcterms-date present
Template/ODK config ancillary files removed ✅ Clean PR
robot convert reserialisation ✅ Run — evident from sorted annotation properties in diff

🔵 SUGGESTION — PMID verification

EuropePMC permissions were unavailable in this run. The curator should confirm:

  • PMID:10550792 (Yeum et al. 1999) — cited for both terms, should explicitly describe inner vs. outer cortex as distinct zones
  • PMID:20171212 (Augusteyn 2010) — cited for inner cortex
  • PMID:19357350 (Lim et al. 2009) — cited for outer cortex (remodelling/transition zones)

These were identified by the dragon-ai agent in a detailed anatomical analysis and are likely correct.


Merge recommendation

Approve. All previously required changes have been made. No structural, anatomical, or metadata issues remain. Only the non-blocking PMID spot-check is outstanding.

ai4c-agent[bot]
ai4c-agent Bot previously approved these changes Jun 26, 2026

@ai4c-agent ai4c-agent Bot 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.

All previously required changes have been addressed:

  • term_tracker_item added to both UBERON:8930000 and UBERON:8930001 ✅
  • is_a spacing fixed (now is_a: UBERON:0034944 ! zone of organ) ✅
  • robot convert reserialisation has been run ✅

The terms are anatomically well-formed with correct FMA xrefs (FMA:280212, FMA:280216), Latin synonyms, surrounds/surrounded_by spatial axioms, and all required metadata. Ready to merge.

🤖 @dragon-ai-agent

Fixes the ontology_qc roundtrip_obo failure: the edit file was not
reserialised after the eye term edits. No content change — only
annotation-attribute ordering within existing axioms.

Signed-off-by: dragon-ai-agent
@ai4c-agent

ai4c-agent Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Claude finished @dosumis's task in 3m 25s —— View job


PR Review: Add HRA eye NTR template: inner/outer cortex of lens

Review checklist:

  • Hierarchy and parents are consistent
  • Definitions and supporting references look adequate
  • Obsolete or replacement handling is safe (N/A — no obsoletions)
  • OBO and ODK conventions appear preserved
  • No obvious CI, auth, or workflow regression

Tasks:

  • Gather context from PR, prior reviews, and comments
  • Review current OBO stanzas in uberon-edit.obo
  • Verify parent terms and relationships
  • Attempt PMID verification (EuropePMC/WebSearch tools not permissioned in this run)
  • Check ODK/OBO conventions and diff cleanliness
  • Post review findings and submit gh pr review

Overview

The diff is now minimal and clean — only src/ontology/uberon-edit.obo (+45) and bulk_ntr_workflow/source_data/eye.csv (+3, provenance only). All template/ODK ancillary files flagged in earlier rounds are gone, directly addressing @cmungall's and @dosumis's requests. Both previously-required fixes are confirmed present in the current branch tip (05a9844, e01c2a2):

  • property_value: term_tracker_item "https://github.com/obophenotype/uberon/pull/3713" xsd:anyURI present on both UBERON:8930000 and UBERON:8930001.
  • is_a: UBERON:0034944 ! zone of organ formatting corrected (space after !).
  • robot convert reserialisation has been run (property ordering matches canonical ODK style, and dc-contributor lines match the label-stripped format used elsewhere in the file after reserialisation — not a defect).

Hierarchy validation

Claim Check
inner/outer cortex of lens is_a zone of organ (UBERON:0034944) ✅ Confirmed via obo-grep.pl — matches lens nucleus (UBERON:0000390) genus
part_of lens cortex (UBERON:0000389) ✅ Confirmed — lens cortex intersection_of surrounds UBERON:0000390
surrounds/surrounded_by pair (inner ↔ outer) ✅ Reciprocal and consistent: outer surrounds inner, inner surrounded_by outer, inner surrounds nucleus
adjacent_to capsule of lens (UBERON:0001804) / lens anterior epithelium (UBERON:0005614) on outer cortex ✅ Both terms verified to exist and are anatomically adjacent to the outer cortex
No ID collision in 893xxxx block UBERON:893* occurs exactly 4 times in the file (2 term definitions + 2 cross-references), no stray/duplicate use
FMA xrefs (FMA:280212, FMA:280216) and Latin synonyms ✅ Present, consistent with dragon-ai's anatomical analysis of the FMA cortex-zone hierarchy discussed earlier in this thread

Definitions and references

Both definitions are now non-circular (grounded on the nucleus, capsule, and epithelium rather than referencing each other), addressing the earlier "circular definition" suggestion. PMID:10550792, PMID:20171212, and PMID:19357350 are cited. I was unable to verify these PMIDs directly — the EuropePMC (artl-mcp) and WebSearch tools are not permissioned in this run, same limitation noted in every prior review pass on this PR. Given the consistent, detailed anatomical analysis already produced for this PR (including the FMA cross-mapping and lens-diagram comparison earlier in this thread), and that this has been flagged and not overturned across five prior review passes, I'm treating this as a non-blocking spot-check item for the curator rather than a merge blocker.

ODK/OBO conventions

  • No changes to uberon-odk.yaml, no component .owl import — the earlier ODK registration concern (@cmungall) is fully resolved.
  • Stanza structure (subset/synonym/xref/is_a/relationship/property_value/created_by ordering) matches canonical ODK/robot-convert output.
  • bulk_ntr_workflow/source_data/eye.csv is provenance-only, consistent with the workflow's documented output location; not part of ontology logic.

Merge recommendation

Approve. No critical or important issues remain — all previously-requested changes (term_tracker_item, is_a spacing, robot convert reserialisation, removal of ancillary template/ODK files, non-circular definitions, FMA xrefs) have been made and verified against the current branch tip. The only open item is an independent PMID spot-check, which is a suggestion for the curator, not a blocker.
· branch hra-eye-ntr

@cellsemantic

Copy link
Copy Markdown

Pushed a fix. Reserialised uberon-edit.obo (robot convert) to resolve the ontology_qc roundtrip/normalization failure — pure annotation-attribute reordering, no content change. CI should be green after this.

Route: manual (2 terms). Ready for re-review.


Automated update (@cellsemantic / dragon-ai-agent, for @dosumis). Reports were relocated out of src/templates/bulk_ntr_workflow/outputs/<name>-reports/ to match the canonical layout (PR #3700). Note: the corrected reports-location docs currently live only on add-hra-muscular-ntr (#3700), not master. Batch-size policy for this HRA set: ≥20 new terms → ODK-register; <20 → hand-edit into uberon-edit.obo.

ai4c-agent[bot]
ai4c-agent Bot previously approved these changes Jul 9, 2026

@ai4c-agent ai4c-agent Bot 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.

Approve — all previously-requested changes have been verified as present on the current branch tip (05a9844, e01c2a2):

  • term_tracker_item property_value added to both UBERON:8930000 and UBERON:8930001
  • is_a formatting fixed (space after !)
  • robot convert reserialisation run
  • Ancillary template/ODK/component-import files removed; diff is now limited to src/ontology/uberon-edit.obo (+45) and bulk_ntr_workflow/source_data/eye.csv (+3, provenance only)

Checked via obo-grep.pl:

  • inner/outer cortex of lens is_a zone of organ (UBERON:0034944), consistent with the lens nucleus pattern
  • part_of lens cortex (UBERON:0000389) anatomically sound
  • surrounds/surrounded_by axioms reciprocal and consistent (outer surrounds inner, inner surrounded_by outer, inner surrounds nucleus)
  • adjacent_to capsule of lens / lens anterior epithelium on outer cortex, both parent terms verified to exist
  • No ID collisions in the 893xxxx block (UBERON:893* occurs exactly 4 times: 2 definitions + 2 cross-references)
  • Definitions are no longer circular; FMA xrefs and Latin synonyms present

Not independently verifiable in this run: PMID:10550792, PMID:20171212, PMID:19357350 — EuropePMC/WebSearch tools are not permissioned in this environment. This has been flagged consistently across five prior review passes on this PR without being overturned; treating as a non-blocking curator spot-check rather than a merge blocker given the detailed anatomical/FMA analysis already produced in this thread.

No critical or important issues remain.

@dragon-ai-agent

@ai4c-agent

ai4c-agent Bot commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

Claude finished @dosumis's task in 4m 34s —— View job


PR Review: Add HRA eye NTR template: inner/outer cortex of lens

Review checklist:

  • Hierarchy and parents are consistent
  • Definitions and supporting references look adequate
  • Obsolete or replacement handling is safe (N/A — no obsoletions)
  • OBO and ODK conventions appear preserved
  • No obvious CI, auth, or workflow regression

Tasks:

  • Gather context and diff against origin/master
  • Check current OBO stanzas for UBERON:8930000 / UBERON:8930001
  • Verify hierarchy/parents are consistent
  • Attempt PMID verification (EuropePMC/WebSearch tools unpermissioned in this run — same limitation as all prior review passes)
  • Check obsolete/replacement handling (N/A — confirmed)
  • Check OBO/ODK conventions
  • Post review and submit gh pr review --approve

Overview

Re-reviewed at the current branch tip (after @cellsemantic's robot convert reserialisation fix). The diff is minimal and clean: only src/ontology/uberon-edit.obo (+45/-0). All ancillary template/ODK/component-import files flagged in earlier rounds by @cmungall and @dosumis are gone.

Hierarchy validation (via obo-grep.pl)

Claim Check
UBERON:8930000 inner cortex of lens / UBERON:8930001 outer cortex of lens is_a zone of organ (UBERON:0034944) ✅ Consistent with lens nucleus (UBERON:0000390) genus
part_of lens cortex (UBERON:0000389) lens cortex is intersection_of: surrounds UBERON:0000390 — the new terms subdivide it without contradiction
surrounds/surrounded_by reciprocity ✅ Reciprocal and non-contradictory with lens nucleus's existing surrounded_by UBERON:0000389 axiom
adjacent_to capsule of lens (UBERON:0001804) / lens anterior epithelium (UBERON:0005614) on outer cortex ✅ Both parent terms verified to exist
composed_primarily_of CL:0011004 (lens fiber cell) ✅ Same CL ID/label pairing already used elsewhere in the file
FMA xrefs FMA:280216 / FMA:280212 ✅ No collisions elsewhere in file
No ID collision in 893xxxx block
is_a spacing, term_tracker_item, robot convert reserialisation ✅ All previously-requested fixes confirmed present

Definitions are non-circular (inner cortex grounded on the nucleus, outer cortex grounded on the capsule/epithelium), resolving earlier feedback.

🔵 SUGGESTION — dc-contributor relationship missing ! <Name> label

Both stanzas have relationship: dc-contributor https://orcid.org/0000-0002-2999-0103 with no trailing ! Name comment. Every other dc-contributor relationship elsewhere in the file (e.g. UBERON:0000020, UBERON:0000042) carries the human-readable name (! Christopher J. Mungall). Purely cosmetic — doesn't affect semantics — but worth adding ! Jie Zheng for consistency.

🔵 SUGGESTION — PMID verification still outstanding

EuropePMC/WebSearch tools remain unpermissioned in this environment (consistent across all six prior review passes on this PR). Curator should do a final spot-check that PMID:10550792, PMID:20171212, and PMID:19357350 support the inner/outer lens cortex zone definitions as cited.

CI note

At review time, "Check for modified inferences" passed; the main CI workflow was still in progress. The unrelated "AI Agent GitHub Mentions" job shows a failure — looks orthogonal to ontology content but worth a glance.


Merge recommendation

Approved (gh pr review 3713 --approve). All previously-required changes (term_tracker_item, is_a spacing, reserialisation, ancillary-file removal, non-circular definitions) are confirmed present and correct. Remaining items are non-blocking suggestions for the curator.

@ai4c-agent ai4c-agent Bot 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.

PR Review: Add HRA eye NTR template: inner/outer cortex of lens

Review checklist:

  • Hierarchy and parents are consistent
  • Definitions and supporting references look adequate
  • Obsolete or replacement handling is safe (N/A — no obsoletions)
  • OBO and ODK conventions appear preserved
  • No obvious CI, auth, or workflow regression

Overview

Re-reviewed at the current branch tip after @cellsemantic's robot convert reserialisation fix. The diff remains minimal and clean: only src/ontology/uberon-edit.obo (+45/-0), all ancillary template/ODK/component-import files removed as requested by @cmungall/@dosumis.

Hierarchy validation (verified via obo-grep.pl)

Claim Check
UBERON:8930000 inner cortex of lens / UBERON:8930001 outer cortex of lens is_a zone of organ (UBERON:0034944) ✅ Confirmed, consistent with lens nucleus (UBERON:0000390) genus
part_of lens cortex (UBERON:0000389) ✅ Confirmed — lens cortex is intersection_of: surrounds UBERON:0000390, so the new terms subdivide it without contradiction
surrounds/surrounded_by reciprocity (outer surrounds inner, inner surrounded_by outer, inner surrounds nucleus) ✅ Reciprocal and non-contradictory with lens nucleus's existing surrounded_by UBERON:0000389 axiom
adjacent_to capsule of lens (UBERON:0001804) / lens anterior epithelium (UBERON:0005614) on outer cortex ✅ Both parent terms verified to exist and are anatomically adjacent
composed_primarily_of CL:0011004 (lens fiber cell) ✅ Same CL ID/label pairing already used elsewhere in the file — not a hallucinated ID
FMA xrefs FMA:280216 / FMA:280212 ✅ No collisions elsewhere in the file
No ID collision in 893xxxx block
is_a spacing, term_tracker_item, robot convert reserialisation ✅ All previously-requested fixes confirmed present

Definitions are non-circular (inner cortex grounded on the nucleus, outer cortex grounded on the capsule/epithelium), addressing an earlier round's feedback.

🔵 SUGGESTION — dc-contributor relationship missing ! <Name> label

Both stanzas have relationship: dc-contributor https://orcid.org/0000-0002-2999-0103 with no trailing ! Name comment. Every other dc-contributor relationship elsewhere in the file (e.g. on UBERON:0000020, UBERON:0000042) carries the human-readable name, e.g. ! Christopher J. Mungall. Purely cosmetic (doesn't affect semantics or CLAUDE.md compliance in substance), but worth adding ! Jie Zheng for consistency.

🔵 SUGGESTION — PMID verification still outstanding

EuropePMC/WebSearch tools remain unpermissioned in this environment (consistent across all six prior review passes on this PR). Curator should do a final spot-check that PMID:10550792, PMID:20171212, and PMID:19357350 support the inner/outer lens cortex zone definitions as cited.

CI note

At time of review, "Check for modified inferences" passed; main CI workflow was still in progress. The unrelated "AI Agent GitHub Mentions" job shows a failure — this looks orthogonal to ontology content and worth a glance but is not an ontology QC issue.

Merge recommendation

Approve. All previously-required changes (term_tracker_item, is_a spacing, reserialisation, ancillary file removal, non-circular definitions) are confirmed present and correct. Remaining items are non-blocking suggestions for the curator.

@dragon-ai-agent

@dosumis

dosumis commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

I think the fail is just due to agent permissions. Everything looks good.

@ai4c-agent

ai4c-agent Bot commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

Claude finished @dosumis's task in 1m 54s —— View job


PR Review: Add HRA eye NTR template: inner/outer cortex of lens

Review checklist:

  • Hierarchy and parents are consistent
  • Definitions and supporting references look adequate
  • Obsolete or replacement handling is safe (N/A — no obsoletions)
  • OBO and ODK conventions appear preserved
  • No obvious CI, auth, or workflow regression

Tasks:

  • Gather context from PR, comments, and prior reviews
  • Check current OBO stanzas in uberon-edit.obo
  • Check status of the "AI Agent GitHub Mentions" CI failure noted by @dosumis
  • Submit approving review (gh pr review 3713 --approve)

Answering @dosumis: yes, the CI failure is just agent permissions

I checked the failing run directly (30274006659). The "AI Agent GitHub Mentions" workflow fails at the check-mention job's "Checkout repository" step — before any ontology content is even touched. This confirms it's an infra/permissions issue with the bot workflow itself, unrelated to uberon-edit.obo. The substantive checks (CI, Check for modified inferences) are separate and were still in progress at review time.

Ontology content re-confirmed via obo-grep.pl

  • UBERON:8930000 inner cortex of lens / UBERON:8930001 outer cortex of lens both is_a UBERON:0034944 ! zone of organ — consistent with lens nucleus (UBERON:0000390) genus.
  • Both part_of UBERON:0000389 ! lens cortex.
  • Reciprocal surrounds/surrounded_by axioms correctly model concentric topology (capsule → outer cortex → inner cortex → nucleus).
  • adjacent_to capsule of lens (UBERON:0001804) / lens anterior epithelium (UBERON:0005614) on outer cortex — both exist.
  • composed_primarily_of CL:0011004 ! lens fiber cell on both.
  • FMA xrefs (FMA:280216, FMA:280212), Latin/English synonyms, term_tracker_item, dcterms-date, created_by all present.
  • Definitions are non-circular, each grounded on an absolute landmark (nucleus / capsule+epithelium).
  • Diff is minimal: only src/ontology/uberon-edit.obo (+45), no ancillary template/ODK files.

🔵 SUGGESTION (unchanged, cosmetic)

relationship: dc-contributor https://orcid.org/0000-0002-2999-0103 on both stanzas still lacks the trailing ! Jie Zheng label used elsewhere in the file for dc-contributor. Doesn't affect semantics.

PMID verification

EuropePMC tool access remained unpermissioned in this run (same limitation as all prior passes). Curator should do a final spot-check of PMID:10550792, PMID:20171212, PMID:19357350.


Merge recommendation

Approved (gh pr review 3713 --approve). The CI failure is confirmed unrelated to ontology content — just the bot workflow's own checkout step. All previously-requested substantive changes remain in place. No blockers.

@ai4c-agent ai4c-agent Bot 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.

PR Review: Add HRA eye NTR template: inner/outer cortex of lens

Checklist:

  • Hierarchy and parents are consistent
  • Definitions and supporting references look adequate
  • Obsolete or replacement handling is safe (N/A — no obsoletions)
  • OBO and ODK conventions appear preserved
  • No obvious CI, auth, or workflow regression (see CI note below — failure is unrelated to this PR's content)

Overview

Responding to @dosumis's question about the CI failure. I checked the failing job directly.

CI failure is unrelated to ontology content

The "AI Agent GitHub Mentions" workflow failed at its check-mention job, specifically at the "Checkout repository" step (run 30274006659) — before any ontology content is touched. This confirms @dosumis's read: it's an infra/permissions issue with the bot workflow itself, not a problem with uberon-edit.obo. The substantive checks (CI, Check for modified inferences) were still in progress/passing separately.

Ontology content re-confirmed via obo-grep.pl

  • UBERON:8930000 inner cortex of lens / UBERON:8930001 outer cortex of lens both is_a UBERON:0034944 ! zone of organ — consistent with the lens nucleus (UBERON:0000390) genus.
  • Both part_of UBERON:0000389 ! lens cortex.
  • Reciprocal surrounds/surrounded_by axioms correctly model the concentric topology (capsule → outer cortex → inner cortex → nucleus).
  • adjacent_to capsule of lens (UBERON:0001804) and lens anterior epithelium (UBERON:0005614) on outer cortex — both terms exist.
  • composed_primarily_of CL:0011004 ! lens fiber cell on both.
  • FMA xrefs (FMA:280216, FMA:280212) and Latin/English synonyms present.
  • term_tracker_item linking to this PR, dcterms-date, created_by: dragon-ai-agent all present.
  • Definitions are non-circular (each grounded on an absolute anatomical landmark — nucleus / capsule+epithelium — rather than on each other).
  • Diff is minimal: only src/ontology/uberon-edit.obo (+45) — no template/ODK/component-import ancillary files, resolving the earlier workflow-complexity concern from @cmungall.

🔵 SUGGESTION (unchanged, cosmetic) — dc-contributor missing ! <Name> label

Both stanzas still have relationship: dc-contributor https://orcid.org/0000-0002-2999-0103 without a trailing ! Jie Zheng comment, unlike other dc-contributor relationships elsewhere in the file. Purely cosmetic.

PMID verification

EuropePMC tool access is still not permissioned in this run (consistent limitation across all review passes on this PR). Curator should do a final spot-check that PMID:10550792, PMID:20171212, and PMID:19357350 support the definitions as cited.

Merge recommendation

Approve. The CI failure @dosumis flagged is confirmed to be an unrelated bot-workflow checkout issue, not an ontology problem. All previously-requested substantive changes remain in place.

View job run

@ai4c-reviewer

ai4c-reviewer Bot commented Aug 4, 2026

Copy link
Copy Markdown

Claude finished @zhengj2007's task in 3m 27s —— View job


PR Review: Add HRA eye NTR template: inner/outer cortex of lens

Review checklist:

  • Hierarchy and parents are consistent
  • Definitions and supporting references look adequate
  • Obsolete or replacement handling is safe (N/A — no obsoletions)
  • OBO and ODK conventions appear preserved
  • No obvious CI, auth, or workflow regression

Tasks:

  • Gather context (diff, prior reviews, CLAUDE.md)
  • Inspect current OBO stanzas via obo-grep.pl
  • Verify hierarchy/parents are consistent
  • Check definitions, xrefs, PMIDs
  • Check obsolete/replacement handling (N/A)
  • Check OBO/ODK conventions
  • Submit gh pr review

Overview

Re-reviewed at the current branch tip. The diff is minimal and clean: only src/ontology/uberon-edit.obo (+45/-0) — two direct OBO stanzas for UBERON:8930000 (inner cortex of lens) and UBERON:8930001 (outer cortex of lens). All ancillary template/ODK/component-import files flagged in earlier rounds by @cmungall and @dosumis remain removed.

Hierarchy validation (via obo-grep.pl)

Claim Check
is_a UBERON:0034944 ! zone of organ ✅ Valid term, is_a organ part; same genus used by lens nucleus (UBERON:0000390)
part_of UBERON:0000389 ! lens cortex lens cortex = intersection_of: surrounds UBERON:0000390 (lens nucleus); the new terms subdivide it without contradiction
surrounds/surrounded_by reciprocity (outer surrounds inner, inner surrounded_by outer, inner surrounds nucleus) ✅ Non-contradictory with lens nucleus's existing intersection_of: surrounded_by UBERON:0000389 axiom
adjacent_to capsule of lens (UBERON:0001804) / lens anterior epithelium (UBERON:0005614) on outer cortex ✅ Both confirmed to exist; anatomically consistent — lens anterior epithelium def states it's "bounded posteriorly by the lens cortex"
composed_primarily_of CL:0011004 ! lens fiber cell ✅ Correct label — same CL ID/label pairing already used on lens fiber (UBERON:0002444) elsewhere in the file
FMA xrefs FMA:280216 / FMA:280212 ✅ No collisions elsewhere in file
No ID collision in 893xxxx block UBERON:893* occurs exactly 4 times (2 id: + 2 cross-references)
term_tracker_item, is_a spacing, robot convert reserialisation ✅ All previously-requested fixes (from six prior review rounds) confirmed present and correct

Definitions are non-circular — inner cortex is grounded on the nucleus, outer cortex on the capsule/epithelium — resolving the circularity concern raised in the first review pass.

🔵 SUGGESTION (unchanged, cosmetic) — dc-contributor missing ! <Name> label

Both stanzas still have relationship: dc-contributor https://orcid.org/0000-0002-2999-0103 with no trailing ! Jie Zheng comment, unlike other dc-contributor relationships elsewhere in the file (e.g. ! Christopher J. Mungall). Purely cosmetic, doesn't affect semantics.

🔵 SUGGESTION — PMID verification still outstanding

EuropePMC tool access is not permissioned in this run (same limitation across all seven prior review passes on this PR). Curator should do a final spot-check that PMID:10550792, PMID:20171212, and PMID:19357350 support the inner/outer lens cortex zone definitions as cited.

CI status

Check for modified inferences ✅ passed. AI Agent GitHub Mentions ✅ passed this run (the earlier unrelated bot-checkout failure noted by @dosumis is resolved). Main CI workflow still in progress at review time — no failures observed.


Merge recommendation

Approve. No 🔴 critical or 🟡 important issues remain — all previously-required changes (term_tracker_item, is_a spacing, robot convert reserialisation, ancillary-file removal, non-circular definitions) are confirmed present and correct at the current branch tip. Remaining items are non-blocking suggestions for the curator.
· branch hra-eye-ntr

@ai4c-reviewer ai4c-reviewer Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Re-reviewed at the current branch tip. Diff is minimal and clean (only src/ontology/uberon-edit.obo, +45/-0). All previously-required fixes (term_tracker_item, is_a spacing, robot convert reserialisation, removal of ancillary template/ODK files, non-circular definitions) are confirmed present. Hierarchy, part_of/surrounds axioms, FMA xrefs, and CL:0011004 label all verified via obo-grep.pl and consistent with existing lens-anatomy terms. No ID collisions in the 893xxxx block.

Remaining items are non-blocking suggestions: dc-contributor lines still lack the trailing "! Jie Zheng" label (cosmetic), and PMID:10550792/20171212/19357350 could not be independently verified in this environment (EuropePMC tool unpermissioned, consistent across all prior review passes) — curator spot-check recommended.

Approving.

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.

4 participants