# Mapping To Snomed

Maps clinical concept spans extracted by OpenMed to SNOMED CT concepts through a...

- Repository: https://github.com/maziyarpanahi/openmed (5755 stars)
- Category: Writing
- License: Apache-2.0
- Last updated: 2026-10-31
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add maziyarpanahi/openmed --skill mapping-to-snomed -g -a claude-code -y`
Codex: `npx skills add maziyarpanahi/openmed --skill mapping-to-snomed -g -a codex -y`
Cursor: `npx skills add maziyarpanahi/openmed --skill mapping-to-snomed -g -a cursor -y`
Gemini CLI: `npx skills add maziyarpanahi/openmed --skill mapping-to-snomed -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add maziyarpanahi/openmed`

## Description

Maps clinical concept spans extracted by OpenMed to SNOMED CT concepts through a USER-SUPPLIED terminology server (the user's own Ontoserver, Snowstorm, or UMLS/UTS), never a bundled vocabulary. Use when the user wants to code findings, disorders, procedures, body structures, or substances to SNOMED CT, run an ECL query, translate via a ConceptMap, or resolve a span to a concept id with FHIR $lookup/$translate/$validate-code. Trigger keywords: SNOMED CT, SNOMED concept id, ECL, ConceptMap, $translate, $lookup, Ontoserver, Snowstorm, SCTID, post-coordination, terminology server. Pairs after OpenMed NER: consume Disease/Anatomy/Pharmaceutical entities from openmed.analyze_text and map each span out-of-process. SNOMED CT is license-restricted, it is NEVER bundled; the user calls their own affiliate-licensed server.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Mapping OpenMed spans to SNOMED CT

Ground clinical concept spans that OpenMed extracts, disorders, findings,
procedures, body structures, substances, to **SNOMED CT**, the comprehensive
clinical reference terminology. The atom is the **SCTID** (a SNOMED CT concept
identifier), organized into a description-logic hierarchy you can query with
**ECL** (Expression Constraint Language).

> **Hard licensing boundary, read first.** SNOMED CT is **license-restricted**.
> OpenMed and this skill **never bundle, ship, cache, or redistribute** any
> SNOMED CT content. All mapping happens **out-of-process against a terminology
> server the user supplies and is licensed for**, their own **Ontoserver**,
> **Snowstorm**, the NLM's **UTS/UMLS** FHIR endpoint, or a national release
> server. SNOMED International requires an Affiliate License (free in member
> territories like the US via the NLM; check your country). Your code receives a
> **base URL + credentials from the user**; it must work with *any* compliant
> FHIR terminology server and store nothing but the returned codes.

## When to use

- You need rich, hierarchy-aware clinical codes (more granular than ICD-10) for
  problems, procedures, or body sites.
- You want to **translate** an existing code (ICD-10-CM, local code) to SNOMED CT
  via a `ConceptMap`/`$translate`.
- You need subsumption/ECL queries ("is this a descendant of *Diabetes
  mellitus*?") for cohorting or decision support.

For billing codes use `coding-icd10`; for drugs `normalizing-rxnorm`; for labs
`mapping-loinc`. SNOMED CT is the clinical-meaning layer.

## Quick start (user-supplied FHIR terminology server)

Configuration is injected, never hardcoded. The operations are standard FHIR R4.

```python
import os, requests

The rest: https://github.com/maziyarpanahi/openmed/blob/HEAD/skills/mapping-to-snomed/SKILL.md
