Release 4 5 Preview #2
This page is part of the FHIR Specification (v4.0.1: R4 - Mixed Normative and STU ). This is the current published version in it's permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions

2.32 2.33 Pattern fivews - Content

FHIR Infrastructure Maturity Level : 1 Informative

Who What When Where Why - Common pattern for all resources that deals with attribution.

All resources include some attribution information. Classically, this information includes:

  • Who
  • What
  • When
  • Where
  • Why

This is classically known as the 'Five Ws' - hence the name of this pattern. The pattern also includes additional information that is common across many resources.

The Five Ws logical model is NOT a resource. It is not part of the FHIR schema and cannot appear directly in FHIR instances. Instead, it defines a pattern adhered to by other resources. This pattern serves two purposes:

  • It offers guidance to work groups designing resources and helps ensure consistency of content created by different work groups
  • It provides a standard "view" that might be useful for implementers in processing and manipulating all resources that adhere to the same pattern. (Tooling that supports this may become available in a future release.)

Note that the guidance here is around the types of information that might be captured, not around element names. For example "why" would more typically be labeled as something like "reason" and "where" would be more typically labeled "location"

To do

To do

No resources follow this pattern.

Structure

Name Flags Card. Type Description & Constraints doco
. . FiveWs I Logical Who What When Where Why - Common pattern for all resources that deals with attribution
. . . identifier 0..* Identifier Business Identifier
. . . version 0..1 string Identifier for this version
. . . status ?! 0..1 code Status Field
Canonical Status Codes for FHIR Resources ( Required )
. . . grade 0..1 CodeableConcept A field that indicates the potential impact of the content of the resource
. . . what[x] 0..1 What this resource is about
. . . . whatCodeableConcept CodeableConcept
. . . . whatReference Reference ( Any )
. . . subject 0..* Reference ( Patient | Practitioner | RelatedPerson | Organization ) Who this resource is about
. . . context 0..1 Reference ( Encounter | EpisodeOfCare ) Context for the work described in this resource
. . . init 0..1 dateTime When the work described in this resource was started (or will be)
. . . planned 0..* Timing When this resource is planned to occur
. . . done[x] 0..1 When the work described in this resource was completed (or will be)
. . . . doneDateTime dateTime
. . . . donePeriod Period
. . . recorded 0..1 instant When this resource itself was created
. . . author 0..* Reference ( Patient | Practitioner | RelatedPerson | Organization ) Who authored the content of the resource
. . . source 0..* Reference ( Patient | Practitioner | RelatedPerson | Organization ) Who provided the information in this resource
. . . actor 0..* Reference ( Patient | Practitioner | RelatedPerson | Organization ) Who did the work described the resource (or will do)
. . . cause 0..* Reference ( Patient | Practitioner | RelatedPerson | Organization ) Who prompted the work described in the resource
. . . witness 0..* Reference ( Patient | Practitioner | RelatedPerson ) Who attests to the content of the resource (individual or org)
. . . who 0..* Reference ( Patient | Practitioner | RelatedPerson | Organization ) An actor involved in the work described by this resource
. . . where[x] 0..* The location of the work described
. . . . whereCodeableConcept CodeableConcept
. . . . whereReference Reference ( Location )
. . . why[x] 0..* Why this work was done
. . . . whyCodeableConcept CodeableConcept
. . . . whyReference Reference ( Any )

doco Documentation for this format

UML Diagram ( Legend )

FiveWs ( Logical Base ) «Pattern» Business Identifier identifier : Identifier [0..*] Identifier for this version version : string [0..1] Status Field (this element modifies the meaning of other elements) status : code [0..1] « Status Field. (Strength=Required) CanonicalStatusCodesForFHIRRe... ! » Classifier Field class : CodeableConcept [0..*] A field that indicates the potential impact of the content of the resource grade : CodeableConcept [0..1] what this resource is about what[x] : Type DataType [0..1] « CodeableConcept | Reference ( Any ) » Who this resource is about subject : Reference [0..*] « Patient | Practitioner | RelatedPerson | Organization » a resource that gives context for the work described in this resource (usually Encounter or EpisodeOfCare) context : Reference [0..1] « Encounter | EpisodeOfCare » when the work described in this resource was started (or will be) init : dateTime [0..1] when this resource is planned to occur planned : Timing [0..*] when the work described in this resource was completed (or will be) done[x] : Type DataType [0..1] « dateTime | Period » when this resource itself was created recorded : instant [0..1] who authored the content of the resource author : Reference [0..*] « Patient | Practitioner | RelatedPerson | Organization » Who provided the information in this resource source : Reference [0..*] « Patient | Practitioner | RelatedPerson | Organization » who did the work described the resource (or will do) actor : Reference [0..*] « Patient | Practitioner | RelatedPerson | Organization » who prompted the work described in the resource cause : Reference [0..*] « Patient | Practitioner | RelatedPerson | Organization » who attests to the content of the resource (individual or org) witness : Reference [0..*] « Patient | Practitioner | RelatedPerson » An actor involved in the work described by this resource who : Reference [0..*] « Patient | Practitioner | RelatedPerson | Organization » The location of the work described where[x] : Type DataType [0..*] « CodeableConcept | Reference ( Location ) » Why this work was done why[x] : Type DataType [0..*] « CodeableConcept | Reference ( Any ) »

Structure

Name Flags Card. Type Description & Constraints doco
. . FiveWs I Logical Who What When Where Why - Common pattern for all resources that deals with attribution
. . . identifier 0..* Identifier Business Identifier
. . . version 0..1 string Identifier for this version
. . . status ?! 0..1 code Status Field
Canonical Status Codes for FHIR Resources ( Required )
. . . grade 0..1 CodeableConcept A field that indicates the potential impact of the content of the resource
. . . what[x] 0..1 What this resource is about
. . . . whatCodeableConcept CodeableConcept
. . . . whatReference Reference ( Any )
. . . subject 0..* Reference ( Patient | Practitioner | RelatedPerson | Organization ) Who this resource is about
. . . context 0..1 Reference ( Encounter | EpisodeOfCare ) Context for the work described in this resource
. . . init 0..1 dateTime When the work described in this resource was started (or will be)
. . . planned 0..* Timing When this resource is planned to occur
. . . done[x] 0..1 When the work described in this resource was completed (or will be)
. . . . doneDateTime dateTime
. . . . donePeriod Period
. . . recorded 0..1 instant When this resource itself was created
. . . author 0..* Reference ( Patient | Practitioner | RelatedPerson | Organization ) Who authored the content of the resource
. . . source 0..* Reference ( Patient | Practitioner | RelatedPerson | Organization ) Who provided the information in this resource
. . . actor 0..* Reference ( Patient | Practitioner | RelatedPerson | Organization ) Who did the work described the resource (or will do)
. . . cause 0..* Reference ( Patient | Practitioner | RelatedPerson | Organization ) Who prompted the work described in the resource
. . . witness 0..* Reference ( Patient | Practitioner | RelatedPerson ) Who attests to the content of the resource (individual or org)
. . . who 0..* Reference ( Patient | Practitioner | RelatedPerson | Organization ) An actor involved in the work described by this resource
. . . where[x] 0..* The location of the work described
. . . . whereCodeableConcept CodeableConcept
. . . . whereReference Reference ( Location )
. . . why[x] 0..* Why this work was done
. . . . whyCodeableConcept CodeableConcept
. . . . whyReference Reference ( Any )

doco Documentation for this format

UML Diagram ( Legend )

FiveWs ( Logical Base ) «Pattern» Business Identifier identifier : Identifier [0..*] Identifier for this version version : string [0..1] Status Field (this element modifies the meaning of other elements) status : code [0..1] « Status Field. (Strength=Required) CanonicalStatusCodesForFHIRRe... ! » Classifier Field class : CodeableConcept [0..*] A field that indicates the potential impact of the content of the resource grade : CodeableConcept [0..1] what this resource is about what[x] : Type DataType [0..1] « CodeableConcept | Reference ( Any ) » Who this resource is about subject : Reference [0..*] « Patient | Practitioner | RelatedPerson | Organization » a resource that gives context for the work described in this resource (usually Encounter or EpisodeOfCare) context : Reference [0..1] « Encounter | EpisodeOfCare » when the work described in this resource was started (or will be) init : dateTime [0..1] when this resource is planned to occur planned : Timing [0..*] when the work described in this resource was completed (or will be) done[x] : Type DataType [0..1] « dateTime | Period » when this resource itself was created recorded : instant [0..1] who authored the content of the resource author : Reference [0..*] « Patient | Practitioner | RelatedPerson | Organization » Who provided the information in this resource source : Reference [0..*] « Patient | Practitioner | RelatedPerson | Organization » who did the work described the resource (or will do) actor : Reference [0..*] « Patient | Practitioner | RelatedPerson | Organization » who prompted the work described in the resource cause : Reference [0..*] « Patient | Practitioner | RelatedPerson | Organization » who attests to the content of the resource (individual or org) witness : Reference [0..*] « Patient | Practitioner | RelatedPerson » An actor involved in the work described by this resource who : Reference [0..*] « Patient | Practitioner | RelatedPerson | Organization » The location of the work described where[x] : Type DataType [0..*] « CodeableConcept | Reference ( Location ) » Why this work was done why[x] : Type DataType [0..*] « CodeableConcept | Reference ( Any ) »

 

alternate definitions: Master Definition XML + JSON .

Path Definition Type Reference
FiveWs.status Status Field. Required CanonicalStatusCodesForFHIRResources

Todo

AdverseEvent.encounter AdverseEvent.date AdverseEvent.subject : Reference [1..1]"> 1 N CareTeam.encounter : Reference [0..1]"> 1 N ClinicalImpression.code : CodeableConcept [0..1]"> 1 N ClinicalImpression.assessor Consent.patient DeviceDefinition.url : uri [0..1] The type 'uri' is not legal according to the pattern (uri vs CodeableConcept|Reference(Location)) "> 1 NT DeviceUseStatement.recordedOn Evidence.publisher MedicationAdministration.reasonReference : Reference [0..*]"> 1 N MedicationStatement.dateAsserted Procedure.performed[x]
identifier version status class grade what[x] subject context init planned done[x] recorded author source actor cause witness who where[x] why[x]
Account 1 1 1 N 1 NT N 1 1 N
ActivityDefinition 2 NT N 1 1 1 NT N 1 NT N 1 NT N 1 NT N
AdverseEvent AdverseEvent.status : code [1..1]"> 1 2 NT N AdverseEvent.event AdverseEvent.code : CodeableConcept [0..1]"> 1 N AdverseEvent.subject : Reference [0..1]"> [1..1]"> 1 N AdverseEvent.encounter : dateTime Reference [0..1]"> 1 N AdverseEvent.occurrence[x] : dateTime, Period, Timing [0..1] The type 'Timing' is not legal according to the pattern (dateTime, Period, Timing vs dateTime|Period) "> 1 N 1 NT N 1 N AdverseEvent.participant.actor : Reference [1..1]"> 1
AllergyIntolerance 1 2 NT N 2 NT N 1 NT N 1 N 1 N 1 N 1 NT N 1 NT N 1 N 1 N
Appointment 1 1 2 NT N 1 NC 1 NT N 1 NT N 1 N
AppointmentResponse 1 1 NT N 1 NT N 1 N
AuditEvent code [0..1] The type 'code' is not legal according to the pattern (code vs CodeableConcept|Reference(Any)) ; FiveWs.what[x] : CodeableConcept|Reference(Any) [0..1] => AuditEvent.outcomeDesc : string [0..1] The type 'string' is not legal according to the pattern (string vs CodeableConcept|Reference(Any)) ; CodeableConcept [0..1]; FiveWs.what[x] : CodeableConcept|Reference(Any) [0..1] => AuditEvent.entity : BackboneElement [0..*] Maximum Cardinality Violation (pattern = 1, resource = *) The type 'BackboneElement' is not legal according to the pattern (BackboneElement vs CodeableConcept|Reference(Any)) ; FiveWs.what[x] : CodeableConcept|Reference(Any) [0..1] => AuditEvent.entity.what : Reference [0..1]; FiveWs.what[x] : CodeableConcept|Reference(Any) [0..1] => AuditEvent.entity.type : Coding [0..1] The type 'Coding' is not legal according to the pattern (Coding vs CodeableConcept|Reference(Any)) "> 8 NTC 7 NC AuditEvent.entity.description : string [0..1] The type 'string' is not legal according to the pattern (string vs Reference(Encounter|EpisodeOfCare)) ; FiveWs.context : Reference(Encounter|EpisodeOfCare) [0..1] => AuditEvent.entity.query : base64Binary [0..1] The type 'base64Binary' is not legal according to the pattern (base64Binary vs Reference(Encounter|EpisodeOfCare)) ; FiveWs.context : Reference(Encounter|EpisodeOfCare) [0..1] => AuditEvent.entity.detail : BackboneElement [0..*] Maximum Cardinality Violation (pattern = 1, resource = *) The type 'BackboneElement' is not legal according to the pattern (BackboneElement vs Reference(Encounter|EpisodeOfCare)) ; FiveWs.context : Reference(Encounter|EpisodeOfCare) [0..1] => AuditEvent.entity.detail.type : string [1..1] The type 'string' is not legal according to the pattern (string vs Reference(Encounter|EpisodeOfCare)) ; FiveWs.context : Reference(Encounter|EpisodeOfCare) [0..1] => AuditEvent.entity.detail.value[x] : string, base64Binary [1..1] The type 'string' is not legal according to the pattern (string, base64Binary vs Reference(Encounter|EpisodeOfCare)) , The type 'base64Binary' is not legal according to the pattern (string, base64Binary vs Reference(Encounter|EpisodeOfCare)) "> 9 NTC 8 NC 1 N 1 4 NT N 7 NT N 5 NT N 3 NT N
Basic 1 1 N 1 1 NT N 1
BiologicallyDerivedProduct 1
BodyStructure 1 1 NT N 5 NTC NC 1 N
Bundle 1 1 NT N 1 NT N
CapabilityStatement 1 NT N 1 1 1 NT N 1 NT N 1 NT N 1 NT N
CapabilityStatement2 CapabilityStatement2.url : uri [0..1] The type 'uri' is not legal according to the pattern (uri vs Identifier) "> 1 N CapabilityStatement2.version : string [0..1]"> 1 CapabilityStatement2.status : code [1..1]"> 1 CapabilityStatement2.experimental : boolean [0..1] The type 'boolean' is not legal according to the pattern (boolean vs CodeableConcept) "> 1 N CapabilityStatement2.date : dateTime [1..1] The type 'dateTime' is not legal according to the pattern (dateTime vs instant) "> 1 N CapabilityStatement2.publisher : string [0..1] The type 'string' is not legal according to the pattern (string vs Reference(Patient|Practitioner|RelatedPerson)) "> 1 N CapabilityStatement2.purpose : markdown [0..1] The type 'markdown' is not legal according to the pattern (markdown vs CodeableConcept|Reference(Any)) "> 1 N
CarePlan 1 1 1 N 1 NT N 1 1 N 1 NT N 1 NT N 1 CarePlan.activity.detail.reported[x] : boolean, Reference [0..1] The type 'boolean' is not legal according to the pattern (boolean, Reference vs Reference(Patient|Practitioner|RelatedPerson|Organization)) "> 1 N 1 N Reference [0..*]"> CodeableReference [0..*] The type 'CodeableReference' is not legal according to the pattern (CodeableReference vs CodeableConcept|Reference(Any)) "> 1 N
CareTeam 1 1 1 N 1 1 NT N 1 N CareTeam.reasonCode : CodeableConcept [0..*]; FiveWs.why[x] CareTeam.reason : CodeableConcept|Reference(Any) CodeableReference [0..*] => CareTeam.reasonReference : Reference [0..*]"> 2 The type 'CodeableReference' is not legal according to the pattern (CodeableReference vs CodeableConcept|Reference(Any)) "> 1 N
ChargeItem 1 1 1 N 1 1 1 NT N 2 N 2 N
ChargeItemDefinition 2 NT N 1 1 1 NT N 1 NT N 1 NT N
Citation Citation.url : uri [0..1] The type 'uri' is not legal according to the pattern (uri vs Identifier) ; FiveWs.identifier : Identifier [0..*] => Citation.identifier : Identifier [0..*]"> 2 N Citation.status : code [1..1]"> 1
Claim 2 1 3 NT N 1 N 2 NT N 1 NT N 1 N 1 N 1 N 1 N 2 NT N
ClaimResponse 1 1 3 NT N 1 N 1 NT N 1 NT N 2 N 1 NT N 1 N
ClinicalImpression 1 1 1 1 N 1 N 1 NT N ClinicalImpression.performer : Reference [0..1]"> 1 N 1 N
CodeSystem 2 NT N 1 1 1 NT N 1 NT N 1 NT N 1 NT N
Communication 1 1 1 N 1 NT N 1 3 NTC NC 2 N 2 N Communication.reasonCode : CodeableConcept [0..*]; FiveWs.why[x] Communication.reason : CodeableConcept|Reference(Any) CodeableReference [0..*] => Communication.reasonReference : Reference [0..*]"> 2 The type 'CodeableReference' is not legal according to the pattern (CodeableReference vs CodeableConcept|Reference(Any)) "> 1 N
CommunicationRequest 1 1 1 N 1 NT N 1 2 NC 1 NT N 1 NT N 1 N CommunicationRequest.sender CommunicationRequest.informationProvider : Reference [0..1]"> [0..*]"> 2 N CommunicationRequest.reasonCode : CodeableConcept [0..*]; FiveWs.why[x] CommunicationRequest.reason : CodeableConcept|Reference(Any) CodeableReference [0..*] => CommunicationRequest.reasonReference : Reference [0..*]"> 2 The type 'CodeableReference' is not legal according to the pattern (CodeableReference vs CodeableConcept|Reference(Any)) "> 1 N
CompartmentDefinition 1 NT N 1 1 1 NT N 1 NT N 1 NT N 1 NT N
Composition 1 1 3 NT N 1 1 N 1 N 2 1 N
ConceptMap 2 NT N 1 1 1 NT N 1 NT N 1 NT N 1 NT N
Condition 1 2 NT N 1 N 1 N 1 N 1 1 N 1 NT N 1 NT N 1 NT N 1 N 1 N 2 N
ConditionDefinition ConditionDefinition.url : uri [0..1] The type 'uri' is not legal according to the pattern (uri vs Identifier) ; FiveWs.identifier : Identifier [0..*] => ConditionDefinition.identifier : Identifier [0..*]"> 2 N ConditionDefinition.version : string [0..1]"> 1 ConditionDefinition.status : code [1..1]"> 1 ConditionDefinition.experimental : boolean [0..1] The type 'boolean' is not legal according to the pattern (boolean vs CodeableConcept) "> 1 N ConditionDefinition.date : dateTime [0..1] The type 'dateTime' is not legal according to the pattern (dateTime vs instant) "> 1 N ConditionDefinition.publisher : string [0..1] The type 'string' is not legal according to the pattern (string vs Reference(Patient|Practitioner|RelatedPerson)) "> 1 N
Consent 1 1 1 N Consent.subject : Reference [0..1]"> 1 N 1 NT N 1 N 1 N
Contract 1 21 NTC NC 2 N 1 NT N 2 NT N 1 NT N 1 N
Coverage 1 1 1 N string Identifier [0..1] The type 'string' 'Identifier' is not legal according to the pattern (string (Identifier vs Reference(Patient|Practitioner|RelatedPerson|Organization)) ; FiveWs.subject : Reference(Patient|Practitioner|RelatedPerson|Organization) [0..*] => Coverage.beneficiary : Reference [1..1]"> 4 NT N 1 N 1 N
CoverageEligibilityRequest 1 1 2 NT N 1 N 1 NT N 1 NT N 1 N 2 N 1 N 1 N
CoverageEligibilityResponse 1 1 1 NT N 1 N 1 NT N 1 NT N 2 N 1 N
DetectedIssue 1 1 1 N 1 NT N 1 N 1 NT N 1 3 NT N
Device 2 NT N 2 NTC NC 12 NT N 1 N 2 NT N 2 NT N
DeviceDefinition 1 4 NT N 2 NT N
DeviceMetric 1 2 NT N
DeviceRequest 1 1 1 NT N 1 NT N DeviceRequest.code[x] DeviceRequest.code : Reference, CodeableConcept [1..1]; CodeableReference [1..1] The type 'CodeableReference' is not legal according to the pattern (CodeableReference vs CodeableConcept|Reference(Any)) ; FiveWs.what[x] : CodeableConcept|Reference(Any) [0..1] => DeviceRequest.parameter : BackboneElement [0..*] Maximum Cardinality Violation (pattern = 1, resource = *) The type 'BackboneElement' is not legal according to the pattern (BackboneElement vs CodeableConcept|Reference(Any)) ; FiveWs.what[x] : CodeableConcept|Reference(Any) [0..1] => DeviceRequest.parameter.code : CodeableConcept [0..1]; FiveWs.what[x] : CodeableConcept|Reference(Any) [0..1] => DeviceRequest.parameter.value[x] : CodeableConcept, Quantity, Range, boolean [0..1] The type 'Quantity' is not legal according to the pattern (CodeableConcept, Quantity, Range, boolean vs CodeableConcept|Reference(Any)) , The type 'Range' is not legal according to the pattern (CodeableConcept, Quantity, Range, boolean vs CodeableConcept|Reference(Any)) , The type 'boolean' is not legal according to the pattern (CodeableConcept, Quantity, Range, boolean vs CodeableConcept|Reference(Any)) "> 4 NTC NC 1 1 N 1 NT N 1 NT N 1 N 2 NT N DeviceRequest.reasonCode : CodeableConcept [0..*]; FiveWs.why[x] DeviceRequest.reason : CodeableConcept|Reference(Any) CodeableReference [0..*] => DeviceRequest.reasonReference : Reference [0..*]"> 2 The type 'CodeableReference' is not legal according to the pattern (CodeableReference vs CodeableConcept|Reference(Any)) "> 1 N
DeviceUseStatement 1 1 1 1 NT N DeviceUseStatement.dateAsserted : dateTime [0..1] The type 'dateTime' is not legal according to the pattern (dateTime vs instant) "> 1 NT N DeviceUseStatement.source DeviceUseStatement.informationSource : Reference [0..1]; FiveWs.actor : Reference(Patient|Practitioner|RelatedPerson|Organization) [0..*] => DeviceUseStatement.device : Reference [1..1]"> CodeableReference [1..1] The type 'CodeableReference' is not legal according to the pattern (CodeableReference vs Reference(Patient|Practitioner|RelatedPerson|Organization)) "> 2 N DeviceUseStatement.reasonCode : CodeableConcept [0..*]; FiveWs.why[x] DeviceUseStatement.reason : CodeableConcept|Reference(Any) CodeableReference [0..*] => DeviceUseStatement.reasonReference : Reference [0..*]"> 2 The type 'CodeableReference' is not legal according to the pattern (CodeableReference vs CodeableConcept|Reference(Any)) "> 1 N
DiagnosticReport 1 1 1 N 1 N 1 1 N 1 N 1 N 2 N
DocumentManifest 2 N 1 1 N 1 1 N 1 1 N
DocumentReference 2 N 2 N FiveWs.class FiveWs.what[x] : CodeableConcept [0..*] CodeableConcept|Reference(Any) [0..1] => DocumentReference.category : CodeableConcept [0..*]"> [0..*] Maximum Cardinality Violation (pattern = 1, resource = *)"> 2 N NC 1 1 NC 1 N 1 N
EffectEvidenceSynthesis EffectEvidenceSynthesis.url : uri [0..1] The type 'uri' is not legal according to the pattern (uri vs Identifier) ; FiveWs.identifier : Identifier [0..*] => EffectEvidenceSynthesis.identifier : Identifier [0..*]"> 2 NT EffectEvidenceSynthesis.version : string [0..1]"> 1 EffectEvidenceSynthesis.status : code [1..1]"> 1 EffectEvidenceSynthesis.date : dateTime [0..1] The type 'dateTime' is not legal according to the pattern (dateTime vs instant) "> 1 NT EffectEvidenceSynthesis.publisher : string [0..1] The type 'string' is not legal according to the pattern (string vs Reference(Patient|Practitioner|RelatedPerson)) "> 1 NT Encounter 1 1 2 NT N 1 N 1 1 NC 1 N 1 N 1 N Encounter.reasonCode : CodeableConcept [0..*]; FiveWs.why[x] Encounter.reason : CodeableConcept|Reference(Any) CodeableReference [0..*] => Encounter.reasonReference : Reference [0..*]; The type 'CodeableReference' is not legal according to the pattern (CodeableReference vs CodeableConcept|Reference(Any)) ; FiveWs.why[x] : CodeableConcept|Reference(Any) [0..*] => Encounter.diagnosis.condition : Reference [1..1]"> 3 2 N
Endpoint 1 1 1 NT N 1 NT N 1 N
EnrollmentRequest 2 N
EnrollmentResponse 1 N
EpisodeOfCare 1 1 1 N 1 N 1 N 1 NT N
EventDefinition 2 NT N 1 1 1 NT N 1 NT N 1 NT N 1 NT N
Evidence 2 NT N 1 1 1 NT N
EvidenceReport EvidenceReport.url : string uri [0..1] The type 'string' 'uri' is not legal according to the pattern (string (uri vs Reference(Patient|Practitioner|RelatedPerson)) "> Identifier) ; FiveWs.identifier : Identifier [0..*] => EvidenceReport.identifier : Identifier [0..*]"> 2 N EvidenceReport.status : code [1..1]"> 1 NT
EvidenceVariable 2 NT N 1 1 1 NT N 1 NT N
ExampleScenario 2 NT N 1 1 1 NT N 1 NT N 1 NT N 1 NT N
ExplanationOfBenefit 1 1 3 NT N 1 N 3 NT N 1 NT N 2 N 2 N 1 N 1 N 3 NT N 1 N
FamilyMemberHistory 1 1 1 N 1 NT N FamilyMemberHistory.reasonCode : CodeableConcept [0..*]; FiveWs.why[x] FamilyMemberHistory.reason : CodeableConcept|Reference(Any) CodeableReference [0..*] => FamilyMemberHistory.reasonReference : Reference [0..*]"> 2 The type 'CodeableReference' is not legal according to the pattern (CodeableReference vs CodeableConcept|Reference(Any)) "> 1 N
Flag 1 1 1 N 1 N 1 2 NT N 1
Goal 1 1 N 1 N 1 N 1 N 1 1 NT N 1 NT N 1 NT N 1 N 1 N
GraphDefinition 1 NT N 1 1 1 NT N 1 NT N 1 NT N 1 NT N
Group 1 1 NT N 2 NT N 1 N
GuidanceResponse 1 1 1 1 N 1 N 1 N GuidanceResponse.reasonCode : CodeableConcept [0..*]; FiveWs.why[x] GuidanceResponse.reason : CodeableConcept|Reference(Any) CodeableReference [0..*] => GuidanceResponse.reasonReference : Reference [0..*]"> 2 The type 'CodeableReference' is not legal according to the pattern (CodeableReference vs CodeableConcept|Reference(Any)) "> 1 N
HealthcareService 1 1 NT N 1 N 1 N
ImagingStudy 1 1 1 NT N 1 1 N 1 N 1 2 N 1 N 1 N ImagingStudy.reasonCode : CodeableConcept [0..*]; FiveWs.why[x] ImagingStudy.reason : CodeableConcept|Reference(Any) CodeableReference [0..*] => ImagingStudy.reasonReference : Reference [0..*]"> 2 The type 'CodeableReference' is not legal according to the pattern (CodeableReference vs CodeableConcept|Reference(Any)) "> 1 N
Immunization 1 1 1 N 1 N 1 N 1 NT N 1 T Immunization.reportOrigin Immunization.informationSource[x] : CodeableConcept CodeableConcept, Reference [0..1] The type 'CodeableConcept' is not legal according to the pattern (CodeableConcept (CodeableConcept, Reference vs Reference(Patient|Practitioner|RelatedPerson|Organization)) "> 2 NT N 1 1 N
ImmunizationEvaluation 1 1 1 N 1 N
ImmunizationRecommendation 1 1 N
ImplementationGuide 1 NT N 1 1 1 NT N 1 NT N 1 NT N
InsurancePlan 2 1 1 N
Invoice 1 1 1 N 1 1 N 1
Library 2 NT N 1 1 1 NT N 1 N 1 NT N 1 NT N 1 NT N
Linkage 1 NT N 1
List 1 1 1 NT N 1 N 1 1 N 1 NT N 1 N
Location 1 2 NT N 3 NT N
Measure 2 NT N 1 1 1 NT N 1 NT N 1 NT N 1 NT N
MeasureReport 1 1 1 NT N 1 NT N 1 1 NT N 1 N
Media Media.identifier : Identifier [0..*]"> 1 Media.status : code [1..1]"> 1 Media.type : CodeableConcept [0..1]"> 1 N Media.modality : CodeableConcept [0..1]"> 1 N Media.subject : Reference [0..1]"> 1 Media.encounter : Reference [0..1]"> 1 N Media.created[x] : dateTime, Period [0..1]"> 1 N Media.issued : instant [0..1]"> 1 N Media.operator : Reference [0..1]"> 1 N Media.reasonCode : CodeableConcept [0..*]"> 1 N Medication 1 1 N 1 N
MedicationAdministration 1 1 MedicationAdministration.medication[x] MedicationAdministration.medication : CodeableConcept, Reference [1..1]"> CodeableReference [1..1] The type 'CodeableReference' is not legal according to the pattern (CodeableReference vs CodeableConcept|Reference(Any)) "> 1 N 1 MedicationAdministration.context MedicationAdministration.encounter : Reference [0..1]; FiveWs.context : Reference(Encounter|EpisodeOfCare) [0..1] => MedicationAdministration.supportingInformation : Reference [0..*] Maximum Cardinality Violation (pattern = 1, resource = *)"> 2 NC MedicationAdministration.effective[x] MedicationAdministration.occurence[x] : dateTime, Period [1..1]"> 1 N MedicationAdministration.recorded : dateTime [0..1] The type 'dateTime' is not legal according to the pattern (dateTime vs instant) "> 1 1 NT N
MedicationDispense 1 1 MedicationDispense.medication[x] MedicationDispense.medication : CodeableConcept, Reference [1..1]"> CodeableReference [1..1] The type 'CodeableReference' is not legal according to the pattern (CodeableReference vs CodeableConcept|Reference(Any)) "> 1 N 1 1 NC
MedicationKnowledge 1 N 1 N
MedicationRequest 1 1 2 NT N 1 NT N MedicationRequest.medication[x] MedicationRequest.medication : CodeableConcept, Reference [1..1]"> CodeableReference [1..1] The type 'CodeableReference' is not legal according to the pattern (CodeableReference vs CodeableConcept|Reference(Any)) "> 1 N 1 2 NC 1 NT N 1 N 1 N MedicationRequest.dispenseRequest.performer MedicationRequest.dispenseRequest.dispenser : Reference [0..1]"> 2 N MedicationRequest.reasonCode : CodeableConcept [0..*]; FiveWs.why[x] MedicationRequest.reason : CodeableConcept|Reference(Any) CodeableReference [0..*] => MedicationRequest.reasonReference : Reference [0..*]"> 2 The type 'CodeableReference' is not legal according to the pattern (CodeableReference vs CodeableConcept|Reference(Any)) "> 1 N
MedicationStatement MedicationUsage MedicationStatement.identifier MedicationUsage.identifier : Identifier [0..*]"> 1 MedicationStatement.status MedicationUsage.status : code [1..1]"> 1 MedicationStatement.category MedicationUsage.category : CodeableConcept [0..1]"> [0..*]"> 1 N MedicationStatement.medication[x] MedicationUsage.medication : CodeableConcept, Reference [1..1]"> CodeableReference [1..1] The type 'CodeableReference' is not legal according to the pattern (CodeableReference vs CodeableConcept|Reference(Any)) "> 1 N MedicationStatement.subject MedicationUsage.subject : Reference [1..1]"> 1 MedicationStatement.effective[x] MedicationUsage.effective[x] : dateTime, Period [0..1]"> 1 N MedicationUsage.dateAsserted : dateTime [0..1] The type 'dateTime' is not legal according to the pattern (dateTime vs instant) "> 1 NT N MedicationStatement.informationSource MedicationUsage.informationSource : Reference [0..1]"> 1 N MedicationStatement.reasonCode : CodeableConcept [0..*]; FiveWs.why[x] MedicationUsage.reason : CodeableConcept|Reference(Any) CodeableReference [0..*] => MedicationStatement.reasonReference : Reference [0..*]"> 2 The type 'CodeableReference' is not legal according to the pattern (CodeableReference vs CodeableConcept|Reference(Any)) "> 1 N
MessageDefinition 2 NT N 1 1 1 NT N 1 NT N 1 NT N 1 NT N
MessageHeader 1 NT N 3 NT N 2 N 1 NT N 1 N 1 N
MolecularSequence 1
NamingSystem NamingSystem.url : uri [0..1] The type 'uri' is not legal according to the pattern (uri vs Identifier) ; FiveWs.identifier : Identifier [0..*] => NamingSystem.uniqueId.value : string [1..1] The type 'string' is not legal according to the pattern (string vs Identifier) "> 1 NT 2 N NamingSystem.version : string [0..1]"> 1 1 1 NT N 1 NT N 2 NT N
NutritionIntake NutritionIntake.identifier : Identifier [0..*]"> 1 NutritionIntake.status : code [1..1]"> 1 NutritionIntake.code : CodeableConcept [0..1]"> 1 N NutritionIntake.consumedItem.nutritionProduct : CodeableReference [1..1] The type 'CodeableReference' is not legal according to the pattern (CodeableReference vs CodeableConcept|Reference(Any)) "> 1 N NutritionIntake.subject : Reference [1..1]"> 1 NutritionIntake.occurrence[x] : dateTime, Period [0..1]"> 1 N NutritionIntake.recorded : dateTime [0..1] The type 'dateTime' is not legal according to the pattern (dateTime vs instant) "> 1 NutritionIntake.reported[x] : boolean, Reference [0..1] The type 'boolean' is not legal according to the pattern (boolean, Reference vs Reference(Patient|Practitioner|RelatedPerson|Organization)) "> 1 N NutritionIntake.reason : CodeableReference [0..*] The type 'CodeableReference' is not legal according to the pattern (CodeableReference vs CodeableConcept|Reference(Any)) "> 1 N
NutritionOrder 1 1 1 NT N 5 NC 1 N 1 N 1 NT N 1 N
NutritionProduct NutritionProduct.code : CodeableConcept [0..1] The type 'CodeableConcept' is not legal according to the pattern (CodeableConcept vs Identifier) "> 1 N NutritionProduct.status : code [1..1]"> 1 NutritionProduct.category : CodeableConcept [0..*]"> 1 N
Observation 1 1 1 N 2 N 2 N 1 N 1 NT N 1 N 1 N
ObservationDefinition 1 N 1 N
OperationDefinition 1 NT N 1 1 2 NT N 1 NT N 1 NT N 1 NT N
Organization 1 1 NT N 1 N
OrganizationAffiliation 1 1 NT N 1 N 1 N
Patient 1 1 NT N
PaymentNotice 1 1 2 N 1 NT N 1 N
PaymentReconciliation 1 1 1 N 1 NT N 1 N 1 N
Person 1 1 NT N
PlanDefinition 2 NT N 1 1 1 NT N 1 NT N 1 NT N 1 NT N
Practitioner 1 1 NT N
PractitionerRole 1 1 NT N 1 N 1 N
Procedure 1 1 [0..1]"> [0..*]"> 1 N 1 N 1 1 N Procedure.occurrence[x] : dateTime, Period, string, Age, Range Range, Timing [0..1] The type 'string' is not legal according to the pattern (dateTime, Period, string, Age, Range Range, Timing vs dateTime|Period) , The type 'Age' is not legal according to the pattern (dateTime, Period, string, Age, Range Range, Timing vs dateTime|Period) , The type 'Range' is not legal according to the pattern (dateTime, Period, string, Age, Range Range, Timing vs dateTime|Period) , The type 'Timing' is not legal according to the pattern (dateTime, Period, string, Age, Range, Timing vs dateTime|Period) "> 1 NT N Procedure.recorded : dateTime [0..1] The type 'dateTime' is not legal according to the pattern (dateTime vs instant) "> 1 1 N Procedure.asserter Procedure.reported[x] : boolean, Reference [0..1]"> [0..1] The type 'boolean' is not legal according to the pattern (boolean, Reference vs Reference(Patient|Practitioner|RelatedPerson|Organization)) "> 1 N 1 1 N Procedure.reasonCode : CodeableConcept [0..*]; FiveWs.why[x] Procedure.reason : CodeableConcept|Reference(Any) CodeableReference [0..*] => Procedure.reasonReference : Reference [0..*]"> 2 The type 'CodeableReference' is not legal according to the pattern (CodeableReference vs CodeableConcept|Reference(Any)) "> 1 N
Provenance 1 NC 1 N 1 1 N 1 NT N 1 N 2 N
Questionnaire 2 NT N 1 1 1 NT N 1 NT N 1 NT N 1 NT N
QuestionnaireResponse 1 1 1 1 N 1 NT N 1 1
RelatedPerson 1 1 NT N 1 N 1 N
RequestGroup 1 1 1 NT N 1 NT N 1 N 1 1 N 1 NT N 1 1 N RequestGroup.reasonCode : CodeableConcept [0..*]; FiveWs.why[x] : CodeableConcept|Reference(Any) [0..*] => RequestGroup.reasonReference : Reference [0..*]"> 2 N ResearchDefinition ResearchDefinition.url : uri [0..1] The type 'uri' is not legal according to the pattern (uri vs Identifier) ; FiveWs.identifier : Identifier [0..*] => ResearchDefinition.identifier : Identifier [0..*]"> 2 NT ResearchDefinition.version : string [0..1]"> 1 ResearchDefinition.status : code [1..1]"> 1 ResearchDefinition.experimental : boolean [0..1] The type 'boolean' is not legal according to the pattern (boolean vs CodeableConcept) "> 1 NT ResearchDefinition.date : dateTime [0..1] The type 'dateTime' is not legal according to the pattern (dateTime vs instant) "> 1 NT ResearchDefinition.publisher : string [0..1] The type 'string' is not legal according to the pattern (string vs Reference(Patient|Practitioner|RelatedPerson)) "> 1 NT ResearchDefinition.purpose : markdown [0..1] The type 'markdown' is not legal according to the pattern (markdown vs CodeableConcept|Reference(Any)) "> 1 NT ResearchElementDefinition ResearchElementDefinition.url : uri [0..1] The type 'uri' is not legal according to the pattern (uri vs Identifier) ; FiveWs.identifier RequestGroup.reason : Identifier CodeableReference [0..*] => ResearchElementDefinition.identifier : Identifier [0..*]"> 2 NT ResearchElementDefinition.version : string [0..1]"> 1 ResearchElementDefinition.status : code [1..1]"> 1 ResearchElementDefinition.experimental : boolean [0..1] The type 'boolean' is not legal according to the pattern (boolean vs CodeableConcept) "> 1 NT ResearchElementDefinition.date : dateTime [0..1] The type 'dateTime' is not legal according to the pattern (dateTime vs instant) "> 1 NT ResearchElementDefinition.publisher : string [0..1] The type 'string' is not legal according to the pattern (string vs Reference(Patient|Practitioner|RelatedPerson)) "> 1 NT ResearchElementDefinition.purpose : markdown [0..1] The type 'markdown' 'CodeableReference' is not legal according to the pattern (markdown (CodeableReference vs CodeableConcept|Reference(Any)) "> 1 NT N
ResearchStudy 1 1 2 NC 1 N 1 N 2 N 1 N 1 N
ResearchSubject 1 [1..1]"> 1 ResearchSubject.period [1..1]; FiveWs.status : Period code [0..1] => ResearchSubject.progress.state : CodeableConcept [0..1] The type 'Period' 'CodeableConcept' is not legal according to the pattern (Period (CodeableConcept vs Timing) code) ; FiveWs.status : code [0..1] => ResearchSubject.progress.milestone : CodeableConcept [0..1] The type 'CodeableConcept' is not legal according to the pattern (CodeableConcept vs code) "> 1 NT 3 N
RiskAssessment 1 1 1 N 1 N 1 1 N 1 N 1 N RiskAssessment.reasonCode : CodeableConcept [0..*]; FiveWs.why[x] : CodeableConcept|Reference(Any) [0..*] => RiskAssessment.reasonReference : Reference [0..*]"> 2 N RiskEvidenceSynthesis RiskEvidenceSynthesis.url : uri [0..1] The type 'uri' is not legal according to the pattern (uri vs Identifier) ; FiveWs.identifier RiskAssessment.reason : Identifier CodeableReference [0..*] => RiskEvidenceSynthesis.identifier : Identifier [0..*]"> 2 NT RiskEvidenceSynthesis.version : string [0..1]"> 1 RiskEvidenceSynthesis.status : code [1..1]"> 1 RiskEvidenceSynthesis.date : dateTime [0..1] The type 'dateTime' is not legal according to the pattern (dateTime vs instant) "> 1 NT RiskEvidenceSynthesis.publisher : string [0..1] The type 'string' 'CodeableReference' is not legal according to the pattern (string (CodeableReference vs Reference(Patient|Practitioner|RelatedPerson)) CodeableConcept|Reference(Any)) "> 1 NT N
Schedule 1 1 NT N 3 N 1 N 1 NT N
SearchParameter 1 NT N 1 1 1 NT N 1 NT N 1 NT N 1 NT N
ServiceRequest 1 1 2 NT N 1 NT N 1 N 1 1 N 1 NT N 1 NT N 1 N ServiceRequest.locationCode ServiceRequest.location : CodeableConcept CodeableReference [0..*] The type 'CodeableConcept' 'CodeableReference' is not legal according to the pattern (CodeableConcept (CodeableReference vs Reference(Patient|Practitioner|RelatedPerson|Organization)) ; FiveWs.actor : Reference(Patient|Practitioner|RelatedPerson|Organization) [0..*] => ServiceRequest.locationReference : Reference [0..*]"> 4 NT "> 3 N ServiceRequest.reasonCode : CodeableConcept [0..*]; FiveWs.why[x] ServiceRequest.reason : CodeableConcept|Reference(Any) CodeableReference [0..*] => ServiceRequest.reasonReference : Reference [0..*]"> 2 The type 'CodeableReference' is not legal according to the pattern (CodeableReference vs CodeableConcept|Reference(Any)) "> 1 N
Slot 1 4 N 2 NT N
Specimen 2 N 1 1 N 1 2 NT N 1 N 1 N 1 N
StructureDefinition 2 NT N 1 1 1 NT N 1 NT N 1 NT N 1 NT N
StructureMap 2 NT N 1 1 1 NT N 1 NT N 1 NT N 1 NT N
Subscription Subscription.identifier : Identifier [0..*]"> 1 1 Subscription.topic : Reference [1..1]"> 1 N 1 NT N 1 NT N [1..1] [0..1] The type 'string' is not legal according to the pattern (string vs CodeableConcept|Reference(Any)) "> 1 NT N
SubscriptionStatus SubscriptionStatus.status : code [0..1]"> 1 SubscriptionStatus.type : code [1..1] The type 'code' is not legal according to the pattern (code vs CodeableConcept|Reference(Any)) "> 1 N SubscriptionStatus.subscription : Reference [1..1]"> 1 N
SubscriptionTopic SubscriptionTopic.url : uri [1..1] The type 'uri' is not legal according to the pattern (uri vs Identifier) ; FiveWs.identifier : Identifier [0..*] => SubscriptionTopic.identifier : Identifier [0..*]"> 2 N SubscriptionTopic.version : string [0..1]"> 1 SubscriptionTopic.status : code [1..1]"> 1 SubscriptionTopic.experimental : boolean [0..1] The type 'boolean' is not legal according to the pattern (boolean vs CodeableConcept) "> 1 N SubscriptionTopic.date : dateTime [0..1] The type 'dateTime' is not legal according to the pattern (dateTime vs instant) "> 1 N SubscriptionTopic.publisher : Reference [0..1]"> 1 N SubscriptionTopic.purpose : markdown [0..1] The type 'markdown' is not legal according to the pattern (markdown vs CodeableConcept|Reference(Any)) "> 1 N
Substance 1 1 1 N 1 N
SupplyDelivery 1 NT N
SupplyRequest 1 1 1 N 1 NT N 3 NTC NC 1 NT N 1 NT N 1 N 1 N SupplyRequest.reasonCode : CodeableConcept [0..*]; FiveWs.why[x] SupplyRequest.reason : CodeableConcept|Reference(Any) CodeableReference [0..*] => SupplyRequest.reasonReference : Reference [0..*]"> 2 The type 'CodeableReference' is not legal according to the pattern (CodeableReference vs CodeableConcept|Reference(Any)) "> 1 N
Task 1 1 1 NT N 1 NT N 2 N 1 N 1 N 1 N 1 NT N 1 N 2 NT N 1 N 2 N
TerminologyCapabilities "> 1 NT ; FiveWs.identifier : Identifier [0..*] => TerminologyCapabilities.identifier : Identifier [0..*]"> 2 N 1 1 1 NT N 1 NT N 1 NT N 1 NT N
TestReport 1 1 1 NT N
TestScript 2 NT N 1 1 1 NT N 1 NT N 1 NT N 1 NT N
ValueSet 2 NT N 1 1 1 NT N 1 NT N 1 NT N 1 NT N 1 NT N
VerificationResult 1
VisionPrescription 1 1 1 N 1 N 1 NT N 1 N