Resolver Tools
Resolver tools turn free text into ranked OMOP concept candidates. They are
backed by ConceptGroundingService over the omop-graph backend.
If you already have a known identifier, use Concept Tools instead. If you want raw lexical search primitives without the tiered resolver policy, use Search Tools.
concept_ground
Full-featured free-text grounding for clinical terms and source labels.
{
"query": "lung cancer",
"limit": 5,
"domain": "Condition",
"vocabulary_id": "SNOMED",
"parent_ids": [441840]
}
All parameters except query are optional. limit is clamped to 1..20.
parent_ids is an optional ancestry constraint. When provided, returned
concepts must be descendants of at least one listed concept. When omitted, the
grounding search runs without an ancestry constraint.
Response:
{
"query": "lung cancer",
"results": [
{
"concept_id": 4119419,
"concept_name": "Malignant neoplasm of bronchus and lung",
"vocabulary_id": "SNOMED",
"domain_id": "Condition",
"concept_class_id": "Clinical Finding",
"standard_concept": true,
"total_score": 1.0,
"match_kind": "EXACT"
}
],
"grounding_explanation": {
"matched_tier": "EXACT",
"used_embedding": false,
"effective_parent_ids": [441840],
"parent_ids_source": "explicit"
}
}
match_kind indicates which resolver tier produced the result:
| Value | Meaning |
|---|---|
EXACT |
Case-insensitive exact match on concept name or synonym |
FULLTEXT |
PostgreSQL full-text search |
EMBEDDING_NEAREST |
Nearest-neighbour embedding search |
PARTIAL |
ILIKE fragment match used as the last lexical fallback |
The resolver short-circuits on the first tier that returns any result.
Use grounding_explanation when you need to understand how constrained or
strong the result is:
matched_tiertells you which resolver family produced the winning candidatesused_embeddingtells you whether embedding scoring participatedeffective_parent_idsshows the ancestry constraint actually appliedparent_ids_sourceisexplicitwhen the caller suppliedparent_ids, elsenone
For finer control over retrieval strategy, inspect the lower-level lexical and embedding tools directly.