# MedicalConcept

Model ID: `MedicalConcept`

A unified medical concept node.

Validates both an Algolia hit (concept metadata) and a full Neo4j node
(`c { .* }`). Only optional fields — pre-migration SNOMED nodes may carry just
`sctid`, and stub/dangling endpoints may carry only `id`, so nothing is
guaranteed; callers filter those out before returning them as concepts.

Type: `object`

## Fields

| Field | Type | Required | Format | Allowed values | Default | Nullable | Description |
|---|---|---:|---|---|---|---:|---|
| `active` | `boolean|null` | No |  |  |  | Yes | Whether the SNOMED concept is active (true) or inactive (false), SNOMED concepts only. |
| `code` | `string|null` | No |  |  |  | Yes | Native code (sctid / rxcui / descriptor UI) |
| `definition_status` | `string|null` | No |  |  |  | Yes | SNOMED definition status (e.g. primitive, defined), SNOMED concepts only. |
| `effective_time` | `string|null` | No |  |  |  | Yes | SNOMED effective-time (ISO date the concept version became active), SNOMED concepts only. |
| `fsn` | `string|null` | No |  |  |  | Yes | SNOMED Fully Specified Name, SNOMED concepts only. |
| `id` | `string|null` | No |  |  |  | Yes | Stable cross-vocabulary id, "{VOCAB}:{code}" |
| `module_id` | `string|null` | No |  |  |  | Yes | SNOMED module id, SNOMED concepts only. |
| `preferred_term` | `string|null` | No |  |  |  | Yes | Human-readable concept name, when available. |
| `score` | `number|null` | No |  |  |  | Yes | Search relevance score (Algolia / fulltext rank) |
| `sctid` | `string|null` | No |  |  |  | Yes | SNOMED CT concept id (sctid), SNOMED concepts only. |
| `semantic_tag` | `string|null` | No |  |  |  | Yes | SNOMED semantic tag (e.g. disorder, procedure, finding), SNOMED concepts only. |
| `synonyms` | `unknown|null` | No |  |  |  | Yes | Alternate terms for the concept, when available; shape varies by vocabulary/source. |
| `top_category` | `unknown|null` | No |  |  |  | Yes | MeSH top-level category (e.g. Diseases), MeSH concepts only; shape varies by source. |
| `tree_numbers` | `unknown|null` | No |  |  |  | Yes | MeSH tree numbers locating the concept in the MeSH hierarchy, MeSH concepts only; shape varies by source. |
| `tty` | `string|null` | No |  |  |  | Yes | RxNorm term type (e.g. IN, SCD, BN), RxNorm concepts only. |
| `vocabulary` | `string|null` | No |  |  |  | Yes | SNOMED \| RXNORM \| MESH |

## Example

None declared in canonical OpenAPI.
