FHIR IG analytics| Package | hl7.fhir.uv.xver-r3.r4 |
| Resource Type | ConceptMap |
| Id | ConceptMap-R3-Appointment-element-map-to-R4.json |
| FHIR Version | R4 |
| Source | http://hl7.org/fhir/uv/xver-r3.r4/0.1.0/ConceptMap-R3-Appointment-element-map-to-R4.html |
| URL | http://hl7.org/fhir/uv/xver/ConceptMap/R3-Appointment-element-map-to-R4 |
| Version | 0.1.0 |
| Status | active |
| Date | 2026-03-17T16:03:23.1542326-05:00 |
| Name | R3AppointmentElementMapToR4 |
| Title | Cross-version mapping for FHIR STU3 Appointment to FHIR R4 Appointment |
| Realm | uv |
| Authority | hl7 |
| Description | This ConceptMap represents cross-version mappings for elements from a FHIR STU3 Appointment to FHIR R4. |
No resources found
No resources found
Note: links and images are rebased to the (stated) source
Generated Narrative: ConceptMap R3-Appointment-element-map-to-R4
Mapping from http://hl7.org/fhir/3.0 to http://hl7.org/fhir/4.0
Group 1 Mapping from http://hl7.org/fhir/StructureDefinition/Appointment|3.0.2 to Appointmentversion: 4.0.1)
| Source Code | Relationship | Target Code | Comment |
| Appointment.meta (meta) | is equivalent to | Appointment.meta | Element `Appointment.meta` is mapped to FHIR R4 element `Appointment.meta` as `Equivalent`. |
| Appointment.implicitRules (implicitRules) | is equivalent to | Appointment.implicitRules | Element `Appointment.implicitRules` is mapped to FHIR R4 element `Appointment.implicitRules` as `Equivalent`. Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. This element is labelled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation. |
| Appointment.language (language) | is equivalent to | Appointment.language | Element `Appointment.language` is mapped to FHIR R4 element `Appointment.language` as `Equivalent`. Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute). |
| Appointment.text (text) | is equivalent to | Appointment.text | Element `Appointment.text` is mapped to FHIR R4 element `Appointment.text` as `Equivalent`. Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded in formation is added later. |
| Appointment.contained (contained) | is equivalent to | Appointment.contained | Element `Appointment.contained` is mapped to FHIR R4 element `Appointment.contained` as `Equivalent`. This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. |
| Appointment.identifier (identifier) | is equivalent to | Appointment.identifier | Element `Appointment.identifier` is mapped to FHIR R4 element `Appointment.identifier` as `Equivalent`. |
| Appointment.status (status) | is equivalent to | Appointment.status | Element `Appointment.status` is mapped to FHIR R4 element `Appointment.status` as `SourceIsNarrowerThanTarget`. The mappings for `Appointment.status` do not allow expression of the necessary codes, per the bindings on the source and target. If the Appointment's status is "cancelled" then all participants are expected to have their calendars released for the appointment period, and as such any Slots that were marked as BUSY can be re-set to FREE. This element is labeled as a modifier because the status contains the code entered-in-error that mark the Appointment as not currently valid. |
| Appointment.serviceCategory (serviceCategory) | is equivalent to | Appointment.serviceCategory | Element `Appointment.serviceCategory` is mapped to FHIR R4 element `Appointment.serviceCategory` as `SourceIsNarrowerThanTarget`. |
| Appointment.serviceType (serviceType) | is equivalent to | Appointment.serviceType | Element `Appointment.serviceType` is mapped to FHIR R4 element `Appointment.serviceType` as `Equivalent`. |
| Appointment.specialty (specialty) | is equivalent to | Appointment.specialty | Element `Appointment.specialty` is mapped to FHIR R4 element `Appointment.specialty` as `Equivalent`. |
| Appointment.appointmentType (appointmentType) | is equivalent to | Appointment.appointmentType | Element `Appointment.appointmentType` is mapped to FHIR R4 element `Appointment.appointmentType` as `Equivalent`. |
| Appointment.reason (reason) | is equivalent to | Appointment.reasonCode | Element `Appointment.reason` is mapped to FHIR R4 element `Appointment.reasonCode` as `Equivalent`. |
| Appointment.indication (indication) | is equivalent to | Appointment.reasonReference | Element `Appointment.indication` is mapped to FHIR R4 element `Appointment.reasonReference` as `Equivalent`. |
| Appointment.priority (priority) | is equivalent to | Appointment.priority | Element `Appointment.priority` is mapped to FHIR R4 element `Appointment.priority` as `Equivalent`. Seeking implementer feedback on this property and how interoperable it is. Using an extension to record a codeableconcept for named values may be tested at a future connectathon. |
| Appointment.description (description) | is equivalent to | Appointment.description | Element `Appointment.description` is mapped to FHIR R4 element `Appointment.description` as `Equivalent`. |
| Appointment.supportingInformation (supportingInformation) | is equivalent to | Appointment.supportingInformation | Element `Appointment.supportingInformation` is mapped to FHIR R4 element `Appointment.supportingInformation` as `Equivalent`. |
| Appointment.start (start) | is equivalent to | Appointment.start | Element `Appointment.start` is mapped to FHIR R4 element `Appointment.start` as `Equivalent`. |
| Appointment.end (end) | is equivalent to | Appointment.end | Element `Appointment.end` is mapped to FHIR R4 element `Appointment.end` as `Equivalent`. |
| Appointment.minutesDuration (minutesDuration) | is equivalent to | Appointment.minutesDuration | Element `Appointment.minutesDuration` is mapped to FHIR R4 element `Appointment.minutesDuration` as `Equivalent`. |
| Appointment.slot (slot) | is equivalent to | Appointment.slot | Element `Appointment.slot` is mapped to FHIR R4 element `Appointment.slot` as `Equivalent`. |
| Appointment.created (created) | is equivalent to | Appointment.created | Element `Appointment.created` is mapped to FHIR R4 element `Appointment.created` as `Equivalent`. This property is required for many use cases where the age of an appointment is considered in processing workflows for scheduling and billing of appointments. |
| Appointment.comment (comment) | is equivalent to | Appointment.comment | Element `Appointment.comment` is mapped to FHIR R4 element `Appointment.comment` as `Equivalent`. Additional text to aid in facilitating the appointment. For instance, a comment might be, "patient should proceed immediately to infusion room upon arrival" Where this is a planned appointment and the start/end dates are not set then this field can be used to provide additional guidance on the details of the appointment request, including any restrictions on when to book it. |
| Appointment.incomingReferral (incomingReferral) | narrower | Appointment.basedOn | Element `Appointment.incomingReferral` is mapped to FHIR R4 element `Appointment.basedOn` as `SourceIsNarrowerThanTarget`. |
| Appointment.participant (participant) | maps to wider concept | Appointment.participant | Element `Appointment.participant` is mapped to FHIR R4 element `Appointment.participant` as `Equivalent`. |
| Appointment.participant.type (type) | is equivalent to | Appointment.participant.type | Element `Appointment.participant.type` is mapped to FHIR R4 element `Appointment.participant.type` as `Equivalent`. The role of the participant can be used to declare what the actor will be doing in the scope of this appointment. If the actor is not specified, then it is expected that the actor will be filled in at a later stage of planning. This value SHALL be the same when creating an AppointmentResponse so that they can be matched, and subsequently update the Appointment. |
| Appointment.participant.actor (actor) | is equivalent to | Appointment.participant.actor | Element `Appointment.participant.actor` is mapped to FHIR R4 element `Appointment.participant.actor` as `Equivalent`. |
| Appointment.participant.required (required) | is equivalent to | Appointment.participant.required | Element `Appointment.participant.required` is mapped to FHIR R4 element `Appointment.participant.required` as `Equivalent`. |
| Appointment.participant.status (status) | is equivalent to | Appointment.participant.status | Element `Appointment.participant.status` is mapped to FHIR R4 element `Appointment.participant.status` as `Equivalent`. |
| Appointment.requestedPeriod (requestedPeriod) | is equivalent to | Appointment.requestedPeriod | Element `Appointment.requestedPeriod` is mapped to FHIR R4 element `Appointment.requestedPeriod` as `Equivalent`. This does not introduce a capacity for recurring appointments. |
{
"resourceType": "ConceptMap",
"id": "R3-Appointment-element-map-to-R4",
"text": {
"status": "generated",
"div": "<!-- snip (see above) -->"
},
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg",
"valueCode": "fhir"
},
{
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm",
"valueInteger": 0,
"_valueInteger": {
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom",
"valueCanonical": "http://hl7.org/fhir/uv/xver/ImplementationGuide/hl7.fhir.uv.xver-r3.r4"
}
]
}
},
{
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status",
"valueCode": "trial-use",
"_valueCode": {
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom",
"valueCanonical": "http://hl7.org/fhir/uv/xver/ImplementationGuide/hl7.fhir.uv.xver-r3.r4"
}
]
}
}
],
"url": "http://hl7.org/fhir/uv/xver/ConceptMap/R3-Appointment-element-map-to-R4",
"version": "0.1.0",
"name": "R3AppointmentElementMapToR4",
"title": "Cross-version mapping for FHIR STU3 Appointment to FHIR R4 Appointment",
"status": "active",
"experimental": false,
"date": "2026-03-17T16:03:23.1542326-05:00",
"contact": [
{
"name": "FHIR Infrastructure",
"telecom": [
{
"system": "url",
"value": "http://www.hl7.org/Special/committees/fiwg"
}
]
}
],
"description": "This ConceptMap represents cross-version mappings for elements from a FHIR STU3 Appointment to FHIR R4.",
"jurisdiction": [
{
"coding": [
{
"system": "http://unstats.un.org/unsd/methods/m49/m49.htm",
"code": "001",
"display": "World"
}
]
}
],
"sourceCanonical": "http://hl7.org/fhir/3.0",
"targetUri": "http://hl7.org/fhir/4.0",
"group": [
{
"source": "http://hl7.org/fhir/StructureDefinition/Appointment",
"sourceVersion": "3.0.2",
"target": "http://hl7.org/fhir/StructureDefinition/Appointment",
"targetVersion": "4.0.1",
"element": [
{
"code": "Appointment.meta",
"display": "meta",
"target": [
{
"code": "Appointment.meta",
"display": "Appointment.meta",
"equivalence": "equivalent",
"comment": "Element `Appointment.meta` is mapped to FHIR R4 element `Appointment.meta` as `Equivalent`."
}
]
},
{
"code": "Appointment.implicitRules",
"display": "implicitRules",
"target": [
{
"code": "Appointment.implicitRules",
"display": "Appointment.implicitRules",
"equivalence": "equivalent",
"comment": "Element `Appointment.implicitRules` is mapped to FHIR R4 element `Appointment.implicitRules` as `Equivalent`.\nAsserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. \n\nThis element is labelled as a modifier because the implicit rules may provide additional knowledge about the resource that modifies it's meaning or interpretation."
}
]
},
{
"code": "Appointment.language",
"display": "language",
"target": [
{
"code": "Appointment.language",
"display": "Appointment.language",
"equivalence": "equivalent",
"comment": "Element `Appointment.language` is mapped to FHIR R4 element `Appointment.language` as `Equivalent`.\nLanguage is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute)."
}
]
},
{
"code": "Appointment.text",
"display": "text",
"target": [
{
"code": "Appointment.text",
"display": "Appointment.text",
"equivalence": "equivalent",
"comment": "Element `Appointment.text` is mapped to FHIR R4 element `Appointment.text` as `Equivalent`.\nContained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a \"text blob\" or where text is additionally entered raw or narrated and encoded in formation is added later."
}
]
},
{
"code": "Appointment.contained",
"display": "contained",
"target": [
{
"code": "Appointment.contained",
"display": "Appointment.contained",
"equivalence": "equivalent",
"comment": "Element `Appointment.contained` is mapped to FHIR R4 element `Appointment.contained` as `Equivalent`.\nThis should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again."
}
]
},
{
"code": "Appointment.identifier",
"display": "identifier",
"target": [
{
"code": "Appointment.identifier",
"display": "Appointment.identifier",
"equivalence": "equivalent",
"comment": "Element `Appointment.identifier` is mapped to FHIR R4 element `Appointment.identifier` as `Equivalent`."
}
]
},
{
"code": "Appointment.status",
"display": "status",
"target": [
{
"code": "Appointment.status",
"display": "Appointment.status",
"equivalence": "equivalent",
"comment": "Element `Appointment.status` is mapped to FHIR R4 element `Appointment.status` as `SourceIsNarrowerThanTarget`.\nThe mappings for `Appointment.status` do not allow expression of the necessary codes, per the bindings on the source and target.\nIf the Appointment's status is \"cancelled\" then all participants are expected to have their calendars released for the appointment period, and as such any Slots that were marked as BUSY can be re-set to FREE.\n\nThis element is labeled as a modifier because the status contains the code entered-in-error that mark the Appointment as not currently valid."
}
]
},
{
"code": "Appointment.serviceCategory",
"display": "serviceCategory",
"target": [
{
"code": "Appointment.serviceCategory",
"display": "Appointment.serviceCategory",
"equivalence": "equivalent",
"comment": "Element `Appointment.serviceCategory` is mapped to FHIR R4 element `Appointment.serviceCategory` as `SourceIsNarrowerThanTarget`."
}
]
},
{
"code": "Appointment.serviceType",
"display": "serviceType",
"target": [
{
"code": "Appointment.serviceType",
"display": "Appointment.serviceType",
"equivalence": "equivalent",
"comment": "Element `Appointment.serviceType` is mapped to FHIR R4 element `Appointment.serviceType` as `Equivalent`."
}
]
},
{
"code": "Appointment.specialty",
"display": "specialty",
"target": [
{
"code": "Appointment.specialty",
"display": "Appointment.specialty",
"equivalence": "equivalent",
"comment": "Element `Appointment.specialty` is mapped to FHIR R4 element `Appointment.specialty` as `Equivalent`."
}
]
},
{
"code": "Appointment.appointmentType",
"display": "appointmentType",
"target": [
{
"code": "Appointment.appointmentType",
"display": "Appointment.appointmentType",
"equivalence": "equivalent",
"comment": "Element `Appointment.appointmentType` is mapped to FHIR R4 element `Appointment.appointmentType` as `Equivalent`."
}
]
},
{
"code": "Appointment.reason",
"display": "reason",
"target": [
{
"code": "Appointment.reasonCode",
"display": "Appointment.reasonCode",
"equivalence": "equivalent",
"comment": "Element `Appointment.reason` is mapped to FHIR R4 element `Appointment.reasonCode` as `Equivalent`."
}
]
},
{
"code": "Appointment.indication",
"display": "indication",
"target": [
{
"code": "Appointment.reasonReference",
"display": "Appointment.reasonReference",
"equivalence": "equivalent",
"comment": "Element `Appointment.indication` is mapped to FHIR R4 element `Appointment.reasonReference` as `Equivalent`."
}
]
},
{
"code": "Appointment.priority",
"display": "priority",
"target": [
{
"code": "Appointment.priority",
"display": "Appointment.priority",
"equivalence": "equivalent",
"comment": "Element `Appointment.priority` is mapped to FHIR R4 element `Appointment.priority` as `Equivalent`.\nSeeking implementer feedback on this property and how interoperable it is.\r\rUsing an extension to record a codeableconcept for named values may be tested at a future connectathon."
}
]
},
{
"code": "Appointment.description",
"display": "description",
"target": [
{
"code": "Appointment.description",
"display": "Appointment.description",
"equivalence": "equivalent",
"comment": "Element `Appointment.description` is mapped to FHIR R4 element `Appointment.description` as `Equivalent`."
}
]
},
{
"code": "Appointment.supportingInformation",
"display": "supportingInformation",
"target": [
{
"code": "Appointment.supportingInformation",
"display": "Appointment.supportingInformation",
"equivalence": "equivalent",
"comment": "Element `Appointment.supportingInformation` is mapped to FHIR R4 element `Appointment.supportingInformation` as `Equivalent`."
}
]
},
{
"code": "Appointment.start",
"display": "start",
"target": [
{
"code": "Appointment.start",
"display": "Appointment.start",
"equivalence": "equivalent",
"comment": "Element `Appointment.start` is mapped to FHIR R4 element `Appointment.start` as `Equivalent`."
}
]
},
{
"code": "Appointment.end",
"display": "end",
"target": [
{
"code": "Appointment.end",
"display": "Appointment.end",
"equivalence": "equivalent",
"comment": "Element `Appointment.end` is mapped to FHIR R4 element `Appointment.end` as `Equivalent`."
}
]
},
{
"code": "Appointment.minutesDuration",
"display": "minutesDuration",
"target": [
{
"code": "Appointment.minutesDuration",
"display": "Appointment.minutesDuration",
"equivalence": "equivalent",
"comment": "Element `Appointment.minutesDuration` is mapped to FHIR R4 element `Appointment.minutesDuration` as `Equivalent`."
}
]
},
{
"code": "Appointment.slot",
"display": "slot",
"target": [
{
"code": "Appointment.slot",
"display": "Appointment.slot",
"equivalence": "equivalent",
"comment": "Element `Appointment.slot` is mapped to FHIR R4 element `Appointment.slot` as `Equivalent`."
}
]
},
{
"code": "Appointment.created",
"display": "created",
"target": [
{
"code": "Appointment.created",
"display": "Appointment.created",
"equivalence": "equivalent",
"comment": "Element `Appointment.created` is mapped to FHIR R4 element `Appointment.created` as `Equivalent`.\nThis property is required for many use cases where the age of an appointment is considered in processing workflows for scheduling and billing of appointments."
}
]
},
{
"code": "Appointment.comment",
"display": "comment",
"target": [
{
"code": "Appointment.comment",
"display": "Appointment.comment",
"equivalence": "equivalent",
"comment": "Element `Appointment.comment` is mapped to FHIR R4 element `Appointment.comment` as `Equivalent`.\nAdditional text to aid in facilitating the appointment. For instance, a comment might be, \"patient should proceed immediately to infusion room upon arrival\"\r\rWhere this is a planned appointment and the start/end dates are not set then this field can be used to provide additional guidance on the details of the appointment request, including any restrictions on when to book it."
}
]
},
{
"code": "Appointment.incomingReferral",
"display": "incomingReferral",
"target": [
{
"code": "Appointment.basedOn",
"display": "Appointment.basedOn",
"equivalence": "narrower",
"comment": "Element `Appointment.incomingReferral` is mapped to FHIR R4 element `Appointment.basedOn` as `SourceIsNarrowerThanTarget`."
}
]
},
{
"code": "Appointment.participant",
"display": "participant",
"target": [
{
"code": "Appointment.participant",
"display": "Appointment.participant",
"equivalence": "wider",
"comment": "Element `Appointment.participant` is mapped to FHIR R4 element `Appointment.participant` as `Equivalent`."
}
]
},
{
"code": "Appointment.participant.type",
"display": "type",
"target": [
{
"code": "Appointment.participant.type",
"display": "Appointment.participant.type",
"equivalence": "equivalent",
"comment": "Element `Appointment.participant.type` is mapped to FHIR R4 element `Appointment.participant.type` as `Equivalent`.\nThe role of the participant can be used to declare what the actor will be doing in the scope of this appointment.\r\rIf the actor is not specified, then it is expected that the actor will be filled in at a later stage of planning.\r\rThis value SHALL be the same when creating an AppointmentResponse so that they can be matched, and subsequently update the Appointment."
}
]
},
{
"code": "Appointment.participant.actor",
"display": "actor",
"target": [
{
"code": "Appointment.participant.actor",
"display": "Appointment.participant.actor",
"equivalence": "equivalent",
"comment": "Element `Appointment.participant.actor` is mapped to FHIR R4 element `Appointment.participant.actor` as `Equivalent`."
}
]
},
{
"code": "Appointment.participant.required",
"display": "required",
"target": [
{
"code": "Appointment.participant.required",
"display": "Appointment.participant.required",
"equivalence": "equivalent",
"comment": "Element `Appointment.participant.required` is mapped to FHIR R4 element `Appointment.participant.required` as `Equivalent`."
}
]
},
{
"code": "Appointment.participant.status",
"display": "status",
"target": [
{
"code": "Appointment.participant.status",
"display": "Appointment.participant.status",
"equivalence": "equivalent",
"comment": "Element `Appointment.participant.status` is mapped to FHIR R4 element `Appointment.participant.status` as `Equivalent`."
}
]
},
{
"code": "Appointment.requestedPeriod",
"display": "requestedPeriod",
"target": [
{
"code": "Appointment.requestedPeriod",
"display": "Appointment.requestedPeriod",
"equivalence": "equivalent",
"comment": "Element `Appointment.requestedPeriod` is mapped to FHIR R4 element `Appointment.requestedPeriod` as `Equivalent`.\nThis does not introduce a capacity for recurring appointments."
}
]
}
]
}
]
}