CEIR-OS Bedienungsanleitung
0.1.0 - ci-build
Germany
CEIR-OS Bedienungsanleitung - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
Snowstorm ist der SNOMED CT Terminologieserver in CEIR-OS. Er stellt eine vollständige FHIR R4-konforme Schnittstelle für SNOMED CT bereit.
| Eigenschaft | Wert |
|---|---|
| Container | ceir-snowstorm |
| Image | snomedinternational/snowstorm:10.8.2 |
| Port | 8090 (Host) -> 8080 (Container) |
| Datenbank | Elasticsearch 8.11.1 |
| FHIR-Version | R4 |
Snowstorm stellt folgende FHIR-Operationen bereit:
Details für einen bekannten SNOMED CT Code abrufen:
curl -s "http://localhost:8090/fhir/CodeSystem/\$lookup?system=http://snomed.info/sct&code=84114007" | jq .
Antwort (gekürzt):
{
"resourceType": "Parameters",
"parameter": [
{ "name": "name", "valueString": "SNOMED CT" },
{ "name": "display", "valueString": "Heart failure" },
{ "name": "property", "part": [
{ "name": "code", "valueCode": "parent" },
{ "name": "value", "valueCode": "84114007" }
]}
]
}
SNOMED CT ValueSets expandieren (z.B. alle Kinder eines Konzepts):
curl -s "http://localhost:8090/fhir/ValueSet/\$expand?url=http://snomed.info/sct?fhir_vs=ecl/<< 84114007&count=10" | jq .
Code-Übersetzungen zwischen Terminologien:
curl -s "http://localhost:8090/fhir/ConceptMap/\$translate?system=http://snomed.info/sct&code=84114007&targetSystem=http://hl7.org/fhir/sid/icd-10" | jq .
Snowstorm unterstützt die SNOMED CT Expression Constraint Language für komplexe Abfragen:
| ECL-Ausdruck | Bedeutung |
|---|---|
<< 84114007 |
Herzinsuffizienz und alle Untertypen |
< 84114007 |
Nur Untertypen (ohne Herzinsuffizienz selbst) |
>> 84114007 |
Herzinsuffizienz und alle Obertypen |
^ 816080008 |
Mitglieder des International Patient Summary RefSets |
< 404684003 : 363698007 = 39057004 |
Klinische Befunde mit Finding Site = Lungenstruktur |
Beispiel: Alle Diabetes-Untertypen finden:
curl -s "http://localhost:8090/fhir/ValueSet/\$expand?url=http://snomed.info/sct?fhir_vs=ecl/<< 73211009&count=20" | jq '.expansion.contains[] | {code, display}'
Der SNOMED CT Browser bietet eine grafische Oberfläche zur Exploration der Terminologie:
| Eigenschaft | Wert |
|---|---|
| Container | ceir-browser |
| Port | 4000 |
| Image | snomedinternational/snomedct-browser:latest |
Öffne http://localhost:4000 im Browser, um SNOMED CT Konzepte zu suchen, Hierarchien zu navigieren und Beziehungen zu erkunden.
Die SNOMED CT ZIP-Datei wird teamintern bereitgestellt und direkt als Volume in den Container gemountet.
Lokal: Die ZIP-Datei wird über SNOMED_PACKAGE_PATH in der .env referenziert. Beim ersten Start entpackt der snomed-unpacker-Container die Datei automatisch in das sct_files-Volume.
CI/CD: In Pipelines kann die ZIP-Datei als Build-Artefakt oder über einen vorbereiteten Volume-Mount bereitgestellt werden.
Der Import erfolgt beim ersten Start automatisch über zwei Init-Container:
sct_files-VolumeDer Importvorgang kann je nach Paketgröße 10-30 Minuten dauern:
# Unpacker-Fortschritt
docker logs ceir-snomed-unpacker
# Importer-Fortschritt
docker logs -f ceir-snomed-importer
Nach erfolgreichem Import wird eine Marker-Datei (.unpacked) im Volume angelegt. Bei einem Neustart wird der Import übersprungen.
Suche nach Konzepten:
curl -s "http://localhost:8090/browser/MAIN/concepts?term=heart+failure&limit=5" | jq '.items[] | {conceptId, fsn: .fsn.term}'
Konzept-Details abrufen:
curl -s "http://localhost:8090/browser/MAIN/concepts/84114007" | jq '{conceptId, fsn: .fsn.term, definitionStatus}'
Beschreibungen eines Konzepts:
curl -s "http://localhost:8090/browser/MAIN/concepts/84114007/descriptions" | jq '.[].term'
| Umgebungsvariable | Standard | Beschreibung |
|---|---|---|
SNOWSTORM_PORT |
8090 |
Host-Port für Snowstorm |
ES_JAVA_OPTS |
-Xms1g -Xmx1g |
Elasticsearch-Speicher |
Snowstorm ist im Schreibmodus konfiguriert (snowstorm.rest.api.readonly=false), um den initialen Import zu ermöglichen. Für Produktionsumgebungen sollte der Lesemodus aktiviert werden.