Skip to content

Add HDMF ↔ LinkML mapping conventions documentation#1492

Draft
rly wants to merge 2 commits into
devfrom
feature/1487-linkml-mapping-conventions
Draft

Add HDMF ↔ LinkML mapping conventions documentation#1492
rly wants to merge 2 commits into
devfrom
feature/1487-linkml-mapping-conventions

Conversation

@rly

@rly rly commented Jun 15, 2026

Copy link
Copy Markdown
Contributor

Fixes #1487

Motivation

This adds the initial HDMF ↔ LinkML mapping conventions document, the first deliverable of the "Read and write LinkML schema for HDMF (CSRMatrix / base.yaml)" epic (#1486). Before any reader, writer, or fixtures are built, we need an agreed, written contract for how HDMF Schema Language (HDMFSL) constructs map to LinkML, so that the translation round-trips faithfully into HDMF's Spec objects. This doc is that contract.

It is scoped to the constructs used by base.yaml (Data, Container, SimpleMultiContainer) and sparse.yaml (CSRMatrix), packaged as a minimal test namespace, and explicitly marks what is out of scope so it is not mistaken for a complete mapping.

The new file is docs/source/linkml_mapping.rst, added to the "Resources" toctree in docs/source/index.rst.

How to test the behavior

cd docs
sphinx-build -b html source _build/html
# open _build/html/linkml_mapping.html

Verified: the docs build with 0 warnings, linkml_mapping.html renders, and the page appears under the Resources toctree.

Checklist

  • Did you update CHANGELOG.md?
  • Does the PR clearly describe the problem and the solution?
  • Have you reviewed the Contributing Guide?
  • Does the PR use "Fix #XXX" notation?

Document how HDMF Schema Language constructs map to LinkML for the initial
scope (base.yaml and CSRMatrix, as a minimal test namespace), and add it to
the docs toctree. Addresses #1487.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@codecov

codecov Bot commented Jun 15, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 93.18%. Comparing base (62469df) to head (cfd3f6a).

Additional details and impacted files
@@           Coverage Diff           @@
##              dev    #1492   +/-   ##
=======================================
  Coverage   93.18%   93.18%           
=======================================
  Files          41       41           
  Lines       10176    10176           
  Branches     2103     2103           
=======================================
  Hits         9483     9483           
  Misses        415      415           
  Partials      278      278           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@rly

rly commented Jun 15, 2026

Copy link
Copy Markdown
Contributor Author

@jwbear This is an initial pass of a document that describes the mapping between HDMF Schema Language and LinkML. Please translate sparse.yaml from the HDMF Common namespace into LinkML following these conventions, and add the translated yaml into the doc. If anything is not clear, please ask, and then we should probably clarify the doc. Your fresh eyes looking at this doc will be invaluable is assessing whether it is clear and comprehensive. I suggest we tackle this together with pair programming this week after you are familiar with the task. We can coordinate over Slack.

@rly rly assigned rly and jwbear Jun 15, 2026
@rly rly marked this pull request as draft June 15, 2026 08:08
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
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.

Define the initial HDMF → LinkML mapping conventions

2 participants