HL7 PT FHIR Implementation Guide: Example IG Release 1 | STU1, published by HL7 Portugal. This guide is not an authorized publication; it is the continuous build for version 0.0.1 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/hl7-pt/core/tree/master and changes regularly. See the Directory of published versions
  
Mappings for the 4d7bbcc0-ea7b-4fbe-b998-07e5fdc77d94 resource profile.
  
  
  
 | PT_MessageHeader | 
 | MessageHeader | MSH / MSA / ERR |  
 |    event[x] | MSH-9.2 |  
 |       system | C*E.3 |  
 |       version | C*E.7 |  
 |       code | C*E.1 |  
 |       display | C*E.2 - but note this is not well followed |  
 |       userSelected | Sometimes implied by being first |  
 |    destination |  |  
 |       name | MSH-5 |  
 |       endpoint | MSH-25 (or MSH-6) |  
 |       receiver | PRT-5:PRT-4='WAYR' / PRT-8:PRT-4='WAYR' |  
 |    sender | PRT-5:PRT-4='WAYR' / PRT-8:PRT-4='WAYR' |  
 |    enterer | EVN-5 / ORC-10 / PRT-5:PRT-4='EP' / ROL where ROL.3 is EP or ORC.10 |  
 |       identifier |  |  
 |          use | N/A |  
 |          type | CX.5 |  
 |             coding | C*E.1-8, C*E.10-22 |  
 |                system | C*E.3 |  
 |                version | C*E.7 |  
 |                code | C*E.1 |  
 |                display | C*E.2 - but note this is not well followed |  
 |                userSelected | Sometimes implied by being first |  
 |             text | C*E.9. But note many systems use C*E.2 for this |  
 |          system | CX.4 / EI-2-4 |  
 |          value | CX.1 / EI.1 |  
 |          period | CX.7 + CX.8 |  
 |          assigner | CX.4 / (CX.4,CX.9,CX.10) |  
 |    author | ORC-19 / PRT-5:PRT-4='AUT' / ROL where ROL.3 is IP or ORC.12 |  
 |    source |  |  
 |       name | MSH-3 |  
 |       software | SFT-3 ( +SFT-1) |  
 |       version | SFT-2 |  
 |       contact | (MSH-22?) |  
 |       endpoint | MSH-24 |  
 |    responsible | ORC-12 /  PRT-5:PRT-4='OP' /  PRT-8:PRT-4='OP' / ROL where ROL.3 is RO or ORC.11 |  
 |    reason | EVN.4 / ORC.16 / OBR-31-reason for study / BPO-13-BP indication for use / RXO-20-indication / RXE-27-give indication / RXD-21-indication / RXG-22-indication / RXA-19-indication |  
 |       coding | C*E.1-8, C*E.10-22 |  
 |          system | C*E.3 |  
 |          version | C*E.7 |  
 |          code | C*E.1 |  
 |          display | C*E.2 - but note this is not well followed |  
 |          userSelected | Sometimes implied by being first |  
 |       text | C*E.9. But note many systems use C*E.2 for this |  
 |    response | MSA |  
 |       identifier | MSA-2 |  
 |       code | MSA-1 |  
 |       details | ERR |  
 |          identifier |  |  
 |             use | N/A |  
 |             type | CX.5 |  
 |             system | CX.4 / EI-2-4 |  
 |             value | CX.1 / EI.1 |  
 |             period | CX.7 + CX.8 |  
 |             assigner | CX.4 / (CX.4,CX.9,CX.10) |  
 | PT_MessageHeader | 
 | MessageHeader | Entity. Role, or Act, Message |  
 |    meta |  |  
 |       id | n/a |  
 |       extension | n/a |  
 |    text | Act.text? |  
 |    contained | N/A |  
 |    extension | N/A |  
 |    modifierExtension | N/A |  
 |    event[x] | ./payload[classCode="CACT" and moodCode="EVN" and isNormalAct()]/code[isNormalDatatype()]/code |  
 |       id | n/a |  
 |       extension | n/a |  
 |       system | ./codeSystem |  
 |       version | ./codeSystemVersion |  
 |       code | ./code |  
 |       display | CV.displayName |  
 |       userSelected | CD.codingRationale |  
 |    destination | ./communicationFunction[typeCode="RCV"] |  
 |       id | n/a |  
 |       extension | n/a |  
 |       modifierExtension | N/A |  
 |       name | unique(./entity[determinerCode="INST" and (classCode=("DEV", "PSN", "ORG"]/name[type='ST' and isNormalDatatype()]) |  
 |       target | unique(./entity[determinerCode="INST" and (classCode=("DEV", "PSN", "ORG"] |  
 |       endpoint | ./telecom |  
 |       receiver | Not directly supported.  Could be shared using attentionLine.value with an appropriate keyWordText |  
 |    sender | Not directly supported.  Could be shared using attentionLine.value with an appropriate keyWordText |  
 |       id | n/a |  
 |       extension | n/a |  
 |       reference | N/A |  
 |       type | N/A |  
 |       identifier | .identifier |  
 |       display | N/A |  
 |    enterer | unique(./controlAct[classCode="CACT" and classCode="EVN" and isNormalAct()]/participation[typeCode="ENT" and isNormalParticipation]/role[classCode="ASSIGNED" and isNormalRole()]/player[isNormalEntity() and classCode=("DEV", "PSN") and determinerCode="INST"]) |  
 |       id | n/a |  
 |       extension | n/a |  
 |       reference | N/A |  
 |       type | N/A |  
 |       identifier | .identifier |  
 |          id | n/a |  
 |          extension | n/a |  
 |          use | Role.code or implied by context |  
 |          type | Role.code or implied by context |  
 |             id | n/a |  
 |             extension | n/a |  
 |             coding | union(., ./translation) |  
 |                id | n/a |  
 |                extension | n/a |  
 |                system | ./codeSystem |  
 |                version | ./codeSystemVersion |  
 |                code | ./code |  
 |                display | CV.displayName |  
 |                userSelected | CD.codingRationale |  
 |             text | ./originalText[mediaType/code="text/plain"]/data |  
 |          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 |  
 |       display | N/A |  
 |    author | unique(./controlAct[classCode="CACT" and classCode="EVN" and isNormalAct()]/participation[isHighest(priorityCode) and typeCode="AUT" and isNormalParticipation]/role[classCode="ASSIGNED" and isNormalRole()]/player[isNormalEntity() and classCode=("DEV", "PSN") and determinerCode="INST"]) |  
 |    source | unique(./communicationFunction[typeCode="SND"]) |  
 |       id | n/a |  
 |       extension | n/a |  
 |       modifierExtension | N/A |  
 |       name | unique(./entity[determinerCode="INST" and classCode="DEV"]/name[type='ST' and isNormalDatatype()]) |  
 |       software | unique(./entity[determinerCode="INST" and classCode="DEV"]/softwareName[isNormalDatatype()]) |  
 |       version | (Not supported) |  
 |       contact | unique(./entity[determinerCode="INST" and classCode="DEV"]/scopesRole[normalRole() and classCode="CON" and layer[classCode="PSN"]/telecom[isNormalDatatype()]) |  
 |       endpoint | ./telecom[isNormalDatatype()] |  
 |    responsible | unique(./controlAct[classCode="CACT" and classCode="EVN" and isNormalAct()]/participation[isHighest(priorityCode) and typeCode="RESP" and isNormalParticipation]/role[classCode="ASSIGNED" and isNormalRole()]/player[isNormalEntity() and classCode="PSN" and determinerCode="INST"] or ./controlAct[classCode="CACT" and classCode="EVN" and isNormalAct()]/participation[isHighest(priorityCode) and typeCode="RESP" and isNormalParticipation]/role[classCode="ASSIGNED" and isNormalRole()]/scoper[isNormalEntity() and classCode="ORG" and determinerCode="INST"]) |  
 |    reason | unique(./controlAct[classCode="CACT" and classCode="EVN" and isNormalAct()]/reasonCode[isNormalDatatype()]) |  
 |       id | n/a |  
 |       extension | n/a |  
 |       coding | union(., ./translation) |  
 |          id | n/a |  
 |          extension | n/a |  
 |          system | ./codeSystem |  
 |          version | ./codeSystemVersion |  
 |          code | ./code |  
 |          display | CV.displayName |  
 |          userSelected | CD.codingRationale |  
 |       text | ./originalText[mediaType/code="text/plain"]/data |  
 |    response | ./conveyedAcknowledgement |  
 |       id | n/a |  
 |       extension | n/a |  
 |       modifierExtension | N/A |  
 |       identifier | ./acknowledges.id[isNormalDatatype()] |  
 |       code | ./typeCode[isNormalDatatype()] |  
 |       details | AcknowledgementDetail or Observation[classCode="ALRT" and moodCode="EVN"] |  
 |          id | n/a |  
 |          extension | n/a |  
 |          reference | N/A |  
 |          type | N/A |  
 |          identifier | .identifier |  
 |             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 |  
 |          display | N/A |  
 |    focus | unique(./controlAct[classCode="CACT" and classCode="EVN" and isNormalAct()]/participation[typeCode="SUBJ" and isNormalParticipation]/role or ./controlAct[classCode="CACT" and classCode="EVN" and isNormalAct()]/outboundRelationship[typeCode="SBJ" and isNormalActRelatoinship]/target) |  
 |    definition | Not directly supported. |