This page is part of the FHIR Core Extensions Registry (v5.1.0-ballot: Releases Ballot 4) based on FHIR (HL7® FHIR® Standard) v5.0.0. The current version which supersedes this version is 1.0.0. For a full list of available versions, see the Directory of published versions
Official URL: http://hl7.org/fhir/StructureMap/Invoice4Bto5 | Version: 5.1.0-ballot1 | |||
Standards status: Trial-use | Maturity Level: 1 | Computable Name: Invoice4Bto5 |
FMLConversionforInvoiceR4BtoR5
/// url = 'http://hl7.org/fhir/StructureMap/Invoice4Bto5' /// name = 'Invoice4Bto5' /// title = 'FML Conversion for Invoice: R4B to R5' /// status = 'active' conceptmap "InvoiceStatus" { prefix s = "http://hl7.org/fhir/4.3/invoice-status" prefix t = "http://hl7.org/fhir/invoice-status" s:draft - t:draft s:issued - t:issued s:balanced - t:balanced s:cancelled - t:cancelled s:"entered-in-error" - t:"entered-in-error" } uses "http://hl7.org/fhir/4.3/StructureDefinition/Invoice" alias InvoiceR4B as source uses "http://hl7.org/fhir/StructureDefinition/Invoice" alias InvoiceR5 as target imports "http://hl7.org/fhir/StructureMap/*4Bto5" group Invoice(source src : InvoiceR4B, target tgt : InvoiceR5) extends DomainResource <<type+>> { src.identifier -> tgt.identifier; src.status as v -> tgt.status = translate(v, '#InvoiceStatus', 'code'); src.cancelledReason -> tgt.cancelledReason; src.type -> tgt.type; src.subject -> tgt.subject; src.recipient -> tgt.recipient; src.date -> tgt.date; src.participant as s -> tgt.participant as t then InvoiceParticipant(s, t); // src.creation -> tgt.creation; src.issuer -> tgt.issuer; src.account -> tgt.account; src.lineItem as s -> tgt.lineItem as t then InvoiceLineItem(s, t); src.totalPriceComponent as s -> tgt.totalPriceComponent as t then { s.type -> t.type; s.code -> t.code; s.factor -> t.factor; s.amount -> t.amount; }; src.totalNet -> tgt.totalNet; src.totalGross -> tgt.totalGross; src.paymentTerms -> tgt.paymentTerms; src.note -> tgt.note; } group InvoiceParticipant(source src, target tgt) extends BackboneElement { src.role -> tgt.role; src.actor -> tgt.actor; } group InvoiceLineItem(source src, target tgt) extends BackboneElement { src.sequence -> tgt.sequence; src.chargeItem : Reference -> tgt.chargeItem; // src.serviced : date -> tgt.serviced; src.chargeItem : CodeableConcept -> tgt.chargeItem; src.priceComponent as s -> tgt.priceComponent as t then { s.type -> t.type; s.code -> t.code; s.factor -> t.factor; s.amount -> t.amount; }; }