Das Übermitteln von Sequenzdaten erfolgt in mehreren Schritten, um die für die Übermittlung notwendigen FHIR Ressourcen zu übertragen. Anlegen der DocumentReferenceIm ersten Schritt wird eine DocumentReference-Ressource zu den Sequenzdaten angelegt. Dies erfolgt über eine FHIR create-Operation, welche durch einen HTTP-POST-Request abgebildet wird. Die DocumentReference muss insbesondere den SHA256 Hash der Datei enthalten, die später hochgeladen wird. Upload der SequenzdatenAnschließend werden die Sequenzdaten hochgeladen. Beim IGS-Storage handelt es sich um einen S3-kompatiblen Speicher, so dass für den Upload S3-Client-Bibliotheken genutzt werden können. Der Upload-Vorgang erfolgt mittels Chunk Upload in den IGS-Storage. Als Chunk Größe werden 10 MB unterstützt. Die Authentisierung und Autorisierung des Uploads erfolgt mittels Presigned URLs. Das Labormanagementsystem fragt dazu Presigned-URLs für die hochzuladende Datei beim IGS-Service an und nutzt diese im Anschluss für den Upload in den S3. Nach dem Upload muss die Validierung der Sequenzdaten angestoßen werden. Das Ergebnis der Validierung wird in einem Long-Polling Verfahren abgefragt. Dazu sendet das Labormanagementsystem eine Anfrage an den IGS-Service welcher 15 Sekunden lang prüft, ob ein Validierungsergebnis vorliegt und den Status zurück meldet. Das Labormanagementsystem wiederholt die Anfrage, bis ein Validierungsergebnis vorliegt. Je IGS-Meldung können auf diese Weise ein oder zwei Sequenzdaten verknüpft und bereitgestellt werden. Upload der MetadatenIm letzten Schritt erfolgt die Bereitstellung des Sequenzdatenuploads über eine DEMIS-Nachricht, in welcher die entsprechenden IDs der DocumentReference-Ressourcen verlinkt sind. Das Senden der Nachricht erfolgt über die dafür vorgesehene FHIR-Operation EndpunkteDer IGS-Dienst wird wie folgt bereitgestellt:
Sequenzdiagramm
Ablauf
|