Data Sources¶
Every data import is performed in the admin console (Admin → Modules) and executed in the background by admin-worker (there is no longer a CLI data loader). The "import stage" column below gives the actual admin.import_jobs.job_type value — these are the strings a job is created with.
| Dataset | Version / source | How to import (Admin → Modules) | Import stage | Licensing |
|---|---|---|---|---|
| ICD-10-CM / PCS | NLM / CMS 2025 | Upload the zip → import | icd_import |
Public (bring your own zip) |
| LOINC | 2.80 (Regenstrief) | Upload the zip → import | loinc_import |
LOINC license required |
| SNOMED CT | International RF2 | Upload the RF2 zip → import | snomed_import |
SNOMED license required |
| FHIR IG (TWCore and others) | MoHW / packages.fhir.org | Upload package.tgz, or fetch from Admin → IG |
ig_import |
Public |
| Drugs (Taiwan FDA / TFDA) | TFDA 36_2.csv + online crawl |
API fetch + crawl and analysis | drug_index_import → drug_enrichment → drug_analysis |
Open data |
| Taiwan health supplements | TFDA open data | API fetch | health_supplements_sync |
Open data |
| Taiwan food nutrition | TFDA open data | API fetch | food_nutrition_sync |
Open data |
| RxNorm (concept reference) | NLM | Upload RxNorm_full_*.zip → import (for IG ValueSet expansion) |
— | Public |
Notes¶
- Licensed source files (SNOMED, LOINC, the ICD zips, RxNorm, and so on) must be obtained yourself and uploaded under Admin → Sources / Modules.
- The drug domain is a three-stage pipeline (index → online enrichment crawl → OCR/LLM analysis). The crawl and analysis stages require TFDA / OCR / analysis-LLM endpoints to be configured (see
DRUG_*in.env, or manage them in Admin → Settings). See Drug Service. - FHIR IG uses a multi-IG (package-scoped) design; besides the primary IG, dependency packages (such as
hl7.terminology.r4andhl7.fhir.r4.core) can be bound under Admin → Sources. See FHIR IG Service. - RxNorm is currently loaded as concept-only reference terminology, used for TTY expansion of FHIR IG ValueSets. It does not expose a standalone drug interaction tool.
- Embeddings: the
*_embeddingsvector tables are backfilled by each module's separate*_embedjob, runnable or schedulable from the module page. The embedding endpoint lives inadmin.llm_profiles(configured in Admin → Settings, Ollama by default); when the endpoint is unavailable, search falls back to keyword mode automatically.