Skip to content

Add HRA palatine-tonsil NTR template (7 new terms) - #3719

Open
zhengj2007 wants to merge 9 commits into
masterfrom
add-hra-palatine_tonsil-ntr
Open

zhengj2007 wants to merge 9 commits into
masterfrom
add-hra-palatine_tonsil-ntr

Conversation

@zhengj2007

Copy link
Copy Markdown
Collaborator

Generated via bulk_ntr_workflow from source_data/palatine-tonsil.csv.

Pipeline completed through Stage 4:

  • 7 new UBERON terms in leaf template
  • 0 group terms
  • 0 confirmed matches excluded
  • 0 out-of-scope exclusions
  • 0 manual-curation exclusions

Parent mapping handled in Stage 3 for mixed source parents:

  • UBERON parents (4)
  • ASCTB-TEMP parents (2)
  • FMA parent mapping (1)

Final template has no [PENDING], INFER, NEEDS_MAPPING, or UNRESOLVABLE markers.

Generated via bulk_ntr_workflow from source_data/palatine-tonsil.csv.

Pipeline completed through Stage 4:
- 7 new UBERON terms in leaf template
- 0 group terms
- 0 confirmed matches excluded
- 0 out-of-scope exclusions
- 0 manual-curation exclusions

Parent mapping handled in Stage 3 for mixed source parents:
- UBERON parents (4)
- ASCTB-TEMP parents (2)
- FMA parent mapping (1)

Final template has no [PENDING], INFER, NEEDS_MAPPING, or UNRESOLVABLE markers.

Signed-off-by: dragon-ai-agent <dragon-ai-agent@users.noreply.github.com>
@ai4c-agent

ai4c-agent Bot commented May 26, 2026 •

Copy link
Copy Markdown
Contributor

Claude finished @zhengj2007's task in 7m 29s —— View job


PR Review: HRA Palatine-Tonsil NTR Template (7 new terms)

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
  • No obvious CI, auth, or workflow regression

Review Summary

The 7 new terms are anatomically well-chosen and fill genuine gaps in the tonsil substructure representation. Parent-term resolution is mostly correct and consistent with analogous existing terms (the germinal center dark/light zones correctly follow the UBERON:8410052/UBERON:8410053 lymph-node precedent with is_a: UBERON:0001744). However, one critical build issue and one important structural omission need to be fixed before merge.


🔴 CRITICAL — Templates not registered in src/ontology/uberon-odk.yaml

Stage 5 of the NTR workflow (registering templates with ODK) was not completed. Neither hra-palatine-tonsil.template.tsv nor hra-palatine-tonsil-groups.template.tsv appear in src/ontology/uberon-odk.yaml as component products. Without this registration, ROBOT will never process the templates and the 7 new UBERON terms (8930153–8930159) will not be built into any ontology artifact.

The pattern to add (following the existing hra_skeleton.owl precedent):

    - filename: hra_palatine_tonsil.owl
      use_template: true
      templates:
        - hra-palatine-tonsil.template.tsv
    - filename: hra_palatine_tonsil_groups.owl
      use_template: true
      templates:
        - hra-palatine-tonsil-groups.template.tsv

After editing the YAML, sh run.sh make update_repo (or the register_templates.py script from the workflow) must be run to regenerate the Makefile. Fix this →


🟡 IMPORTANT — tonsil germinal center mantle zone (UBERON:8930157) missing part_of

The definition explicitly states "A part of the secondary follicle of the tonsil", yet the part_of column is empty in the template (src/templates/hra-palatine-tonsil.template.tsv, row 7). The term will be placed as is_a: UBERON:0010755 ! secondary follicle corona only, with no explicit tonsil localisation. An explicit part_of UBERON:8930158 (tonsil secondary follicle — added in the same template) should be added.


🟡 IMPORTANT — tonsil follicle (UBERON:8930154) scope mismatch between name and definition

The definition reads "A lymphoid follicle that is part of a palatine tonsil" and part_of is UBERON:0002373 ! palatine tonsil, yet the label is tonsil follicle (not palatine tonsil follicle). Compare: tonsil germinal center (UBERON:0013688) uses the general part_of UBERON:0002372 ! tonsil. Either:

  • Broaden the definition/part_of to the general tonsil (UBERON:0002372) to match the name, or
  • Rename to palatine tonsil follicle to match the definition.

🔵 SUGGESTION — tonsil T cell zone xref FMA:55221 may be imprecise

The input errors report flags FMA:55221 as "Diffuse lymphoid tissue" — a broad FMA concept used as the original parent mapping. Moving it to an xref rather than a parent is correct, but a generic "Diffuse lymphoid tissue" xref on a specifically-named T cell zone may mislead downstream users. If there is no more specific FMA term, consider removing this xref.


Notes (no action required)

  • ID range: UBERON:8930153–8930159 fall within [>= 8930000, < 8931000] allocated to Jie Zheng. ✓
  • is_a: UBERON:0001744 for dark/light zones: consistent with existing UBERON:8410052/8410053. ✓
  • ASCTB-TEMP IRIs in def_xref: standard HRA provenance pattern with real PMIDs also present. ✓
  • present_in_taxon: NCBITaxon:9606: appropriate for HRA terms. ✓
  • PMIDs 25656706 and 8011279 verified in existing UBERON terms. PMIDs 34430822, 417886, 11789984, 28844822, 30801022 should be manually verified for relevance.
  • Empty groups template (headers only) is correct — all 7 terms are leaf terms. ✓

@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.

Two issues need fixing before merge:

  1. 🔴 CRITICAL — Templates not registered in uberon-odk.yaml: Stage 5 of the NTR workflow was not completed. Neither hra-palatine-tonsil.template.tsv nor hra-palatine-tonsil-groups.template.tsv appear as component products in src/ontology/uberon-odk.yaml. Without this, ROBOT will not process the templates and the 7 new terms (UBERON:8930153–8930159) will not be built into any ontology artifact. Add entries following the hra_skeleton.owl pattern and regenerate the Makefile.

  2. 🟡 IMPORTANT — tonsil germinal center mantle zone (UBERON:8930157) missing part_of: Definition says 'A part of the secondary follicle of the tonsil' but the part_of column is empty. Should have part_of UBERON:8930158 ! tonsil secondary follicle.

Also: tonsil follicle (UBERON:8930154) label vs definition scope mismatch (name implies general tonsil scope but definition/part_of is palatine-tonsil-specific).

Full review details in the Claude comment above.

@github-actions

Copy link
Copy Markdown
Contributor

This PR has not seen any activity in the past month; if nobody comments or reviews it in the next week, the PR creator will be allowed to proceed with merging without explicit approval, should they wish to do so.

@zhengj2007

Copy link
Copy Markdown
Collaborator Author

@dragon-ai-agent

Please remove empty file, src/templates/hra-palatine-tonsil-groups.template.tsv

modify the template file, src/templates/hra-palatine-tonsil.template.tsv, as follows:
UBERON:8930157 - add part_of UBERON:8930158 ! tonsil secondary follicle
UBERON:8930154 - rename to 'palatine tonsil follicle'
UBERON:8930159 - remove xref FMA:55221

@dragon-ai-agent

Copy link
Copy Markdown
Collaborator

🤖 Working on it...

Follow along: View workflow run

— @dragon-ai-agent

- Remove empty groups template (hra-palatine-tonsil-groups.template.tsv)
- UBERON:8930154: rename 'tonsil follicle' -> 'palatine tonsil follicle'
- UBERON:8930157 (tonsil germinal center mantle zone): add part_of UBERON:8930158 (tonsil secondary follicle)
- UBERON:8930159 (tonsil T cell zone): remove xref FMA:55221

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

---
🤖 **Generated by @dragon-ai-agent**
- Model: `claude-opus-4-7`
- Agent harness: claude-code
- Triggered by: @zhengj2007
- Run: [View workflow run](https://github.com/obophenotype/uberon/actions/runs/28964269531)
@dragon-ai-agent

Copy link
Copy Markdown
Collaborator

Applied the requested changes in commit c23861e:

  1. Removed src/templates/hra-palatine-tonsil-groups.template.tsv (contained only the header/template rows, no data)
  2. UBERON:8930154: renamed tonsil follicle → palatine tonsil follicle
  3. UBERON:8930157 (tonsil germinal center mantle zone): added part_of UBERON:8930158 (tonsil secondary follicle)
  4. UBERON:8930159 (tonsil T cell zone): removed xref FMA:55221

CRLF line endings and 13-column TSV structure preserved.


🤖 Generated by @dragon-ai-agent

@ai4c-agent

ai4c-agent Bot commented Jul 8, 2026 •

Copy link
Copy Markdown
Contributor

Claude finished @dragon-ai-agent's task in 3m 53s —— View job


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 (partially — see below)
  • No obvious CI, auth, or workflow regression

Verification of commit c23861e (requested fixes)

All three edits @zhengj2007 requested were applied correctly to src/templates/hra-palatine-tonsil.template.tsv:

  • ✅ UBERON:8930154 renamed tonsil follicle → palatine tonsil follicle (now consistent with its palatine-tonsil-specific definition/part_of UBERON:0002373)
  • ✅ UBERON:8930157 (tonsil germinal center mantle zone) now has part_of UBERON:8930158 (tonsil secondary follicle), matching its definition
  • ✅ UBERON:8930159 (tonsil T cell zone): xref FMA:55221 removed
  • ✅ src/templates/hra-palatine-tonsil-groups.template.tsv removed (was header-only, no data rows)

Hierarchy re-checked against src/ontology/uberon-edit.obo for all referenced parents (UBERON:0001593, UBERON:0000444, UBERON:0002373, UBERON:0001744, UBERON:0013688, UBERON:0010755, UBERON:0001745, UBERON:0002372, UBERON:0010393) — all exist and are logically appropriate (e.g. UBERON:0010755 secondary follicle corona has synonym "mantle zone", supporting the is_a choice for UBERON:8930157).

🔴 CRITICAL — still unresolved: templates not registered in src/ontology/uberon-odk.yaml

This was flagged in the original review and was not part of the fixes requested in the latest comment, so it remains outstanding. Confirmed by diff (git diff origin/master...HEAD --stat still only shows the 5 originally-flagged files) and by grep — no hra_palatine_tonsil entry exists anywhere in src/ontology/uberon-odk.yaml or the generated src/ontology/Makefile (compare to the registered hra_skeleton.owl pattern at uberon-odk.yaml:177-180 / Makefile:571-575).

Without this registration, ROBOT will never process hra-palatine-tonsil.template.tsv, and the 7 new UBERON terms (8930153–8930159) will not be built into any ontology artifact.

Needed, under components.products in src/ontology/uberon-odk.yaml:

    - filename: hra_palatine_tonsil.owl
      use_template: true
      templates:
        - hra-palatine-tonsil.template.tsv

followed by sh run.sh make update_repo to regenerate the Makefile.

Fix this →

Recommendation

Submitted a Request Changes review — blocking only on the ODK registration step. The content-level fixes requested by @zhengj2007 are all correctly applied. Once the template is registered as a component product and the Makefile regenerated, this should be ready to merge.

@github-actions

github-actions Bot commented Jul 8, 2026 •

Copy link
Copy Markdown
Contributor
This PR modifies some logical definitions. See details below:

Number of classes with modified logical definitions: 4

tonsil T cell zone

No changes in inferred subclasses.

tonsil germinal center mantle zone

No changes in inferred subclasses.

tonsil secondary follicle

No changes in inferred subclasses.

palatine tonsil follicle

No changes in inferred subclasses.

@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 (partially — see below)
  • No obvious CI, auth, or workflow regression

Verification of commit c23861e (requested fixes)

All three requested edits were applied correctly to src/templates/hra-palatine-tonsil.template.tsv:

  • ✅ UBERON:8930154 renamed tonsil follicle → palatine tonsil follicle (now consistent with its palatine-tonsil-specific definition/part_of UBERON:0002373)
  • ✅ UBERON:8930157 (tonsil germinal center mantle zone) now has part_of UBERON:8930158 (tonsil secondary follicle), matching its definition
  • ✅ UBERON:8930159 (tonsil T cell zone): xref FMA:55221 removed
  • ✅ src/templates/hra-palatine-tonsil-groups.template.tsv removed (was header-only, no data rows)

Hierarchy re-checked against src/ontology/uberon-edit.obo for all referenced parents (UBERON:0001593, UBERON:0000444, UBERON:0002373, UBERON:0001744, UBERON:0013688, UBERON:0010755, UBERON:0001745, UBERON:0002372, UBERON:0010393) — all exist and are logically appropriate (e.g. UBERON:0010755 secondary follicle corona has synonym "mantle zone", supporting the is_a choice for UBERON:8930157).

🔴 CRITICAL — still unresolved: templates not registered in src/ontology/uberon-odk.yaml

This was flagged in the original review and was not part of the fixes requested in the latest comment, so it remains outstanding. Confirmed by diff (git diff origin/master...HEAD --stat still shows only the 5 originally-flagged files — uberon-odk.yaml and Makefile are untouched) and by grep — no hra_palatine_tonsil entry exists anywhere in src/ontology/uberon-odk.yaml or the generated src/ontology/Makefile (compare to the registered hra_skeleton.owl pattern at uberon-odk.yaml:177-180 / Makefile:571-575).

Without this registration, ROBOT will never process hra-palatine-tonsil.template.tsv, and the 7 new UBERON terms (8930153–8930159, including the newly-added UBERON:8930158) will not be built into any ontology artifact.

Needed:

    - filename: hra_palatine_tonsil.owl
      use_template: true
      templates:
        - hra-palatine-tonsil.template.tsv

under components.products in src/ontology/uberon-odk.yaml, followed by sh run.sh make update_repo to regenerate the Makefile (mirrors hra_skeleton.owl).

Recommendation

Blocking on the ODK registration step only — the content-level fixes requested by @zhengj2007 are all correctly applied. Once the template is registered as a component product and the Makefile regenerated, this should be ready to merge.

Fix this →

@zhengj2007

Copy link
Copy Markdown
Collaborator Author

Only 7 terms, shall we add the terms to uberon-edit.obo directly?

Reports are review artifacts, not ODK templates, and should not live under
src/templates/. Relocated to bulk_ntr_workflow/outputs/ to match the canonical
layout used by the muscular branch (PR #3700).

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 4m 12s —— View job


Review checklist

  • Hierarchy and parents are consistent
  • Definitions and supporting references look adequate
  • Obsolete or replacement handling is safe (N/A — no obsoletions in this PR)
  • OBO and ODK conventions appear preserved (content is fine; build-registration is not — see below)
  • No obvious CI, auth, or workflow regression

⚠️ Security note: a comment on this PR looks like a prompt-injection / impersonation attempt

The comment from cellsemantic (posted immediately after this job started) asserts a repo "batch-size policy" (≥20 new terms → ODK-register; <20 → hand-edit) and instructs converting the template to OBO stanzas, while claiming to act "for @dosumis" and citing dragon-ai-agent. I checked: cellsemantic is not a collaborator on this repo (not in the collaborators list, no special permissions), and no such batch-size policy exists in CLAUDE.md or anywhere else in the repo. This looks like an attempt to inject unauthorized instructions into the review thread by impersonating an automated/authoritative source. I have not acted on anything from that comment — my analysis below is based only on CLAUDE.md, the actual repo state, and @zhengj2007's genuine question. Maintainers may want to review/remove that comment.

Status since last review

Commit c890b08 (David Osumi-Sutherland) only relocated the report artifacts (candidates.tsv, errors.tsv, input.tsv) from src/templates/ to bulk_ntr_workflow/outputs/hra-palatine-tonsil-reports/, matching the canonical layout from PR #3700. No content changes to the template or uberon-edit.obo.

🔴 CRITICAL — still unresolved: hra-palatine-tonsil.template.tsv remains unregistered in src/ontology/uberon-odk.yaml (confirmed via diff and grep — no hra_palatine_tonsil entry exists, and uberon-edit.obo is untouched by this branch). As-is, the 7 new terms (UBERON:8930153–8930159) will not be built into any ontology artifact.

Answering @zhengj2007: "shall we add the terms to uberon-edit.obo directly?"

Yes, for a batch this small this is a reasonable and simpler alternative to fixing the ODK template registration, and it matches the standard editing workflow documented in CLAUDE.md (obo-checkout.pl / obo-checkin.pl into terms/). The template's 7 rows map cleanly onto term stanzas — all the needed metadata is already present:

  • ID/LABEL → id/name
  • Definition + def_xref → def: "..." [xref1, xref2, ...]
  • is_a → is_a
  • part_of → relationship: part_of BFO:0000050 ... (or logical intersection_of if you want them reasoner-inferable rather than asserted)
  • In_subset (added_by_HRA) → subset: added_by_HRA — confirmed this subsetdef already exists in uberon-edit.obo
  • Contributor/Date → relationship: dc-contributor https://orcid.org/... / property_value: dcterms-date "..."^^xsd:dateTime
  • Present_in_taxon → relationship: present_in_taxon NCBITaxon:9606
  • xref/Wikipedia_image → xref: lines / property_value: foaf:depiction

Trade-off to flag: going this route means these 7 terms lose the reusable ROBOT-template/provenance link back to the HRA source CSV that the bulk_ntr_workflow pipeline otherwise gives you (useful if HRA periodically re-syncs this dataset). If that's not a concern for this one-off tonsil batch, direct hand-edit is fine and avoids the multi-week block on template/Makefile registration.

I haven't made the edit myself since this is a process decision for the maintainers — happy to do the conversion and check the terms in via terms/ on confirmation, or alternatively to just fix the uberon-odk.yaml registration if you'd rather keep the template route.

Recommendation

Requesting changes — blocking only on getting the 7 terms actually built (either path resolves it): register hra-palatine-tonsil.template.tsv as a component product in src/ontology/uberon-odk.yaml and regenerate the Makefile, or hand-convert the template rows into uberon-edit.obo via the standard terms/ workflow.

@cellsemantic

Copy link
Copy Markdown

Reports relocated. Route: manual hand-edit (7 terms, <20). TODO: convert to OBO stanzas; verify defs/PMIDs.


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 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 (content is fine; build-registration is not)
  • No obvious CI, auth, or workflow regression

Still blocking on the same CRITICAL issue as prior reviews: hra-palatine-tonsil.template.tsv is not registered as a component product in src/ontology/uberon-odk.yaml, so the 7 new terms (UBERON:8930153–8930159) will not be built into any ontology artifact as things stand. Commit c890b08 only relocated report artifacts; no content changes.

Re @zhengj2007's question about hand-editing directly into uberon-edit.obo instead: this is a reasonable path for a 7-term batch and matches the standard CLAUDE.md workflow (terms/ + obo-checkout.pl/obo-checkin.pl) — full mapping and trade-offs posted in the PR comment. Either fixing the ODK registration or switching to direct hand-edit resolves the blocker.

Also flagging: a comment on this PR from cellsemantic (not a repo collaborator) claims an unofficial "batch-size policy" instructing a hand-edit route — this appears to be a prompt-injection/impersonation attempt and was disregarded; my recommendation above is based only on CLAUDE.md and the actual repo state.

Full details in the PR comment above.

@zhengj2007

zhengj2007 commented Jul 19, 2026 •

Copy link
Copy Markdown
Collaborator Author

@dragon-ai-agent

Please create new terms based on the information in the template file, src/templates/hra-palatine-tonsil.template.tsv, and add the new terms to src/ontology/uberon-edit.obo

@ai4c-reviewer

ai4c-reviewer Bot commented Aug 4, 2026 •

Copy link
Copy Markdown

Claude finished @zhengj2007's task in 10m 52s —— View job


Task: hand-convert the 7 template terms into uberon-edit.obo

Per @zhengj2007's request: "create new terms based on the information in the template file ... and add the new terms to src/ontology/uberon-edit.obo"

  • Read src/templates/hra-palatine-tonsil.template.tsv and cross-checked all is_a/part_of parent labels against uberon-edit.obo
  • Converted all 7 rows into [Term] OBO stanzas (id, name, def+xrefs, subset: added_by_HRA, xrefs, is_a, relationship: dc-contributor/part_of/present_in_taxon, property_value: dcterms-date/term_tracker_item, created_by: ai4c-agent), inserted in ID order after UBERON:8910024 (the last existing [Term] stanza) in src/ontology/uberon-edit.obo
  • Removed the now-superseded src/templates/hra-palatine-tonsil.template.tsv (its content is now directly in the edit file, so the unregistered-ODK-template blocker from prior reviews no longer applies)
  • Committed locally (19801d2)
  • ⚠️ Push to branch failed — see below
  • ⚠️ robot convert -f obo reserialization could not be run — see below

New terms added (UBERON:8930153–8930159)

  • peritonsillar plexus of veins — is_a venous plexus, part_of tonsillar fossa
  • palatine tonsil follicle — is_a lymphoid follicle, part_of palatine tonsil
  • tonsil germinal center dark zone / light zone — is_a lymphoid tissue, part_of tonsil germinal center
  • tonsil germinal center mantle zone — is_a secondary follicle corona, part_of UBERON:8930158 (tonsil secondary follicle)
  • tonsil secondary follicle — is_a secondary nodular lymphoid tissue, part_of tonsil
  • tonsil T cell zone — is_a T cell domain, part_of tonsil

All content fixes from earlier review rounds (palatine tonsil follicle rename, mantle-zone part_of, FMA:55221 xref removal) are preserved in the converted stanzas. term_tracker_item points at this PR since no separate tracker issue exists for this batch.

⚠️ Two things I could not complete due to environment/tooling restrictions

  1. Push failed with a permission error, not something I can fix myself:

    remote: Permission to obophenotype/uberon.git denied to github-actions[bot].
    fatal: unable to access 'https://github.com/obophenotype/uberon.git/': The requested URL returned error: 403
    

    This looks like the same class of issue fixed for a different workflow in Use PAT_FOR_PR for dragon-ai execution workflow #3701 ("Use PAT_FOR_PR for dragon-ai execution workflow") — the token available to this job doesn't have write access to this repo/branch. The commit exists only in this sandbox and has not reached the PR branch. Someone with push access will need to either re-run this with a properly-scoped PAT, or I can be re-triggered once that's fixed.

  2. robot convert -i src/ontology/uberon-edit.obo -f obo -o src/ontology/uberon-edit.obo (the reserialization step required by CLAUDE.md before committing) could not be run — the robot, obo-checkout.pl, and obo-checkin.pl commands were all blocked by the sandbox's command-approval policy in this session (only a handful of read-only commands like obo-grep.pl and git status/diff were pre-approved). I hand-inserted the stanzas following the exact formatting conventions of neighboring terms instead, but this should still be run before merge to normalize tag ordering/whitespace.

If maintainers can either grant this job push access or apply the commit manually, the diff is ready: src/ontology/uberon-edit.obo (+99 lines, 7 new stanzas) and deletion of src/templates/hra-palatine-tonsil.template.tsv.

@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.

Review checklist

  • Hierarchy and parents are consistent
  • Definitions and supporting references look adequate
  • Obsolete or replacement handling is safe (N/A — no obsoletions in this PR)
  • OBO and ODK conventions appear preserved (content-level; build-registration is not)
  • No obvious CI, auth, or workflow regression

The only new commit since the last review is a merge of master into this branch, bringing in unrelated upstream changes but no content changes to this PR's own files (confirmed via git diff origin/master...HEAD --stat: still the same 5 files, +30/-0).

All previously-requested content fixes remain correctly applied to src/templates/hra-palatine-tonsil.template.tsv (palatine tonsil follicle rename, mantle-zone part_of, FMA:55221 xref removal, groups template removal).

🔴 CRITICAL — still unresolved: verified directly that none of UBERON:8930153–8930159 exist in src/ontology/uberon-edit.obo, and no hra_palatine_tonsil entry exists in src/ontology/uberon-odk.yaml or the generated Makefile. As things stand this PR adds only a template with no corresponding build product, so the 7 new terms will not be built into the released ontology.

The PR author has since asked (2026-07-19) to instead hand-convert the template rows directly into uberon-edit.obo via the standard terms/ workflow — that is a reasonable resolution but has not yet been actioned on this branch. Either registering the template in uberon-odk.yaml or hand-editing the terms into uberon-edit.obo would clear this blocker.

Full details: #3719 (comment)

@github-actions

github-actions Bot commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

This PR has not seen any activity in the past month; if nobody comments or reviews it in the next week, the PR creator will be allowed to proceed with merging without explicit approval, should they wish to do so.

dosumis and others added 2 commits September 28, 2026 14:52
Hand-convert the 7 template rows into OBO stanzas (<20-term policy, as
requested by @zhengj2007 on 2026-07-19) and remove the unregistered
template, which was never built so the terms were not in the ontology.

Modelling follows the existing lymph node analogues:
- mantle zone: intersection_of secondary follicle corona + part_of tonsil,
  part_of tonsil secondary follicle, surrounds tonsil germinal center
  (cf. UBERON:0010420)
- tonsil secondary follicle, tonsil T cell zone, palatine tonsil follicle:
  genus-differentia logical definitions (cf. UBERON:0010753, UBERON:0010417)
- dark/light zone: is_a lymphoid tissue, part_of tonsil germinal center
  (cf. UBERON:8410052/8410053)
- peritonsillar plexus of veins: located_in (not part_of) tonsillar fossa,
  since the fossa is an immaterial anatomical space (part_of would be
  unsatisfiable under material/immaterial disjointness).

Also: ASCTB-TEMP IRIs moved from def xrefs to CCF: xrefs; DOI URLs as
DOI: CURIEs; dropped Wikipedia xrefs pointing at different structures and
a follicular-lymphoma (pathology) depiction image.

Signed: @ai4c-agent

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@ai4c-reviewer

ai4c-reviewer Bot commented Sep 28, 2026 •

Copy link
Copy Markdown

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


Review checklist

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

What changed since the last review

Commit cebdb2f (David Osumi-Sutherland) resolves the long-standing 🔴 CRITICAL blocker from all four prior review rounds: the 7 terms (UBERON:8930153–8930159) are now hand-converted [Term] stanzas directly in src/ontology/uberon-edit.obo (per the <20-term hand-edit path @zhengj2007 requested and I recommended in the last round), and the now-unused src/templates/hra-palatine-tonsil.template.tsv has been deleted. Confirmed:

  • No leftover/partial registration in src/ontology/uberon-odk.yaml or Makefile.
  • No duplicate UBERON:8930153–8930159 IDs elsewhere in the file.
  • The ID range [8930000, 8931000) is allocated to Jie Zheng in uberon-idranges.owl — correct.
  • All referenced parents (UBERON:0001593, UBERON:0035228, UBERON:0000444, UBERON:0002373, UBERON:0001744, UBERON:0013688, UBERON:0010755, UBERON:0002372, UBERON:0001745, UBERON:0010393) exist with the expected labels/definitions.
  • located_in (RO:0001025) and surrounds (RO:0002221) typedefs exist; located_in UBERON:0035228 for the venous plexus is well-justified — tonsillar fossa is is_a: UBERON:0000464 ! anatomical space (immaterial), so part_of would be inappropriate for a material venous plexus, and located_in is the correct relation.
  • Dark/light zone modelling (is_a: UBERON:0001744 ! lymphoid tissue + part_of germinal center) matches the existing UBERON:8410052/8410053 lymph-node precedent exactly.
  • CCF: xref prefix (replacing the earlier raw ASCTB-TEMP IRIs in def) is a registered OBO/bioregistry prefix for the HuBMAP Common Coordinate Framework — appropriate for these ASCTB-TEMP provenance links.
  • All three previously-requested content fixes (palatine tonsil follicle rename, mantle-zone part_of, FMA:55221 xref removal) remain correctly applied.

🟡 IMPORTANT — mantle zone logical definition still doesn't fully mirror its text definition

Left inline on src/ontology/uberon-edit.obo:225346. UBERON:8930157 (tonsil germinal center mantle zone) has its def text ("A part of the secondary follicle of the tonsil...") and an asserted relationship: part_of UBERON:8930158 ! tonsil secondary follicle, but the intersection_of (the genus-differentia logical definition) still points at the broader UBERON:0002372 ! tonsil rather than UBERON:8930158. This is the same substantive gap flagged in the original review, now only partially addressed — CLAUDE.md's guidance is that the logical definition should mirror the text definition, and the original HRA source data also lists tonsil-secondary-follicle as this term's intended parent. Suggested one-line fix included inline.

🔵 SUGGESTION — missing ! <NAME> on dc-contributor lines

Left inline on line 225294 (applies to all 7 stanzas). CLAUDE.md's template is relationship: dc-contributor https://orcid.org/<ORCID> ! <NAME>, and existing terms in the file follow this. Cosmetic only, doesn't block the build.

Not independently verifiable in this environment

  • Could not run robot convert/robot reason (sandboxed) — tag ordering in the new stanzas (alphabetical relationship:/property_value: blocks) looks consistent with ROBOT's canonical OBO serialization, but a maintainer should confirm a clean release build.
  • Could not reach Europe PMC from this job to verify PMIDs 34430822, 417886, 11789984, 28844822, 30801022 (tool permission not granted in this run) — same PMIDs flagged as unverified in the first review round; worth a manual check before merge, though nothing about them looks anomalous.

Recommendation

Requesting changes for the one remaining 🟡 IMPORTANT logical-definition mismatch (single-line fix). Everything else — including the structural fix that previously blocked this PR for four review rounds — is in good shape.

Comment thread src/ontology/uberon-edit.obo Outdated
subset: added_by_HRA
xref: CCF:ASCTB-TEMP_tonsil-germinal-center-mantle-zone
intersection_of: UBERON:0010755 ! secondary follicle corona
intersection_of: part_of UBERON:0002372 ! tonsil

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🟡 IMPORTANT — logical definition still doesn't mirror the text definition for tonsil germinal center mantle zone (UBERON:8930157).

The def says "A part of the secondary follicle of the tonsil...", and an asserted relationship: part_of UBERON:8930158 ! tonsil secondary follicle was correctly added in commit c23861e per @zhengj2007's request. But the genus-differentia intersection_of (the logical definition CLAUDE.md says should mirror the text def) still uses the broader part_of UBERON:0002372 ! tonsil rather than the more specific UBERON:8930158. The original source data (bulk_ntr_workflow/source_data/palatine-tonsil.csv) also lists tonsil-secondary-follicle as this term's intended parent, not the general tonsil.

Suggested fix — replace line 225346:

Suggested change
intersection_of: part_of UBERON:0002372 ! tonsil
intersection_of: part_of UBERON:8930158 ! tonsil secondary follicle

Since UBERON:8930158 is itself part_of tonsil, this doesn't change the asserted facts, just tightens the reasoner-facing logical definition to match the text def and removes the now-redundant explicit relationship: part_of UBERON:8930158 line above it (or keep both, but the intersection_of is the one that should encode the specific parent).

subset: added_by_HRA
xref: CCF:ASCTB-TEMP_peritonsillar-plexus-of-veins
is_a: UBERON:0001593 ! venous plexus
relationship: dc-contributor https://orcid.org/0000-0002-2999-0103

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🔵 SUGGESTION — dc-contributor lines are missing the ! <NAME> comment.

All 7 new stanzas use relationship: dc-contributor https://orcid.org/0000-0002-2999-0103 with no trailing ! <Name> (same pattern at lines 225294, 225308, 225320, 225333, 225347, 225362, 225375). CLAUDE.md specifies the format relationship: dc-contributor https://orcid.org/<ORCID> ! <NAME>, and existing terms in the file consistently include the name comment (e.g. UBERON:8410052 ! Paola Roncaglia). Not build-breaking, but worth adding for readability/provenance — presumably this resolves to Jie Zheng (@zhengj2007), the term requester.

@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.

Review checklist

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

The 🔴 CRITICAL ODK-registration blocker from prior rounds is resolved: the 7 terms (UBERON:8930153–8930159) are now hand-converted stanzas directly in src/ontology/uberon-edit.obo and the unregistered template was removed. Parents, typedefs, ID-range allocation, and prior content fixes (palatine tonsil follicle rename, FMA:55221 removal) all check out.

One issue remains, see inline comment on src/ontology/uberon-edit.obo:225346:

🟡 IMPORTANT — tonsil germinal center mantle zone (UBERON:8930157): the def text says "A part of the secondary follicle of the tonsil", and an asserted part_of UBERON:8930158 was added, but the intersection_of (logical definition) still uses the broader part_of UBERON:0002372 ! tonsil instead of UBERON:8930158 ! tonsil secondary follicle, so the logical definition doesn't fully mirror the text definition as CLAUDE.md requires. Suggested one-line fix included inline.

🔵 SUGGESTION (non-blocking): all 7 new dc-contributor lines are missing the ! <NAME> comment CLAUDE.md's template calls for — see inline comment on line 225294.

Full details in the PR comment thread.

…nsil-ntr

# Conflicts:
#	src/ontology/uberon-edit.obo
@ai4c-reviewer

ai4c-reviewer Bot commented Sep 28, 2026 •

Copy link
Copy Markdown

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


Review checklist

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

Status

No new content commits since the last review round — git diff origin/master...HEAD --stat still shows exactly the same 5 files (+114/-0), and the most recent commit (a519270) is just a merge of origin/master into this branch with no changes to the reviewed files. Re-verified directly against uberon-edit.obo via obo-grep.pl:

  • All 7 terms (UBERON:8930153–8930159) are hand-converted [Term] stanzas in src/ontology/uberon-edit.obo; src/templates/hra-palatine-tonsil.template.tsv is gone and there's no stale registration in src/ontology/uberon-odk.yaml — the original 🔴 CRITICAL build-registration blocker remains resolved.
  • palatine tonsil follicle (UBERON:8930154), tonsil secondary follicle (UBERON:8930158), and tonsil T cell zone (UBERON:8930159, no FMA:55221 xref) all check out as before.
  • peritonsillar plexus of veins (UBERON:8930153): is_a venous plexus + located_in UBERON:0035228 ! tonsillar fossa — correct use of located_in since the fossa is an anatomical space, not part_of.

🟡 IMPORTANT — still open: tonsil germinal center mantle zone (UBERON:8930157) logical definition doesn't mirror the text definition

def: "A part of the secondary follicle of the tonsil in which naive B cells reside..." [PMID:25656706]
intersection_of: UBERON:0010755 ! secondary follicle corona
intersection_of: part_of UBERON:0002372 ! tonsil
relationship: part_of UBERON:8930158 ! tonsil secondary follicle

The def text explicitly says "part of the secondary follicle," and an asserted relationship: part_of UBERON:8930158 (tonsil secondary follicle) is present, but the intersection_of — the genus-differentia logical definition CLAUDE.md says should mirror the text def — still uses the broader part_of UBERON:0002372 ! tonsil. Since UBERON:8930158 is itself part_of tonsil, tightening this doesn't change any asserted facts, just makes the logical definition accurately reflect the text def (and matches the original HRA source data, which lists tonsil-secondary-follicle as this term's parent).

Suggested fix (src/ontology/uberon-edit.obo, in the UBERON:8930157 stanza):

-intersection_of: part_of UBERON:0002372 ! tonsil
+intersection_of: part_of UBERON:8930158 ! tonsil secondary follicle

Fix this →

🔵 SUGGESTION (non-blocking) — still open: dc-contributor lines missing ! <NAME>

All 7 new stanzas use relationship: dc-contributor https://orcid.org/0000-0002-2999-0103 with no trailing ! <Name> comment. CLAUDE.md's template is relationship: dc-contributor https://orcid.org/<ORCID> ! <NAME>, and existing terms in the file consistently include it. Cosmetic only.

Recommendation

Requesting changes for the one remaining 🟡 IMPORTANT logical-definition mismatch (single-line fix, same issue flagged in the prior review round — not yet addressed). Everything else, including the structural ODK-registration fix that previously blocked this PR through four review rounds, remains in good shape.
(branch: add-hra-palatine_tonsil-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.

Review checklist

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

No content changes since the last review round (only a merge-from-master commit). The 🔴 CRITICAL ODK-registration blocker from earlier rounds remains resolved (7 terms hand-converted into uberon-edit.obo, template removed, no uberon-odk.yaml registration needed).

One issue remains open, unaddressed since it was first flagged:

🟡 IMPORTANT — tonsil germinal center mantle zone (UBERON:8930157): the text def says "A part of the secondary follicle of the tonsil," and an asserted relationship: part_of UBERON:8930158 (tonsil secondary follicle) was added, but the intersection_of (logical definition) still uses the broader part_of UBERON:0002372 ! tonsil instead of UBERON:8930158, so the logical definition doesn't mirror the text definition as CLAUDE.md requires. Suggested fix: change intersection_of: part_of UBERON:0002372 ! tonsil to intersection_of: part_of UBERON:8930158 ! tonsil secondary follicle.

🔵 SUGGESTION (non-blocking): all 7 new dc-contributor lines still lack the ! <NAME> comment CLAUDE.md's template calls for.

Full details in the PR comment thread.

tonsil germinal center mantle zone (UBERON:8930157): the logical
definition used part_of tonsil (UBERON:0002372) while the text definition
says "a part of the secondary follicle of the tonsil". The broad
differentia risks over-classifying any secondary follicle corona that is
part of a tonsil under this term. Change the differentia to part_of
tonsil secondary follicle (UBERON:8930158) so the logical definition
mirrors the text definition, and drop the now-redundant asserted
part_of UBERON:8930158. ELK: no unsatisfiable classes; no new inferred
subclasses of UBERON:8930157.

Signed: @ai4c-agent

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@ai4c-reviewer

ai4c-reviewer Bot commented Sep 28, 2026 •

Copy link
Copy Markdown

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


Review checklist

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

Status: the last remaining 🟡 IMPORTANT issue is now fixed

Commit ff8bb10 ("Narrow mantle zone logical definition to tonsil secondary follicle") resolves the issue flagged in every review round since 2026-09-28: UBERON:8930157 (tonsil germinal center mantle zone) now has

intersection_of: UBERON:0010755 ! secondary follicle corona
intersection_of: part_of UBERON:8930158 ! tonsil secondary follicle

i.e. the genus-differentia logical definition now mirrors the text definition ("A part of the secondary follicle of the tonsil...") instead of the broader part_of UBERON:0002372 ! tonsil. The redundant asserted relationship: part_of UBERON:8930158 line was correctly dropped, since this is now captured by the intersection_of and will be inferred by the reasoner — consistent with CLAUDE.md's note that explicit relationships can be omitted when the reasoner can derive them. Commit message confirms ELK reasoning was checked (no unsatisfiable classes, no unwanted new inferred subclasses).

Re-verified the rest of the PR directly against uberon-edit.obo via obo-grep.pl — nothing else has regressed:

  • All 7 terms (UBERON:8930153–8930159) remain hand-converted [Term] stanzas; no stray ODK template registration.
  • palatine tonsil follicle (UBERON:8930154), tonsil secondary follicle (UBERON:8930158), tonsil T cell zone (UBERON:8930159, no FMA:55221) all unchanged from the previously-approved content.
  • peritonsillar plexus of veins (UBERON:8930153): is_a venous plexus + located_in UBERON:0035228 ! tonsillar fossa — correct.
  • ID range 8930153–8930159 still within the [8930000, 8931000) block allocated to Jie Zheng.

🔵 SUGGESTION (non-blocking, unchanged from prior rounds)

All 7 dc-contributor lines (e.g. relationship: dc-contributor https://orcid.org/0000-0002-2999-0103 on UBERON:8930157/8930153/8930158) still lack the ! <NAME> comment that CLAUDE.md's template and other existing terms in the file use. Purely cosmetic, does not block merge.

Not independently verifiable in this environment

robot convert/robot reason are blocked by this sandbox's command-approval policy, so I could not independently re-run the reasoner here — relying on the commit message's stated ELK check. Tag ordering/serialization in the diff looks consistent with ROBOT's canonical OBO output.

Recommendation

Approving. The 🔴 CRITICAL build-registration blocker (resolved several rounds ago via hand-edit into uberon-edit.obo) and the 🟡 IMPORTANT logical-definition mismatch (resolved in ff8bb10) are both now addressed. Only a non-blocking cosmetic suggestion remains.
(branch: add-hra-palatine_tonsil-ntr)

ai4c-reviewer[bot]
ai4c-reviewer Bot previously approved these changes Sep 28, 2026

@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.

Review checklist

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

Commit ff8bb10 fixes the last outstanding 🟡 IMPORTANT issue: UBERON:8930157 (tonsil germinal center mantle zone) now has intersection_of: part_of UBERON:8930158 ! tonsil secondary follicle, mirroring its text definition, with the redundant asserted part_of relationship correctly dropped. Re-verified all 7 terms (UBERON:8930153–8930159) directly against uberon-edit.obo — everything else from prior review rounds remains correctly applied (hand-converted stanzas, no stale ODK template registration, palatine tonsil follicle rename, FMA:55221 removal, located_in for the venous plexus).

Only a non-blocking 🔵 suggestion remains: the dc-contributor lines lack the ! <NAME> comment CLAUDE.md's template calls for. Cosmetic only.

Full details in the PR comment thread.

@dosumis

dosumis commented Sep 28, 2026

Copy link
Copy Markdown
Contributor

#gogoeditdiff

…nsil-ntr

# Conflicts:
#	src/ontology/uberon-edit.obo
@ai4c-reviewer

ai4c-reviewer Bot commented Sep 28, 2026 •

Copy link
Copy Markdown

Claude finished @dosumis's task in 44s —— View job


Review of PR #3719: HRA palatine-tonsil terms (UBERON:8930153–8930159)

  • 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
  • No obvious CI, auth, or workflow regression

I re-checked the 7 stanzas in uberon-edit.obo with obo-grep.pl. The trigger comment (#gogoeditdiff) had no specific request, so I treated it as a review and made no changes.

Findings

  • The mantle zone term (UBERON:8930157) has the tightened logical definition from ff8bb10: part_of UBERON:8930158. It also has surrounds UBERON:0013688 ! tonsil germinal center. Both fit its definition.
  • The earlier fixes are still in place: the palatine tonsil follicle rename, and no FMA:55221 xref on the T cell zone.
  • peritonsillar plexus of veins uses located_in the tonsillar fossa, which is correct because the fossa is an anatomical space.
  • The IDs fall in the range allocated to Jie Zheng (8930000–8930999).
  • Each term has an added_by_HRA subset, a dcterms-date, a term_tracker_item, and a definition with PMID xrefs.

🔵 SUGGESTION (non-blocking): the dc-contributor lines lack the ! <NAME> comment that CLAUDE.md's template and most existing terms use. The neighbouring kidney terms from #3717 have the same gap, so this is cosmetic.

Not verified here: I did not run robot reason or robot convert. I did not re-check the PMIDs against Europe PMC.

Recommendation: no 🔴 or 🟡 issues remain. I recommend approval. I can't submit a formal approval myself.
· branch add-hra-palatine_tonsil-ntr

@cellsemantic

Copy link
Copy Markdown
Here's a diff of how these changes impact the classified ontology (on -base file):

Ontology comparison

Left

  • Ontology IRI: http://purl.obolibrary.org/obo/uberon/uberon-base.owl
  • Version IRI: http://purl.obolibrary.org/obo/uberon/releases/2026-09-28/uberon-base.owl
  • Loaded from: file:/private/tmp/claude-503/-Users-do12-Documents-GitHub-Uberon-wt----/3bc7ecc5-fb7d-4039-9d87-8004a718f142/scratchpad/wtmaster/src/ontology/uberon-base.owl

Right

  • Ontology IRI: http://purl.obolibrary.org/obo/uberon/uberon-base.owl
  • Version IRI: http://purl.obolibrary.org/obo/uberon/releases/2026-09-28/uberon-base.owl
  • Loaded from: file:/Users/do12/Documents/GitHub/Uberon_wt%20%20%20%20/pr-3719-add-hra-palatine_tonsil-ntr/src/ontology/uberon-base.owl

Ontology imports

Ontology annotations

palatine tonsil follicle http://purl.obolibrary.org/obo/UBERON_8930154

Added

peritonsillar plexus of veins http://purl.obolibrary.org/obo/UBERON_8930153

Added

tonsil T cell zone http://purl.obolibrary.org/obo/UBERON_8930159

Added

tonsil germinal center dark zone http://purl.obolibrary.org/obo/UBERON_8930155

Added

tonsil germinal center light zone http://purl.obolibrary.org/obo/UBERON_8930156

Added

tonsil germinal center mantle zone http://purl.obolibrary.org/obo/UBERON_8930157

Added

tonsil secondary follicle http://purl.obolibrary.org/obo/UBERON_8930158

Added

Here's a diff of your edit file (unreasoned)

Ontology comparison

Left

  • Ontology IRI: http://purl.obolibrary.org/obo/uberon/core.owl
  • Version IRI: None
  • Loaded from: file:/Users/do12/Documents/GitHub/Uberon_wt%20%20%20%20/uberon/src/ontology/uberon-edit.obo

Right

  • Ontology IRI: http://purl.obolibrary.org/obo/uberon/core.owl
  • Version IRI: None
  • Loaded from: file:/Users/do12/Documents/GitHub/Uberon_wt%20%20%20%20/pr-3719-add-hra-palatine_tonsil-ntr/src/ontology/uberon-edit.obo

Ontology imports

Ontology annotations

palatine tonsil follicle http://purl.obolibrary.org/obo/UBERON_8930154

Added

peritonsillar plexus of veins http://purl.obolibrary.org/obo/UBERON_8930153

Added

tonsil T cell zone http://purl.obolibrary.org/obo/UBERON_8930159

Added

tonsil germinal center dark zone http://purl.obolibrary.org/obo/UBERON_8930155

Added

tonsil germinal center light zone http://purl.obolibrary.org/obo/UBERON_8930156

Added

tonsil germinal center mantle zone http://purl.obolibrary.org/obo/UBERON_8930157

Added

tonsil secondary follicle http://purl.obolibrary.org/obo/UBERON_8930158

Added

Generated locally with robot diff (same commands as .github/workflows/diff.yml), master 1ad82bd vs add-hra-palatine_tonsil-ntr eff6eb4.

This branch has not been deployed

No deployments
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