Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents
maxLevel1

General considerations: 

  • A patient registration embedded block Embedded Patient Block is sent together with each request. This block contains both the wmdaId and the patientId of the patient.

  • Next to the actual request information, whenever the institutions are needed, they are sent explicitly as an Embedded Address Block.
  • (warning) The requested donor has to be reserved at the remote hub and reported back to the requesting registry by an embedded donor block with the donor status reflecting the change (a.k.a. Embedded Donor Block (donor in response) within a Reservation Response reflecting the changed donor status (c.f. DONOR_CB with D_STATUS = ”RS”).

  • All changes in the donors (change of status, updated typing, or IDMs) resulting from the requests are reported back in an embedded donor block Embedded Donor Block (donor in response) within the respective message, e.g. updated HLA information resulting from an Extended Typing Request in an Extended Typing Result. A separate update must be made to the Search & Match system with the updated donor data to ensure up-to-date master data. More information on how to do so may be found here.
  • ReferenceCoderequestId: In order to couple messages to the same request, e.g. Sample Request and its results, all messages following the initial the request-related messages responding to the original request must have a referenceCode referenceMessageId as part of the message.
    • The message ID (correlationGuidreferenceMessageId) of the request message is used as the referenceCode a reference code for the rest of the request-related message flow.

    • Next to the technical
    ReferenceCode
    • referenceMessageId requests
    might need a "requestTag" that
    • , a human-readable reference code (requestId) is used for end-user recognition (communication outside the automated system)
        that TAG will be
        • The requestId is optional
        • The requestId is part of the
        initial
        • original message
        not the meta-
        • block
        it
        • The requestId will be generated by the sending registry
        it
        • The requestId will only be
        only
        • used for human-to-human
        commnication
        • communication (e.g. could be used on printed invoices)
        should
        • Once requestId is sent, it must be
        part of all requests? how about reservation requestneeds discussion by Buisness group if it should be optional or mandatory 
        • used in all subsequent request message exchanges
    • Each field inherited from EMDIS Semantics contains a comment describing its purpose in EMDIS and its original name to assist in the transition from EMDIS to Match-Connect.
    • Paragraph Request + Response Flows depicts the new message flows.

    5.1 - Extended Typing Request (TYP_REQ)

    This message is used to request an extended typing of a donor (adult, ADCU, CBU). It primarily contains information about what to type and for which donor. 
    Expected return message is Extended Typing Results The expected return messages are Reservation ResponseExtended Typing Result and/or Request Rejected.

    Send (Post)
    Retrieve (Post)
    extendedTypingRequestRequestextendedTypingRequestRetrieve
    Expand
    titleRequest...
    FieldDetails
    request*
    Expand
    title...
    FieldDetails
    requestId

    string
    maxLength: 19
    example:XX12345

    resolutionRequired*string
    example: "a": high

    Replacement of the single string based resolutionRequired.

    address*Embedded Address Block
    isUrgentboolean

    Urgent request URGENT Opt 1

    remarkstring
    maxLength: 111000

    minLengthnullable: 11true

    example: HHHHMMM-H-H

    A character string with a fixed length in which each position represents an HLA locus. The coding of the resolution required for every position is: S = serological L = DNA low resolution M = DNA medium resolution H = DNA high resolution - (hyphen) = not requested. The character string is interpreted from left to right, with position 1 as the leftmost position. The positions for the HLA loci are defined as Position 1: HLA-A Position 2: HLA-B Position 3: HLA-C Position 4: HLA-DRB1 Position 5: HLA-DRB3 Position 6: HLA-DRB4 Position 7: HLA-DRB5 Position 8: HLA-DQA1 Position 9: HLA-DQB1 Position 10: HLA-DPA1 Position 11: HLA-DPB1

    addressEmbedded Address Block
    urgent*boolean

    Urgent request URGENT Opt 1

    remarkstring
    maxLength: 120

    nullable: true

    example: the patient case is very urgent

    Remark REMARK Opt 120

    receivingRegistry*integer
    maximum: 9999

    minimum: 0

    maxLength: 4

    minLength: 4

    example: 1234

    4 digit ION of the receiving registry

    patient*Embedded Patient Block
    donor*Donor ID
    Expand
    titleResponse...
    FieldDetails
    wmdaResponse*Embedded WMDA Response Block
    Expand
    titleRequest...
    limitinteger
    default: 100

    shouldPeekboolean
    default: false

    Set to true if you want messages to remain available after retrieval

    Expand
    titleResponse...
    FieldDetails
    originalMessage*{...}
    metaInformation*Embedded Meta Block

    Rules

    Examples for field resolutionRequired:

    HLA-DRB1 low resolution:
    ---L-------
    HLA-DRB1 serological:
    ---S-------
    HLA-DRB1 high resolution:
    ---H-------
    HLA-DRB1 and HLA-DQB1 high resolution:
    ---H----H--

    • Intermediate resolution (M) translates to non-high resolution.
    • Combinations are possible, i.e. several loci may be requested in one message.
    • The appropriate action if the typing request cannot be accepted or has to be changed by the receiving registry, e.g. due to national rules, is to inform the requesting side what was done. If only the resolution was changed (the sending registry will receive something different than ordered - either more or less) or only a part of the requested loci were accepted (the sending registry will only receive parts of what was ordered): send a message response (see 6 - Administration)  containing the warning.

    5.2 - Extended Typing Results (TYP_RES)

    This message is used to send the results of the Extended Typing Request back to the requesting registry. 

    ...

    Expand
    titleRequest...
    Field

    Details

    response*
    Expand
    title...
    FieldDetails
    referenceCodestring($uuid)
    hlaNomenclatureVersionstring
    default: 3

    Major version of HLA Nomenclature HLA_NOM_VER Req 7

    etSampleTypestring
    nullable: true

    Type of sample. AS = CBU Contiguous Attached Segment WB = Whole Blood Sample RC = Red Cell Fraction (pellet) FP = Blood Spotted Filter Paper ED = Extracted DNA

    Enum:
    Array [ 5 ]
    remarkstring
    maxLength: 120

    nullable: true

    example: the patient case is very urgent

    Remark REMARK Opt 120

    receivingRegistry*integer
    maximum: 9999

    minimum: 0

    maxLength: 4

    minLength: 4

    example: 1234

    4-digit ION of the receiving registry

    donor*Embedded Donor Block
    patient*Patient ID
    Expand
    titleResponse...
    FieldDetails
    wmdaResponse*Embedded WMDA Response Block

    ...

    Expand
    titleRequest...
    limitinteger
    default: 100

    shouldPeekboolean
    default: false

    Set to true if you want messages to remain available after retrieval

    Expand
    titleResponse...
    originalMessage*{...}
    metaInformation*Embedded Meta Block
    the patient case is very urgent

    Remark REMARK Opt 120

    receivingRegistry*integer
    maximum: 9999
    minimum: 1000

    maxLength: 4

    minLength: 4

    example: 1234

    4 digit ION of the receiving registry

    patient*Embedded Patient Block
    donor*Embedded Donor Block (donor in request)
    Expand
    titleResponse...
    FieldDetails
    metaInformation*Embedded Meta Block
    Expand
    titleRequest...
    limitinteger
    default: 100

    shouldPeekboolean
    default: false

    Set to true if you want messages to remain available after retrieval

    messageSequenceNumber

    integer
    e
    xamplet: 12345

    Optional field to request a message with a specific messageSequenceNumber. If that message (no longer) exists then no message will be returned.

    Expand
    titleResponse...
    FieldDetails
    generalInformation*Embedded General Information Block
    messages*
    Expand
    title...
    FieldDetails
    originalMessage*

    ...

    metaInformation*Embedded Meta Block

    Rules

    resolutionRequired: string-enum with the following options

    • low = DNA low resolution
    • medium = DNA medium (intermediate) resolution
    • high = DNA high resolution

    • Intermediate resolution (medium) translates to non-high resolution.
    • Combinations are possible, i.e. several loci may be requested in one message.

    The address block must provide the necessary details for the donor registry to send an invoice for the service. In EMDIS, this used to be the address of the financial institution.

    The appropriate action if the typing request cannot be accepted or has to be changed by the receiving registry, e.g. due to national rules, is to inform the requesting side what was done. If only the resolution was changed (the sending registry will receive something different than ordered - either more or less) or only a part of the requested loci were accepted (the sending registry will only receive parts of what was ordered): send a message response (see 6 - Administration v1.0)  containing the warning.

    5.2 - Extended Typing Results (TYP_RES)

    This message is used to send the results of the Extended Typing Request back to the requesting registry. 

    Send (Post)
    Retrieve (Post)
    extendedTypingResponseRequestextendedTypingResponseRetrieve
    Expand
    titleRequest...
    Field

    Details

    response*
    Expand
    title...
    FieldDetails
    requestIdstring
    maxLength: 19
    example:XX12345
    referenceMessageId*string($uuid)
    hlaNomenclatureVersion*string
    default: 3

    Major version of HLA Nomenclature HLA_NOM_VER Req 7

    etSampleTypestring
    nullable: true

    Type of sample. AS = CBU Contiguous Attached Segment WB = Whole Blood Sample RC = Red Cell Fraction (pellet) FP = Blood Spotted Filter Paper ED = Extracted DNA

    Enum:
    Array [ 5 ]
    remarkstring
    maxLength: 120

    nullable: true

    example: the patient case is very urgent

    Remark REMARK Opt 120

    receivingRegistry*integer
    maximum: 9999
    minimum: 1000

    maxLength: 4

    minLength: 4

    example: 1234

    4-digit ION of the receiving registry

    donor*Embedded Donor Block (donor in response)
    patient*
    Expand
    title...
    FieldDetails
    wmdaId*

    integer
    nullable: false

    example: 1234

    ID provided by the WMDA

    Expand
    titleResponse...
    FieldDetails
    metaInformation*Embedded Meta Block
    Expand
    titleRequest...
    limitinteger
    default: 100

    shouldPeekboolean
    default: false

    Set to true if you want messages to remain available after retrieval

    messageSequenceNumber

    integer
    e
    xamplet: 12345

    Optional field to request a message with a specific messageSequenceNumber. If that message (no longer) exists then no message will be returned.

    Expand
    titleResponse...
    generalInformation*Embedded General Information Block
    messages*
    Expand
    title...
    FieldDetails
    originalMessage*

    ...

    metaInformation*Embedded Meta Block

    5.

    ...

    3 - Sample Request (SMP_REQ)

    This message is used to request a VT (sample to be used for verification typing ) of a specific donor/product for a patientin the lab of the sending registry

    sampleRequestRequest (comments refer to changes to the current API definition trueurgentstring
    maxLength: 17

    nullable: true

    example: 1234567890abcdefg
    Acknowledgement ID ACK_ID Opt 17120 Donor IDwmdaResponse WMDA Response expand{}
    Send (Post)Retrieve (Post)
    sampleRequestRequest sampleRequestRetrieve
    Expand
    titleRequest
    FieldDetails
    request*
    Expand
    title...
    requestIdstring
    maxLength: 19
    example:XX12345
    prod1*{...}
    prod2{...}
    prod3{...}
    prod4{...}
    earliestDateCanReceive*string($date-time)

    Earliest date of sample reception REC_DATE1 Req 8 yyyy-MM-dd [or yyyyMMdd]

    latestDateCanReceivestring($date-time)
    nullable: true

    Latest date of sample reception REC_DATE2 Opt 8 yyyy-MM-dd [or yyyyMMdd]

    acceptableReceptionDaysOfWeek*

    integer
    nullable:

    false
    minLength: 7

    maxLength: 7
    pattern: ^[01]{7}$
    example: 1111100

    Weekdays acceptable for reception. Binary fixed length string for the 7 days in the week. E.g., 1110000 means acceptable days for reception are Monday, Tuesday and Wednesday, not acceptable days are Thursday, Friday, Saturday or Sunday.

    institutionToSendSampleTo*Embedded Address Block
    institutionPaying*Embedded Address Block
    isUrgentboolean

    Urgent request URGENT Opt 1

    acknowledgementId

    remarkstring
    maxLength: 
    1000
    nullable: true

    example: the patient case is very urgent

    Remark REMARK Opt 120

    receivingRegistry*integer
    maximum: 9999

    minimum:
    1000
    maxLength: 4

    minLength: 4

    example: 1234

    4-digit ION of the receiving registry

    patient*Embedded Patient Block
    donor*
    Expand
    titleResponse
    FieldDetails
    metaInformation*Embedded
    Expand
    titleRequest...
    limitinteger
    default: 100

    shouldPeekboolean
    default: false

    Set to true if you want messages to remain available after retrieval

    messageSequenceNumber
    titleResponse...

    integer
    e
    xamplet: 12345

    Optional field to request a message with a specific messageSequenceNumber. If that message (no longer) exists then no message will be returned.


    Expand
    titleResponse...
    generalInformation*Embedded General Information Block
    messages*
    Expand
    title...
    FieldDetails
    originalMessage*


    metaInformation*Embedded Meta Block

    Rules:

    • The fields ”earliest and latest date of sample reception” represent the lower and upper limit of the period of time in which the blood sample has to be received. If the second date is missing, the sample may be received any time after the first date.
    • The quantity for the first product is optional when requesting DNA from a cord blood unit. In all other requests, the quantity fields for any of the corresponding product fields are required if a product is requested.
    • A number of tubes requested in a sample request or marrow request:
      • The maximum amount of material, requested in one sample request or pre-collection sample request is 100 ml, if not stated otherwise in the national rules of the donor registry.
      • If the number of tubes is unassigned, and not given in the request, the default value number of tubes is one.

    5.4 - Sample Information (SMP_INFO)

    • A typical response to the Sample Request message is the Sample Arrival Date message. In addition to that, it is mandatory (by the accreditation standards) that the donor registry also sends an IDM Result message to inform the patient registry of the known diseases of the donor.

    5.4 - Sample Information (SMP_INFO)

    This message is used to This message is used to send relevant secondary information which that may arise in the context of the sample request.

    expandResponse...{}
    Send (Post)
    Retrieve (Post)
    sampleInfoRequest (comments refer to changes to the current API definition)sampleInfoRetrieve
    Expand
    titleRequest...
    message*
    Expand
    title...
    requestIdstring
    maxLength: 19
    example:XX12345
    referenceMessageIdreferenceCode*string($uuid)
    informationType*string
    maxLength: 3

    minLength: 3

    Information Type INFO_TYPE Req 3

    Enum:

    Array [

     12 ]

    BMP, BMM, SCP, SCM, ABS, MUL, UBC, RPE, CMV, ROI, MED, OTH ]

    remarkstring
    maxLength: 1000
    remarkstring
    nullable: true

    example: the patient case is very urgent

    Remark REMARK Opt 120

    receivingRegistry*integer
    maximum: 9999
    minimum:
      1000
    maxLength: 4

    minLength: 4

    example: 1234

    4-digit ION of the receiving registry

    patient*
    Expand
    title...
    FieldDetails
    wmdaId*

    integer
    nullable: false

    example: 1234

    ID provided by the WMDA

     

    Patient ID

    donor*Embedded Donor Block (donor in request)
    Expand
    titleResponse...
    FieldDetails
    wmdaResponsemetaInformation*Embedded WMDA Response Meta Block
    Expand
    titleRequest...
    limitinteger
    default: 100

    shouldPeekboolean
    default: false

    Set to true if you want messages to remain available after retrieval

    messageSequenceNumber
    title

    integer
    e
    xamplet: 12345

    Optional field to request a message with a specific messageSequenceNumber. If that message (no longer) exists then no message will be returned.


    Expand
    titleResponse...
    generalInformation*Embedded General Information Block
    messages*
    Expand
    title...
    FieldDetails
    originalMessage*


    metaInformation*Embedded Meta Block

    Rules:

    • The message can only be exchanged in one direction: from the donor side to the patient side.
    • Sample information is always referencing a sample request.
    • Sample information is only valid as long as the referenced sample request is considered as ”open” and the donor is reserved for this patient after the sample request.
    • A request is considered”open” considered ”open” as long as the patient registry has neither reported the sample results nor a Request Rejected message nor a request cancellation.
    • There might be several sample information messages within the context of one sample request. Subsequent sample information is regarded as new or additional information and not as updates.

    5.5 - Sample Arrival (SMP_ARR)

    This message is used to transmit the proposed date of the sample arrival.

    expand{...}
    Send (Post)
    Retrieve (Post)
    sampleArrivalRequest (comments refer to changes to the current API definition)sampleArrivalRetrieve
    Expand
    titleRequest...
    FieldDetails
    message*
    Expand
    title...
    FieldDetails
    requestIdstring
    maxLength: 19
    example:XX12345
    referenceMessageIdreferenceCode*string($uuid)
    arrivalDate*string($date-time)

    Proposed date of sample arrival ARRV_DATE Req 8

    collectionDate*string($date-time)
    nullable: truefalse

    Donor blood collection date COLL_DATE Opt 8

    labelId*string
    maxLength: 19

    Verbatim verification typing (VT) sample label ID D_LABEL_ID Req 19

    ctSampleType*string
    nullable: truefalse

    Type of sample. AS = CBU Contiguous Attached Segment WB = Whole Blood Sample RC = Red Cell Fraction (pellet) FP = Blood Spotted Filter Paper ED = Extracted DNA

    Enum:
    Array [  5  AS, WB, RC, FP, ED ]
    remarkstring
    maxLength: 1201000
    nullable: true

    example: the patient case is very urgent

    Remark REMARK Opt 120

    receivingRegistry*integer
    maximum: 9999
    minimum:
      1000
    maxLength: 4

    minLength: 4

    example: 1234

    4 digit ION of the receiving registry

    patient*
    Expand
    title...
    FieldDetails
    wmdaId*
    Patient ID

    integer
    nullable: false

    example: 1234

    ID provided by the WMDA

     

    donor*Embedded Donor Block (donor in request)
    Expand
    titleResponse...
    FieldDetails
    wmdaResponsemetaInformation*Embedded WMDA Response Meta Block
    Expand
    titleRequest...
    limitinteger
    default: 100

    shouldPeekboolean
    default: false

    Set to true if you want messages to remain available after retrieval

    messageSequenceNumber
    titleResponse...
    FieldDetails
    originalMessage*

    integer
    e
    xamplet: 12345

    Optional field to request a message with a specific messageSequenceNumber. If that message (no longer) exists then no message will be returned.


    Expand
    titleResponse...
    generalInformation*Embedded General Information Block
    messages*
    Expand
    title...
    FieldDetails
    originalMessage*

    ...

    metaInformation*Embedded Meta Block

    5.6 - Sample Response (SMP_RES)

    This message is used to transmit the results of the sample testing.

    expand{...}
    Send (Post)
    Retrieve (Post)
    sampleResponseRequest (comments refer to changes to the current API definition)sampleResponseRetrieve
    Expand
    titleRequest...
    FieldDetails
    response*
    Expand
    title...
    FieldDetails
    requestIdstring
    maxLength: 19
    example:XX12345
    referenceMessageIdreferenceCode*string($uuid)
    hlaNomenclatureVersion*string
    default: 3

    Major version of HLA Nomenclature HLA_NOM_VER Req 7

    hla{...}
    idm{...}
    abo

    string
    nullable: true

    Enum:
    Array [

     4 

    A, B, O, AB ]

    rhesus

    string
    nullable: true

    Enum:
    Array [

     2 

    P, N ]

    donorStillOfIntereststringboolean
    maxLength: 1

    Donor still of interest DON_ACCPT Req 1

    Enum:
    Array [ 2 ]

    receivingRegistry*integer
    maximum: 9999
    minimum:
      1000
    maxLength: 4

    minLength: 4

    example: 1234

    4 digit ION of the receiving registry

    patient*
    Expand
    title...
    FieldDetails
    wmdaId*

    integer
    nullable: false

    example: 1234

    ID provided by the WMDA

     

    Patient ID

    donor*Donor IDEmbedded Donor Block (donor in request)
    Expand
    titleResponse...
    FieldDetails
    wmdaResponsemetaInformation*Embedded WMDA Response Meta Block
    Expand
    titleRequest...
    limitinteger
    default: 100

    shouldPeekboolean
    default: false

    Set to true if you want messages to remain available after retrieval

    messageSequenceNumber
    titleResponse...
    originalMessage*

    integer
    e
    xamplet: 12345

    Optional field to request a message with a specific messageSequenceNumber. If that message (no longer) exists then no message will be returned.


    Expand
    titleResponse...
    generalInformation*Embedded General Information Block
    messages*
    Expand
    title...
    FieldDetails
    originalMessage*

    ...


    metaInformation*Embedded Meta Block

    Rules:

    • donorStillOfInterest = ”N” means: the donor can be released immediately.
    • donorStillOfInterest = ”Y” means: please prolong donor reservation according to your national rules.
    • The fields for the infectious disease markers are included in this message in order to give the transplant centers the possibility to report the results of IDMs they might have tested.
    • If Sample Results cannot be sent then a Request Rejected message should be sent with the reason field populated to explain why.

    5.7 - Infectious Disease Marker Request (IDM_REQ)

    This message is used to request infectious disease marker test results of the selected donor.

    {}
    Send (Post)
    Retrieve (Post)
    infectiousDiseaseMarkerRequestinfectiousDiseaseMarkerRequestRetrieve
    Expand
    titleRequest...
    FieldDetails
    responserequest*
    Expand
    title...
    referenceCode*integer($uuid)minLength: 19
    FieldDetails
    markerAsArray[...]
    marker*
    requestIdstring

    maxLength: 19
    example:XX12345
    marker*{...} 111110000111Binary fixed length string in which each position represents a test to be requested: details in Data Dictionary
    institutionPaying*Embedded Address BlockacknowledgementIdstring
    maxLength: 17

    nullable: true

    example: 1234567890abcdefg
    Acknowledgement ID ACK_ID Opt 17remarkstring
    maxLength: 1201000
    nullable: true

    example: Please also test for SARS-CoV-2 the patient case is very urgent

    Remark REMARK Opt 120

    receivingRegistry*integer
    maximum: 9999
    minimum:
     01000
    maxLength: 4

    minLength: 4

    example: 1234

    4-digit ION of the receiving registry

    patient*Embedded Patient Block
    donor*Donor IDEmbedded Donor Block (donor in request)
    Expand
    titleResponse...
    FieldDetails
    wmdaResponsemetaInformation*Embedded WMDA Response Meta Block
    Expand
    titleRequest...
    limitinteger
    default: 100

    shouldPeekboolean
    default: false

    Set to true if you want messages to remain available after retrieval

    messageSequenceNumber

    integer
    e
    xamplet: 12345

    Optional field to request a message with a specific messageSequenceNumber. If that message (no longer) exists then no message will be returned.


    Expand
    titleResponse...
    generalInformation*Embedded General Information Block
    messages*
    Expand
    title...
    FieldDetails
    originalMessage*


    metaInformation*Embedded Meta Block

    Rules:

    • Several distinct requests for the same patient/donor pair at a time are possible, for example, a verification typing and a CMV status, but each request has to be answered by an individual IDM Results, i.e. results must not be ”concatenated” to a single result message. Multiple IDM
      requests for the same patient/donor pair have to be disjoint (i.e. may not contain identical markers). The occurrence of multiple requests should be an exception. Normally, all markers required should be requested within one message.

    5.8 - Infectious Disease Marker Results (IDM_RES)

    This message is used to send the results of the IDM request back to the requesting registry. 

    Send (Post)
    Retrieve (Post)
    infectiousDiseaseMarkerResultRequestinfectiousDiseaseMarkerResultRetrieve
    Expand
    titleRequest...
    FieldDetails
    response*
    Expand
    title...
    FieldDetails
    requestIdstring
    maxLength: 19
    example:XX12345
    referenceMessageIdreferenceCode*string($uuid)
    markerAsArraymarker*[...]
    marker*integer
    maxLength: 19

    minLength: 19

    example: 111110000111

    Binary fixed length string in which each position represents a test to be requested: details are in Data Dictionary

    sampleExtractionDate*string($datesampleExtractionDate*string($date-time)
    nullable: truefalse

    Date of sample extraction D_EXTR_DATE Opt 8

    donorCcr5Statusstring
    maxLength: 2

    nullable: true

    Donor CCR5 status D_CCR5 Opt 2

    donorWeightKginteger($int32)
    maximum: 999

    minimum: 0

    nullable: true

    Donor weight in kilograms D_WEIGHT Opt 3

    donorHeightCminteger($int32)
    maximum: 999

    minimum: 0

    nullable: true

    example: 175

    Donor height in centimetres D_HEIGHT Opt 3

    numberOfTransfusionsinteger($int32)
    maximum: 9

    minimum: 0

    nullable: true

    Number of transfusions D_NMBR_TRANS Opt 1

    numberOfPregnanciesinteger($int32)
    maximum: 9

    minimum: 0

    nullable: true

    Number of pregnancies D_NMBR_PREG Opt 1

    idm{...}
    remarkstring
    maxLength: 120

    nullable: true

    Remark REMARK Opt 120

    receivingRegistry*integer
    maximum: 9999

    minimum: 0

    maxLength: 4

    minLength: 4

    example: 1234

    4-digit ION of the receiving registry

    donor*Embedded Donor Block
    patient*Patient ID
    Expand
    titleResponse...
    FieldDetails
    wmdaResponse*Embedded WMDA Response Block
    Expand
    titleRequest...
    limitinteger
    default: 100

    shouldPeekboolean
    default: false

    Set to true if you want messages to remain available after retrieval

    Expand
    titleResponse...
    FieldDetails
    originalMessage*{...}
    metaInformation*Embedded Meta Block

    Rules

    • The common use of the IDM Results message is in response to the Sample Request message, in addition to shipment of the donor blood sample. Please note there may be a charge involved with this service. If a fee is charged, it may come as a separate item or might be included in the price of the sample shipment. Such IDM Results messages can be sent via a regular EMDIS message - the remote hub must be able to handle it appropriately. The IDM Results must have the same referenceCode as the Sample Request message.
    • IDM Results message can be generated in response to two different message requests:
      • Sample Request does not specify what set of infectious disease markers to be tested
      • IDM Request does specify what set of infectious disease markers to be tested
    • The field marker is a required field.
    • For those hubs reporting infectious disease markers during verification typing, the marker field should contain the IDMs actually tested. There is a fixed-length binary field for the IDM Results message. The blood group may also be reported.
    • IDM results can also be reported as a part of the Sample Results message by the hub (transplant center) that requested the blood sample. This is to give the transplant centers the possibility to report the results of IDMs they might have tested.

    5.9 - Reservation Request (RSV_REQ)

    This message is used to request the reservation of a donor for transplant at the receiving registry.

    idm{...}
    remarkstring
    maxLength: 1000
    nullable: true

    example: the patient case is very urgent

    Remark REMARK Opt 120

    receivingRegistry*integer
    maximum: 9999
    minimum: 1000

    maxLength: 4

    minLength: 4

    example: 1234

    4-digit ION of the receiving registry

    donor*Embedded Donor Block (donor in response)
    patient*
    Expand
    title...
    FieldDetails
    wmdaId*

    integer
    nullable: false

    example: 1234

    ID provided by the WMDA

     

    Expand
    titleResponse...
    FieldDetails
    metaInformation*Embedded Meta Block
    Expand
    titleRequest...
    limitinteger
    default: 100

    shouldPeekboolean
    default: false

    Set to true if you want messages to remain available after retrieval

    messageSequenceNumber

    integer
    e
    xamplet: 12345

    Optional field to request a message with a specific messageSequenceNumber. If that message (no longer) exists then no message will be returned.


    Expand
    titleResponse...
    generalInformation*Embedded General Information Block
    messages*
    Expand
    title...
    FieldDetails
    originalMessage*

    ...

    metaInformation*Embedded Meta Block

    Rules

    • The common use of the IDM Results message is in response to the Sample Request message, in addition to the shipment of the donor blood sample. Please note there may be a charge involved with this service. If a fee is charged, it may come as a separate item or might be included in the price of the sample shipment. Such IDM Results messages can be sent via a regular EMDIS message - the remote hub must be able to handle it appropriately. The IDM Results must have the same requestId as the Sample Request message.
    • IDM Results message can be generated in response to two different message requests:
      • Sample Request does not specify what set of infectious disease markers to be tested
      • IDM Request does specify what set of infectious disease markers to be tested
    • The field marker is a required field.
    • For those hubs reporting infectious disease markers during verification typing, the marker field should contain the IDMs actually tested. There is a fixed-length binary field for the IDM Results message. The blood group may also be reported.
    • IDM results can also be reported as a part of the Sample Results message by the hub (transplant center) that requested the blood sample. This is to give the transplant centers the possibility to report the results of IDMs they might have tested.

    5.9 - Reservation Request (RSV_REQ)

    This message is used to request the reservation of a donor for a specific patient for a upcoming transplantation at the receiving registry. The patient registry can ask for a specific reservation period by making use of the optional field expirationDate. 

    Send (Post)
    Retrieve (Post)
    reservationRequestRequestreservationRequestRetrieve
    Expand
    titleRequest...
    FieldDetails
    request*
    Expand
    title...
    FieldDetails
    requestId

    string

    maxLength: 19

    expirationDatestring($date-time)
    nullable: true

    Request date EXPI_DATE Opt 8 yyyy-MM-dd [or yyyyMMdd]

    remarkstring
    maxLength: 1000
    nullable: true

    example: the patient case is very urgent

    Remark REMARK Opt 120

    receivingRegistry*string
    maximum: 9999
    minimum: 1000

    maxLength: 4

    minLength: 4

    example: 1234

    4-digit ION of the receiving registry

    patient*Embedded Patient Block
    donor*Embedded Donor Block (donor in request)
    Expand
    titleResponse...
    FieldDetails
    metaInformation*Embedded Meta Block
    Expand
    titleRequest...
    limitinteger
    default: 100

    shouldPeekboolean
    default: false

    Set to true if you want messages to remain available after retrieval

    messageSequenceNumber

    integer
    e
    xamplet: 12345

    Optional field to request a message with a specific messageSequenceNumber. If that message (no longer) exists then no message will be returned.


    Expand
    titleResponse...
    generalInformation*Embedded General Information Block
    messages*
    Expand
    title...
    FieldDetails
    originalMessage*

    ...

    metaInformation*Embedded Meta Block

    5.10 - Reservation Response (RSV_RES)

    This message is used to notify the requesting patient registry if the Reservation Request has been confirmed by the donor registry OR if the donor reservation was performed after another request. The donor registry reports back the expirationDate. This might differ from the expirationDate of the Reservation Request message due to local rules or regulations at the donor registry side. The expirationDate in the Reservation Response reflects the "true" reservation period.

    Send (Post)
    Retrieve (Post)
    reservationResponseRequestreservationResponseRetrieve
    Expand
    titleRequest...
    FieldDetails
    response*
    Expand
    title...
    FieldDetails
    requestId

    string

    maxLength: 19

    referenceMessageId*string($uuid)
    expirationDatestring($date-time)
    nullable: true

    Date expiration of reservation EXPI_DATE Opt 8 yyyy-MM-dd [or yyyyMMdd]

    confirmed*boolean

    Confirmation of reservation CONFIRM Req 1

    remarkstring
    maxLength: 1000
    nullable: true

    example: the patient case is very urgent

    Remark REMARK Opt 120

    receivingRegistry*string
    maximum: 9999
    minimum: 1000

    maxLength: 4

    minLength: 4

    example: 1234

    4-digit ION of the receiving registry

    patient*
    Expand
    title...
    FieldDetails
    wmdaId*

    integer
    nullable: false

    example: 1234

    ID provided by the WMDA

     

    donor*Embedded Donor Block (donor in response)
    Expand
    titleResponse...
    FieldDetails
    metaInformation*Embedded Meta Block
    Expand
    titleRequest...
    limitinteger
    default: 100

    shouldPeekboolean
    default: false

    Set to true if you want messages to remain available after retrieval

    messageSequenceNumber

    integer
    e
    xamplet: 12345

    Optional field to request a message with a specific messageSequenceNumber. If that message (no longer) exists then no message will be returned.


    Expand
    titleResponse...
    generalInformation*Embedded General Information Block
    messages*
    Expand
    title...
    FieldDetails
    originalMessage*

    ...

    metaInformation*Embedded Meta Block

    5.11 - Reservation Release Request (new message)

    The patient registry sends this message to inform the donor registry that a donor can be released from the reservation when it is no longer needed (e.g. patient is deceased or was transplanted with another donor). This should be used if the donor reservation was confirmed in response to some request. If the reservation has not been confirmed then a Request Cancellation message should be used.

    This is a change request with respect to the current procedure and should be handled as such as it has implications on local systems.

    There is no response to this message except for the automated acknowledgment.

    Send (Post)
    Retrieve (Post)
    reservationReleaseRequestreservationReleaseRetrieve
    Expand
    titleRequest...
    FieldDetails
    request*
    Expand
    title...
    FieldDetails
    requestId

    string

    maxLength: 19

    referenceMessageId*string($uuid)
    reason*string
    maxLength: 3

    minLength: 3
    nullable: false

    Enum: [ ATX, RMT, UMT, RCT, UCT, RPT, UPT, GCC, BCC, PDC, PAT, PPR, ICH, FND, NDF, COR, HMM, DRR, OTH, UNK ]

    Reason of request cancellation REASON_CNCL Opt 3

    remarkstring
    maxLength: 1000
    nullable: true

    example: the patient case is very urgent

    Remark REMARK Opt 120

    receivingRegistry*string
    maximum: 9999
    minimum: 1000

    maxLength: 4

    minLength: 4

    example: 1234

    4-digit ION of the receiving registry

    patient*
    Expand
    title...
    FieldDetails
    wmdaId*

    integer
    nullable: false

    example: 1234

    ID provided by the WMDA

     

    donor*Embedded Donor Block (donor in request)
    Expand
    titleResponse...
    FieldDetails
    metaInformation*Embedded Meta Block
    Expand
    titleRequest...
    limitinteger
    default: 100

    shouldPeekboolean
    default: false

    Set to true if you want messages to remain available after retrieval

    messageSequenceNumber

    integer
    e
    xamplet: 12345

    Optional field to request a message with a specific messageSequenceNumber. If that message (no longer) exists then no message will be returned.


    Expand
    titleResponse...
    generalInformation*Embedded General Information Block
    messages*
    Expand
    title...
    FieldDetails
    originalMessage*

    ...

    metaInformation*Embedded Meta Block

    5.12 - Workup Request

    Future Phase

    5.13 - Workup Status

    Future Phase

    5.14 - Request Cancellation (REQ_CAN)

    This message is used to cancel a previous request that has been sent to the donor registry. The Request must have a preceding request that is being canceled.

    Send (Post)
    Retrieve (Post)
    requestCancellationRequestrequestCancellationRetrieve
    SendRetrievereservationRequestRequestreservationRequestRetrieve
    Expand
    titleRequest...
    FieldDetails
    request
    message*
    Expand
    title...
    FieldDetailsreferenceCode*string($uuid)expirationDatestring($date-time)
    FieldDetails
    requestId

    string

    maxLength: 19

    referenceMessageId*string($uuid)
    requestType*

    string
    maxLength: 3
    nullable: false

    Enum: [ genericRequest, extendedTypingRequest, sampleRequest, infectiousDiseaseMarkerRequest ]

    Type of request REQ_TYPE Req 3

    reason

    string
    maxLength: 3

    minLength: 3


    nullable: true

    Request date EXPI_DATE Opt 8 yyyy-MM-dd [or yyyyMMdd]

    Enum: [ ATX, RMT, UMT, RCT, UCT, RPT, UPT, GCC, BCC, PDC, PAT, PPR, ICH, FND, NDF, COR, HMM, DRR, OTH, UNK ]

    Reason of request cancellation REASON_CNCL Opt 3

    acknowledgementIdstring
    maxLength: 17

    nullable: true

    example: 1234567890abcdefg
    Acknowledgement ID ACK_ID Opt 17

    remarkstring
    maxLength: 
    120
    1000
    nullable: true

    example: the patient case is very urgent

    Remark REMARK Opt 120

    receivingRegistry*string
    maximum: 9999
    minimum:
     
    1000
    maxLength: 4

    minLength: 4

    example: 1234

    4-digit ION of the receiving registry

    patient*
    Expand
    title...
    FieldDetails
    wmdaId*
    Embedded Patient Block

    integer
    nullable: false

    example: 1234

    ID provided by the WMDA

     

    donor*
    Donor ID
    Expand
    titleResponse...
    FieldDetails
    wmdaResponse
    metaInformation*Embedded
    WMDA Response
    Expand
    titleRequest...
    limitinteger
    default: 100

    shouldPeekboolean
    default: false

    Set to true if you want messages to remain available after retrieval

    messageSequenceNumber

    integer
    e
    xamplet: 12345

    Optional field to request a message with a specific messageSequenceNumber. If that message (no longer) exists then no message will be returned.


    Expand
    titleResponse...
    generalInformation*Embedded General Information Block
    messages*
    Expand
    title...
    FieldDetails
    originalMessage*
    {
    }


    metaInformation*Embedded Meta
    Block

    5.

    ...

    15 -

    ...

    Request Rejection (

    ...

    NO_RES)

    This message is used to notify the requesting patient registry if the Reservation Request has been confirmed by the donor registry.to notify the requesting registry when a request cannot be fulfilled (service cannot be provided).


    Send (Post)
    Retrieve (Post)
    requestRejectedRequestrequestRejectedRetrieve
    SendRetrievereservationResponseRequestreservationResponseRetrieve
    Expand
    titleRequest...
    FieldDetails
    response
    message*
    Expand
    title...
    FieldDetails
    referenceCode
    requestId

    string

    maxLength: 19

    referenceMessageId*string($uuid)
    expirationDatestring($date-time)
    nullable: true

    Date expiration of reservation EXPI_DATE Opt 8 yyyy-MM-dd [or yyyyMMdd]

    requestType*

    string
    maxLength: 3

    Enum: [ genericRequest, extendedTypingRequest, sampleRequest, infectiousDiseaseMarkerRequest ]

    Type of request REQ_TYPE Req 3

    reason*

    string
    maxLength: 3

    minLength: 2

    Enum: [ BCC, FND, LAB, NSP, OLD, PDC, STP, TRX, OTH, DO, DD, MR, PR, TX, MO, UC, NS, OT, UK, EX, MM ]

    Reason REASON Req 3

    confirmed*booleanConfirmation of reservation CONFIRM Req 1
    nullable: true

    remarkstring
    maxLength: 1000
    nullable: 
    120
    true
    example: the patient case is very urgent

    Remark REMARK Opt 120

    receivingRegistry*string
    maximum: 9999
    minimum:
     
    1000
    maxLength: 4

    minLength: 4

    example: 1234

    4-digit ION of the receiving registry

    patient*
    Expand
    title...
    FieldDetails
    wmdaId*
    Patient ID

    integer
    nullable: false

    example: 1234

    ID provided by the WMDA

     

    donor*Embedded Donor Block (donor in request)
    Expand
    titleResponse...
    FieldDetails
    wmdaResponse
    metaInformation*Embedded
    WMDA Response
    Expand
    titleRequest...
    limitinteger
    default: 100

    shouldPeekboolean
    default: false

    Set to true

    if you want messages to remain available after retrieval

    if you want messages to remain available after retrieval

    messageSequenceNumber

    integer
    e
    xamplet: 12345

    Optional field to request a message with a specific messageSequenceNumber. If that message (no longer) exists then no message will be returned.


    Expand
    titleResponse...
    FieldDetailsoriginalMessage*{
    generalInformation*Embedded General Information Block
    messages*
    Expand
    title...
    }
    metaInformation*Embedded Meta Block

    5.11 - Reservation Release Request (new message)

    The patient registry sends this message to inform the donor registry that a donor can be released from the reservation when it is no longer needed (e.g. patient is deceased or was transplanted with another donor). This should be used if the donor reservation was confirmed in response to some request. If the reservation has not been confirmed then a Request Cancellation message should be used.

    This is a change request with respect to the current procedure and should be handled as such as it has implications on local systems.

    There is no response to this message except for the automated acknowledgement.

    FieldDetails
    originalMessage*

    ...

    metaInformation*Embedded Meta Block

    5.16 - Result Reminder (RES_REM)

    This message is sent by the requesting registry to the receiving registry to remind the receiving registry of an outstanding result from a previous request.

    Send (Post)
    Retrieve (Post)
    resultReminderRequestresultReminderRetrieve
    SendRetrievereservationReleaseRequestreservationReleaseRetrieve
    Expand
    titleRequest...
    FieldDetails
    request
    message*
    Expand
    title
    ...FieldDetailsreferenceCode*string($uuid)
    ...
    FieldDetails
    requestId

    string

    maxLength: 19

    referenceMessageId*string($uuid)
    resultType*

    string
    maxLength: 9
    nullable: false

    Enum: [ extendedTypingResponse, sampleArrival, sampleResponse, infectiousDiseaseMarkerResult, reservationResponse ]

    Type of result reminded RES_TYPE Req 9

    expirationDatestring($date-time)
    nullable: true

    Request date EXPI_DATE Opt 8 yyyy-MM-dd [or yyyyMMdd]

    reasonstring
    maxLength: 3

    minLength: 3

    nullable: true
    Reason of request cancellation REASON_CNCL Opt 3

    remarkstring
    maxLength: 
    120
    1000
    nullable: true

    example: the patient case is very urgent

    Remark REMARK Opt 120

    receivingRegistry*string
    maximum: 9999
    minimum:
     
    1000
    maxLength: 4

    minLength: 4

    example: 1234

    4-digit ION of the receiving

    registrypatient*Patient ID

    registry

    patient*
    Expand
    title...
    FieldDetails
    wmdaId*

    integer
    nullable: false

    example: 1234

    ID provided by the WMDA

     

    donor*
    Donor ID
    Expand
    titleResponse...
    FieldDetails
    wmdaResponse
    metaInformation*Embedded
    WMDA Response
    Expand
    titleRequest...
    limitinteger
    default: 100

    shouldPeekboolean
    default: false

    Set to true if

    you want messages to remain available after retrieval

    you want messages to remain available after retrieval

    messageSequenceNumber

    integer
    e
    xamplet: 12345

    Optional field to request a message with a specific messageSequenceNumber. If that message (no longer) exists then no message will be returned.


    Expand
    titleResponse...
    generalInformation*Embedded General Information Block
    messages*
    Expand
    title
    Response
    ...
    FieldDetails
    originalMessage*
    {
    }


    metaInformation*Embedded Meta Block

    5.

    ...

    Future Phase

    5.13 - Workup Status

    Future Phase

    ...

    17 - Generic Request (new message)

    This message is used to cancel a previous request that has been sent to the donor registry. The Request must have a preceding request that is being canceled.for registering a patient (by the embedded patient block).

    This may be required for example for direct WU requests until 5.11 is available or to reactivate a closed patient case on the receiving registry side.

    requestCancellationRetrieve
    default: 100

    boolean
    default: false

    Set to true if you want messages to remain available after retrievalResponse{}
    Send (Post)
    Retrieve (Post)
    genericRequestRequestgenericRequestRetrieve
    SendRetrieve
    requestCancellationRequest
    Expand
    titleRequest...
    IDDonor ID
    FieldDetails
    messagerequest*
    Expand
    title...
    requestType*3Type of request REQ_TYPE Req 3
    FieldDetails
    referenceCode*string($uuid)
    requestId

    string

    maxLength: 

    19

    reason

    string

    maxLength: 3
    minLength: 3

    nullable: true

    Reason of request cancellation REASON_CNCL Opt 3

    remarkstring
    maxLength: 120

    nullable: true

    Remark REMARK Opt 120reason for the generic request. Free text.

    receivingRegistry*string
    maximum: 9999
    minimum:
      1000
    maxLength: 4

    minLength: 4

    example: 1234

    4-digit ION of the receiving registry

    patient*Embedded Patient
    Block
    donor*
    Embedded Donor Block (donor in request)
    Expand
    titleResponse...
    FieldDetails
    wmdaResponsemetaInformation*Embedded WMDA Response Meta Block
    Expand
    titleRequest...
    limitinteger
    default: 100

    shouldPeekboolean
    default: false

    Set to true if you want messages to remain available after retrieval

    messageSequenceNumber

    integer


    e
    xamplet: 12345

    Optional field to request a message with a specific messageSequenceNumber. If that message (no longer) exists then no message will be returned.


    Expand
    titleResponse...
    generalInformation*Embedded General Information Block
    messages*
    shouldPeek
    Expand
    title
    ...
    FieldDetails
    originalMessage*


    metaInformation*Embedded Meta Block


    5.

    ...

    This message is used to notify the requesting registry when a request cannot be fulfilled (service cannot be provided).

    ...

    Expand
    titleRequest...
    FieldDetails
    message*
    Expand
    title...
    FieldDetails
    referenceCode*string($uuid)
    requestType*string
    maxLength: 3

    Type of request REQ_TYPE Req 3

    reason*string
    maxLength: 3

    minLength: 2

    Reason REASON Req 3

    remarkstring
    maxLength: 120

    nullable: true

    Remark REMARK Opt 120

    receivingRegistry*string
    maximum: 9999

    minimum: 0

    maxLength: 4

    minLength: 4

    example: 1234

    4-digit ION of the receiving registry

    patient*Patient ID
    donor*Donor ID
    Expand
    titleResponse...
    FieldDetails
    wmdaResponse*Embedded WMDA Response Block

    ...

    Expand
    titleRequest...
    limitinteger
    default: 100

    shouldPeekboolean
    default: false

    Set to true if you want messages to remain available after retrieval

    Expand
    titleResponse...
    originalMessage*{...}
    metaInformation*Embedded Meta Block

    5.16 - Result Reminder (RES_REM)

    This message is sent by the requesting registry to the receiving registry to remind the receiving registry of an outstanding result from a previous request.

    ...

    Expand
    titleRequest...
    FieldDetails
    message*
    Expand
    title...
    FieldDetails
    referenceCode*string($uuid)
    resultType*string
    maxLength: 9

    Type of result reminded RES_TYPE Req 9

    expirationDatestring($date-time)
    nullable: true

    Request date EXPI_DATE Opt 8 yyyy-MM-dd [or yyyyMMdd]

    remarkstring
    maxLength: 120

    nullable: true

    Remark REMARK Opt 120

    receivingRegistry*string
    maximum: 9999

    minimum: 0

    maxLength: 4

    minLength: 4

    example: 1234

    4-digit ION of the receiving registry

    patient*Patient ID
    donor*Donor ID
    Expand
    titleResponse...
    FieldDetails
    wmdaResponse*Embedded WMDA Response Block

    ...

    Expand
    titleRequest...
    limitinteger
    default: 100

    shouldPeekboolean
    default: false

    Set to true if you want messages to remain available after retrieval

    Expand
    titleResponse...
    FieldDetails
    originalMessage*{...}
    metaInformation*Embedded Meta Block

    5.17 - Generic Request (new message)

    This message is used for registering a patient (by the embedded patient block).

    This may be required for example for direct WU requests until 5.11 is available or to reactivate a closed patient case on receiving registry side.

    ...

    Expand
    titleRequest...
    FieldDetails
    request*
    Expand
    title...
    FieldDetails
    reason

    string

    reason for the generic request

    receivingRegistry*string
    maximum: 9999

    minimum: 0

    maxLength: 4

    minLength: 4

    example: 1234

    4-digit ION of the receiving registry

    patient*Embedded Patient Block
    donor*Donor ID
    Expand
    titleResponse...
    FieldDetails
    wmdaResponse*Embedded WMDA Response Block

    ...

    Expand
    titleRequest...
    limitinteger
    default: 100

    shouldPeekboolean
    default: false

    Set to true if you want messages to remain available after retrieval

    Expand
    titleResponse...
    FieldDetails
    originalMessage*{...}
    metaInformation*Embedded Meta Block

    18 Request + Response Flows


    PlantUML Render Macro
    formatPNG
    alignleft
    titleExtended Typing

    participant "Patient Registry" as PR

    control "Match-Connect" as MC

    control "Search & Match Service" as SM

    participant "Donor Registry" as DR

    skinparam SequenceMessageAlign center

    skinparam dpi 92

    == Register Patient ==

    PR -> SM : Create Patient

    activate SM #FFBBBB

    SM -> PR : Return wmdaId

    deactivate SM

    == Start Search ==

    PR -> SM : Start Search

    activate SM #FFBBBB

    SM -> PR : Return searchId

    deactivate SM


    PR -> SM : Check search status

    activate SM #FFBBBB

    SM -> PR : Return search status (Completed, Running, Errored)

    deactivate SM


    PR -> SM : Retrieve search results

    activate SM #FFBBBB

    SM -> PR : Return search results

    deactivate SM


    == Making Request ==

    PR -[#dodgerblue]> DR : Extended Typing Request (incl. Embedded Patient Block)

    DR -[#dodgerblue]> PR : Reservation Response 

    PR -[#dodgerblue]> DR : Request Cancellation


    == Getting Response ==

    DR -[#dodgerblue]> PR : Request Rejection

    DR -[#dodgerblue]> PR : Extended Typing Result (incl. Embedded Donor Block)

     


    PlantUML Render Macro
    formatPNG
    alignleft
    titleSample Request

    participant "Patient Registry" as PR

    control "Match-Connect" as MC

    control "Search & Match Service" as SM

    participant "Donor Registry" as DR

    skinparam SequenceMessageAlign center

    skinparam dpi 92

    == Register Patient ==

    PR -> SM : Create Patient

    activate SM #FFBBBB

    SM -> PR : Return wmdaId

    deactivate SM

    == Start Search ==

    PR -> SM : Start Search

    activate SM #FFBBBB

    SM -> PR : Return searchId

    deactivate SM


    PR -> SM : Check search status

    activate SM #FFBBBB

    SM -> PR : Return search status (Completed, Running, Errored)

    deactivate SM


    PR -> SM : Retrieve search results

    activate SM #FFBBBB

    SM -> PR : Return search results

    deactivate SM


    == Making Request ==

    PR -[#dodgerblue]> DR : Sample Request (incl. Embedded Patient Block)

    DR -[#dodgerblue]> PR : Reservation Response

    PR -[#dodgerblue]> DR : Request Cancellation

    DR -[#dodgerblue]> PR : Request Rejection

    DR -[#dodgerblue]> PR : Sample Arrival

    DR -[#dodgerblue]> PR : IDM result (incl. Embedded Donor Block)

    DR -[#dodgerblue]> PR : Sample Information


    == Getting Response ==

    PR -[#dodgerblue]> DR : Request Rejection

    PR -[#dodgerblue]> DR : Sample Result



    PlantUML Render Macro
    formatPNG
    alignleft
    titleInfectious Disease Marker Request

    participant "Patient Registry" as PR

    control "Match-Connect" as MC

    control "Search & Match Service" as SM

    participant "Donor Registry" as DR

    skinparam SequenceMessageAlign center

    skinparam dpi 92

    == Register Patient ==

    PR -> SM : Create Patient

    activate SM #FFBBBB

    SM -> PR : Return wmdaId

    deactivate SM

    == Start Search ==

    PR -> SM : Start Search

    activate SM #FFBBBB

    SM -> PR : Return searchId

    deactivate SM



    PR -> SM : Check search status

    activate SM #FFBBBB

    SM -> PR : Return search status (Completed, Running, Errored)

    deactivate SM



    PR -> SM : Retrieve search results

    activate SM #FFBBBB

    SM -> PR : Return search results

    deactivate SM


    == Making Request ==

    PR -[#dodgerblue]> DR : IDM Request (incl. Embedded Patient Block)

    DR -[#dodgerblue]> PR : Reservation Response

    PR -[#dodgerblue]> DR : Request Cancellation

    == Getting Response ==

    DR -[#dodgerblue]> PR : Request Rejection

    DR -[#dodgerblue]> PR : IDM Result (incl. Embedded Donor Block)



    PlantUML Render Macro
    formatPNG
    alignleft
    titleReservation Request

    participant "Patient Registry" as PR

    control "Match-Connect" as MC

    control "Search & Match Service" as SM

    participant "Donor Registry" as DR

    skinparam SequenceMessageAlign center


    skinparam dpi 92

    == Register Patient ==

    PR -> SM : Create Patient

    activate SM #FFBBBB

    SM -> PR : Return wmdaId

    deactivate SM

    == Start Search ==

    PR -> SM : Start Search

    activate SM #FFBBBB

    SM -> PR : Return searchId

    deactivate SM


    PR -> SM : Check search status

    activate SM #FFBBBB

    SM -> PR : Return search status (Completed, Running, Errored)

    deactivate SM


    PR -> SM : Retrieve search results

    activate SM #FFBBBB

    SM -> PR : Return search results

    deactivate SM


    == Making Request ==

    PR -[#dodgerblue]> DR : Reservation Request (incl. Embedded Patient Block)

    PR -[#dodgerblue]> DR : Request Cancellation


    == Getting Response ==

    DR -[#dodgerblue]> PR : Reservation Response (incl. Embedded Donor Block)

    PR -[#dodgerblue]> DR : Reservation Release Request



    PlantUML Render Macro
    formatPNG
    alignleft
    titleGeneric Request

    @startuml

    participant "Patient Registry" as PR

    control "Match-Connect" as MC

    control "Search & Match Service" as SM

    participant "Donor Registry" as DR

    skinparam SequenceMessageAlign center

    skinparam dpi 92

    == Register Patient ==

    PR -> SM : Create Patient

    activate SM #FFBBBB

    SM -> PR : Return wmdaId

    deactivate SM

    == Start Search ==


    PR -> SM : Start Search

    activate SM #FFBBBB

    SM -> PR : Return searchId

    deactivate SM

    PR -> SM : Check search status

    activate SM #FFBBBB

    SM -> PR : Return search status (Completed, Running, Errored)

    deactivate SM


    PR -> SM : Retrieve search results

    activate SM #FFBBBB

    SM -> PR : Return search results

    deactivate SM


    == Making Request ==

    PR -[#dodgerblue]> DR : Generic Request (incl. Embedded Patient Block)

    DR -[#dodgerblue]> PR : Reservation Response 

    PR -[#dodgerblue]> DR : Request Cancellation


    == Getting Response ==

    DR -[#dodgerblue]> PR : Request Rejection

    @enduml

    v1.0.1

    5.18 Request + Response Flows

    Generic 

    Image Removed

    Extended Typing 

    Image Removed

    Infectious Disease Marker

    Image Removed

    Sample Request

    Image Removed

    Reservation Request

    Image Removed