QI-Core Implementation Guide
7.0.0 - STU7 United States of America flag

QI-Core Implementation Guide, published by HL7 International / Clinical Quality Information. This guide is not an authorized publication; it is the continuous build for version 7.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/fhir-qi-core/ and changes regularly. See the Directory of published versions

Resource Profile: QICore Patient

Official URL: http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-patient Version: 7.0.0
Active as of 2018-08-22 Computable Name: QICorePatient

Profile of Patient for decision support/quality metrics. Defines the core set of elements and extensions for quality rule and measure authors.

"Must Have", "QI Elements" and "primary code path" are defined in the QI-Core Must Support section.
Must Have:
  • name: A name associated with the patient
  • identifier: An identifier for this patient
  • gender: male | female | other | unknown
QI Elements:
  • deceased[x]: (QI) Indicates if the individual is deceased or not
  • extension(race): (QI) US Core Race Extension
  • extension(tribalAffiliation): (QI) Tribal Affiliation Extension
  • birthDate: (QI) The date of birth for the individual
  • extension(ethnicity): (QI) US Core ethnicity Extension
  • address: (QI) An address for the individual
  • communication: (QI) A language which may be used to communicate with the patient about his or her health
  • extension(genderIdentity): (QI) The individual's gender identity
  • telecom: (QI) A contact detail for the individual
  • extension(sex): (QI) Sex Extension

NOTE TO BALLOT REVIEWERS:
  • US Core 7.0, and thus QI-Core 7.0, has a new approach to USCDI requirements.
    • As noted in the US Core 7.0 Must Support section, US Core 7.0 no longer highlights mandatory (cardinality 1..* or 1..1) and Must Support elements with a (USCDI) indicator as such items must be supported for interoperability.
    • Those USCDI elements that are not mandatory or Must Support now include an indicator (ADDITIONAL USCDI) in US Core. QI-Core 7.0 does not reference USCDI elements; rather, users should access US Core 7.0 to understand its implementation of USCDI version 4.
  • We invite comments about the approach and suggestions for other options that would also avoid unnecessary noise or reading load to the QI-Core profile representation.
  • Further, QI-Core 7.0 does not discuss USCDI+Quality because at the time of ballot preparation, no published version of USCDI+Quality is available. We seek reviewer advice regarding how QI-Core might address future USCDI+Quality.

Usage

See the patterns page for implementation and usage patterns.

Examples

Basic Patient Example
65+ Female Patient Example
Infant Patient Example

Usage:

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient 0..* USCorePatientProfile Information about an individual or animal receiving health care services
dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
dom-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
dom-5: If a resource is contained in another resource, it SHALL NOT have a security label
dom-6: A resource should have narrative for robust management
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
ele-1: All FHIR elements must have a @value or children
... Slices for extension Content/Rules for all slices
.... extension:race C 0..1 (Complex) (QI) US Core Race Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-race
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
us-core-23: If "ASKU" or "UNK" are present, then no other OMB race categories can be present.
.... extension:ethnicity 0..1 (Complex) (QI) US Core ethnicity Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-ethnicity
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... extension:tribalAffiliation 0..* (Complex) (QI) Tribal Affiliation Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-tribal-affiliation
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... extension:birthsex 0..1 code Birth Sex Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-birthsex
Binding: Birth Sex . (required): Code for sex assigned at birth


ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... extension:sex 0..1 code (QI) Sex Extension
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-sex
Binding: Sex . (extensible): Concepts used for general documentation of sex representation


ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... extension:genderIdentity 0..* CodeableConcept (QI) The individual's gender identity
URL: http://hl7.org/fhir/us/core/StructureDefinition/us-core-genderIdentity
Binding: Gender Identity . (extensible)
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... use ?!Σ 0..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .


ele-1: All FHIR elements must have a @value or children
.... system SΣ 1..1 uri The namespace for the identifier value
ele-1: All FHIR elements must have a @value or children
Example General: http://www.acme.com/identifiers/patient
.... value SΣ 1..1 string The value that is unique within the system.
ele-1: All FHIR elements must have a @value or children
Example General: 123456
... active ?!Σ 0..1 boolean Whether this patient's record is in active use
ele-1: All FHIR elements must have a @value or children
... name SΣC 1..* HumanName A name associated with the patient
ele-1: All FHIR elements must have a @value or children
us-core-6: At least name.given and/or name.family are present or, if neither is available, the Data Absent Reason Extension is present.
.... use ?!Σ 0..1 code (QI) usual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.


ele-1: All FHIR elements must have a @value or children
.... family SΣC 0..1 string Family name (often called 'Surname')
ele-1: All FHIR elements must have a @value or children
.... given SΣC 0..* string Given names (not always 'first'). Includes middle names
ele-1: All FHIR elements must have a @value or children
This repeating element order: Given Names appear in the correct order for presenting the name
.... suffix Σ 0..* string (QI) Parts that come after the name
ele-1: All FHIR elements must have a @value or children
This repeating element order: Suffixes appear in the correct order for presenting the name
.... period Σ 0..1 Period (QI) Time period when name was/is in use
ele-1: All FHIR elements must have a @value or children
... telecom Σ 0..* ContactPoint (QI) A contact detail for the individual
ele-1: All FHIR elements must have a @value or children
.... Slices for extension Content/Rules for all slices
..... extension:telecom-preferred 0..1 boolean Preferred
URL: http://hl7.org/fhir/StructureDefinition/iso21090-preferred
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... system SΣC 1..1 code phone | fax | email | pager | url | sms | other
Binding: ContactPointSystem (required): Telecommunications form for contact point.


ele-1: All FHIR elements must have a @value or children
.... value SΣ 1..1 string The actual contact point details
ele-1: All FHIR elements must have a @value or children
.... use ?!SΣ 0..1 code home | work | temp | old | mobile - purpose of this contact point
Binding: ContactPointUse (required)
ele-1: All FHIR elements must have a @value or children
... gender SΣ 1..1 code male | female | other | unknown
Binding: AdministrativeGender (required)
ele-1: All FHIR elements must have a @value or children
... birthDate SΣ 0..1 date (QI) The date of birth for the individual
ele-1: All FHIR elements must have a @value or children
... deceased[x] ?!Σ 0..1 (QI) Indicates if the individual is deceased or not
ele-1: All FHIR elements must have a @value or children
.... deceasedBoolean boolean
.... deceasedDateTime dateTime
... address SΣ 0..* Address (QI) An address for the individual
ele-1: All FHIR elements must have a @value or children
.... Slices for extension Content/Rules for all slices
..... extension:address-preferred 0..1 boolean Preferred
URL: http://hl7.org/fhir/StructureDefinition/iso21090-preferred
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... use ?!Σ 0..1 code (QI) home | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address.


ele-1: All FHIR elements must have a @value or children
Example General: home
.... line SΣ 0..* string Street name, number, direction & P.O. Box etc.
ele-1: All FHIR elements must have a @value or children
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
Example General: 49 MEADOW ST
.... city SΣ 0..1 string Name of city, town etc.
ele-1: All FHIR elements must have a @value or children
Example General: Erewhon
Example General: EVERYTOWN
.... state SΣ 0..1 string Sub-unit of country (abbreviations ok)
Binding: USPS Two Letter Alphabetic Codes (extensible): Two Letter USPS alphabetic codes.


ele-1: All FHIR elements must have a @value or children
Example General: OK
.... postalCode SΣ 0..1 string US Zip Codes
ele-1: All FHIR elements must have a @value or children
Example General: 9132
Example General: 74047
.... period Σ 0..1 Period (QI) Time period when address was/is in use
ele-1: All FHIR elements must have a @value or children
Example General: {"start":"2010-03-23","end":"2010-07-01"}
... communication 0..* BackboneElement (QI) A language which may be used to communicate with the patient about his or her health
ele-1: All FHIR elements must have a @value or children
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... language S 1..1 CodeableConcept The language which can be used to communicate with the patient about his or her health
Binding: Language codes with language and optionally a region modifier (extensible)
ele-1: All FHIR elements must have a @value or children
... link ?!Σ 0..* BackboneElement Link to another patient resource that concerns the same actual person
ele-1: All FHIR elements must have a @value or children
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
ele-1: All FHIR elements must have a @value or children
ext-1: Must have either extensions or value[x], not both
.... other Σ 1..1 Reference(QICore Patient) The other patient or related person resource that the link refers to
ele-1: All FHIR elements must have a @value or children
.... type Σ 1..1 code replaced-by | replaces | refer | seealso
Binding: LinkType (required): The type of link between this patient resource and another patient resource.


ele-1: All FHIR elements must have a @value or children

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Patient.identifier.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
Patient.name.userequiredNameUse
http://hl7.org/fhir/ValueSet/name-use|4.0.1
from the FHIR Standard
Patient.telecom.systemrequiredContactPointSystem
http://hl7.org/fhir/ValueSet/contact-point-system
from the FHIR Standard
Patient.telecom.userequiredContactPointUse
http://hl7.org/fhir/ValueSet/contact-point-use
from the FHIR Standard
Patient.genderrequiredAdministrativeGender
http://hl7.org/fhir/ValueSet/administrative-gender
from the FHIR Standard
Patient.address.userequiredAddressUse
http://hl7.org/fhir/ValueSet/address-use|4.0.1
from the FHIR Standard
Patient.address.stateextensibleUspsTwoLetterAlphabeticCodes (a valid code from https://www.usps.com/)
http://hl7.org/fhir/us/core/ValueSet/us-core-usps-state
Patient.communication.languageextensibleLanguageCodesWithLanguageAndOptionallyARegionModifier
http://hl7.org/fhir/us/core/ValueSet/simple-language
Patient.link.typerequiredLinkType
http://hl7.org/fhir/ValueSet/link-type|4.0.1
from the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorPatientIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorPatientIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4errorPatientIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5errorPatientIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practicePatientA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
us-core-6errorPatient.nameAt least name.given and/or name.family are present or, if neither is available, the Data Absent Reason Extension is present.
: (family.exists() or given.exists()) xor extension.where(url='http://hl7.org/fhir/StructureDefinition/data-absent-reason').exists()
us-core-23errorPatient.extension:raceIf "ASKU" or "UNK" are present, then no other OMB race categories can be present.
: extension.where(url = 'ombCategory').value.where(code in 'ASKU'|'UNK').exists() implies extension.where(url = 'ombCategory').count() = 1

 

Other representations of profile: CSV, Excel, Schematron