This page is part of the FHIR Specification (v3.2.0: R4 Ballot 1). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R4B R4 R3
FHIR Infrastructure Work Group | Maturity Level: N/A | Ballot Status: Informative |
This page provides the detailed descriptions for the data types
Table of Contents
Primitive Types |
Complex Types |
See also Base Definition, Detailed Descriptions, Examples, Profiles & Extensions and Mappings.
Functional status for this map: Not Mapped (based on R2 -> R3 -> R2 round tripping)
map "http://hl7.org/fhir/StructureMap/primitives2to3" = "R2 to R3 Primitive Conversions" uses "http://hl7.org/fhir/DSTU2/StructureDefinition/base64Binary" alias base64BinaryR2 as source uses "http://hl7.org/fhir/StructureDefinition/base64Binary" as target uses "http://hl7.org/fhir/DSTU2/StructureDefinition/boolean" alias booleanR2 as source uses "http://hl7.org/fhir/StructureDefinition/boolean" as target uses "http://hl7.org/fhir/DSTU2/StructureDefinition/code" alias codeR2 as source uses "http://hl7.org/fhir/StructureDefinition/code" as target uses "http://hl7.org/fhir/DSTU2/StructureDefinition/date" alias dateR2 as source uses "http://hl7.org/fhir/StructureDefinition/date" as target uses "http://hl7.org/fhir/DSTU2/StructureDefinition/dateTime" alias dateTimeR2 as source uses "http://hl7.org/fhir/StructureDefinition/dateTime" as target uses "http://hl7.org/fhir/DSTU2/StructureDefinition/decimal" alias decimalR2 as source uses "http://hl7.org/fhir/StructureDefinition/decimal" as target uses "http://hl7.org/fhir/DSTU2/StructureDefinition/id" alias idR2 as source uses "http://hl7.org/fhir/StructureDefinition/id" as target uses "http://hl7.org/fhir/DSTU2/StructureDefinition/instant" alias instantR2 as source uses "http://hl7.org/fhir/StructureDefinition/instant" as target uses "http://hl7.org/fhir/DSTU2/StructureDefinition/integer" alias integerR2 as source uses "http://hl7.org/fhir/StructureDefinition/integer" as target uses "http://hl7.org/fhir/DSTU2/StructureDefinition/markdown" alias markdownR2 as source uses "http://hl7.org/fhir/StructureDefinition/markdown" as target uses "http://hl7.org/fhir/DSTU2/StructureDefinition/oid" alias oidR2 as source uses "http://hl7.org/fhir/StructureDefinition/oid" as target uses "http://hl7.org/fhir/DSTU2/StructureDefinition/positiveInt" alias positiveIntR2 as source uses "http://hl7.org/fhir/StructureDefinition/positiveInt" as target uses "http://hl7.org/fhir/DSTU2/StructureDefinition/string" alias stringR2 as source uses "http://hl7.org/fhir/StructureDefinition/string" as target uses "http://hl7.org/fhir/DSTU2/StructureDefinition/time" alias timeR2 as source uses "http://hl7.org/fhir/StructureDefinition/time" as target uses "http://hl7.org/fhir/DSTU2/StructureDefinition/unsignedInt" alias unsignedIntR2 as source uses "http://hl7.org/fhir/StructureDefinition/unsignedInt" as target uses "http://hl7.org/fhir/DSTU2/StructureDefinition/uri" alias uriR2 as source uses "http://hl7.org/fhir/StructureDefinition/uri" as target uses "http://hl7.org/fhir/DSTU2/StructureDefinition/uuid" alias uuidR2 as source uses "http://hl7.org/fhir/StructureDefinition/uuid" as target uses "http://hl7.org/fhir/DSTU2/StructureDefinition/xhtml" alias xhtmlR2 as source uses "http://hl7.org/fhir/StructureDefinition/xhtml" as target imports "http://hl7.org/fhir/StructureMap/Element2to3" group for type+types base64Binary extends Element input src : base64BinaryR2 as source input tgt : base64Binary as target "base64Binary-value" : for src.value as v make tgt.value = v endgroup group for type+types boolean extends Element input src : booleanR2 as source input tgt : boolean as target "boolean-value" : for src.value as v make tgt.value = v endgroup group for type+types code extends Element input src : codeR2 as source input tgt : code as target "code-value" : for src.value as v make tgt.value = v endgroup group for type+types date extends Element input src : dateR2 as source input tgt : date as target "date-value" : for src.value as v make tgt.value = v endgroup group for type+types dateTime extends Element input src : dateTimeR2 as source input tgt : dateTime as target "dateTime-value" : for src.value as v make tgt.value = v endgroup group for type+types decimal extends Element input src : decimalR2 as source input tgt : decimal as target "decimal-value" : for src.value as v make tgt.value = v endgroup group for type+types id extends Element input src : idR2 as source input tgt : id as target "id-value" : for src.value as v make tgt.value = v endgroup group for type+types instant extends Element input src : instantR2 as source input tgt : instant as target "instant-value" : for src.value as v make tgt.value = v endgroup group for type+types integer extends Element input src : integerR2 as source input tgt : integer as target "integer-value" : for src.value as v make tgt.value = v endgroup group for type+types markdown extends Element input src : markdownR2 as source input tgt : markdown as target "markdown-value" : for src.value as v make tgt.value = v endgroup group for type+types oid extends Element input src : oidR2 as source input tgt : oid as target "oid-value" : for src.value as v make tgt.value = v endgroup group for type+types positiveInt extends Element input src : positiveIntR2 as source input tgt : positiveInt as target "positiveInt-value" : for src.value as v make tgt.value = v endgroup group for type+types string extends Element input src : stringR2 as source input tgt : string as target "string-value" : for src.value as v make tgt.value = v endgroup group for type+types time extends Element input src : timeR2 as source input tgt : time as target "time-value" : for src.value as v make tgt.value = v endgroup group for type+types unsignedInt extends Element input src : unsignedIntR2 as source input tgt : unsignedInt as target "unsignedInt-value" : for src.value as v make tgt.value = v endgroup group for type+types uri extends Element input src : uriR2 as source input tgt : uri as target "uri-value" : for src.value as v make tgt.value = v endgroup group for type+types uuid extends Element input src : uuidR2 as source input tgt : uuid as target "uuid-value" : for src.value as v make tgt.value = v endgroup group for type+types xhtml extends Element input src : xhtmlR2 as source input tgt : xhtml as target "xhtml-value" : for src.value as v make tgt.value = v endgroup group for types stringToMarkdown extends Element input src : stringR2 as source input tgt : markdown as target "stringToMarkdown-value" : for src.value as v make tgt.value = v endgroup group for types codeToUri extends Element input src : codeR2 as source input tgt : uri as target "codeToUri-value" : for src.value as v make tgt.value = v endgroup group for types stringToId extends Element input src : stringR2 as source input tgt : id as target "stringToId-value" : for src.value as v make tgt.value = v endgroup group for types idToString extends Element input src : idR2 as source input tgt : string as target "stringToId-value" : for src.value as v make tgt.value = v endgroup group for types stringToUri extends Element input src : stringR2 as source input tgt : uri as target "stringToUri-value" : for src.value as v make tgt.value = v endgroup group for types stringToCode extends Element input src : stringR2 as source input tgt : code as target "stringToCode-value" : for src.value as v make tgt.value = v endgroup group for types codeToString extends Element input src : codeR2 as source input tgt : string as target "stringToCode-value" : for src.value as v make tgt.value = v endgroup group for types integerToPositiveInt extends Element input src : integerR2 as source input tgt : positiveInt as target "integerToPositiveInt-value" : for src.value as v make tgt.value = v endgroup group for types integerToUnsignedInt extends Element input src : integerR2 as source input tgt : unsignedInt as target "integerToUnsignedInt-value" : for src.value as v make tgt.value = v endgroup group for types dateToDateTime extends Element input src : dateR2 as source input tgt : dateTime as target "dateToDateTime-value" : for src.value as v make tgt.value = v endgroup group for types dateTimeToDate extends Element input src : dateTimeR2 as source input tgt : date as target "dateTimeToDate-value" : for src.value as v make tgt.value = (v.substring(0, 8)) endgroup
map "http://hl7.org/fhir/StructureMap/primitives3to2" = "R3 to R2 Primitive Conversions" uses "http://hl7.org/fhir/StructureDefinition/base64Binary" as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/base64Binary" alias base64BinaryR2 as target uses "http://hl7.org/fhir/StructureDefinition/boolean" as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/boolean" alias booleanR2 as target uses "http://hl7.org/fhir/StructureDefinition/code" as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/code" alias codeR2 as target uses "http://hl7.org/fhir/StructureDefinition/date" as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/date" alias dateR2 as target uses "http://hl7.org/fhir/StructureDefinition/dateTime" as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/dateTime" alias dateTimeR2 as target uses "http://hl7.org/fhir/StructureDefinition/decimal" as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/decimal" alias decimalR2 as target uses "http://hl7.org/fhir/StructureDefinition/id" as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/id" alias idR2 as target uses "http://hl7.org/fhir/StructureDefinition/instant" as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/instant" alias instantR2 as target uses "http://hl7.org/fhir/StructureDefinition/integer" as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/integer" alias integerR2 as target uses "http://hl7.org/fhir/StructureDefinition/markdown" as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/markdown" alias markdownR2 as target uses "http://hl7.org/fhir/StructureDefinition/oid" as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/oid" alias oidR2 as target uses "http://hl7.org/fhir/StructureDefinition/positiveInt" as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/positiveInt" alias positiveIntR2 as target uses "http://hl7.org/fhir/StructureDefinition/string" as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/string" alias stringR2 as target uses "http://hl7.org/fhir/StructureDefinition/time" as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/time" alias timeR2 as target uses "http://hl7.org/fhir/StructureDefinition/unsignedInt" as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/unsignedInt" alias unsignedIntR2 as target uses "http://hl7.org/fhir/StructureDefinition/uri" as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/uri" alias uriR2 as target uses "http://hl7.org/fhir/StructureDefinition/uuid" as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/uuid" alias uuidR2 as target uses "http://hl7.org/fhir/StructureDefinition/xhtml" as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/xhtml" alias xhtmlR2 as target imports "http://hl7.org/fhir/StructureMap/Element3to2" group for type+types base64Binary extends Element input src : base64Binary as source input tgt : base64BinaryR2 as target "base64Binary-value" : for src.value as v make tgt.value = v endgroup group for type+types boolean extends Element input src : boolean as source input tgt : booleanR2 as target "boolean-value" : for src.value as v make tgt.value = v endgroup group for type+types code extends Element input src : code as source input tgt : codeR2 as target "code-value" : for src.value as v make tgt.value = v endgroup group for type+types date extends Element input src : date as source input tgt : dateR2 as target "date-value" : for src.value as v make tgt.value = v endgroup group for type+types dateTime extends Element input src : dateTime as source input tgt : dateTimeR2 as target "dateTime-value" : for src.value as v make tgt.value = v endgroup group for type+types decimal extends Element input src : decimal as source input tgt : decimalR2 as target "decimal-value" : for src.value as v make tgt.value = v endgroup group for type+types id extends Element input src : id as source input tgt : idR2 as target "id-value" : for src.value as v make tgt.value = v endgroup group for type+types instant extends Element input src : instant as source input tgt : instantR2 as target "instant-value" : for src.value as v make tgt.value = v endgroup group for type+types integer extends Element input src : integer as source input tgt : integerR2 as target "integer-value" : for src.value as v make tgt.value = v endgroup group for type+types markdown extends Element input src : markdown as source input tgt : markdownR2 as target "markdown-value" : for src.value as v make tgt.value = v endgroup group for type+types oid extends Element input src : oid as source input tgt : oidR2 as target "oid-value" : for src.value as v make tgt.value = v endgroup group for type+types positiveInt extends Element input src : positiveInt as source input tgt : positiveIntR2 as target "positiveInt-value" : for src.value as v make tgt.value = v endgroup group for type+types string extends Element input src : string as source input tgt : stringR2 as target "string-value" : for src.value as v make tgt.value = v endgroup group for type+types time extends Element input src : time as source input tgt : timeR2 as target "time-value" : for src.value as v make tgt.value = v endgroup group for type+types unsignedInt extends Element input src : unsignedInt as source input tgt : unsignedIntR2 as target "unsignedInt-value" : for src.value as v make tgt.value = v endgroup group for type+types uri extends Element input src : uri as source input tgt : uriR2 as target "uri-value" : for src.value as v make tgt.value = v endgroup group for type+types uuid extends Element input src : uuid as source input tgt : uuidR2 as target "uuid-value" : for src.value as v make tgt.value = v endgroup group for type+types xhtml extends Element input src : xhtml as source input tgt : xhtmlR2 as target "xhtml-value" : for src.value as v make tgt.value = v endgroup group for types markdownToString extends Element input src : markdown as source input tgt : stringR2 as target "markdownToString-value" : for src.value as v make tgt.value = v endgroup group for types uriToCode extends Element input src : uri as source input tgt : codeR2 as target "uriToCode-value" : for src.value as v make tgt.value = v endgroup group for types uriToString extends Element input src : uri as source input tgt : stringR2 as target "uriToString-value" : for src.value as v make tgt.value = v endgroup group for types stringToXhtml extends Element input src : string as source input tgt : xhtmlR2 as target "stringToXhtml-value" : for src.value as v make tgt.value = v endgroup group for types codeToString extends Element input src : code as source input tgt : stringR2 as target "uriToCode-value" : for src.value as v make tgt.value = v endgroup group for types stringToId extends Element input src : string as source input tgt : idR2 as target "stringToId-value" : for src.value as v make tgt.value = v endgroup group for types idToString extends Element input src : id as source input tgt : stringR2 as target "stringToId-value" : for src.value as v make tgt.value = v endgroup group for types positiveIntToInteger extends Element input src : positiveIntR2 as source input tgt : integer as target "positiveIntToInteger-value" : for src.value as v make tgt.value = v endgroup group for types unsignedIntToInteger extends Element input src : unsignedIntR2 as source input tgt : integer as target "unsignedIntToInteger-value" : for src.value as v make tgt.value = v endgroup group for types dateToDateTime extends Element input src : date as source input tgt : dateTimeR2 as target "dateToDateTime-value" : for src.value as v make tgt.value = v endgroup group for types dateTimeToDate extends Element input src : dateTime as source input tgt : dateR2 as target "dateTimeToDate-value" : for src.value as v make tgt.value = (v.substring(0, 8)) endgroup
See also Base Definition, Detailed Descriptions, Examples, Profiles & Extensions and Mappings.
Functional status for this map: Not Mapped (based on R2 -> R3 -> R2 round tripping)
map "http://hl7.org/fhir/StructureMap/Attachment2to3" = "R2 to R3 Conversions for Attachment" uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Attachment" alias AttachmentR2 as source uses "http://hl7.org/fhir/StructureDefinition/Attachment" alias Attachment as target imports "http://hl7.org/fhir/StructureMap/primitives2to3" imports "http://hl7.org/fhir/StructureMap/Element2to3" group for type+types Attachment extends Element input src : AttachmentR2 as source input tgt : Attachment as target "Attachment-contentType" : for src.contentType make tgt.contentType "Attachment-language" : for src.language make tgt.language "Attachment-data" : for src.data make tgt.data "Attachment-url" : for src.url make tgt.url "Attachment-size" : for src.size make tgt.size "Attachment-hash" : for src.hash make tgt.hash "Attachment-title" : for src.title make tgt.title "Attachment-creation" : for src.creation make tgt.creation endgroup
map "http://hl7.org/fhir/StructureMap/Attachment3to2" = "R3 to R2 Conversion for Attachment" uses "http://hl7.org/fhir/StructureDefinition/Attachment" alias Attachment as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Attachment" alias AttachmentR2 as target imports "http://hl7.org/fhir/StructureMap/primitives3to2" imports "http://hl7.org/fhir/StructureMap/Element3to2" group for type+types Attachment extends Element input src : Attachment as source input tgt : AttachmentR2 as target "Attachment-contentType" : for src.contentType make tgt.contentType "Attachment-language" : for src.language make tgt.language "Attachment-data" : for src.data make tgt.data "Attachment-url" : for src.url make tgt.url "Attachment-size" : for src.size make tgt.size "Attachment-hash" : for src.hash make tgt.hash "Attachment-title" : for src.title make tgt.title "Attachment-creation" : for src.creation make tgt.creation endgroup
See also Base Definition, Detailed Descriptions, Examples, Profiles & Extensions and Mappings.
Functional status for this map: Not Mapped (based on R2 -> R3 -> R2 round tripping)
map "http://hl7.org/fhir/StructureMap/Identifier2to3" = "R2 to R3 Conversions for Identifier" uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Identifier" alias IdentifierR2 as source uses "http://hl7.org/fhir/StructureDefinition/Identifier" alias Identifier as target imports "http://hl7.org/fhir/StructureMap/primitives2to3" imports "http://hl7.org/fhir/StructureMap/Element2to3" imports "http://hl7.org/fhir/StructureMap/Reference2to3" imports "http://hl7.org/fhir/StructureMap/Period2to3" imports "http://hl7.org/fhir/StructureMap/CodeableConcept2to3" group for type+types Identifier extends Element input src : IdentifierR2 as source input tgt : Identifier as target "Identifier-use" : for src.use make tgt.use "Identifier-type" : for src.type make tgt.type "Identifier-system" : for src.system make tgt.system "Identifier-value" : for src.value make tgt.value "Identifier-period" : for src.period make tgt.period "Identifier-assigner" : for src.assigner make tgt.assigner endgroup
map "http://hl7.org/fhir/StructureMap/Identifier3to2" = "R3 to R2 Conversion for Identifier" uses "http://hl7.org/fhir/StructureDefinition/Identifier" alias Identifier as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Identifier" alias IdentifierR2 as target imports "http://hl7.org/fhir/StructureMap/primitives3to2" imports "http://hl7.org/fhir/StructureMap/Element3to2" imports "http://hl7.org/fhir/StructureMap/Reference3to2" imports "http://hl7.org/fhir/StructureMap/Period3to2" imports "http://hl7.org/fhir/StructureMap/CodeableConcept3to2" group for type+types Identifier extends Element input src : Identifier as source input tgt : IdentifierR2 as target "Identifier-use" : for src.use make tgt.use "Identifier-type" : for src.type make tgt.type "Identifier-system" : for src.system make tgt.system "Identifier-value" : for src.value make tgt.value "Identifier-period" : for src.period make tgt.period "Identifier-assigner" : for src.assigner make tgt.assigner endgroup
See also Base Definition, Detailed Descriptions, Examples, Profiles & Extensions and Mappings.
Functional status for this map: Not Mapped (based on R2 -> R3 -> R2 round tripping)
map "http://hl7.org/fhir/StructureMap/Coding2to3" = "R2 to R3 Conversions for Coding" uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Coding" alias CodingR2 as source uses "http://hl7.org/fhir/StructureDefinition/Coding" alias Coding as target imports "http://hl7.org/fhir/StructureMap/primitives2to3" imports "http://hl7.org/fhir/StructureMap/Element2to3" group for type+types Coding extends Element input src : CodingR2 as source input tgt : Coding as target "Coding-system" : for src.system make tgt.system "Coding-version" : for src.version make tgt.version "Coding-code" : for src.code make tgt.code "Coding-display" : for src.display make tgt.display "Coding-userSelected" : for src.userSelected make tgt.userSelected endgroup
map "http://hl7.org/fhir/StructureMap/Coding3to2" = "R3 to R2 Conversion for Coding" uses "http://hl7.org/fhir/StructureDefinition/Coding" alias Coding as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Coding" alias CodingR2 as target imports "http://hl7.org/fhir/StructureMap/primitives3to2" imports "http://hl7.org/fhir/StructureMap/Element3to2" group for type+types Coding extends Element input src : Coding as source input tgt : CodingR2 as target "Coding-system" : for src.system make tgt.system "Coding-version" : for src.version make tgt.version "Coding-code" : for src.code make tgt.code "Coding-display" : for src.display make tgt.display "Coding-userSelected" : for src.userSelected make tgt.userSelected endgroup
See also Base Definition, Detailed Descriptions, Examples, Profiles & Extensions and Mappings.
Functional status for this map: Not Mapped (based on R2 -> R3 -> R2 round tripping)
map "http://hl7.org/fhir/StructureMap/CodeableConcept2to3" = "R2 to R3 Conversions for CodeableConcept" uses "http://hl7.org/fhir/DSTU2/StructureDefinition/CodeableConcept" alias CodeableConceptR2 as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Coding" alias CodingR2 as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/string" alias stringR2 as source uses "http://hl7.org/fhir/StructureDefinition/CodeableConcept" alias CodeableConcept as target imports "http://hl7.org/fhir/StructureMap/primitives2to3" imports "http://hl7.org/fhir/StructureMap/Element2to3" imports "http://hl7.org/fhir/StructureMap/Coding2to3" group for type+types CodeableConcept extends Element input src : CodeableConceptR2 as source input tgt : CodeableConcept as target "CodeableConcept-coding" : for src.coding make tgt.coding "CodeableConcept-text" : for src.text make tgt.text endgroup group for types CodingToCodeableConcept extends Element input src : CodingR2 as source input tgt : CodeableConcept as target "CodingToCodeableConcept-coding" : for src make tgt.coding as vt then Coding(src, vt) endgroup group for types CodeableConceptToCoding extends Element input src : CodeableConceptR2 as source input tgt : Coding as target "CodeableConcept-coding" : for src.coding only_one as vs then Coding(vs, tgt) endgroup group for types stringToCodeableConcept extends Element input src : stringR2 as source input tgt : CodeableConcept as target "stringToCodeableConcept-text" : for src make tgt.text as vt then string(src, vt) endgroup
map "http://hl7.org/fhir/StructureMap/CodeableConcept3to2" = "R3 to R2 Conversion for CodeableConcept" uses "http://hl7.org/fhir/StructureDefinition/CodeableConcept" alias CodeableConcept as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/CodeableConcept" alias CodeableConceptR2 as target uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Coding" alias CodingR2 as target uses "http://hl7.org/fhir/DSTU2/StructureDefinition/string" alias stringR2 as target imports "http://hl7.org/fhir/StructureMap/primitives3to2" imports "http://hl7.org/fhir/StructureMap/Element3to2" imports "http://hl7.org/fhir/StructureMap/Coding3to2" group for type+types CodeableConcept extends Element input src : CodeableConcept as source input tgt : CodeableConceptR2 as target "CodeableConcept-coding" : for src.coding make tgt.coding "CodeableConcept-text" : for src.text make tgt.text endgroup group for types CodeableConceptToCoding extends Element input src : CodeableConcept as source input tgt : CodingR2 as target "CodeableConcept-coding" : for src.coding only_one as vs then Coding(vs, tgt) endgroup group for types CodingToCodeableConcept extends Element input src : Coding as source input tgt : CodeableConceptR2 as target "CodingToCodeableConcept-coding" : for src make tgt.coding as vt then Coding(src, vt) endgroup group for types CodeableConceptToString extends Element input src : CodeableConcept as source input tgt : stringR2 as target "CodeableConceptToString-text" : for src.text as vs then string(vs, tgt) endgroup
See also Base Definition, Detailed Descriptions, Examples, Profiles & Extensions and Mappings.
Functional status for this map: Not Mapped (based on R2 -> R3 -> R2 round tripping)
map "http://hl7.org/fhir/StructureMap/Quantity2to3" = "R2 to R3 Conversions for Quantity" uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Quantity" alias QuantityR2 as source uses "http://hl7.org/fhir/StructureDefinition/Quantity" alias Quantity as target uses "http://hl7.org/fhir/StructureDefinition/Duration" alias Duration as target imports "http://hl7.org/fhir/StructureMap/primitives2to3" imports "http://hl7.org/fhir/StructureMap/Element2to3" group for type+types Quantity extends Element input src : QuantityR2 as source input tgt : Quantity as target "Quantity-value" : for src.value make tgt.value "Quantity-comparator" : for src.comparator make tgt.comparator "Quantity-unit" : for src.unit make tgt.unit "Quantity-system" : for src.system make tgt.system "Quantity-code" : for src.code make tgt.code endgroup group QuantityToDuration extends Element input src : QuantityR2 as source input tgt : Duration as target "Duration-value" : for src.value make tgt.value "Duration-comparator" : for src.comparator make tgt.comparator "Duration-unit" : for src.unit make tgt.unit "Duration-system" : for src.system make tgt.system "Duration-code" : for src.code make tgt.code endgroup
map "http://hl7.org/fhir/StructureMap/Quantity3to2" = "R3 to R2 Conversion for Quantity" uses "http://hl7.org/fhir/StructureDefinition/Quantity" alias Quantity as source uses "http://hl7.org/fhir/StructureDefinition/Duration" alias Duration as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Quantity" alias QuantityR2 as target imports "http://hl7.org/fhir/StructureMap/primitives3to2" imports "http://hl7.org/fhir/StructureMap/Element3to2" group for type+types Quantity extends Element input src : Quantity as source input tgt : QuantityR2 as target "Quantity-value" : for src.value make tgt.value "Quantity-comparator" : for src.comparator make tgt.comparator "Quantity-unit" : for src.unit make tgt.unit "Quantity-system" : for src.system make tgt.system "Quantity-code" : for src.code make tgt.code endgroup group DurationToQuantity extends Element input src : Duration as source input tgt : QuantityR2 as target "Duration-value" : for src.value make tgt.value "Duration-comparator" : for src.comparator make tgt.comparator "Duration-unit" : for src.unit make tgt.unit "Duration-system" : for src.system make tgt.system "Duration-code" : for src.code make tgt.code endgroup
See also Base Definition, Detailed Descriptions, Examples, Profiles & Extensions and Mappings.
Functional status for this map: Not Mapped (based on R2 -> R3 -> R2 round tripping)
map "http://hl7.org/fhir/StructureMap/Range2to3" = "R2 to R3 Conversions for Range" uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Range" alias RangeR2 as source uses "http://hl7.org/fhir/StructureDefinition/Range" alias Range as target imports "http://hl7.org/fhir/StructureMap/primitives2to3" imports "http://hl7.org/fhir/StructureMap/Element2to3" imports "http://hl7.org/fhir/StructureMap/Quantity2to3" group for type+types Range extends Element input src : RangeR2 as source input tgt : Range as target "Range-low" : for src.low make tgt.low "Range-high" : for src.high make tgt.high endgroup
map "http://hl7.org/fhir/StructureMap/Range3to2" = "R3 to R2 Conversion for Range" uses "http://hl7.org/fhir/StructureDefinition/Range" alias Range as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Range" alias RangeR2 as target imports "http://hl7.org/fhir/StructureMap/primitives3to2" imports "http://hl7.org/fhir/StructureMap/Element3to2" imports "http://hl7.org/fhir/StructureMap/Quantity3to2" group for type+types Range extends Element input src : Range as source input tgt : RangeR2 as target "Range-low" : for src.low make tgt.low "Range-high" : for src.high make tgt.high endgroup
See also Base Definition, Detailed Descriptions, Examples, Profiles & Extensions and Mappings.
Functional status for this map: Not Mapped (based on R2 -> R3 -> R2 round tripping)
map "http://hl7.org/fhir/StructureMap/Ratio2to3" = "R2 to R3 Conversions for Ratio" uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Ratio" alias RatioR2 as source uses "http://hl7.org/fhir/StructureDefinition/Ratio" alias Ratio as target imports "http://hl7.org/fhir/StructureMap/primitives2to3" imports "http://hl7.org/fhir/StructureMap/Element2to3" imports "http://hl7.org/fhir/StructureMap/Quantity2to3" group for type+types Ratio extends Element input src : RatioR2 as source input tgt : Ratio as target "Ratio-numerator" : for src.numerator make tgt.numerator "Ratio-denominator" : for src.denominator make tgt.denominator endgroup
map "http://hl7.org/fhir/StructureMap/Ratio3to2" = "R3 to R2 Conversion for Ratio" uses "http://hl7.org/fhir/StructureDefinition/Ratio" alias Ratio as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Ratio" alias RatioR2 as target imports "http://hl7.org/fhir/StructureMap/primitives3to2" imports "http://hl7.org/fhir/StructureMap/Element3to2" imports "http://hl7.org/fhir/StructureMap/Quantity3to2" group for type+types Ratio extends Element input src : Ratio as source input tgt : RatioR2 as target "Ratio-numerator" : for src.numerator make tgt.numerator "Ratio-denominator" : for src.denominator make tgt.denominator endgroup
See also Base Definition, Detailed Descriptions, Examples, Profiles & Extensions and Mappings.
Functional status for this map: Not Mapped (based on R2 -> R3 -> R2 round tripping)
map "http://hl7.org/fhir/StructureMap/Period2to3" = "R2 to R3 Conversions for Period" uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Period" alias PeriodR2 as source uses "http://hl7.org/fhir/StructureDefinition/Period" alias Period as target imports "http://hl7.org/fhir/StructureMap/primitives2to3" imports "http://hl7.org/fhir/StructureMap/Element2to3" group for type+types Period extends Element input src : PeriodR2 as source input tgt : Period as target "Period-start" : for src.start make tgt.start "Period-end" : for src.end make tgt.end endgroup
map "http://hl7.org/fhir/StructureMap/Period3to2" = "R3 to R2 Conversion for Period" uses "http://hl7.org/fhir/StructureDefinition/Period" alias Period as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Period" alias PeriodR2 as target imports "http://hl7.org/fhir/StructureMap/primitives3to2" imports "http://hl7.org/fhir/StructureMap/Element3to2" group for type+types Period extends Element input src : Period as source input tgt : PeriodR2 as target "Period-start" : for src.start make tgt.start "Period-end" : for src.end make tgt.end endgroup
See also Base Definition, Detailed Descriptions, Examples, Profiles & Extensions and Mappings.
Functional status for this map: Not Mapped (based on R2 -> R3 -> R2 round tripping)
map "http://hl7.org/fhir/StructureMap/SampledData2to3" = "R2 to R3 Conversions for SampledData" uses "http://hl7.org/fhir/DSTU2/StructureDefinition/SampledData" alias SampledDataR2 as source uses "http://hl7.org/fhir/StructureDefinition/SampledData" alias SampledData as target imports "http://hl7.org/fhir/StructureMap/primitives2to3" imports "http://hl7.org/fhir/StructureMap/Element2to3" imports "http://hl7.org/fhir/StructureMap/Quantity2to3" group for type+types SampledData extends Element input src : SampledDataR2 as source input tgt : SampledData as target "SampledData-origin" : for src.origin make tgt.origin "SampledData-period" : for src.period make tgt.period "SampledData-factor" : for src.factor make tgt.factor "SampledData-lowerLimit" : for src.lowerLimit make tgt.lowerLimit "SampledData-upperLimit" : for src.upperLimit make tgt.upperLimit "SampledData-dimensions" : for src.dimensions make tgt.dimensions "SampledData-data" : for src.data make tgt.data endgroup
map "http://hl7.org/fhir/StructureMap/SampledData3to2" = "R3 to R2 Conversion for SampledData" uses "http://hl7.org/fhir/StructureDefinition/SampledData" alias SampledData as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/SampledData" alias SampledDataR2 as target imports "http://hl7.org/fhir/StructureMap/primitives3to2" imports "http://hl7.org/fhir/StructureMap/Element3to2" imports "http://hl7.org/fhir/StructureMap/Quantity3to2" group for type+types SampledData extends Element input src : SampledData as source input tgt : SampledDataR2 as target "SampledData-origin" : for src.origin make tgt.origin "SampledData-period" : for src.period make tgt.period "SampledData-factor" : for src.factor make tgt.factor "SampledData-lowerLimit" : for src.lowerLimit make tgt.lowerLimit "SampledData-upperLimit" : for src.upperLimit make tgt.upperLimit "SampledData-dimensions" : for src.dimensions make tgt.dimensions "SampledData-data" : for src.data make tgt.data endgroup
See also Base Definition, Detailed Descriptions, Examples, Profiles & Extensions and Mappings.
Functional status for this map: Not Mapped (based on R2 -> R3 -> R2 round tripping)
map "http://hl7.org/fhir/StructureMap/HumanName2to3" = "R2 to R3 Conversions for HumanName" uses "http://hl7.org/fhir/DSTU2/StructureDefinition/HumanName" alias HumanNameR2 as source uses "http://hl7.org/fhir/StructureDefinition/HumanName" alias HumanName as target imports "http://hl7.org/fhir/StructureMap/*2to3" group for type+types HumanName extends Element input src : HumanNameR2 as source input tgt : HumanName as target "HumanName-use" : for src.use make tgt.use "HumanName-text" : for src.text make tgt.text "HumanName-family" : for src.family first make tgt.family "HumanName-family-rpt" : for src.family not_first as f make tgt.extension as ex, ex.url = "http://hl7.org/fhir/StructureDefinition/HumanName-familyRepeat", ex.value = f "HumanName-given" : for src.given make tgt.given "HumanName-prefix" : for src.prefix make tgt.prefix "HumanName-suffix" : for src.suffix make tgt.suffix "HumanName-period" : for src.period make tgt.period endgroup
map "http://hl7.org/fhir/StructureMap/HumanName3to2" = "R3 to R2 Conversion for HumanName" uses "http://hl7.org/fhir/StructureDefinition/HumanName" alias HumanName as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/HumanName" alias HumanNameR2 as target imports "http://hl7.org/fhir/StructureMap/*3to2" group for type+types HumanName input src : HumanName as source input tgt : HumanNameR2 as target "HumanName-id" : for src.id make tgt.id "HumanName-extensions" : for src.extension where url != 'http://hl7.org/fhir/StructureDefinition/HumanName-familyRepeat' make tgt.extension "HumanName-use" : for src.use make tgt.use "HumanName-text" : for src.text make tgt.text "HumanName-family" : for src.family first make tgt.family "HumanName-family-rpt-ex" : for src.extension as ex where url = 'http://hl7.org/fhir/StructureDefinition/HumanName-familyRepeat' make tgt.family as f then nameRepeat(ex, f) "HumanName-given" : for src.given make tgt.given "HumanName-prefix" : for src.prefix make tgt.prefix "HumanName-suffix" : for src.suffix make tgt.suffix "HumanName-period" : for src.period make tgt.period endgroup group nameRepeat input src as source input tgt as target "HumanName-family-rpt-2" : for src.value as v then string(v, tgt) endgroup
See also Base Definition, Detailed Descriptions, Examples, Profiles & Extensions and Mappings.
Functional status for this map: Not Mapped (based on R2 -> R3 -> R2 round tripping)
map "http://hl7.org/fhir/StructureMap/Address2to3" = "R2 to R3 Conversions for Address" uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Address" alias AddressR2 as source uses "http://hl7.org/fhir/StructureDefinition/Address" alias Address as target imports "http://hl7.org/fhir/StructureMap/primitives2to3" imports "http://hl7.org/fhir/StructureMap/Element2to3" imports "http://hl7.org/fhir/StructureMap/Period2to3" group for type+types Address extends Element input src : AddressR2 as source input tgt : Address as target "Address-use" : for src.use make tgt.use "Address-type" : for src.type make tgt.type "Address-text" : for src.text make tgt.text "Address-line" : for src.line make tgt.line "Address-city" : for src.city make tgt.city "Address-district" : for src.district make tgt.district "Address-state" : for src.state make tgt.state "Address-postalCode" : for src.postalCode make tgt.postalCode "Address-country" : for src.country make tgt.country "Address-period" : for src.period make tgt.period endgroup
map "http://hl7.org/fhir/StructureMap/Address3to2" = "R3 to R2 Conversion for Address" uses "http://hl7.org/fhir/StructureDefinition/Address" alias Address as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Address" alias AddressR2 as target imports "http://hl7.org/fhir/StructureMap/primitives3to2" imports "http://hl7.org/fhir/StructureMap/Element3to2" imports "http://hl7.org/fhir/StructureMap/Period3to2" group for type+types Address extends Element input src : Address as source input tgt : AddressR2 as target "Address-use" : for src.use make tgt.use "Address-type" : for src.type make tgt.type "Address-text" : for src.text make tgt.text "Address-line" : for src.line make tgt.line "Address-city" : for src.city make tgt.city "Address-district" : for src.district make tgt.district "Address-state" : for src.state make tgt.state "Address-postalCode" : for src.postalCode make tgt.postalCode "Address-country" : for src.country make tgt.country "Address-period" : for src.period make tgt.period endgroup
See also Base Definition, Detailed Descriptions, Examples, Profiles & Extensions and Mappings.
Functional status for this map: Not Mapped (based on R2 -> R3 -> R2 round tripping)
map "http://hl7.org/fhir/StructureMap/ContactPoint2to3" = "R2 to R3 Conversions for ContactPoint" uses "http://hl7.org/fhir/DSTU2/StructureDefinition/ContactPoint" alias ContactPointR2 as source uses "http://hl7.org/fhir/StructureDefinition/ContactPoint" alias ContactPoint as target imports "http://hl7.org/fhir/StructureMap/primitives2to3" imports "http://hl7.org/fhir/StructureMap/Element2to3" imports "http://hl7.org/fhir/StructureMap/Period2to3" group for type+types ContactPoint extends Element input src : ContactPointR2 as source input tgt : ContactPoint as target "ContactPoint-system" : for src.system make tgt.system "ContactPoint-value" : for src.value make tgt.value "ContactPoint-use" : for src.use make tgt.use "ContactPoint-rank" : for src.rank make tgt.rank "ContactPoint-period" : for src.period make tgt.period endgroup
map "http://hl7.org/fhir/StructureMap/ContactPoint3to2" = "R3 to R2 Conversion for ContactPoint" uses "http://hl7.org/fhir/StructureDefinition/ContactPoint" alias ContactPoint as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/ContactPoint" alias ContactPointR2 as target imports "http://hl7.org/fhir/StructureMap/primitives3to2" imports "http://hl7.org/fhir/StructureMap/Element3to2" imports "http://hl7.org/fhir/StructureMap/Period3to2" group for type+types ContactPoint extends Element input src : ContactPoint as source input tgt : ContactPointR2 as target "ContactPoint-system" : for src.system make tgt.system "ContactPoint-value" : for src.value make tgt.value "ContactPoint-use" : for src.use make tgt.use "ContactPoint-rank" : for src.rank make tgt.rank "ContactPoint-period" : for src.period make tgt.period endgroup
See also Base Definition, Detailed Descriptions, Examples, Profiles & Extensions and Mappings.
Functional status for this map: Not Mapped (based on R2 -> R3 -> R2 round tripping)
map "http://hl7.org/fhir/StructureMap/Timing2to3" = "R2 to R3 Conversions for Timing" conceptmap "EventTiming" { prefix s = "http://hl7.org/fhir/v3/TimingEvent" prefix t = "http://hl7.org/fhir/event-timing" s:HS ~ t:MORN s:HS ~ t:MORN s:HS ~ t:MORN s:HS ~ t:MORN s:HS ~ t:MORN s:HS ~ t:MORN s:HS ~ t:MORN s:HS ~ t:MORN s:HS ~ t:MORN s:HS ~ t:MORN s:HS ~ t:MORN s:HS ~ t:MORN s:HS ~ t:MORN s:HS ~ t:MORN } uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Timing" alias TimingR2 as source uses "http://hl7.org/fhir/StructureDefinition/Timing" alias Timing as target imports "http://hl7.org/fhir/StructureMap/primitives2to3" imports "http://hl7.org/fhir/StructureMap/Element2to3" imports "http://hl7.org/fhir/StructureMap/Period2to3" imports "http://hl7.org/fhir/StructureMap/Range2to3" imports "http://hl7.org/fhir/StructureMap/CodeableConcept2to3" group for type+types Timing extends Element input src : TimingR2 as source input tgt : Timing as target "Timing-event" : for src.event make tgt.event "Timing-repeat" : for src.repeat as vs0 make tgt.repeat as vt0 then { "Timing.repeat-bounds-Range" : for vs0.bounds : Range as vs make vt0.bounds = create("Range") as vt then Range(vs, vt) "Timing.repeat-bounds-Period" : for vs0.bounds : Period as vs make vt0.bounds = create("Period") as vt then Period(vs, vt) "Timing.repeat-count" : for vs0.count make vt0.count "Timing.repeat-duration" : for vs0.duration make vt0.duration "Timing.repeat-durationMax" : for vs0.durationMax make vt0.durationMax "Timing.repeat-durationUnit" : for vs0.durationUnits make vt0.durationUnit "Timing.repeat-frequency" : for vs0.frequency make vt0.frequency "Timing.repeat-frequencyMax" : for vs0.frequencyMax make vt0.frequencyMax "Timing.repeat-period" : for vs0.period make vt0.period "Timing.repeat-periodMax" : for vs0.periodMax make vt0.periodMax "Timing.repeat-periodUnit" : for vs0.periodUnits make vt0.periodUnit "Timing.repeat-when" : for vs0.when as v make vt0.when = translate(v, "#EventTiming", "code") } "Timing-code" : for src.code make tgt.code endgroup
map "http://hl7.org/fhir/StructureMap/Timing3to2" = "R3 to R2 Conversion for Timing" conceptmap "EventTiming" { prefix s = "http://hl7.org/fhir/event-timing" prefix t = "http://hl7.org/fhir/v3/TimingEvent" s:MORN ~ t:HS s:MORN ~ t:HS s:MORN ~ t:HS s:MORN ~ t:HS s:MORN ~ t:HS s:MORN ~ t:HS s:MORN ~ t:HS s:MORN ~ t:HS s:MORN ~ t:HS s:MORN ~ t:HS s:MORN ~ t:HS s:MORN ~ t:HS s:MORN ~ t:HS s:MORN ~ t:HS } uses "http://hl7.org/fhir/StructureDefinition/Timing" alias Timing as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Timing" alias TimingR2 as target imports "http://hl7.org/fhir/StructureMap/primitives3to2" imports "http://hl7.org/fhir/StructureMap/Element3to2" imports "http://hl7.org/fhir/StructureMap/Period3to2" imports "http://hl7.org/fhir/StructureMap/Range3to2" imports "http://hl7.org/fhir/StructureMap/CodeableConcept3to2" group for type+types Timing extends Element input src : Timing as source input tgt : TimingR2 as target "Timing-event" : for src.event make tgt.event "Timing-repeat" : for src.repeat as vs0 make tgt.repeat as vt0 then { "Timing.repeat-bounds-Range" : for vs0.bounds : Range as vs make vt0.bounds = create("Range") as vt then Range(vs, vt) "Timing.repeat-bounds-Period" : for vs0.bounds : Period as vs make vt0.bounds = create("Period") as vt then Period(vs, vt) "Timing.repeat-count" : for vs0.count make vt0.count "Timing.repeat-duration" : for vs0.duration make vt0.duration "Timing.repeat-durationMax" : for vs0.durationMax make vt0.durationMax "Timing.repeat-durationUnits" : for vs0.durationUnit make vt0.durationUnits "Timing.repeat-frequency" : for vs0.frequency make vt0.frequency "Timing.repeat-frequencyMax" : for vs0.frequencyMax make vt0.frequencyMax "Timing.repeat-period" : for vs0.period make vt0.period "Timing.repeat-periodMax" : for vs0.periodMax make vt0.periodMax "Timing.repeat-periodUnits" : for vs0.periodUnit make vt0.periodUnits "Timing.repeat-when" : for vs0.when as v make vt0.when = translate(v, "#EventTiming", "code") } "Timing-code" : for src.code make tgt.code endgroup
See also Base Definition, Detailed Descriptions, Examples, Profiles & Extensions and Mappings.
Functional status for this map: Not Mapped (based on R2 -> R3 -> R2 round tripping)
map "http://hl7.org/fhir/StructureMap/Signature2to3" = "R2 to R3 Conversions for Signature" uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Signature" alias SignatureR2 as source uses "http://hl7.org/fhir/StructureDefinition/Signature" alias Signature as target imports "http://hl7.org/fhir/StructureMap/primitives2to3" imports "http://hl7.org/fhir/StructureMap/Element2to3" imports "http://hl7.org/fhir/StructureMap/Coding2to3" imports "http://hl7.org/fhir/StructureMap/Reference2to3" group for type+types Signature extends Element input src : SignatureR2 as source input tgt : Signature as target "Signature-type" : for src.type make tgt.type "Signature-when" : for src.when make tgt.when "Signature-who-uri" : for src.who : uri as vs make tgt.who = create("uri") as vt then uri(vs, vt) "Signature-who-Reference" : for src.who : Reference as vs make tgt.who = create("Reference") as vt then Reference(vs, vt) "Signature-contentType" : for src.contentType make tgt.contentType "Signature-blob" : for src.blob make tgt.blob endgroup
map "http://hl7.org/fhir/StructureMap/Signature3to2" = "R3 to R2 Conversion for Signature" uses "http://hl7.org/fhir/StructureDefinition/Signature" alias Signature as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Signature" alias SignatureR2 as target imports "http://hl7.org/fhir/StructureMap/primitives3to2" imports "http://hl7.org/fhir/StructureMap/Element3to2" imports "http://hl7.org/fhir/StructureMap/Coding3to2" imports "http://hl7.org/fhir/StructureMap/Reference3to2" group for type+types Signature extends Element input src : Signature as source input tgt : SignatureR2 as target "Signature-type" : for src.type make tgt.type "Signature-when" : for src.when make tgt.when "Signature-who-uri" : for src.who : uri as vs make tgt.who = create("uri") as vt then uri(vs, vt) "Signature-who-Reference" : for src.who : Reference as vs make tgt.who = create("Reference") as vt then Reference(vs, vt) "Signature-contentType" : for src.contentType make tgt.contentType "Signature-blob" : for src.blob make tgt.blob endgroup
See also Base Definition, Detailed Descriptions, Examples, Profiles & Extensions and Mappings.
Functional status for this map: Not Mapped (based on R2 -> R3 -> R2 round tripping)
map "http://hl7.org/fhir/StructureMap/Annotation2to3" = "R2 to R3 Conversions for Annotation" uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Annotation" alias AnnotationR2 as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/string" alias stringR2 as source uses "http://hl7.org/fhir/StructureDefinition/Annotation" alias Annotation as target imports "http://hl7.org/fhir/StructureMap/*2to3" group for type+types Annotation extends Element input src : AnnotationR2 as source input tgt : Annotation as target "Annotation-author-Reference" : for src.author : Reference as vs make tgt.author = create("Reference") as vt then Reference(vs, vt) "Annotation-author-string" : for src.author : string as vs make tgt.author = create("string") as vt then string(vs, vt) "Annotation-time" : for src.time make tgt.time "Annotation-text" : for src.text make tgt.text endgroup group for types stringToAnnotation extends Element input src : stringR2 as source input tgt : Annotation as target "Annotation-text1" : for src make tgt.text = src endgroup
map "http://hl7.org/fhir/StructureMap/Annotation3to2" = "R3 to R2 Conversion for Annotation" uses "http://hl7.org/fhir/StructureDefinition/Annotation" alias Annotation as source uses "http://hl7.org/fhir/StructureDefinition/string" alias string as source uses "http://hl7.org/fhir/DSTU2/StructureDefinition/Annotation" alias AnnotationR2 as target imports "http://hl7.org/fhir/StructureMap/primitives3to2" imports "http://hl7.org/fhir/StructureMap/Element3to2" imports "http://hl7.org/fhir/StructureMap/Reference3to2" group for type+types Annotation extends Element input src : Annotation as source input tgt : AnnotationR2 as target "Annotation-author-Reference" : for src.author : Reference as vs make tgt.author = create("Reference") as vt then Reference(vs, vt) "Annotation-author-string" : for src.author : string as vs make tgt.author = create("string") as vt then string(vs, vt) "Annotation-time" : for src.time make tgt.time "Annotation-text" : for src.text make tgt.text endgroup group for type+types AnnotationToString extends Element input src : AnnotationR2 as source input tgt : string as target "Annotation-text1" : for src.text as v make tgt.value = v endgroup