FR Document Core (FHIR)
0.1.0 - ci-build

FR Document Core (FHIR), publié par Agence du Numérique en Santé (ANS) - 2-10 Rue d'Oradour-sur-Glane, 75015 Paris. Ce guide n'est pas une publication autorisée ; C'est la version en intégration continue pour la version 0.1.0 construite par le CI Build FHIR (HL7® FHIR® Standard). Cette version est basée sur le contenu actuel de https://github.com/ansforge/interop-IG-fhir-document-core/ et change régulièrement. Voir le répertoire des versions publiées

## Profil de ressource: FR Composition Document - Mises en correspondance

Draft à partir de 2026-08-07

Mappings pour fr-composition-document profil de ressource.

#### Mappings to Structures in this Implementation Guide

No Mappings Found

#### Mappings to other Structures

No Mappings Found

#### Other Mappings

Nom | Workflow Pattern | RIM Mapping | CDA (R2) | FHIR DocumentReference | FiveWs Pattern Mapping
--- | --- | --- | --- | --- | ---
Composition | Event | Document[classCode="DOC" and moodCode="EVN" and isNormalAct()] | ClinicalDocument | when described by DocumentReference |
id |  |  |  |  |
meta |  |  |  |  |
id |  | n/a |  |  |
extension |  | n/a |  |  |
versionId |  |  |  |  |
lastUpdated |  |  |  |  |
source |  |  |  |  |
Slices pour profile |  |  |  |  |
profile:canonical |  |  |  |  |
security |  |  |  |  |
tag |  |  |  |  |
implicitRules |  |  |  |  |
language |  |  | languageCode |  |
text |  | Act.text? |  |  |
contained |  | N/A |  |  |
Slices pour extension |  |  |  |  |
extension:R5-Composition-version |  |  |  |  |
extension:data-enterer |  |  |  |  |
id |  | n/a |  |  |
Slices pour extension |  |  |  |  |
Slices pour extension |  |  |  |  |
extension:type |  |  |  |  |
id |  | n/a |  |  |
extension |  |  |  |  |
url |  | N/A |  |  |
Slices pour value[x] |  | N/A |  |  |
Slices pour value[x] |  |  |  |  |
value[x]:valueCodeableConcept |  | N/A |  |  |
extension:function |  |  |  |  |
id |  | n/a |  |  |
extension |  |  |  |  |
url |  | N/A |  |  |
value[x] |  | N/A |  |  |
extension:time |  |  |  |  |
id |  | n/a |  |  |
extension |  |  |  |  |
url |  | N/A |  |  |
value[x] |  | N/A |  |  |
extension:party |  |  |  |  |
id |  | n/a |  |  |
extension |  |  |  |  |
url |  | N/A |  |  |
value[x] |  | N/A |  |  |
url |  | N/A |  |  |
value[x] |  | N/A |  |  |
extension:informant |  |  |  |  |
id |  | n/a |  |  |
Slices pour extension |  |  |  |  |
Slices pour extension |  |  |  |  |
extension:type |  |  |  |  |
id |  | n/a |  |  |
extension |  |  |  |  |
url |  | N/A |  |  |
Slices pour value[x] |  | N/A |  |  |
Slices pour value[x] |  |  |  |  |
value[x]:valueCodeableConcept |  | N/A |  |  |
extension:function |  |  |  |  |
id |  | n/a |  |  |
extension |  |  |  |  |
url |  | N/A |  |  |
value[x] |  | N/A |  |  |
extension:time |  |  |  |  |
id |  | n/a |  |  |
extension |  |  |  |  |
url |  | N/A |  |  |
value[x] |  | N/A |  |  |
extension:party |  |  |  |  |
id |  | n/a |  |  |
extension |  |  |  |  |
url |  | N/A |  |  |
value[x] |  | N/A |  |  |
url |  | N/A |  |  |
value[x] |  | N/A |  |  |
extension:information-recipient |  |  |  |  |
id |  | n/a |  |  |
Slices pour extension |  |  |  |  |
Slices pour extension |  |  |  |  |
extension:type |  |  |  |  |
id |  | n/a |  |  |
extension |  |  |  |  |
url |  | N/A |  |  |
value[x] |  | N/A |  |  |
extension:function |  |  |  |  |
id |  | n/a |  |  |
extension |  |  |  |  |
url |  | N/A |  |  |
value[x] |  | N/A |  |  |
extension:time |  |  |  |  |
id |  | n/a |  |  |
extension |  |  |  |  |
url |  | N/A |  |  |
value[x] |  | N/A |  |  |
extension:party |  |  |  |  |
id |  | n/a |  |  |
extension |  |  |  |  |
url |  | N/A |  |  |
value[x] |  | N/A |  |  |
url |  | N/A |  |  |
value[x] |  | N/A |  |  |
extension:participant |  |  |  |  |
id |  | n/a |  |  |
Slices pour extension |  |  |  |  |
Slices pour extension |  |  |  |  |
extension:type |  |  |  |  |
id |  | n/a |  |  |
extension |  |  |  |  |
url |  | N/A |  |  |
value[x] |  | N/A |  |  |
extension:function |  |  |  |  |
id |  | n/a |  |  |
extension |  |  |  |  |
url |  | N/A |  |  |
value[x] |  | N/A |  |  |
extension:time |  |  |  |  |
id |  | n/a |  |  |
extension |  |  |  |  |
url |  | N/A |  |  |
value[x] |  | N/A |  |  |
extension:party |  |  |  |  |
id |  | n/a |  |  |
extension |  |  |  |  |
url |  | N/A |  |  |
value[x] |  | N/A |  |  |
url |  | N/A |  |  |
value[x] |  | N/A |  |  |
extension:consent |  |  | authorization.Consent |  |
extension:basedOn | Event.basedOn | .outboundRelationship[typeCode=FLFS].target |  |  |
id |  | n/a |  |  |
extension |  |  |  |  |
url |  | N/A |  |  |
value[x] |  | N/A |  |  |
extension:change-made |  |  |  |  |
modifierExtension |  | N/A |  |  |
identifier | Event.identifier | Document.id / Document.setId | .setId | DocumentReference.masterIdentifier | FiveWs.identifier
status | Event.status | .completionCode="IN" & ./statusCode[isNormalDatatype()]="active"; final: .completionCode="AU" && ./statusCode[isNormalDatatype()]="complete" and not(./inboundRelationship[typeCode="SUBJ" and isNormalActRelationship()]/source[subsumesCode("ActClass#CACT") and moodCode="EVN" and domainMember("ReviseComposition" .completionCode="AU" && ./statusCode[isNormalDatatype()]="complete" and ./inboundRelationship[typeCode="SUBJ" and isNormalActRelationship()]/source[subsumesCode("ActClass#CACT") and moodCode="EVN" and domainMember("ReviseComposition" .completionCode=NI && ./statusCode[isNormalDatatype()]="obsolete" | n/a | DocumentReference.status | FiveWs.status
id |  |  |  |  |
Slices pour extension |  |  |  |  |
extension:R5-Composition-status |  |  |  |  |
value |  |  |  |  |
type | Event.code | ./code | .code | DocumentReference.type | FiveWs.class
Slices pour category | Event.subject | .outboundRelationship[typeCode="COMP].target[classCode="LIST" moodCode="EVN"].code | n/a | DocumenttReference.category | FiveWs.class
category:clinicalnotecategory | Event.subject | .outboundRelationship[typeCode="COMP].target[classCode="LIST" moodCode="EVN"].code | n/a | DocumenttReference.category | FiveWs.class
subject |  | .participation[typeCode="SBJ"].role[typeCode="PAT"] | .recordTarget | DocumentReference.subject | FiveWs.subject
id |  | n/a |  |  |
extension |  | n/a |  |  |
reference |  | N/A |  |  |
type |  | N/A |  |  |
identifier |  | .identifier |  |  |
display |  | N/A |  |  |
encounter | Event.context | unique(highest(./outboundRelationship[typeCode="SUBJ" and isNormalActRelationship()] priorityNumber)/target[moodCode="EVN" and classCode=("ENC" "PCPR") and isNormalAct]) | .componentOf.encompassingEncounter | DocumentReference.context.encounter | FiveWs.context
date | Event.occurrence[x] | .effectiveTime[type="TS"] | .effectiveTime | DocumentReference.content.attachment.date DocumentReference.created | FiveWs.done[x]
author | Event.performer | .participation[typeCode="AUT"].role[classCode="ASSIGNED"] | .author.assignedAuthor | DocumentReference.agent | FiveWs.author
id |  | n/a |  |  |
Slices pour extension |  |  |  |  |
extension:time |  |  |  |  |
reference |  | N/A |  |  |
type |  | N/A |  |  |
identifier |  | .identifier |  |  |
display |  | N/A |  |  |
title |  | ./title | .title | DocumentReference.description DocumentReference.content.attachment.title |
confidentiality |  | .confidentialityCode | .confidentialityCode | DocumentReference.securityLabel |
Slices pour attester |  | .participation[typeCode="AUTHEN"].role[classCode="ASSIGNED"] | .authenticator/.legalAuthenticator | DocumentReference.authenticator |
attester:Toutes les slices |  |  |  |  |
id |  | n/a |  |  |
extension |  | n/a |  |  |
modifierExtension |  | N/A |  |  |
mode |  | unique(./modeCode) | implied by .authenticator/.legalAuthenticator |  |
time |  | ./time[type="TS" and isNormalDatatype()] | .authenticator.time |  |
party |  | ./role[classCode="ASSIGNED" and isNormalRole]/player[determinerCode="INST" and classCode=("DEV" "PSN") and isNormalEntity()] or ./role[classCode="ASSIGNED" and isNormalRole and not(player)]/scoper[determinerCode="INST" and classCode="ORG" and isNormalEntity()] | .authenticator.assignedEnttty |  | FiveWs.witness
attester:legal_attester |  | .participation[typeCode="AUTHEN"].role[classCode="ASSIGNED"] | .authenticator/.legalAuthenticator | DocumentReference.authenticator |
id |  | n/a |  |  |
extension |  | n/a |  |  |
modifierExtension |  | N/A |  |  |
mode |  | unique(./modeCode) | implied by .authenticator/.legalAuthenticator |  |
time |  | ./time[type="TS" and isNormalDatatype()] | .authenticator.time |  |
party |  | ./role[classCode="ASSIGNED" and isNormalRole]/player[determinerCode="INST" and classCode=("DEV" "PSN") and isNormalEntity()] or ./role[classCode="ASSIGNED" and isNormalRole and not(player)]/scoper[determinerCode="INST" and classCode="ORG" and isNormalEntity()] | .authenticator.assignedEnttty |  | FiveWs.witness
attester:professional_attester |  | .participation[typeCode="AUTHEN"].role[classCode="ASSIGNED"] | .authenticator/.legalAuthenticator | DocumentReference.authenticator |
id |  | n/a |  |  |
extension |  | n/a |  |  |
modifierExtension |  | N/A |  |  |
mode |  | unique(./modeCode) | implied by .authenticator/.legalAuthenticator |  |
time |  | ./time[type="TS" and isNormalDatatype()] | .authenticator.time |  |
party |  | ./role[classCode="ASSIGNED" and isNormalRole]/player[determinerCode="INST" and classCode=("DEV" "PSN") and isNormalEntity()] or ./role[classCode="ASSIGNED" and isNormalRole and not(player)]/scoper[determinerCode="INST" and classCode="ORG" and isNormalEntity()] | .authenticator.assignedEnttty |  | FiveWs.witness
custodian |  | .participation[typeCode="RCV"].role[classCode="CUST"].scoper[classCode="ORG" and determinerCode="INST"] | .custodian.assignedCustodian | DocumentReference.custodian |
Slices pour relatesTo |  | .outboundRelationship | .relatedDocument | DocumentReference.relatesTo |
relatesTo:Toutes les slices |  |  |  |  |
id |  | n/a |  |  |
extension |  | n/a |  |  |
modifierExtension |  | N/A |  |  |
code |  | .outboundRelationship.typeCode | .relatedDocument.typeCode | DocumentReference.relatesTo.code |
Slices pour target[x] |  | .target[classCode="DOC" moodCode="EVN"].id | .relatedDocument.id | DocumentReference.relatesTo.target |
target[x]:targetIdentifier |  | .target[classCode="DOC" moodCode="EVN"].id | .relatedDocument.id | DocumentReference.relatesTo.target |
id |  | n/a |  |  |
extension |  | n/a |  |  |
use |  | Role.code or implied by context |  |  |
type |  | Role.code or implied by context |  |  |
system |  | II.root or Role.id.root |  |  |
value |  | II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root) |  |  |
period |  | Role.effectiveTime or implied by context |  |  |
assigner |  | II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper |  |  |
relatesTo:replaced_document |  | .outboundRelationship | .relatedDocument | DocumentReference.relatesTo |
id |  | n/a |  |  |
extension |  | n/a |  |  |
modifierExtension |  | N/A |  |  |
code |  | .outboundRelationship.typeCode | .relatedDocument.typeCode | DocumentReference.relatesTo.code |
Slices pour target[x] |  | .target[classCode="DOC" moodCode="EVN"].id | .relatedDocument.id | DocumentReference.relatesTo.target |
Slices pour target[x] |  |  |  |  |
target[x]:targetIdentifier |  | .target[classCode="DOC" moodCode="EVN"].id | .relatedDocument.id | DocumentReference.relatesTo.target |
id |  | n/a |  |  |
extension |  | n/a |  |  |
use |  | Role.code or implied by context |  |  |
type |  | Role.code or implied by context |  |  |
system |  | II.root or Role.id.root |  |  |
value |  | II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root) |  |  |
period |  | Role.effectiveTime or implied by context |  |  |
assigner |  | II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper |  |  |
relatesTo:appended_document |  | .outboundRelationship | .relatedDocument | DocumentReference.relatesTo |
id |  | n/a |  |  |
extension |  | n/a |  |  |
modifierExtension |  | N/A |  |  |
code |  | .outboundRelationship.typeCode | .relatedDocument.typeCode | DocumentReference.relatesTo.code |
Slices pour target[x] |  | .target[classCode="DOC" moodCode="EVN"].id | .relatedDocument.id | DocumentReference.relatesTo.target |
Slices pour target[x] |  |  |  |  |
target[x]:targetIdentifier |  | .target[classCode="DOC" moodCode="EVN"].id | .relatedDocument.id | DocumentReference.relatesTo.target |
id |  | n/a |  |  |
extension |  | n/a |  |  |
use |  | Role.code or implied by context |  |  |
type |  | Role.code or implied by context |  |  |
system |  | II.root or Role.id.root |  |  |
value |  | II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root) |  |  |
period |  | Role.effectiveTime or implied by context |  |  |
assigner |  | II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper |  |  |
relatesTo:transformed_document |  | .outboundRelationship | .relatedDocument | DocumentReference.relatesTo |
id |  | n/a |  |  |
extension |  | n/a |  |  |
modifierExtension |  | N/A |  |  |
code |  | .outboundRelationship.typeCode | .relatedDocument.typeCode | DocumentReference.relatesTo.code |
Slices pour target[x] |  | .target[classCode="DOC" moodCode="EVN"].id | .relatedDocument.id | DocumentReference.relatesTo.target |
Slices pour target[x] |  |  |  |  |
target[x]:targetIdentifier |  | .target[classCode="DOC" moodCode="EVN"].id | .relatedDocument.id | DocumentReference.relatesTo.target |
Slices pour event |  | outboundRelationship[typeCode="SUBJ"].target[classCode<'ACT'] | .documentationOf.serviceEvent | DocumentReference.event |
event:Toutes les slices |  |  |  |  |
id |  | n/a |  |  |
Slices pour extension |  |  |  |  |
extension:performer |  |  |  |  |
modifierExtension |  | N/A |  |  |
code |  | .code | .code | DocumentReference.event.code |
period |  | .effectiveTime | .effectiveTime | DocumentReference.event.period |
detail |  | .outboundRelationship[typeCode="SUBJ"].target | n/a |  |
event:principalEvent |  | outboundRelationship[typeCode="SUBJ"].target[classCode<'ACT'] | .documentationOf.serviceEvent | DocumentReference.event |
id |  | n/a |  |  |
Slices pour extension |  |  |  |  |
Slices pour extension |  |  |  |  |
extension:performer |  |  |  |  |
modifierExtension |  | N/A |  |  |
code |  | .code | .code | DocumentReference.event.code |
period |  | .effectiveTime | .effectiveTime | DocumentReference.event.period |
detail |  | .outboundRelationship[typeCode="SUBJ"].target | n/a |  |
section |  | ./outboundRelationship[typeCode="COMP" and isNormalActRelationship()]/target[moodCode="EVN" and classCode="DOCSECT" and isNormalAct] | .component.structuredBody.component.section |  |
id |  | n/a |  |  |
Slices pour extension |  |  |  |  |
extension:change-made |  |  |  |  |
extension:section-note |  |  |  |  |
modifierExtension |  | N/A |  |  |
title |  | ./title | .title |  |
code |  | ./code | .code |  |
author |  | .participation[typeCode="AUT"].role[classCode="ASSIGNED"] | .author.assignedAuthor |  | FiveWs.author
focus |  |  | .subject? (CDA did not differentiate between subject and focus) |  |
text |  | .text | .text |  |
mode |  | .outBoundRelationship[typeCode=COMP].target[classCode=OBS"].value | n/a |  | FiveWs.class
orderedBy |  | .outboundRelationship[typeCode=COMP].sequenceNumber > 1 | n/a |  |
entry |  | .outboundRelationship[typeCode=COMP] or .participation[typeCode=SBJ] | .entry |  |
emptyReason |  | .inboundRelationship[typeCode=SUBJ code<ListEmptyReason].value[type=CD] | n/a |  |
section |  | ./outboundRelationship[typeCode="COMP" and isNormalActRelationship()]/target[moodCode="EVN" and classCode="DOCSECT" and isNormalAct] | .component.section |  |
Documentation pour ce format