Implementation Guide
25.0.0 - R4 APIs

Publish Box goes here

Resource Profile: AthenaCondition - Mappings

Active as of 2022-03-01

Mappings for the athena-condition-profile resource profile.

Mappings to Structures in this Implementation Guide

No Mappings Found

Mappings to other Structures

No Mappings Found

Other Mappings

NameathenaFlowathenaPracticeWorkflow PatternSNOMED CT Concept Domain BindingHL7 v2 MappingRIM MappingFiveWs Pattern MappingSNOMED CT Attribute Bindingdoco
.. Condition
FHIRR4_CONDITIONVIEW
FHIRR4_CONDITIONVIEW
Event
246090004 |Associated finding| = ( ( < 404684003 |Clinical finding| MINUS ( << 420134006 |Propensity to adverse reactions| OR << 473010000 |Hypersensitivity condition| OR << 79899007 |Drug interaction| OR << 69449002 |Drug action| OR << 441742003 |Evaluation finding| OR << 307824009 |Administrative status| OR << 385356007 |Tumor stage finding|)) OR < 272379006 |Event|)
PPR message
  • Observation[classCode=OBS
  • moodCode=EVN
  • code=ASSERTION
  • value<Diagnosis]
... id
  • MakeId("PROBLEM"
  • %RESOURCEID%)
  • MakeId("PROBLEM"
  • %RESOURCEID%)
... meta
.... id
n/a
.... extension
n/a
.... versionId
MakeId(%SPRID%)
MakeId(%SPRID%)
.... lastUpdated
%WHENUPDATED%
%WHENUPDATED%
.... source
.... Slices for profile
..... profile:USCore Condition Profile
..... profile:Athena Condition Profile
..... profile:US Core Condition Encounter Diagnosis Profile
  • IfEqual(%CATEGORY%
  • //hl7.org/fhir/us/core/StructureDefinition/us-core-condition-encounter-diagnosis")
  • IfEqual(%CATEGORY%
  • //hl7.org/fhir/us/core/StructureDefinition/us-core-condition-encounter-diagnosis")
..... profile:US Core Condition Problems Health Concerns Profile
  • IfEqual(%CATEGORY%
  • //hl7.org/fhir/us/core/StructureDefinition/us-core-condition-problems-health-concerns")
  • IfEqual(%CATEGORY%
  • //hl7.org/fhir/us/core/StructureDefinition/us-core-condition-problems-health-concerns")
.... profile
  • IfEqual(%CATEGORY%
  • //hl7.org/fhir/us/core/StructureDefinition/us-core-condition-problems-health-concerns")
  • IfEqual(%CATEGORY%
  • //hl7.org/fhir/us/core/StructureDefinition/us-core-condition-problems-health-concerns")
.... Slices for security
..... security:SENSITIVECHART
CheckSensitive(%SENSITIVECHART%)
CheckSensitive(%SENSITIVECHART%)
..... security:CONFABBR
...... id
n/a
...... extension
n/a
...... system
getSiteCodeSystem("ConfidentialDocument")
getSiteCodeSystem("ConfidentialDocument")
C*E.3
./codeSystem
...... version
C*E.7
./codeSystemVersion
...... code
%CONFABBR%
%CONFABBR%
C*E.1
./code
...... display
C*E.2 - but note this is not well followed
CV.displayName
...... userSelected
Sometimes implied by being first
CD.codingRationale
.... tag
MakeChangeTagList(%CHANGE%)
MakeChangeTagList(%CHANGE%)
... implicitRules
... text
Act.text?
... contained
N/A
... extension
N/A
... modifierExtension
N/A
... identifier
  • MakeIdentifier("U"
  • getSiteSystem("ProblemId")
  • %RESOURCEID%)
  • MakeIdentifier("U"
  • getSiteSystem("ProblemId")
  • %RESOURCEID%)
Event.identifier
.id
FiveWs.identifier
... clinicalStatus
  • MapConceptCode("active"
  • %STOPREASON%
  • "CLINICALSTATUS")
  • MapConceptCode("active"
  • %STOPREASON%
  • "CLINICALSTATUS")
Event.status
< 303105007 |Disease phases|
PRB-14
  • Observation ACT .inboundRelationship[typeCode=COMP].source[classCode=OBS
  • code="clinicalStatus"
  • moodCode=EVN].value
FiveWs.status
... verificationStatus
  • MapConcept(%VSTOPREASON%
  • "VERIFICATIONSTATUS"
  • true)
  • MapConcept(%VSTOPREASON%
  • "VERIFICATIONSTATUS"
  • true)
Event.status
< 410514004 |Finding context value|
PRB-13
  • Observation ACT .inboundRelationship[typeCode=COMP].source[classCode=OBS
  • code="verificationStatus"
  • moodCode=EVN].value
FiveWs.status
408729009
... Slices for category
< 404684003 |Clinical finding|
'problem' if from PRB-3. 'diagnosis' if from DG1 segment in PV1 message
.code
FiveWs.class
.... category:us-core
  • MakeConditionCategoryConcept(%CATEGORY%
  • %ADDITIONALCATEGORY%
  • "CONDITIONCATEGORY")
  • MakeConditionCategoryConcept(%CATEGORY%
  • %ADDITIONALCATEGORY%
  • "CONDITIONCATEGORY")
< 404684003 |Clinical finding|
'problem' if from PRB-3. 'diagnosis' if from DG1 segment in PV1 message
.code
FiveWs.class
.... category:screening-assessment
  • MakeConditionCategoryForSDOHConcept(%CATEGORY%
  • %ADDITIONALCATEGORY%
  • "SCREENINGASSESSMENT")
  • MakeConditionCategoryForSDOHConcept(%CATEGORY%
  • %ADDITIONALCATEGORY%
  • "SCREENINGASSESSMENT")
< 404684003 |Clinical finding|
'problem' if from PRB-3. 'diagnosis' if from DG1 segment in PV1 message
.code
FiveWs.class
... severity
< 272141005 |Severities|
PRB-26 / ABS-3
  • Can be pre/post-coordinated into value. Or ./inboundRelationship[typeCode=SUBJ].source[classCode=OBS
  • moodCode=EVN
  • code="severity"].value
FiveWs.grade
246112005
... code
Event.code
code 246090004 |Associated finding| (< 404684003 |Clinical finding| MINUS << 420134006 |Propensity to adverse reactions| MINUS << 473010000 |Hypersensitivity condition| MINUS << 79899007 |Drug interaction| MINUS << 69449002 |Drug action| MINUS << 441742003 |Evaluation finding| MINUS << 307824009 |Administrative status| MINUS << 385356007 |Tumor stage finding|) OR < 413350009 |Finding with explicit context| OR < 272379006 |Event|
PRB-3
.value
FiveWs.what[x]
246090004
.... id
n/a
.... extension
n/a
.... Slices for coding
  • C*E.1-8
  • C*E.10-22
  • union(.
  • ./translation)
..... coding:SNOMEDCODE
  • C*E.1-8
  • C*E.10-22
  • union(.
  • ./translation)
...... id
n/a
...... extension
n/a
...... system
C*E.3
./codeSystem
...... version
C*E.7
./codeSystemVersion
...... code
  • asCodeType(%SNOMEDCODE%
  • true)
  • asCodeType(%SNOMEDCODE%
  • true)
C*E.1
./code
...... display
C*E.2 - but note this is not well followed
CV.displayName
...... userSelected
Sometimes implied by being first
CD.codingRationale
..... coding:ICD10CODE
  • C*E.1-8
  • C*E.10-22
  • union(.
  • ./translation)
...... id
n/a
...... extension
n/a
...... system
C*E.3
./codeSystem
...... version
C*E.7
./codeSystemVersion
...... code
  • asCodeType(%ICD10CODE%
  • true)
  • asCodeType(%ICD10CODE%
  • true)
C*E.1
./code
...... display
C*E.2 - but note this is not well followed
CV.displayName
...... userSelected
Sometimes implied by being first
CD.codingRationale
..... coding:CODE
  • C*E.1-8
  • C*E.10-22
  • union(.
  • ./translation)
...... id
n/a
...... extension
n/a
...... system
C*E.3
./codeSystem
...... version
C*E.7
./codeSystemVersion
...... code
  • asCodeType(%CODE%
  • true)
  • asCodeType(%CODE%
  • true)
C*E.1
./code
...... display
C*E.2 - but note this is not well followed
CV.displayName
...... userSelected
Sometimes implied by being first
CD.codingRationale
.... text
%DESCRIPTION%
%DESCRIPTION%
C*E.9. But note many systems use C*E.2 for this
./originalText[mediaType/code="text/plain"]/data
... bodySite
< 442083009 |Anatomical or acquired body structure|
.targetBodySiteCode
363698007
... subject
  • MakeReference("PERSON"
  • %PID%
  • "Patient")
  • MakeReference("PERSON"
  • %PID%
  • "Patient")
Event.subject
PID-3
.participation[typeCode=SBJ].role[classCode=PAT]
FiveWs.subject
... encounter
  • MakeReference("DOCUMENT"
  • %SDID%
  • "Encounter")
  • MakeReference("DOCUMENT"
  • %SDID%
  • "Encounter")
Event.context
PV1-19 (+PV1-54)
  • .inboundRelationship[typeCode=COMP].source[classCode=ENC
  • moodCode=EVN]
FiveWs.context
... onset[x]
%ONSETDATE% | %APROXONSETDATE%
%ONSETDATE% | %APROXONSETDATE%
Event.occurrence[x]
PRB-16
  • .effectiveTime.low or .inboundRelationship[typeCode=SUBJ].source[classCode=OBS
  • moodCode=EVN
  • code="age at onset"].value
FiveWs.init
... abatement[x]
%STOPDATE% | %APROXSTOPDATE%
%STOPDATE% | %APROXSTOPDATE%
  • .effectiveTime.high or .inboundRelationship[typeCode=SUBJ].source[classCode=OBS
  • moodCode=EVN
  • code="age at remission"].value or .inboundRelationship[typeCode=SUBJ]source[classCode=CONC
  • moodCode=EVN].status=completed
FiveWs.done[x]
... recordedDate
%WHENCREATED%
%WHENCREATED%
REL-11
.participation[typeCode=AUT].time
FiveWs.recorded
... recorder
  • MakeReference("USR"
  • %CREATOR%
  • %USRID%
  • "Practitioner")
  • MakeReference("USR"
  • %CREATOR%
  • %USRID%
  • "Practitioner")
.participation[typeCode=AUT].role
FiveWs.author
... asserter
  • MakeReference("USR"
  • %SIGNER%
  • "Practitioner")
  • MakeReference("USR"
  • %SIGNER%
  • "Practitioner")
REL-7.1 identifier + REL-7.12 type code
.participation[typeCode=INF].role
FiveWs.source
... stage
  • ./inboundRelationship[typeCode=SUBJ].source[classCode=OBS
  • moodCode=EVN
  • code="stage/grade"]
.... id
n/a
.... extension
n/a
.... modifierExtension
N/A
.... summary
< 254291000 |Staging and scales|
PRB-14
.value
.... assessment
.self
.... type
  • ./inboundRelationship[typeCode=SUBJ].source[classCode=OBS
  • moodCode=EVN
  • code="stage type"]
... evidence
  • .outboundRelationship[typeCode=SPRT].target[classCode=OBS
  • moodCode=EVN]
.... id
n/a
.... extension
n/a
.... modifierExtension
N/A
.... code
Event.reasonCode
< 404684003 |Clinical finding|
[code="diagnosis"].value
FiveWs.why[x]
.... detail
.self
FiveWs.why[x]
... note
makeAnnotation(%ANNOTATE%)
makeAnnotation(%ANNOTATE%)
Event.note
NTE child of PRB
  • .inboundRelationship[typeCode=SUBJ].source[classCode=OBS
  • moodCode=EVN
  • code="annotation"].value

doco Documentation for this format