3.1.7.3.3 Sending a Final Stream Receipt
For stream messages, if the <Deadletter/> element is present in the <Msmq> element the protocol MUST send a final stream receipt message to the original sender when the message is removed from the destination queue.
The <id> element in the <commitmentReceipt> element MUST be set to the <id> element of the <path> element of the original message.
The <decidedAt> element MUST be set to the CURRENT_TIME at which the outcome was recorded, and the <decision> element MUST be set to "positive" for a positive receipt or to "negative" for a negative receipt.
If iReason equals AckReceive, the <decision> element MUST be set to "positive". If iReason equals NackPurged, NackQueueDeleted, NackQueuePurged, NackReceiveTimeout, or NackReceiveRejected, the <decision> element MUST be set to "negative". If iReason equals any other value, the server MUST not send a final stream receipt message.
The <streamId> element in the <streamReceipt> element MUST be set to the <streamId> element of the original message, and the <lastOrdinal> element MUST be set to the <current> element of the original message.
The stream receipt message MUST be addressed to the sender order queue by setting the <to> element of the <path> element to the URI in the <sendReceiptsTo> element of the <start> element of the first stream message.