labcomplete AIS-Schnittstelle
0.1.0 - ci-build Österreich

labcomplete AIS-Schnittstelle - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Nachrichten

Jede Nachricht ist ein Bundle vom Typ message:

  • Bundle.identifier ist die messageId, eine UUID als urn:uuid (system urn:ietf:rfc:3986). Eine Antwort nennt sie in MessageHeader.response.identifier. MessageHeader.id ist dieselbe UUID.
  • Bundle.timestamp ist der Zeitpunkt des Sendens, in UTC.
  • Der erste Eintrag ist der MessageHeader: eventCoding die Art der Nachricht, focus ihr Inhalt.
  • Die Einträge verweisen über ihre fullUrl (urn:uuid:…) aufeinander.

Die Quittung ack ist keine FHIR-Nachricht, sondern ein Frame des Transports: {"ack": "<messageId>"}.

Nachricht Richtung Profil Inhalt Antwort
request-create AIS → labcomplete request-create Anforderung, Patient, Versicherung, Kasse, Zuweiser und Ordination nur ein Fehler
session-create AIS → labcomplete session-create Sitzung, Benutzer, Zuweiser mit Ordination, Raum, Drucker immer: der Einmal-Link (Sitzung mit Einmal-Link) oder ein Fehler
print-job labcomplete → AIS print-job Druckauftrag und Dokument nur ein Fehler, statt der Quittung
request-updated labcomplete → AIS request-updated der ganze Stand der Anforderung keine
Fehler beide Fehler OperationOutcome keine

Der Rückschrieb

request-updated trägt alles, was labcomplete zur Anforderung hält, und immer vollständig:

  • Die Anforderung (ais-request) trägt die Kennung von labcomplete und, wenn das AIS sie angelegt hat, ihre requestId. meta.versionId ist die Revision, eine ganze Zahl: Es gilt die höchste, und ein neuerer Stand ersetzt einen noch nicht quittierten.
  • Je Auftrag an ein Labor ein ais-order mit basedOn auf die Anforderung; performer ist das Labor, category sagt Erstauftrag oder Nachforderung.
  • Je Parameter ein ais-order-item mit basedOn auf seinen Auftrag. code ist der Kurzname im CodeSystem seines Labors, dazu LOINC und EDIFACT-Nummer, soweit bekannt; billing-type ist die Verrechnung, price der Preis, wenn die Ordination Preise sieht (prices-shown an der Anforderung).
  • Alle drei Ebenen nennen die Anforderung in requisition und tragen in category ihre Ebene und SNOMED CT 108252007 (Laboratory procedure).
  • Proben (Specimen), Formulare (QuestionnaireResponse) und Dokumente (DocumentReference, mit SHA-1-hash und size) hängen am Auftrag.

Proben und Etiketten

Je Etikett eine Specimen, genannt in specimen des Auftrags und jedes Parameters auf diesem Etikett:

labcomplete Specimen
Nummer des Etiketts identifier (https://fhir.labcomplete.at/sid/specimen-label)
Material type: die Bezeichnung als text, die Klassifizierung als Coding
Röhrchenfarbe container.device auf ein enthaltenes Device mit type aus tube-color
Behandlung (gekühlt, gefroren, zentrifugiert, lichtgeschützt) condition: der Code von HL7 (v2-0493 COOL, FROZ, CFU; v2-0376 PRTL), als text das Etikett
Abnahmezeit collection.collected
Lokalisation collection.bodySite, als Text
Angaben zur Lokalisation (etwa Tiefe 2 cm) feature: type.text die Angabe, description Wert und Einheit
Texte auf dem Etikett note
Parameter auf dem Etikett request

Fehlt in einer späteren Revision ein Auftrag oder Parameter, ist er entfernt. Die Kennung eines Parameters bleibt über alle Revisionen gleich; derselbe Katalog-Parameter in zwei Aufträgen sind zwei Parameter mit demselben code.

MessageHeader.focus nennt alle drei Ebenen, weil die Verweise von unten nach oben zeigen: Die Anforderung allein erreicht ihre Aufträge nicht.