FHIR Extensions Pack v5.1.0-cibuild (2024-04-03)

FHIR Extensions Pack, published by HL7 International / FHIR Infrastructure. This guide is not an authorized publication; it is the continuous build for version 5.1.0-cibuild built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/fhir-extensions/ and changes regularly. See the Directory of published versions

Patient Administration Work GroupMaturity Level: N/AStandards Status: InformativeSecurity Category: N/A Compartments: N/A

Following are maps for converting between the equivalent R4B resource and this R5 resource.

Maps to VerificationResult

FML Conversion for VerificationResult: R5 to R4 (Ready for Use/Trial Use)

/// url = 'http://hl7.org/fhir/StructureMap/VerificationResult5to4'
/// name = 'VerificationResult5to4'
/// title = 'FML Conversion for VerificationResult: R5 to R4'
/// status = 'active'

conceptmap "status" {
  prefix s = "http://hl7.org/fhir/CodeSystem/verificationresult-status"
  prefix t = "http://hl7.org/fhir/4.0/CodeSystem/status"

  s:attested - t:attested
  s:validated - t:validated
  s:"in-process" - t:"in-process"
  s:"req-revalid" - t:"req-revalid"
  s:"val-fail" - t:"val-fail"
  s:"reval-fail" - t:"reval-fail"
}

uses "http://hl7.org/fhir/StructureDefinition/VerificationResult" alias VerificationResultR5 as source
uses "http://hl7.org/fhir/4.0/StructureDefinition/VerificationResult" alias VerificationResultR4 as target

imports "http://hl7.org/fhir/StructureMap/*5to4"

group VerificationResult(source src : VerificationResultR5, target tgt : VerificationResultR4) extends DomainResource <<type+>> {
  src.target -> tgt.target;
  src.targetLocation -> tgt.targetLocation;
  src.need -> tgt.need;
  src.status as v -> tgt.status = translate(v, '#status', 'code');
  src.statusDate -> tgt.statusDate;
  src.validationType -> tgt.validationType;
  src.validationProcess -> tgt.validationProcess;
  src.frequency -> tgt.frequency;
  src.lastPerformed -> tgt.lastPerformed;
  src.nextScheduled -> tgt.nextScheduled;
  src.failureAction -> tgt.failureAction;
  src.primarySource as s -> tgt.primarySource as t then VerificationResultPrimarySource(s, t);
  src.attestation as s -> tgt.attestation as t then VerificationResultAttestation(s, t);
  src.validator as s -> tgt.validator as t then VerificationResultValidator(s, t);
}

group VerificationResultPrimarySource(source src, target tgt) extends BackboneElement {
  src.who -> tgt.who;
  src.type -> tgt.type;
  src.communicationMethod -> tgt.communicationMethod;
  src.validationStatus -> tgt.validationStatus;
  src.validationDate -> tgt.validationDate;
  src.canPushUpdates -> tgt.canPushUpdates;
  src.pushTypeAvailable -> tgt.pushTypeAvailable;
}

group VerificationResultAttestation(source src, target tgt) extends BackboneElement {
  src.who -> tgt.who;
  src.onBehalfOf -> tgt.onBehalfOf;
  src.communicationMethod -> tgt.communicationMethod;
  src.date -> tgt.date;
  src.sourceIdentityCertificate -> tgt.sourceIdentityCertificate;
  src.proxyIdentityCertificate -> tgt.proxyIdentityCertificate;
  src.proxySignature -> tgt.proxySignature;
  src.sourceSignature -> tgt.sourceSignature;
}

group VerificationResultValidator(source src, target tgt) extends BackboneElement {
  src.organization -> tgt.organization;
  src.identityCertificate -> tgt.identityCertificate;
  src.attestationSignature -> tgt.attestationSignature;
}

FML Conversion for VerificationResult: R5 to R4B (Ready for Use/Trial Use)

/// url = 'http://hl7.org/fhir/StructureMap/VerificationResult5to4B'
/// name = 'VerificationResult5to4B'
/// title = 'FML Conversion for VerificationResult: R5 to R4B'
/// status = 'active'

conceptmap "status" {
  prefix s = "http://hl7.org/fhir/CodeSystem/verificationresult-status"
  prefix t = "http://hl7.org/fhir/4.3/verificationresult-status"

  s:attested - t:attested
  s:validated - t:validated
  s:"in-process" - t:"in-process"
  s:"req-revalid" - t:"req-revalid"
  s:"val-fail" - t:"val-fail"
  s:"reval-fail" - t:"reval-fail"
}

uses "http://hl7.org/fhir/StructureDefinition/VerificationResult" alias VerificationResultR5 as source
uses "http://hl7.org/fhir/4.3/StructureDefinition/VerificationResult" alias VerificationResultR4B as target

imports "http://hl7.org/fhir/StructureMap/*5to4B"

group VerificationResult(source src : VerificationResultR5, target tgt : VerificationResultR4B) extends DomainResource <<type+>> {
  src.target -> tgt.target;
  src.targetLocation -> tgt.targetLocation;
  src.need -> tgt.need;
  src.status as v -> tgt.status = translate(v, '#status', 'code');
  src.statusDate -> tgt.statusDate;
  src.validationType -> tgt.validationType;
  src.validationProcess -> tgt.validationProcess;
  src.frequency -> tgt.frequency;
  src.lastPerformed -> tgt.lastPerformed;
  src.nextScheduled -> tgt.nextScheduled;
  src.failureAction -> tgt.failureAction;
  src.primarySource as s -> tgt.primarySource as t then VerificationResultPrimarySource(s, t);
  src.attestation as s -> tgt.attestation as t then VerificationResultAttestation(s, t);
  src.validator as s -> tgt.validator as t then VerificationResultValidator(s, t);
}

group VerificationResultPrimarySource(source src, target tgt) extends BackboneElement {
  src.who -> tgt.who;
  src.type -> tgt.type;
  src.communicationMethod -> tgt.communicationMethod;
  src.validationStatus -> tgt.validationStatus;
  src.validationDate -> tgt.validationDate;
  src.canPushUpdates -> tgt.canPushUpdates;
  src.pushTypeAvailable -> tgt.pushTypeAvailable;
}

group VerificationResultAttestation(source src, target tgt) extends BackboneElement {
  src.who -> tgt.who;
  src.onBehalfOf -> tgt.onBehalfOf;
  src.communicationMethod -> tgt.communicationMethod;
  src.date -> tgt.date;
  src.sourceIdentityCertificate -> tgt.sourceIdentityCertificate;
  src.proxyIdentityCertificate -> tgt.proxyIdentityCertificate;
  src.proxySignature -> tgt.proxySignature;
  src.sourceSignature -> tgt.sourceSignature;
}

group VerificationResultValidator(source src, target tgt) extends BackboneElement {
  src.organization -> tgt.organization;
  src.identityCertificate -> tgt.identityCertificate;
  src.attestationSignature -> tgt.attestationSignature;
}

Maps from VerificationResult

FML Conversion for VerificationResult: R4B to R5 (Ready for Use/Trial Use)

/// url = 'http://hl7.org/fhir/StructureMap/VerificationResult4Bto5'
/// name = 'VerificationResult4Bto5'
/// title = 'FML Conversion for VerificationResult: R4B to R5'
/// status = 'active'

conceptmap "status" {
  prefix s = "http://hl7.org/fhir/4.3/verificationresult-status"
  prefix t = "http://hl7.org/fhir/CodeSystem/verificationresult-status"

  s:attested - t:attested
  s:validated - t:validated
  s:"in-process" - t:"in-process"
  s:"req-revalid" - t:"req-revalid"
  s:"val-fail" - t:"val-fail"
  s:"reval-fail" - t:"reval-fail"
}

uses "http://hl7.org/fhir/4.3/StructureDefinition/VerificationResult" alias VerificationResultR4B as source
uses "http://hl7.org/fhir/StructureDefinition/VerificationResult" alias VerificationResultR5 as target

imports "http://hl7.org/fhir/StructureMap/*4Bto5"

group VerificationResult(source src : VerificationResultR4B, target tgt : VerificationResultR5) extends DomainResource <<type+>> {
  src.target -> tgt.target;
  src.targetLocation -> tgt.targetLocation;
  src.need -> tgt.need;
  src.status as v -> tgt.status = translate(v, '#status', 'code');
  src.statusDate -> tgt.statusDate;
  src.validationType -> tgt.validationType;
  src.validationProcess -> tgt.validationProcess;
  src.frequency -> tgt.frequency;
  src.lastPerformed -> tgt.lastPerformed;
  src.nextScheduled -> tgt.nextScheduled;
  src.failureAction -> tgt.failureAction;
  src.primarySource as s -> tgt.primarySource as t then VerificationResultPrimarySource(s, t);
  src.attestation as s -> tgt.attestation as t then VerificationResultAttestation(s, t);
  src.validator as s -> tgt.validator as t then VerificationResultValidator(s, t);
}

group VerificationResultPrimarySource(source src, target tgt) extends BackboneElement {
  src.who -> tgt.who;
  src.type -> tgt.type;
  src.communicationMethod -> tgt.communicationMethod;
  src.validationStatus -> tgt.validationStatus;
  src.validationDate -> tgt.validationDate;
  src.canPushUpdates -> tgt.canPushUpdates;
  src.pushTypeAvailable -> tgt.pushTypeAvailable;
}

group VerificationResultAttestation(source src, target tgt) extends BackboneElement {
  src.who -> tgt.who;
  src.onBehalfOf -> tgt.onBehalfOf;
  src.communicationMethod -> tgt.communicationMethod;
  src.date -> tgt.date;
  src.sourceIdentityCertificate -> tgt.sourceIdentityCertificate;
  src.proxyIdentityCertificate -> tgt.proxyIdentityCertificate;
  src.proxySignature -> tgt.proxySignature;
  src.sourceSignature -> tgt.sourceSignature;
}

group VerificationResultValidator(source src, target tgt) extends BackboneElement {
  src.organization -> tgt.organization;
  src.identityCertificate -> tgt.identityCertificate;
  src.attestationSignature -> tgt.attestationSignature;
}

FML Conversion for VerificationResult: R4 to R5 (Ready for Use/Trial Use)

/// url = 'http://hl7.org/fhir/StructureMap/VerificationResult4to5'
/// name = 'VerificationResult4to5'
/// title = 'FML Conversion for VerificationResult: R4 to R5'
/// status = 'active'

conceptmap "status" {
  prefix s = "http://hl7.org/fhir/4.0/CodeSystem/status"
  prefix t = "http://hl7.org/fhir/CodeSystem/verificationresult-status"

  s:attested - t:attested
  s:validated - t:validated
  s:"in-process" - t:"in-process"
  s:"req-revalid" - t:"req-revalid"
  s:"val-fail" - t:"val-fail"
  s:"reval-fail" - t:"reval-fail"
}

uses "http://hl7.org/fhir/4.0/StructureDefinition/VerificationResult" alias VerificationResultR4 as source
uses "http://hl7.org/fhir/StructureDefinition/VerificationResult" alias VerificationResultR5 as target

imports "http://hl7.org/fhir/StructureMap/*4to5"

group VerificationResult(source src : VerificationResultR4, target tgt : VerificationResultR5) extends DomainResource <<type+>> {
  src.target -> tgt.target;
  src.targetLocation -> tgt.targetLocation;
  src.need -> tgt.need;
  src.status as v -> tgt.status = translate(v, '#status', 'code');
  src.statusDate -> tgt.statusDate;
  src.validationType -> tgt.validationType;
  src.validationProcess -> tgt.validationProcess;
  src.frequency -> tgt.frequency;
  src.lastPerformed -> tgt.lastPerformed;
  src.nextScheduled -> tgt.nextScheduled;
  src.failureAction -> tgt.failureAction;
  src.primarySource as s -> tgt.primarySource as t then VerificationResultPrimarySource(s, t);
  src.attestation as s -> tgt.attestation as t then VerificationResultAttestation(s, t);
  src.validator as s -> tgt.validator as t then VerificationResultValidator(s, t);
}

group VerificationResultPrimarySource(source src, target tgt) extends BackboneElement {
  src.who -> tgt.who;
  src.type -> tgt.type;
  src.communicationMethod -> tgt.communicationMethod;
  src.validationStatus -> tgt.validationStatus;
  src.validationDate -> tgt.validationDate;
  src.canPushUpdates -> tgt.canPushUpdates;
  src.pushTypeAvailable -> tgt.pushTypeAvailable;
}

group VerificationResultAttestation(source src, target tgt) extends BackboneElement {
  src.who -> tgt.who;
  src.onBehalfOf -> tgt.onBehalfOf;
  src.communicationMethod -> tgt.communicationMethod;
  src.date -> tgt.date;
  src.sourceIdentityCertificate -> tgt.sourceIdentityCertificate;
  src.proxyIdentityCertificate -> tgt.proxyIdentityCertificate;
  src.proxySignature -> tgt.proxySignature;
  src.sourceSignature -> tgt.sourceSignature;
}

group VerificationResultValidator(source src, target tgt) extends BackboneElement {
  src.organization -> tgt.organization;
  src.identityCertificate -> tgt.identityCertificate;
  src.attestationSignature -> tgt.attestationSignature;
}