DEMIS Wissensdatenbank

Logisches Modell (inkl. Abbildung auf FHIR Ressourcen)

VAR_NAME/Display in CSV
Kardinalität DEMISMandatory csv/Upload
Excel/CSV Abbildung
VAR_CODE
FHIR-Datentyp
Description

Abbildung im Informationsmodell R4 (R5 in hellgrau)

  • Prämisse: subject ist eine nichtnamentliche Betroffene Person (siehe nichtnamentliche Meldung)

Hinweise im Leitfaden

Short description

Hinweise im Leitfaden

Definition

Beispiel

Codierung/Freitext + Sanity Check Angaben

STATUS

1:1TRUE

(tick) 

VARCHAR

code

Versionierung erfolgt über composition status und Timestamp der Übermittlung

Composition.status
https://hl7.org/fhir/r4/composition.html
https://demis.rki.de/fhir/StructureDefinition/NotificationSequence

Status der Testergebnisse-
<status value="final"/>

HL7-Kodierung

https://simplifier.net/packages/hl7.fhir.r4.core/4.0.1/files/80407

DATE_OF_SUBMISSION

1:1

N/A


Wird nicht über die csv-Datei mitgegeben

DATE

dateTime

Datum der Übermittlung

Composition.extension:receptionTimeStamp
https://hl7.org/fhir/r4/composition.html
https://demis.rki.de/fhir/StructureDefinition/NotificationSequence


VOM BACKEND GENERIERTE UND GESETZTE EXTENSION
(vgl. DEMIS Core)

ÜbermittlungsdatumDas Datum der Übergabe an das RKI. Dieses wird vom System gesetzt

DEMIS_NOTIFICATION_ID1:1TRUE (tick)VARCHARstringNotificationID M1
= Meldungs-ID M1

Composition.relatesTo.targetReference.identifier.value
https://hl7.org/fhir/r4/composition.html
https://demis.rki.de/fhir/StructureDefinition/NotificationSequence


Hinweis: es müssen entsprechend noch andere Elemente unter Composition.relatesTo gesetzt werden (vgl. IG und Beispiele)


MeldungsID-M1

Die vom einsendenden Labor generierete, eindeutige UUID, die im Meldevorgang 1 (erste Meldung an das Gesundheitsamt) als MeldungID (NotificationID) verwendet wurde.

<relatesTo>
   <code value="appends"></code>
     <targetReference>
        <type value="Composition"/>
        <identifier>
           <system value="https://demis.rki.de/fhir/NamingSystem/NotificationId"/>
           <value value="f8585efb-1872-4a4f-b88d-8c889e93487b"/>
        </identifier>
     </targetReference>
</relatesTo>

Der Wert muss eine UUID sein:

^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$

GEOGRAPHIC_LOCATION
= 3-Ziff PLZ Patienten

0:1FALSE

(tick)

VARCHAR or VOCABULARY

string

PLZ der Probe/Isolat

Patient.address.postalCode
https://hl7.org/fhir/R4/patient.html
https://demis.rki.de/fhir/StructureDefinition/NotifiedPersonNotByName

ABGEBILDET ÜBER BETROFFENE PERSON (NICHTNAMENTLICH)

  <postalCode value="130">'[0-9]{3}'
HOST_SEX0:1FALSE

(tick) 

VOCABULARY

code

 

Patient.gender
https://hl7.org/fhir/R4/patient.html
https://demis.rki.de/fhir/StructureDefinition/NotifiedPersonNotByName

ABGEBILDET ÜBER BETROFFENE PERSON (NICHTNAMENTLICH)

  <gender value="male"/>https://simplifier.net/packages/hl7.fhir.r4.core/4.0.1/files/81193

HOST_BIRTH_MONTH

0:1FALSE

(tick)



 

Patient.birthDate
https://hl7.org/fhir/R4/patient.html
https://demis.rki.de/fhir/StructureDefinition/NotifiedPersonNotByName

ABGEBILDET ÜBER BETROFFENE PERSON (NICHTNAMENTLICH)

 

   <birthDate value="1978-12"/>

HOST_BIRTH_YEAR

0:1FALSE

(tick)

DATE

date

 

Patient.birthDate
https://hl7.org/fhir/R4/patient.html
https://demis.rki.de/fhir/StructureDefinition/NotifiedPersonNotByName

ABGEBILDET ÜBER BETROFFENE PERSON (NICHTNAMENTLICH)

  <birthDate value="1978-12"/>^[0-9]{4}-[0-9]{2}|[0-9]{4}$
MELDETATBESTAND1:1TRUE(tick)

VARCHAR

string

4 Buchstabencode für den Meldetatbestand. Wird benutzt zur Sortierung nach Erreger oder Erregerspezifische QM etc.

DiagnosticReport.code.coding.code
https://hl7.org/fhir/r4/diagnosticreport.html
https://demis.rki.de/fhir/StructureDefinition/LaboratoryReport (bzw. Unterprofile)


Hinweis: es müssen entsprechend noch andere Elemente unter DiagnosticReport.code gesetzt werden (vgl. IG und Beispiele)


Übermittlungstatbestand

Die Angabe des Übermittlungstatbestandes bezeichnet die Erregergruppe. Der Übermittlungstatbestand leitet sich aus den Profilen des Meldetatbestandes aus den erregerspezifischen Laborbericht-Profilen für die Meldungen nach §7.

<code>
   <coding>
      <system value="https://demis.rki.de/fhir/CodeSystem/notificationCategory"></system>
      <code value="mytp"></code>
      <display value="Mycobacterium tuberculosis/africanum, Mycobacterium bovis; Meldepflicht für den direkten Erregernachweis sowie nachfolgend für das Ergebnis der Resistenzbestimmung; vorab auch für den Nachweis säurefester Stäbchen im Sputum"></display>
   </coding>
</code>

invp (Influenzavirus; Meldepflicht nur für den direkten Nachweis)

mytp (Mycobacterium tuberculosis, Mycobacterium africanum, Mycobacterium bovis; Meldepflicht für den direkten Erregernachweis sowie nachfolgend für das Ergebnis der Resistenzbestimmung; vorab auch für den Nachweis säurefester Stäbchen im Sputum)

ValueSet RKI für Meldetatbestand

(Der jeweils zutreffende Meldetatbestand ist in abgeleiteten erregerspezifischen Laborbericht-Profilen vorgegeben.)

https://wiki.gematik.de/x/CyFgHQ

SPECIES_CODE1:1TRUE(tick)

VOCABULARY

CODE

detailliere Spezies Angabe,

Observation.value.CodableConcept.coding.code
https://hl7.org/fhir/r4/observation.html
https://demis.rki.de/fhir/StructureDefinition/PathogenDetection https://demis.rki.de/fhir/StructureDefinition/PathogenDetectionSequence

Aus AnswerSet-ValueSet für den spezifischen Erreger zu wählen.

Hinweis: es müssen entsprechend noch andere Elemente unter Observation gesetzt werden (vgl. IG und Beispiele)

z.B.:

Observation.code: Über den Upload im Meldeportal fix gesetzt (41852-5); Upload über die Schnittstelle aus den erregerspezifischen LaboratoryTest-Valuesets

Observation.method

Speziesangabe

Ausführliche Beschreibung der Spezies unter Verwendung der erregerspezifischen AnswerSet-Profile der §7 Meldungen

<code>
   <coding>
      <system value="http://loinc.org"></system>
      <code value="41852-5"></code>
      <display value="Microorganism or agent identified in Specimen"></display>
   </coding>
</code>
...
<valueCodeableConcept>
   <coding>
      <system value="http://snomed.info/sct"></system>
      <code value="113861009"></code>
      <display value="Mycobacterium tuberculosis (organism)"></display>
   </coding>
</valueCodeableConcept>


442352004 (Influenza A virus subtype H1N1 (organism))

113861009 (Mycobacterium tuberculosis (organism))

Codiert (SNOMED) Answer Set

https://simplifier.net/rki.demis.laboratory/answerSet<pathogencode>

E.g.: https://simplifier.net/rki.demis.laboratory/answerSetCVDP

SNOMED Code für Severe acute respiratory syndrome coronavirus 2 (organism)

 

SPECIES0:1FALSE(tick)

VOCABULARY

{diverse}

detailliere Spezies Angabe,

Observation.value.CodableConcept.coding.display

Speziesangabe

 

<code>
   <coding>
      <system value="http://loinc.org"></system>
      <code value="92827-5"></code>
      <display value="Mycobacterium tuberculosis complex species identified in Specimen by Sequencing"></display>
   </coding>
</code>
...
<valueCodeableConcept>
   <coding>
      <system value="http://snomed.info/sct"></system>
      <code value="113861009"></code>
      <display value="Mycobacterium tuberculosis (organism)"></display>
   </coding>
</valueCodeableConcept>


SEQUENCING_PLATFORM

1:1TRUE

(tick)

VOCABULARY

code

The sequence platform this sample was obtained from, Instrument, wenn möglich verknüpft mit Plattform, oder unspecided - Plattform

Device.type.coding.code
https://hl7.org/fhir/r4/device.html
https://demis.rki.de/fhir/StructureDefinition/SequencingDevice

Binding an: https://demis.rki.de/fhir/ValueSet/sequencingPlatform [required]

Hinweis: es müssen entsprechend noch andere Elemente unter Device.type gesetzt werden (vgl. IG und Beispiele)

Sequenzierungsplattform

Die Sequenzierungsplattform, die für die Sequenzierung der Probe verwendet wurde.

Die jeweils zutreffende Plattform ist in von der ENA Dokumentation abgeleiteten Profilen vorgegeben.

<type>
   <coding>
      <system value="https://demis.rki.de/fhir/CodeSystem/sequencingPlatform"></system>
      <code value="oxford_nanopore"></code>
      <display value="Oxford Nanopore platform type. nanopore-based electronic single molecule analysis."></display>
   </coding>
</type>

Value Set aus ENA (https://ena-docs.readthedocs.io/en/latest/submit/reads/webin-cli.html#permitted-values-for-platform)

https://wiki.gematik.de/x/CyFgHQ

SEQUENCING_INSTRUMENT

1:1TRUE

(tick)

VOCABULARY

string


Device.deviceName.name
https://hl7.org/fhir/r4/device.html
https://demis.rki.de/fhir/StructureDefinition/SequencingDevice

Binding an: https://demis.rki.de/fhir/ValueSet/sequencingDevice [required]

Hinweis: es müssen entsprechend noch andere Elemente unter Device.deviceName gesetzt werden (vgl. IG und Beispiele)

SequenzierungsgerätDas Sequenzierungsgerät, das für die Sequenzierung der Probe verwendet wurde. Das jeweils zutreffende Instrument ist in von der ENA Dokumentation abgeleiteten Profilen vorgegeben.

<deviceName>
   <name value="gridion"></name>
   <type value="model-name"></type>
</deviceName>

NextSeq_500

Value Set aus ENA (https://ena-docs.readthedocs.io/en/latest/submit/reads/webin-cli.html#permitted-values-for-platform)

https://wiki.gematik.de/x/CyFgHQ

LAB_SEQUENCE_ID1:1TRUE(tick)

VARCHAR

string

own Lab ID (FASTA ID e.g. SARS-CoV-2)

MolecularSequence.identifier.value
https://hl7.org/fhir/r4/molecularsequence.html
https://demis.rki.de/fhir/StructureDefinition/Sequence

Laboreigene ID der ProbeDie eineindeutige ID der Probe, die vom einreichenden Labor verwendet wird.

<identifier>
   <value value="A384"></value>
</identifier>

21008673_lib45604_nextseq_ny0014

Freitext

'[A-z,0-9,-,_]*

LIBRARY_SOURCE

1:1TRUE

Nicht teil der csv, wird durch backend belegt

VARCHAR or VOCABULARY

code


MolecularSequence.type
https://hl7.org/fhir/r4/molecularsequence.html
https://demis.rki.de/fhir/StructureDefinition/Sequence

FIXER WERT ("dna") aus VS sequenceType


muss nicht ins CSV

wird automatisch als "dna" gesetzt

 

<type value="dna"></type>


AUTHOR
(des sequenzierenden Labors)

0:1FALSE

Wir derzeit nicht gesetzt aus Datenschutzgründen

VARCHAR or VOCABULARY

string

Lab of the sequence (Kann man das weglassen?)

MolecularSequence.extension:sequenceAuthor.valueString
https://hl7.org/fhir/r4/molecularsequence.html
https://demis.rki.de/fhir/StructureDefinition/Sequence

Name einer Person, ggf. unabhängig vom Sequenzierenden Labor = Melder

Autor der SequenzAutor der Sequenz und Kontaktperson für Fragen. Dies kann eine Person oder ein Labor sein.

<extension url="https://demis.rki.de/fhir/StructureDefinition/SequenceAuthor">
   <valueString value="Vorname1 Nachname1, Vorname2 Nachname 2"></valueString>
</extension>

Max Mustermann

siehe SEQUENCING_LAB

'[a-z,A-Z,0-9,_,-,' ',',']*'

SEQUENCING_REASON

0:1TRUE

(tick)

VARCHAR or VOCABULARY

code

Reason for the sequencing of this sample (e.g. random sample)

MolecularSequence.extension:sequencingReason.valueCoding.code
https://hl7.org/fhir/r4/molecularsequence.html
https://demis.rki.de/fhir/StructureDefinition/Sequence

Binding an: https://demis.rki.de/fhir/ValueSet/sequencingReason [required]

Grund für die Sequenzierung

Grund für die Sequenzierung dieser Probe (z. B. Zufallsprobe). Der jeweils zutreffende Grund für die Seqeunzierung ist in einem Profil vorgegeben.


<extension url="https://demis.rki.de/fhir/StructureDefinition/SequencingReason">
   <valueCoding>
      <system value="http://snomed.info/sct"></system>
      <code value="255226008"></code>
      <display value="Random (qualifier value)"></display>
   </valueCoding>
</extension>


385644000 (requested)

ValueSet aus SNOMED codes

https://wiki.gematik.de/x/CyFgHQ

ISOLATE

0:*FALSE

(tick)

VARCHAR

string

Identification or description of the specific individual micro-organism from which this sequence was obtained.

Specimen.extension:isolate → valueString
https://hl7.org/fhir/r4/specimen.html
https://demis.rki.de/fhir/StructureDefinition/SpecimenSequence


ID des IsolatesIdentifizierung oder Beschreibung des spezifischen individuellen Mikroorganismus, von dem diese Sequenz gewonnen wurde, um biologische Replikate zu unterscheiden.(warning) Haben wir bisher nicht im FHIR-Beispiel

Freitext

'[a-z,A-Z,0-9,_,-,' ',',']*'

ISOLATION SOURCE_CODE
= SAMPLE_TYPE

1:1TRUE

(tick)

VOCABULARY

code

Describes where and how the sample was taken from the host (SNOMED-Material)

Specimen.type.coding.code
https://hl7.org/fhir/r4/specimen.html
https://demis.rki.de/fhir/StructureDefinition/SpecimenSequence

Hinweis: es müssen entsprechend noch andere Elemente unter Specimen.type gesetzt werden (vgl. IG und Beispiele)

Art des Probenmaterials

Beschreibt den lokalen Ursprung der Probe, von der die Sequenz gewonnen wurde.

Der Wert muss entsprechend aus den Profilen des Meldetatbestandes aus den erregerspezifischen Laborbericht-Profilen für die Meldungen nach §7 im coding Element dargestellt werden.

<type>
   <coding>
      <system value="http://snomed.info/sct"></system>
      <code value="258604001"></code>
      <display value="Upper respiratory specimen (specimen)"></display>
   </coding>
</type>

258500001 (Nasopharyngeal swab (specimen))

119334006 (Sputum specimen (specimen))

https://simplifier.net/rki.demis.laboratory/material<pathogencode>

E.g.: https://simplifier.net/rki.demis.laboratory/materialCVDP

Code für Upper respiratory swab specimen (specimen)

ISOLATION SOURCE

 0:1FALSE

(tick)

VOCABULARY

string


Specimen.type.coding.display


 

<type>
   <coding>
      <system value="http://snomed.info/sct"></system>
      <code value="258604001"></code>
      <display value="Upper respiratory specimen (specimen)"></display>
   </coding>
</type>


DATE_OF_SAMPLING

0:1FALSE

(tick)

DATE

dateTime

Date the sample was taken

Specimen.collection.collectedDateTime
https://hl7.org/fhir/r4/specimen.html
https://demis.rki.de/fhir/StructureDefinition/SpecimenSequence

ProbenentnahmedatumDas Datum, an dem die Probe entnommen wurde.<collectedDateTime value="2022-02-01T09:50:00.000+01:00"/>YYYY-MM-DD

DATE_OF_RECEIVING

1:1 TRUE

(tick)

DATE

dateTime

Date the sample arrived in the lab

 Specimen.receivedTime


 <receivedTime value="2024-08-23T10:28:00.000000+02:00"/>YYYY-MM-DD

DEMIS_SEQUENCE_ID / IGS-ID
(transactionID)


N/A


VARCHAR

Identifier

UUID- generated by DEMIS, reported back to the lab (Quittung), included with notification to health authorities (Formatkontrolle in SurvNet) Prüfziffer in UUID Anteil

Specimen.processing.extension:transactionID
https://hl7.org/fhir/r4/specimen.html
https://demis.rki.de/fhir/StructureDefinition/SpecimenSequence

VOM BACKEND GENERIERTE UND GESETZTE ID
DEMIS-TransactionID (vgl. DEMIS Core)


Transaktions-ID: Verweis auf das Analyseergebnis der Integrierte Molekulare Surveillance (IMS)

UUID - wird von DEMIS generiert, an die Sequenzmetadaten angehöngt und an das Labor per maschinenlesbaren Reports zurückgemeldet und der Meldung an die Gesundheitsbehörden beigefügt.

Definition

Format: IMS-12345-XYZP-XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX

IMS: fester Prefix

12345: 5-stelliger Identifier (DEMIS-Username) des sequenzierenden Labors (Untersuchungslabors). Falls Sie noch nicht registriert sind, wenden Sie sich bitte an demis@rki.de.

XYZP: 4-stelliges DEMIS-Kürzel, welches dem Übermittlungstatbestand direkt zugeordnet wird. Beispielsweise für SARS-CoV-2 lautet das Erreger-Kürzel CVDP.

XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX: automatisch von DEMIS generierte Zeichenfolge mit ASCII-Zeichensatz und dem Muster 8-4-4-4-12.

Beispiel: IMS-10001-CVDP-be8131da-9024-41a4-a53c-3ce0d6f6fe37


'IMS-[0-9]{5}-[A-Z]{4}-[A-z,0-9,-,_]*'

DATE_OF_SEQUENCING

0:1TRUE

(tick)

DATE

dateTime

Date of Sequencing

Specimen.processing.time[x]
https://hl7.org/fhir/r4/specimen.html
https://demis.rki.de/fhir/StructureDefinition/SpecimenSequence

SequenzierungsdatumDas Datum, an dem die Probe sequenziert wurde.<timeDateTime value="2022-03-11T10:40:00.000+01:00"></timeDateTime>YYYY-MM-DD

SEQUENCING_STRATEGY

0:1TRUE

(tick) 


VOCABULARY

code

The sequencing strategy that was used to sequence the sample. This property is based on the ENA documentation.

Specimen.processing.procedure.coding.code
https://hl7.org/fhir/r4/specimen.html
https://demis.rki.de/fhir/StructureDefinition/SpecimenSequence

Binding an: https://demis.rki.de/fhir/ValueSet/sequencingStrategy [required]

Hinweis: es müssen entsprechend noch andere Elemente unter Specimen.processing.procedure gesetzt werden (vgl. IG und Beispiele)


SequenzierungsstrategieDie Sequenzierungsstrategie, die für die Sequenzierung der Probe verwendet wurde. Die Angabe zur Strategie ist in von der ENA Dokumentation abgeleiteten Profilen vorgegeben.

<procedure>
   <coding>
      <system value="https://demis.rki.de/fhir/CodeSystem/sequencingStrategy"></system>
      <code value="amplicon"></code>
   </coding>
</procedure>

WGS

https://ena-docs.readthedocs.io/en/latest/submit/reads/webin-cli.html#permitted-values-for-library-strategy

Kodieren? → ist machbar (Specimen.processing.procedure ist CodeableConcept)

https://wiki.gematik.de/x/CyFgHQ

NAME_AMP_PROTOCOL

0:1 ?FALSE

(tick)

VARCHAR

string

Name des Protokolls

Specimen.processing.description
https://hl7.org/fhir/r4/specimen.html
https://demis.rki.de/fhir/StructureDefinition/SpecimenSequence


Name des SequenzierungsprotokollsName des Protokolls, das für die Sequenzierung der Probe verwendet wurde

<description value="ARTICv4"></description>

CVD_Artic_Protokoll_2.1

'[a-z,A-Z,0-9,_,-,' ',',']*'

ADAPTER

0..*FALSE

(tick)

VARCHAR

string

The sequencing adapters that were used for sequencing.

Substance.description
https://hl7.org/fhir/r4/substance.html
https://demis.rki.de/fhir/StructureDefinition/AdapterSubstance

Hinweis: es müssen entsprechend noch andere Elemente unter Substance gesetzt werden (vgl. IG und Beispiele)

verlinkt über:
Specimen.processing.additive


SequenzierungsadapterAngaben zu den Sequenzierungsadaptern, die für die Sequenzierung verwendet wurden.<Substance xmlns="http://hl7.org/fhir">
   ...
   <code>
      <coding>
         <system value="https://demis.rki.de/fhir/CodeSystem/sequencingSubstances"></system>
         <code value="adapter"></code>
         <display value="Adapter Sequence"></display>
      </coding>
   </code>
   <description value="TAGCGAGT"></description>
</Substance>
'[a-z,A-Z,0-9,_,-,' ',',']*'

PRIMER_SCHEME

0..*FALSE

(tick)

VARCHAR

string

primer scheme that was used during amplicon sequencing, maybe link to github, where sequences are listed

Substance.description
https://hl7.org/fhir/r4/substance.html
https://demis.rki.de/fhir/StructureDefinition/PrimerSubstance

Hinweis: es müssen entsprechend noch andere Elemente unter Substance gesetzt werden (vgl. IG und Beispiele)

verlinkt über:
Specimen.processing.additive

Name des Primer Scheme, das zur Amplicon Sequenzierung benutzt wurde <Substance xmlns="http://hl7.org/fhir">
   ...
   <code>
      <coding>
         <system value="https://demis.rki.de/fhir/CodeSystem/sequencingSubstances"></system>
         <code value="primer"></code>
         <display value="Primer Sequence"></display>
      </coding>
   </code>
   <description value="ARTICv4.1 - https://github.com/artic-network/primer-schemes/blob/master/nCoV-2019/V4.1/SARS-CoV-2.primer.bed"></description>
</Substance>

PRIME_DIAGNOSTIC_LAB.DEMIS_LAB_ID

0:1FALSE

(tick)

VARCHAR

string

DEMIS Participant ID, angeben wenn vorhanden


Einsender der Probe

Organization.identifier.value
https://hl7.org/fhir/R4/organization.html
https://demis.rki.de/fhir/StructureDefinition/SubmittingFacility

Hinweis: es müssen entsprechend noch andere Elemente gesetzt werden (vgl. IG und Beispiele)

verlinkt über: 
Specimen.collection.collector → PractitionerRole.organization



DEMIS-Participant-ID des diagnostischen Hauptlabors, in dem die biologische Probe entnommen wurde<identifier>
   <system value=" https://demis.rki.de/fhir/NamingSystem/DemisParticipantId"></system>
   <value value="10116"></value>
</identifier>

"Einsender"

Organization, kann aber auch eine Person sein, dann wird die Adresse der Praxis angegeben


= SubmittingRole.Organization

PRIME_DIAGNOSTIC_LAB.NAME

1:1TRUE 

(tick)

VARCHAR

string


Einsender der Probe

Organization.name
https://hl7.org/fhir/R4/organization.html
https://demis.rki.de/fhir/StructureDefinition/SubmittingFacility

verlinkt über: 
Specimen.collection.collector → PractitionerRole.organization



<name value="Labor Dr. Limbach &amp; Kollegen GbR"></name>'[a-z,A-Z,0-9,_,-,' ',',']*'

PRIME_DIAGNOSTIC_LAB.EMAIL

1:1TRUE 

(tick)

VARCHAR

string


Organization.telecom:Email.value

https://hl7.org/fhir/R4/organization.html
https://demis.rki.de/fhir/StructureDefinition/SubmittingFacility





PRIME_DIAGNOSTIC_LAB.ADDRESS

1:1TRUE 

(tick)

VARCHAR

string


Einsender der Probe

Organization.address.line
https://hl7.org/fhir/R4/organization.html
https://demis.rki.de/fhir/StructureDefinition/SubmittingFacility

verlinkt über: 
Specimen.collection.collector → PractitionerRole.organization



<address>
   <line value="Im Breitspiel 16"></line>
   <city value="Heidelberg"></city>
   <postalCode value="69126"></postalCode>
   <country value="DE"></country>
</address>
'[a-z,A-Z,0-9,_,-,' ',',']*'

PRIME_DIAGNOSTIC_LAB.CITY

1:1TRUE(tick)

VARCHAR

string


Einsender der Probe

Organization.address.city
https://hl7.org/fhir/R4/organization.html
https://demis.rki.de/fhir/StructureDefinition/SubmittingFacility

verlinkt über: 
Specimen.collection.collector → PractitionerRole.organization



<address>
   <line value="Im Breitspiel 16"></line>
   <city value="Heidelberg"></city>
   <postalCode value="69126"></postalCode>
   <country value="DE"></country>
</address>

PRIME_DIAGNOSTIC_LAB.POSTAL_CODE

1:1TRUE

(tick)

VARCHAR

string


Einsender der Probe

Organization.adress.postalCode
https://hl7.org/fhir/R4/organization.html
https://demis.rki.de/fhir/StructureDefinition/SubmittingFacility

verlinkt über: 
Specimen.collection.collector → PractitionerRole.organization



<address>
   <line value="Im Breitspiel 16"></line>
   <city value="Heidelberg"></city>
   <postalCode value="69126"></postalCode>
   <country value="DE"></country>
</address>
'[0-9]{5}'

PRIME_DIAGNOSTIC_LAB.FEDERAL_STATE

0:1FALSE

(tick) 

VOCABULARY

string


Einsender der Probe

Organization.adress.state
https://hl7.org/fhir/R4/organization.html
https://demis.rki.de/fhir/StructureDefinition/SubmittingFacility

verlinkt über: 
Specimen.collection.collector → PractitionerRole.organization



(warning) Haben wir bisher nicht im FHIR-Beispiel

<address>
   <line value="Im Breitspiel 16"></line>
   <city value="Heidelberg"></city>
   <postalCode value="69126"></postalCode>
   <state value="DE-BW"></state>
   <country value="DE"></country>
</address>

ISO-Code

PRIME_DIAGNOSTIC_LAB.COUNTRY

1:1TRUE 

(tick)

VOCABULARY

string


Einsender der Probe

Organization.address.country

https://hl7.org/fhir/R4/organization.html
https://demis.rki.de/fhir/StructureDefinition/SubmittingFacility

verlinkt über: 
Specimen.collection.collector → PractitionerRole.organization



<address>
   <line value="Im Breitspiel 16"></line>
   <city value="Heidelberg"></city>
   <postalCode value="69126"></postalCode>
   <state value="DE-BW"></state>
   <country value="DE"></country>
</address>


SEQUENCING_LAB.DEMIS_LAB_ID

1:1TRUE

(tick)

VARCHAR

string

DEMIS Participant ID


Sequenzierendes Labor

Organization.identifier.value
https://hl7.org/fhir/R4/organization.html
https://demis.rki.de/fhir/StructureDefinition/NotifierFacility

verlinkt über:
MolecularSequence.performer
Composition.author → PractitionerRole.organisation



<identifier>
   <system value=" https://demis.rki.de/fhir/NamingSystem/DemisParticipantId">>
   <value value="10565"></value>
</identifier>

= Melder

nur Organization

= NotifierFacility

SEQUENCING_LAB.NAME

1:1TRUE

(tick)

VARCHAR

string


Sequenzierendes Labor

Organization.name
https://hl7.org/fhir/R4/organization.html
https://demis.rki.de/fhir/StructureDefinition/NotifierFacility

verlinkt über:
MolecularSequence.performer
Composition.author → PractitionerRole.organisation



<name value="Forschungszentrum Borstel"></name>'[a-z,A-Z,0-9,_,-,' ',',']*'

SEQUENCING_LAB.EMAIL

1:1TRUE

(tick)




Sequenzierendes Labor

Organization.telecom:Email.value

https://hl7.org/fhir/R4/organization.html
https://demis.rki.de/fhir/StructureDefinition/NotifierFacility

verlinkt über:

MolecularSequence.performer
Composition.author → PractitionerRole.organisation





SEQUENCING_LAB.ADDRESS

0:1TRUE

(tick)

VARCHAR

string


Sequenzierendes Labor

Organization.address.line
https://hl7.org/fhir/R4/organization.html
https://demis.rki.de/fhir/StructureDefinition/NotifierFacility

verlinkt über:
MolecularSequence.performer
Composition.author → PractitionerRole.organisation



<address>
   <line value="Parkallee 1"></line>
   <city value="Borstel"></city>
   <postalCode value="23845"></postalCode>
   <country value="DE"></country>
</address>
'[a-z,A-Z,0-9,_,-,' ',',']*'

SEQUENCING_LAB.CITY

1:1TRUE

(tick)

VARCHAR

string


Sequenzierendes Labor

Organization.address.city
https://hl7.org/fhir/R4/organization.html
https://demis.rki.de/fhir/StructureDefinition/NotifierFacility

verlinkt über:
MolecularSequence.performer
Composition.author → PractitionerRole.organisation



<address>
   <line value="Parkallee 1"></line>
   <city value="Borstel"></city>
   <postalCode value="23845"></postalCode>
   <country value="DE"></country>
</address>

SEQUENCING_LAB.POSTAL_CODE

1:1TRUE

(tick)

VARCHAR

string


Sequenzierendes Labor

Organization.address.postalCode
https://hl7.org/fhir/R4/organization.html
https://demis.rki.de/fhir/StructureDefinition/NotifierFacility

verlinkt über:
MolecularSequence.performer
Composition.author → PractitionerRole.organisation



<address>
   <line value="Parkallee 1"></line>
   <city value="Borstel"></city>
   <postalCode value="23845"></postalCode>
   <country value="DE"></country>
</address>
'[0-9]{5}'

SEQUENCING_LAB.FEDERAL_STATE

0:1FALSE

(tick) 

VOCABULARY

string


Sequenzierendes Labor

Organization.address.state
https://hl7.org/fhir/R4/organization.html
https://demis.rki.de/fhir/StructureDefinition/NotifierFacility

verlinkt über:
MolecularSequence.performer
Composition.author → PractitionerRole.organisation



<address>
   <line value="Parkallee 1"></line>
   <city value="Borstel"></city>
   <postalCode value="23845"></postalCode>
   <state value="DE-SH"></state>
   <country value="DE"></country>
</address>
ISO-Code

SEQUENCING_LAB.COUNTRY

1:1TRUE

(tick)




Sequenzierendes Labor

Organization.address.country

https://hl7.org/fhir/R4/organization.html
https://demis.rki.de/fhir/StructureDefinition/NotifierFacility

verlinkt über:
MolecularSequence.performer
Composition.author → PractitionerRole.organisation



<address>
   <line value="Parkallee 1"></line>
   <city value="Borstel"></city>
   <postalCode value="23845"></postalCode>
   <state value="DE-SH"></state>
   <country value="DE"></country>
</address>
ISO-Code

REPOSITORY_NAME

0:1

FALSE


(tick)

VOCABULARY

string

Was the sequence uploaded to a databank (e.g. GISAID, ENA) already, Einschluss keiner oder mehrerer UPLOAD

MolecularSequence.repository.name
https://hl7.org/fhir/R4/molecularsequence.html
https://demis.rki.de/fhir/StructureDefinition/Sequence

(R5: MolecularSequence.formatted.title)

Name des RepositoriumName des Repositorium, in das die die Sequenz bereits hochgeladen wurde oder wird. Es können mehrere Repositorien angegeben werden. Die Angabe zum Repository ist in Profilen vorgegeben.

<repository>
   ...
   <name value="ena"></name>
   ...
</repository>

GISAID

ValueSet REPOSITORY_NAME

https://wiki.gematik.de/x/CyFgHQ

REPOSITORY_LINK

0:1

FALSE


(tick)

HYPERLINK

uri


MolecularSequence.repository.url
https://hl7.org/fhir/R4/molecularsequence.html
https://demis.rki.de/fhir/StructureDefinition/Sequence

(R5: MolecularSequence.formatted.url)

Hyperlink Hyperlink zur Sequenz im Repositorium<repository>
   ...
   <url value="https://www.ebi.ac.uk/ena/browser/view/ERR11049438"></url>
   ...
</repository>

REPOSITORY_ID

0:1

FALSE


(tick)

VARCHAR

string


MolecularSequence.repository.datasetId
https://hl7.org/fhir/R4/molecularsequence.html
https://demis.rki.de/fhir/StructureDefinition/Sequence

(R5: Extension für MolecularSequence.formatted)


Die ID der Sequenz im Repositorium.<repository>
   ...
   <datasetId value="ERR11049438"></datasetId>
</repository>

UPLOAD_DATE

0:1FALSE

(tick)

TIMESTAMP

dateTime


MolecularSequence.repository.extension:sequenceUploadDate.valueDateTime
https://hl7.org/fhir/R4/molecularsequence.html
https://demis.rki.de/fhir/StructureDefinition/Sequence

(R5: MolecularSequence.formatted.creation)

Upload-DatumDas Datum, an dem die Sequenz in das Repositorium hochgeladen wurde<repository>
   <extension url="https://demis.rki.de/fhir/StructureDefinition/SequenceUploadDate">
      <valueDateTime value="2023-03-07"></valueDateTime>
   </extension>
   ...
</repository>

UPLOAD_STATUS

0:1FALSE

(tick)

VOCABULARY

coding


MolecularSequence.repository.extension:sequenceUploadStatus.valueCoding
https://hl7.org/fhir/R4/molecularsequence.html
https://demis.rki.de/fhir/StructureDefinition/Sequence

(R5: Extension für MolecularSequence.formatted)

Status des Upload

Der Status des Uploads gibt wieder, ob die Sequenz z.B: bereits hochgeladen wurde oder der Upload in Vorbereitung ist

Comments

Der Status ist szenarienspezifisch folgendermaßen zu belegen. accepted- bei einem Upload der abegschlossen ist; planned- bei einem Upload der geplant ist, denied  - bei einem Upload der fehlgeschlagen ist. Trifft keines der drei Szenarien zu, so wird "other" als Status verwendet

<repository>
   ...
   <extension url="https://demis.rki.de/fhir/StructureDefinition/SequenceUploadStatus">
      <valueCoding>
         <system value="http://snomed.info/sct"></system>
         <code value="385645004"></code>
      </valueCoding>
   </extension>
   ...
</repository>

397943006 (planned)

ValueSet aus SNOMED codes

https://wiki.gematik.de/x/CyFgHQ

UPLOAD_SUBMITTER

0:1FALSE

Wird derzeit aus Datenschutzgründen nicht erfasst

VARCHAR

string

Name der Person, die den Upload gemacht hat

MolecularSequence.repository.extension:sequenceUploadStatus.valueCoding
https://hl7.org/fhir/R4/molecularsequence.html
https://demis.rki.de/fhir/StructureDefinition/Sequence

(R5: Extension für MolecularSequence.formatted)

 Name des Labors oder der Person, die für den Upload verantwortlich ist.<repository>
   ...
   <extension url="https://demis.rki.de/fhir/StructureDefinition/SequenceUploadSubmitter">
      <valueString value="Vorname Nachname"></valueString>
   </extension>
   ...
</repository>
 


1...*





MolecularSequence.extension:sequenceDocumentReference





FILE

1..*N/A

(tick)

BINARY


Assembliert: fasta-Format, Rohdaten: fastq Format, Einschluss mehrerer FILES möglich





FILE_1_NAME1...*TRUE(tick)VARCHARstring
DocumentReference.content.attachment.titleY
Der Dateiname einer Datei, die mit dieser Sequenz verbunden ist.<DocumentReference xmlns="http://hl7.org/fhir">
   <meta>
      <profile value="https://demis.rki.de/fhir/StructureDefinition/SequenceDocument"></profile>
   </meta>
   <status value="current"></status>
   <type>
      <coding>
         <system value="http://snomed.info/sct"></system>
         <code value="41482005"></code>
         <display value="Molecular sequence data (finding)"></display>
      </coding>
   </type>
   <content>
      <attachment>
         <contentType value="chemical/seq-na-fastq-gzip"></contentType>
         <title value="20004726_lib32570_nextseq_n0270_151bp_cleaned_R1.fastq.gz"></title>
      </attachment>
   </content>
</DocumentReference>
^[a-zA-Z0-9_-]+\\.(fasta|fa|fastq|fq)(\\.gz)?$
FILE_2_NAME0...1FALSE(tick)


 DocumentReference.content.attachment.titleZ
 
^[a-zA-Z0-9_-]+\\.(fasta|fa|fastq|fq)(\\.gz)?$

FILE_1_SHA256SUM

1...*TRUE

(tick)

VARCHAR



DocumentReference.content.attachment.hash
Die SHA256SUM der bereitgestellten Datei.
^[A-Fa-f0-9]{64}$

FILE_2_SHA256SUM

0...1FALSE

(tick)






 
^[A-Fa-f0-9]{64}$


Umsetzung

  • allgemein ist die Nutzung der FHIR Ressource MolecularSequence zu verwenden
  • wir konzipieren in Version R4

IGS-Informationsmodell

Idee
  • Nachnutzen von bestehenden Profilen der Labormeldung LaboratoryReport, PathogenDetection, Specimen, NotificationBundle und Notification
    • subject ist eine Nichtnamentliche Betroffene Person (siehe nichtnamentliche Meldung)
  • Die Übermittlung der Sequenzdaten erfolgt als DocumentReference (Option b)

Veranschaulichung

Profilierung und Zusammenspiel mit bestehenden Profilen der Labormeldung

  • meldetatbestandsspezifischen Profile
  • die ValueSets der Labortests werden um LOINC-Codes für Sequenzierungstests ergänzt


  • Neues Profil NotificationBundleSequence anlegen; siehe unten
    • entsprechend zu NotificationBundleLaboratory

    • Bundle.entry.ressource: Referenz auf NotificationSequence

    • Regelwerk
      • es darf nur eine Nichtnamentliche Betroffene Person enthalten sein
      • nur NotifierFacility ist erlaubt
      • nur SubmittingFacility ist erlaubt


  • Neues Profil NotificationSequence anlegen; siehe unten
    • abgeleitet von Notification (Composition.subject nicht profiliert → siehe Profilanpassung für nichtnamentliche Meldung)
    • Profilierung entsprechend wie NotificationLaboratory
      • Composition.meta.profile: Profilnamen explizieren! (siehe Vorgehen nichtnamentliche Meldung)
      • Composition.subject auf NotifiedPersonNotByName setzten
      • Composition.type fest auf "Infectious disease Note" gesetzt  (kommt von Notification)
      • Composition.category fest auf "Laboratory report" setzen (wie NotificationLaboratory)
      • 1 section: Composition.section:laboratoryReport → Referenz auf LaboratoryReport (wie NotificationLaboratory)


  • Neues Profil SequencingDevice anlegen; siehe unten
    • abgeleitet von FHIR Device
    • Device.name ist verpflichtend


  • Neues Profil Sequence anlegen; siehe unten
    • abgeleitet von FHIR MolecularSequence
    • identifier verpflichtend machen
    • we will set the coordinateSystem in the model to the fixed value of 1

    • type auf "dna" setzen

    • patient auf 0..0 setzen

    • specimen auf 1..1 setzen
      • Referenz auf Specimen
    • device auf 1..1 setzen
      • Referenz auf SequencingDevice
    • performer auf 1..1 setzen
      • Referenz auf SubmittingRole
    • quantity auf 0..0 setzen
    • referenceSeq auf 0..0 setzen
    • variant auf 0..0 setzen
    • observedSeq auf 0..0 setzen
    • quality auf 0..0 setzen
    • readCoverage auf 0..0 setzen
    • repository auf 1.. * setzen
    • pointer auf 0..0 setzen
    • structureVariant auf 0..0 setzen


  • Neues Profil Substance


  • Neues Profil SequenceData
    • abgeleitet von FHIR DocumentReference
    • DocumentReference.data ist verpflichtend


Änderungsbedarf an bestehenden Profilen:

  • LaboratoryReport
    • wir verwenden das Profil LaboratoryReport aus der Labormeldung
      • subject auf NotifiedPersonNotByName setzten


  • PathogenDetection
    • wir verwenden das Profil PathogenDetection aus der Labormeldung
      • PathogenDetection.derivedFrom muss auf optional geändert werden!
      • PathogenDetection.device muss auf optional geändert werden!
      • PathogenDetection.subject: subject auf NotifiedPersonNotByName setzten


  • Specimen
    • wir verwenden das Profil Specimen aus der Labormeldung
    • subject auf NotifiedPersonNotByName setzten
    • Substance lässt sich alternativ in Specimen.processing.additive referenzieren


  • NotifierRole
    • keine Anpassung notwendig


  • SubmittingRole
    • keine Anpassung notwendig


  • Notification
    • Composition.subject nicht profiliert → siehe Profilanpassung für nichtnamentliche Meldung


  • NotificationBundle
    • keine Anpassung notwendig


  • No labels