HL7 FHIR Implementation Guide: Example IG Release 1 - US Realm | STU1
0.1.0 - STU1 International flag

HL7 FHIR Implementation Guide: Example IG Release 1 - US Realm | STU1, published by Jembi Health Systems. This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/openhie/Training-Solution-1 and changes regularly. See the Directory of published versions

Resource Profile: Patient

Official URL: http://openhie.org/fhir/training-solution-1/StructureDefinition/hiv-patient Version: 0.1.0
Active as of 2024-01-27 Computable Name: HIVPatient

A patient resource for an HIV Patient

Usage:

Formal Views of Profile Content

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

This structure is derived from Patient

NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient 0..*PatientInformation about an individual or animal receiving health care services
... Slices for extension 1..*ExtensionExtension
Slice: Unordered, Open by value:url
... KPS 1..1CodeableConceptKey HIV Population
URL: http://openhie.org/fhir/training-solution-1/StructureDefinition/key-population-status
Binding: Key Population Status (required)
... Slices for identifier 1..*IdentifierAn identifier for this patient
Slice: Unordered, Open by value:system
.... identifier:NID 0..1IdentifierAn identifier for this patient
..... system 1..1uriThe namespace for the identifier value
Fixed Value: http://openhie.org/fhir/training-solution-1/identifier/nid
..... value S0..1stringThe value that is unique
.... identifier:MR 1..1IdentifierAn identifier for this patient
..... type
...... coding
....... system 0..1uriIdentity of the terminology system
Required Pattern: http://terminology.hl7.org/CodeSystem/v2-0203
....... code 0..1codeSymbol in syntax defined by the system
Required Pattern: MR
....... display 0..1stringRepresentation defined by the system
Required Pattern: Medical record number
...... text 0..1stringPlain text representation of the concept
Required Pattern: Patient folder number
..... system 1..1uriThe namespace for the identifier value
Fixed Value: http://openhie.org/fhir/training-solution-1/identifier/mr
..... value 1..1stringThe value that is unique
.... family 1..1stringFamily name (often called 'Surname')
.... given 1..*stringGiven names (not always 'first'). Includes middle names
... telecom S0..*ContactPointA contact detail for the individual
... gender 1..1codemale | female | other | unknown
... birthDate 1..1dateThe date of birth for the individual
... address S0..*AddressAn address for the individual
.... line 1..*stringStreet name, number, direction & P.O. Box etc.
.... city 1..1stringName of city, town etc.
.... district 1..1stringDistrict name (aka county)
.... state 1..1stringSub-unit of country (abbreviations ok)
.... country 1..1stringCountry (e.g. can be ISO 3166 2 or 3 letter code)
... maritalStatus 1..1CodeableConceptMarital (civil) status of a patient
... contact S0..*BackboneElementA contact party (e.g. guardian, partner, friend) for the patient
.... relationship 1..1CodeableConceptThe kind of relationship
.... name
..... family 1..1stringFamily name (often called 'Surname')
..... given 1..*stringGiven names (not always 'first'). Includes middle names
.... telecom S0..*ContactPointA contact detail for the person
.... address 0..0
... managingOrganization 1..1Reference(Organization)Organization that is the custodian of the patient record

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient 0..*PatientInformation about an individual or animal receiving health care services
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... Slices for extension 1..*ExtensionExtension
Slice: Unordered, Open by value:url
... KPS 1..1CodeableConceptKey HIV Population
URL: http://openhie.org/fhir/training-solution-1/StructureDefinition/key-population-status
Binding: Key Population Status (required)
... Slices for identifier Σ1..*IdentifierAn identifier for this patient
Slice: Unordered, Open by value:system
.... identifier:NID Σ0..1IdentifierAn identifier for this patient
..... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

..... system Σ1..1uriThe namespace for the identifier value
Fixed Value: http://openhie.org/fhir/training-solution-1/identifier/nid
..... value SΣ0..1stringThe value that is unique
Example General: 123456
.... identifier:MR Σ1..1IdentifierAn identifier for this patient
..... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

..... system Σ1..1uriThe namespace for the identifier value
Fixed Value: http://openhie.org/fhir/training-solution-1/identifier/mr
..... value Σ1..1stringThe value that is unique
Example General: 123456
... active ?!Σ0..1booleanWhether this patient's record is in active use
... telecom SΣ0..*ContactPointA contact detail for the individual
... gender Σ1..1codemale | female | other | unknown
Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.

... birthDate Σ1..1dateThe date of birth for the individual
... deceased[x] ?!Σ0..1Indicates if the individual is deceased or not
.... deceasedBooleanboolean
.... deceasedDateTimedateTime
... address SΣ0..*AddressAn address for the individual
.... use ?!Σ0..1codehome | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address.


Example General: home
.... line Σ1..*stringStreet name, number, direction & P.O. Box etc.
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
.... city Σ1..1stringName of city, town etc.
Example General: Erewhon
.... district Σ1..1stringDistrict name (aka county)
Example General: Madison
.... state Σ1..1stringSub-unit of country (abbreviations ok)
.... country Σ1..1stringCountry (e.g. can be ISO 3166 2 or 3 letter code)
... maritalStatus 1..1CodeableConceptMarital (civil) status of a patient
Binding: Marital Status Codes (extensible): The domestic partnership status of a person.

... contact SC0..*BackboneElementA contact party (e.g. guardian, partner, friend) for the patient
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... relationship 1..1CodeableConceptThe kind of relationship
Binding: PatientContactRelationship (extensible): The nature of the relationship between a patient and a contact person for that patient.


.... telecom S0..*ContactPointA contact detail for the person
... managingOrganization Σ1..1Reference(Organization)Organization that is the custodian of the patient record
... link ?!Σ0..*BackboneElementLink to another patient resource that concerns the same actual person
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... other Σ1..1Reference(Patient | RelatedPerson)The other patient or related person resource that the link refers to
.... type Σ1..1codereplaced-by | replaces | refer | seealso
Binding: LinkType (required): The type of link between this patient resource and another patient resource.


doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Patient.identifier:NID.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
Patient.identifier:MR.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
Patient.genderrequiredAdministrativeGender
http://hl7.org/fhir/ValueSet/administrative-gender|4.0.1
from the FHIR Standard
Patient.address.userequiredAddressUse
http://hl7.org/fhir/ValueSet/address-use|4.0.1
from the FHIR Standard
Patient.maritalStatusextensibleMarital Status Codes
http://hl7.org/fhir/ValueSet/marital-status
from the FHIR Standard
Patient.contact.relationshipextensiblePatientContactRelationship
http://hl7.org/fhir/ValueSet/patient-contactrelationship
from the FHIR Standard
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()
pat-1errorPatient.contactSHALL at least contain a contact's details or a reference to an organization
: name.exists() or telecom.exists() or address.exists() or organization.exists()
NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient 0..*PatientInformation about an individual or animal receiving health care services
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... Slices for extension 1..*ExtensionExtension
Slice: Unordered, Open by value:url
... KPS 1..1CodeableConceptKey HIV Population
URL: http://openhie.org/fhir/training-solution-1/StructureDefinition/key-population-status
Binding: Key Population Status (required)
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... Slices for identifier Σ1..*IdentifierAn identifier for this patient
Slice: Unordered, Open by value:system
.... identifier:NID Σ0..1IdentifierAn identifier for this patient
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

..... type Σ0..1CodeableConceptDescription of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

..... system Σ1..1uriThe namespace for the identifier value
Fixed Value: http://openhie.org/fhir/training-solution-1/identifier/nid
..... value SΣ0..1stringThe value that is unique
Example General: 123456
..... period Σ0..1PeriodTime period when id is/was valid for use
..... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
.... identifier:MR Σ1..1IdentifierAn identifier for this patient
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

..... type Σ0..1CodeableConceptDescription of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

...... id 0..1stringUnique id for inter-element referencing
...... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... coding Σ0..*CodingCode defined by a terminology system
....... id 0..1stringUnique id for inter-element referencing
....... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
....... system Σ0..1uriIdentity of the terminology system
Required Pattern: http://terminology.hl7.org/CodeSystem/v2-0203
....... version Σ0..1stringVersion of the system - if relevant
....... code Σ0..1codeSymbol in syntax defined by the system
Required Pattern: MR
....... display Σ0..1stringRepresentation defined by the system
Required Pattern: Medical record number
....... userSelected Σ0..1booleanIf this coding was chosen directly by the user
...... text Σ0..1stringPlain text representation of the concept
Required Pattern: Patient folder number
..... system Σ1..1uriThe namespace for the identifier value
Fixed Value: http://openhie.org/fhir/training-solution-1/identifier/mr
..... value Σ1..1stringThe value that is unique
Example General: 123456
..... period Σ0..1PeriodTime period when id is/was valid for use
..... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
... active ?!Σ0..1booleanWhether this patient's record is in active use
... name Σ0..*HumanNameA name associated with the patient
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ0..1codeusual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.

.... text Σ0..1stringText representation of the full name
.... family Σ1..1stringFamily name (often called 'Surname')
.... given Σ1..*stringGiven names (not always 'first'). Includes middle names
This repeating element order: Given Names appear in the correct order for presenting the name
.... prefix Σ0..*stringParts that come before the name
This repeating element order: Prefixes appear in the correct order for presenting the name
.... suffix Σ0..*stringParts that come after the name
This repeating element order: Suffixes appear in the correct order for presenting the name
.... period Σ0..1PeriodTime period when name was/is in use
... telecom SΣ0..*ContactPointA contact detail for the individual
... gender Σ1..1codemale | female | other | unknown
Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.

... birthDate Σ1..1dateThe date of birth for the individual
... deceased[x] ?!Σ0..1Indicates if the individual is deceased or not
.... deceasedBooleanboolean
.... deceasedDateTimedateTime
... address SΣ0..*AddressAn address for the individual
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ0..1codehome | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address.


Example General: home
.... type Σ0..1codepostal | physical | both
Binding: AddressType (required): The type of an address (physical / postal).


Example General: both
.... text Σ0..1stringText representation of the address
Example General: 137 Nowhere Street, Erewhon 9132
.... line Σ1..*stringStreet name, number, direction & P.O. Box etc.
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
.... city Σ1..1stringName of city, town etc.
Example General: Erewhon
.... district Σ1..1stringDistrict name (aka county)
Example General: Madison
.... state Σ1..1stringSub-unit of country (abbreviations ok)
.... postalCode Σ0..1stringPostal code for area
Example General: 9132
.... country Σ1..1stringCountry (e.g. can be ISO 3166 2 or 3 letter code)
.... period Σ0..1PeriodTime period when address was/is in use
Example General: {"start":"2010-03-23","end":"2010-07-01"}
... maritalStatus 1..1CodeableConceptMarital (civil) status of a patient
Binding: Marital Status Codes (extensible): The domestic partnership status of a person.

... multipleBirth[x] 0..1Whether patient is part of a multiple birth
.... multipleBirthBooleanboolean
.... multipleBirthIntegerinteger
... photo 0..*AttachmentImage of the patient
... contact SC0..*BackboneElementA contact party (e.g. guardian, partner, friend) for the patient
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... relationship 1..1CodeableConceptThe kind of relationship
Binding: PatientContactRelationship (extensible): The nature of the relationship between a patient and a contact person for that patient.


.... name 0..1HumanNameA name associated with the contact person
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ0..1codeusual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.

..... text Σ0..1stringText representation of the full name
..... family Σ1..1stringFamily name (often called 'Surname')
..... given Σ1..*stringGiven names (not always 'first'). Includes middle names
This repeating element order: Given Names appear in the correct order for presenting the name
..... prefix Σ0..*stringParts that come before the name
This repeating element order: Prefixes appear in the correct order for presenting the name
..... suffix Σ0..*stringParts that come after the name
This repeating element order: Suffixes appear in the correct order for presenting the name
..... period Σ0..1PeriodTime period when name was/is in use
.... telecom S0..*ContactPointA contact detail for the person
.... gender 0..1codemale | female | other | unknown
Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.

.... organization C0..1Reference(Organization)Organization that is associated with the contact
.... period 0..1PeriodThe period during which this contact person or organization is valid to be contacted relating to this patient
... communication 0..*BackboneElementA language which may be used to communicate with the patient about his or her health
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... language 1..1CodeableConceptThe language which can be used to communicate with the patient about his or her health
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
.... preferred 0..1booleanLanguage preference indicator
... generalPractitioner 0..*Reference(Organization | Practitioner | PractitionerRole)Patient's nominated primary care provider
... managingOrganization Σ1..1Reference(Organization)Organization that is the custodian of the patient record
... link ?!Σ0..*BackboneElementLink to another patient resource that concerns the same actual person
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... other Σ1..1Reference(Patient | RelatedPerson)The other patient or related person resource that the link refers to
.... type Σ1..1codereplaced-by | replaces | refer | seealso
Binding: LinkType (required): The type of link between this patient resource and another patient resource.


doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Patient.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Patient.identifier:NID.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
Patient.identifier:NID.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
from the FHIR Standard
Patient.identifier:MR.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
Patient.identifier:MR.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
from the FHIR Standard
Patient.name.userequiredNameUse
http://hl7.org/fhir/ValueSet/name-use|4.0.1
from the FHIR Standard
Patient.genderrequiredAdministrativeGender
http://hl7.org/fhir/ValueSet/administrative-gender|4.0.1
from the FHIR Standard
Patient.address.userequiredAddressUse
http://hl7.org/fhir/ValueSet/address-use|4.0.1
from the FHIR Standard
Patient.address.typerequiredAddressType
http://hl7.org/fhir/ValueSet/address-type|4.0.1
from the FHIR Standard
Patient.maritalStatusextensibleMarital Status Codes
http://hl7.org/fhir/ValueSet/marital-status
from the FHIR Standard
Patient.contact.relationshipextensiblePatientContactRelationship
http://hl7.org/fhir/ValueSet/patient-contactrelationship
from the FHIR Standard
Patient.contact.name.userequiredNameUse
http://hl7.org/fhir/ValueSet/name-use|4.0.1
from the FHIR Standard
Patient.contact.genderrequiredAdministrativeGender
http://hl7.org/fhir/ValueSet/administrative-gender|4.0.1
from the FHIR Standard
Patient.communication.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
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()
pat-1errorPatient.contactSHALL at least contain a contact's details or a reference to an organization
: name.exists() or telecom.exists() or address.exists() or organization.exists()

This structure is derived from Patient

Summary

Mandatory: 10 elements (11 nested mandatory elements)
Must-Support: 5 elements
Fixed Value: 2 elements
Prohibited: 1 element

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element Patient.identifier is sliced based on the value of value:system

Differential View

This structure is derived from Patient

NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient 0..*PatientInformation about an individual or animal receiving health care services
... Slices for extension 1..*ExtensionExtension
Slice: Unordered, Open by value:url
... KPS 1..1CodeableConceptKey HIV Population
URL: http://openhie.org/fhir/training-solution-1/StructureDefinition/key-population-status
Binding: Key Population Status (required)
... Slices for identifier 1..*IdentifierAn identifier for this patient
Slice: Unordered, Open by value:system
.... identifier:NID 0..1IdentifierAn identifier for this patient
..... system 1..1uriThe namespace for the identifier value
Fixed Value: http://openhie.org/fhir/training-solution-1/identifier/nid
..... value S0..1stringThe value that is unique
.... identifier:MR 1..1IdentifierAn identifier for this patient
..... type
...... coding
....... system 0..1uriIdentity of the terminology system
Required Pattern: http://terminology.hl7.org/CodeSystem/v2-0203
....... code 0..1codeSymbol in syntax defined by the system
Required Pattern: MR
....... display 0..1stringRepresentation defined by the system
Required Pattern: Medical record number
...... text 0..1stringPlain text representation of the concept
Required Pattern: Patient folder number
..... system 1..1uriThe namespace for the identifier value
Fixed Value: http://openhie.org/fhir/training-solution-1/identifier/mr
..... value 1..1stringThe value that is unique
.... family 1..1stringFamily name (often called 'Surname')
.... given 1..*stringGiven names (not always 'first'). Includes middle names
... telecom S0..*ContactPointA contact detail for the individual
... gender 1..1codemale | female | other | unknown
... birthDate 1..1dateThe date of birth for the individual
... address S0..*AddressAn address for the individual
.... line 1..*stringStreet name, number, direction & P.O. Box etc.
.... city 1..1stringName of city, town etc.
.... district 1..1stringDistrict name (aka county)
.... state 1..1stringSub-unit of country (abbreviations ok)
.... country 1..1stringCountry (e.g. can be ISO 3166 2 or 3 letter code)
... maritalStatus 1..1CodeableConceptMarital (civil) status of a patient
... contact S0..*BackboneElementA contact party (e.g. guardian, partner, friend) for the patient
.... relationship 1..1CodeableConceptThe kind of relationship
.... name
..... family 1..1stringFamily name (often called 'Surname')
..... given 1..*stringGiven names (not always 'first'). Includes middle names
.... telecom S0..*ContactPointA contact detail for the person
.... address 0..0
... managingOrganization 1..1Reference(Organization)Organization that is the custodian of the patient record

doco Documentation for this format

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient 0..*PatientInformation about an individual or animal receiving health care services
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... Slices for extension 1..*ExtensionExtension
Slice: Unordered, Open by value:url
... KPS 1..1CodeableConceptKey HIV Population
URL: http://openhie.org/fhir/training-solution-1/StructureDefinition/key-population-status
Binding: Key Population Status (required)
... Slices for identifier Σ1..*IdentifierAn identifier for this patient
Slice: Unordered, Open by value:system
.... identifier:NID Σ0..1IdentifierAn identifier for this patient
..... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

..... system Σ1..1uriThe namespace for the identifier value
Fixed Value: http://openhie.org/fhir/training-solution-1/identifier/nid
..... value SΣ0..1stringThe value that is unique
Example General: 123456
.... identifier:MR Σ1..1IdentifierAn identifier for this patient
..... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

..... system Σ1..1uriThe namespace for the identifier value
Fixed Value: http://openhie.org/fhir/training-solution-1/identifier/mr
..... value Σ1..1stringThe value that is unique
Example General: 123456
... active ?!Σ0..1booleanWhether this patient's record is in active use
... telecom SΣ0..*ContactPointA contact detail for the individual
... gender Σ1..1codemale | female | other | unknown
Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.

... birthDate Σ1..1dateThe date of birth for the individual
... deceased[x] ?!Σ0..1Indicates if the individual is deceased or not
.... deceasedBooleanboolean
.... deceasedDateTimedateTime
... address SΣ0..*AddressAn address for the individual
.... use ?!Σ0..1codehome | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address.


Example General: home
.... line Σ1..*stringStreet name, number, direction & P.O. Box etc.
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
.... city Σ1..1stringName of city, town etc.
Example General: Erewhon
.... district Σ1..1stringDistrict name (aka county)
Example General: Madison
.... state Σ1..1stringSub-unit of country (abbreviations ok)
.... country Σ1..1stringCountry (e.g. can be ISO 3166 2 or 3 letter code)
... maritalStatus 1..1CodeableConceptMarital (civil) status of a patient
Binding: Marital Status Codes (extensible): The domestic partnership status of a person.

... contact SC0..*BackboneElementA contact party (e.g. guardian, partner, friend) for the patient
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... relationship 1..1CodeableConceptThe kind of relationship
Binding: PatientContactRelationship (extensible): The nature of the relationship between a patient and a contact person for that patient.


.... telecom S0..*ContactPointA contact detail for the person
... managingOrganization Σ1..1Reference(Organization)Organization that is the custodian of the patient record
... link ?!Σ0..*BackboneElementLink to another patient resource that concerns the same actual person
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... other Σ1..1Reference(Patient | RelatedPerson)The other patient or related person resource that the link refers to
.... type Σ1..1codereplaced-by | replaces | refer | seealso
Binding: LinkType (required): The type of link between this patient resource and another patient resource.


doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Patient.identifier:NID.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
Patient.identifier:MR.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
Patient.genderrequiredAdministrativeGender
http://hl7.org/fhir/ValueSet/administrative-gender|4.0.1
from the FHIR Standard
Patient.address.userequiredAddressUse
http://hl7.org/fhir/ValueSet/address-use|4.0.1
from the FHIR Standard
Patient.maritalStatusextensibleMarital Status Codes
http://hl7.org/fhir/ValueSet/marital-status
from the FHIR Standard
Patient.contact.relationshipextensiblePatientContactRelationship
http://hl7.org/fhir/ValueSet/patient-contactrelationship
from the FHIR Standard
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()
pat-1errorPatient.contactSHALL at least contain a contact's details or a reference to an organization
: name.exists() or telecom.exists() or address.exists() or organization.exists()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. Patient 0..*PatientInformation about an individual or animal receiving health care services
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... Slices for extension 1..*ExtensionExtension
Slice: Unordered, Open by value:url
... KPS 1..1CodeableConceptKey HIV Population
URL: http://openhie.org/fhir/training-solution-1/StructureDefinition/key-population-status
Binding: Key Population Status (required)
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... Slices for identifier Σ1..*IdentifierAn identifier for this patient
Slice: Unordered, Open by value:system
.... identifier:NID Σ0..1IdentifierAn identifier for this patient
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

..... type Σ0..1CodeableConceptDescription of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

..... system Σ1..1uriThe namespace for the identifier value
Fixed Value: http://openhie.org/fhir/training-solution-1/identifier/nid
..... value SΣ0..1stringThe value that is unique
Example General: 123456
..... period Σ0..1PeriodTime period when id is/was valid for use
..... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
.... identifier:MR Σ1..1IdentifierAn identifier for this patient
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

..... type Σ0..1CodeableConceptDescription of identifier
Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

...... id 0..1stringUnique id for inter-element referencing
...... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... coding Σ0..*CodingCode defined by a terminology system
....... id 0..1stringUnique id for inter-element referencing
....... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
....... system Σ0..1uriIdentity of the terminology system
Required Pattern: http://terminology.hl7.org/CodeSystem/v2-0203
....... version Σ0..1stringVersion of the system - if relevant
....... code Σ0..1codeSymbol in syntax defined by the system
Required Pattern: MR
....... display Σ0..1stringRepresentation defined by the system
Required Pattern: Medical record number
....... userSelected Σ0..1booleanIf this coding was chosen directly by the user
...... text Σ0..1stringPlain text representation of the concept
Required Pattern: Patient folder number
..... system Σ1..1uriThe namespace for the identifier value
Fixed Value: http://openhie.org/fhir/training-solution-1/identifier/mr
..... value Σ1..1stringThe value that is unique
Example General: 123456
..... period Σ0..1PeriodTime period when id is/was valid for use
..... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
... active ?!Σ0..1booleanWhether this patient's record is in active use
... name Σ0..*HumanNameA name associated with the patient
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ0..1codeusual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.

.... text Σ0..1stringText representation of the full name
.... family Σ1..1stringFamily name (often called 'Surname')
.... given Σ1..*stringGiven names (not always 'first'). Includes middle names
This repeating element order: Given Names appear in the correct order for presenting the name
.... prefix Σ0..*stringParts that come before the name
This repeating element order: Prefixes appear in the correct order for presenting the name
.... suffix Σ0..*stringParts that come after the name
This repeating element order: Suffixes appear in the correct order for presenting the name
.... period Σ0..1PeriodTime period when name was/is in use
... telecom SΣ0..*ContactPointA contact detail for the individual
... gender Σ1..1codemale | female | other | unknown
Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.

... birthDate Σ1..1dateThe date of birth for the individual
... deceased[x] ?!Σ0..1Indicates if the individual is deceased or not
.... deceasedBooleanboolean
.... deceasedDateTimedateTime
... address SΣ0..*AddressAn address for the individual
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... use ?!Σ0..1codehome | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address.


Example General: home
.... type Σ0..1codepostal | physical | both
Binding: AddressType (required): The type of an address (physical / postal).


Example General: both
.... text Σ0..1stringText representation of the address
Example General: 137 Nowhere Street, Erewhon 9132
.... line Σ1..*stringStreet name, number, direction & P.O. Box etc.
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
.... city Σ1..1stringName of city, town etc.
Example General: Erewhon
.... district Σ1..1stringDistrict name (aka county)
Example General: Madison
.... state Σ1..1stringSub-unit of country (abbreviations ok)
.... postalCode Σ0..1stringPostal code for area
Example General: 9132
.... country Σ1..1stringCountry (e.g. can be ISO 3166 2 or 3 letter code)
.... period Σ0..1PeriodTime period when address was/is in use
Example General: {"start":"2010-03-23","end":"2010-07-01"}
... maritalStatus 1..1CodeableConceptMarital (civil) status of a patient
Binding: Marital Status Codes (extensible): The domestic partnership status of a person.

... multipleBirth[x] 0..1Whether patient is part of a multiple birth
.... multipleBirthBooleanboolean
.... multipleBirthIntegerinteger
... photo 0..*AttachmentImage of the patient
... contact SC0..*BackboneElementA contact party (e.g. guardian, partner, friend) for the patient
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... relationship 1..1CodeableConceptThe kind of relationship
Binding: PatientContactRelationship (extensible): The nature of the relationship between a patient and a contact person for that patient.


.... name 0..1HumanNameA name associated with the contact person
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ0..1codeusual | official | temp | nickname | anonymous | old | maiden
Binding: NameUse (required): The use of a human name.

..... text Σ0..1stringText representation of the full name
..... family Σ1..1stringFamily name (often called 'Surname')
..... given Σ1..*stringGiven names (not always 'first'). Includes middle names
This repeating element order: Given Names appear in the correct order for presenting the name
..... prefix Σ0..*stringParts that come before the name
This repeating element order: Prefixes appear in the correct order for presenting the name
..... suffix Σ0..*stringParts that come after the name
This repeating element order: Suffixes appear in the correct order for presenting the name
..... period Σ0..1PeriodTime period when name was/is in use
.... telecom S0..*ContactPointA contact detail for the person
.... gender 0..1codemale | female | other | unknown
Binding: AdministrativeGender (required): The gender of a person used for administrative purposes.

.... organization C0..1Reference(Organization)Organization that is associated with the contact
.... period 0..1PeriodThe period during which this contact person or organization is valid to be contacted relating to this patient
... communication 0..*BackboneElementA language which may be used to communicate with the patient about his or her health
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... language 1..1CodeableConceptThe language which can be used to communicate with the patient about his or her health
Binding: CommonLanguages (preferred): A human language.

Additional BindingsPurpose
AllLanguagesMax Binding
.... preferred 0..1booleanLanguage preference indicator
... generalPractitioner 0..*Reference(Organization | Practitioner | PractitionerRole)Patient's nominated primary care provider
... managingOrganization Σ1..1Reference(Organization)Organization that is the custodian of the patient record
... link ?!Σ0..*BackboneElementLink to another patient resource that concerns the same actual person
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... other Σ1..1Reference(Patient | RelatedPerson)The other patient or related person resource that the link refers to
.... type Σ1..1codereplaced-by | replaces | refer | seealso
Binding: LinkType (required): The type of link between this patient resource and another patient resource.


doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
Patient.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
Patient.identifier:NID.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
Patient.identifier:NID.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
from the FHIR Standard
Patient.identifier:MR.userequiredIdentifierUse
http://hl7.org/fhir/ValueSet/identifier-use|4.0.1
from the FHIR Standard
Patient.identifier:MR.typeextensibleIdentifier Type Codes
http://hl7.org/fhir/ValueSet/identifier-type
from the FHIR Standard
Patient.name.userequiredNameUse
http://hl7.org/fhir/ValueSet/name-use|4.0.1
from the FHIR Standard
Patient.genderrequiredAdministrativeGender
http://hl7.org/fhir/ValueSet/administrative-gender|4.0.1
from the FHIR Standard
Patient.address.userequiredAddressUse
http://hl7.org/fhir/ValueSet/address-use|4.0.1
from the FHIR Standard
Patient.address.typerequiredAddressType
http://hl7.org/fhir/ValueSet/address-type|4.0.1
from the FHIR Standard
Patient.maritalStatusextensibleMarital Status Codes
http://hl7.org/fhir/ValueSet/marital-status
from the FHIR Standard
Patient.contact.relationshipextensiblePatientContactRelationship
http://hl7.org/fhir/ValueSet/patient-contactrelationship
from the FHIR Standard
Patient.contact.name.userequiredNameUse
http://hl7.org/fhir/ValueSet/name-use|4.0.1
from the FHIR Standard
Patient.contact.genderrequiredAdministrativeGender
http://hl7.org/fhir/ValueSet/administrative-gender|4.0.1
from the FHIR Standard
Patient.communication.languagepreferredCommonLanguages
Additional Bindings Purpose
AllLanguages Max Binding
http://hl7.org/fhir/ValueSet/languages
from the FHIR Standard
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()
pat-1errorPatient.contactSHALL at least contain a contact's details or a reference to an organization
: name.exists() or telecom.exists() or address.exists() or organization.exists()

This structure is derived from Patient

Summary

Mandatory: 10 elements (11 nested mandatory elements)
Must-Support: 5 elements
Fixed Value: 2 elements
Prohibited: 1 element

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element Patient.identifier is sliced based on the value of value:system

 

Other representations of profile: CSV, Excel, Schematron