DSTU2

This page is part of the FHIR Specification (v0.0.82: (v1.0.2: DSTU 1). 2). The current version which supercedes this version is 5.0.0 . For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3 R2

5.1 Resource Patient - Content

Patient Administration Work Group Maturity Level : 3 Compartments : Patient , Practitioner

Demographics and other administrative information about a person an individual or animal receiving care or other health-related services.

5.1.1 Scope and Usage

This Resource covers data about persons patients and animals involved in a wide range of health-related activities, including:

  • Curative activities
  • Psychiatric care
  • Social services
  • Pregnancy care
  • Nursing and assisted living
  • Dietary services
  • Tracking of personal health and exercise data

The data in the Resource covers the "who" information about the patient: its attributes are focused on the demographic information necessary to support the administrative, financial and logistic procedures. A Patient record is generally created and maintained by each organization providing care for a patient. A person patient or animal receiving care at multiple organizations may therefore have its information present in multiple Patient Resources.

Not all concepts are included within the base resource (such as race, ethnicity, organ donor status, nationalilty, etc.), but may be found in profiles defined for specific jurisdictions (e.g., US Meaningful Use Program) or standard extensions .
Such fields vary widely between jurisdictions and often have different names and valuesets for the similar concepts, but they are not similar enough to be able to map and exchange

This resource is referenced by Account , AllergyIntolerance , Appointment , AppointmentResponse , AuditEvent , Basic , BodySite , CarePlan , Claim , ClinicalImpression , Communication , CommunicationRequest , Composition , Condition , Contract , Coverage , DetectedIssue , Device , DeviceUseRequest , DeviceUseStatement , DiagnosticOrder , DiagnosticReport , DocumentManifest , DocumentReference , Encounter , EnrollmentRequest , EpisodeOfCare , FamilyMemberHistory , Flag , Goal , Group , ImagingObjectSelection , ImagingStudy , Immunization , ImmunizationRecommendation , List , Media , MedicationAdministration , MedicationDispense , MedicationOrder , MedicationStatement , NutritionOrder , Observation , Order , Person , Procedure , ProcedureRequest , Provenance , QuestionnaireResponse , ReferralRequest , RelatedPerson , RiskAssessment , Schedule , Specimen , SupplyDelivery , SupplyRequest and VisionPrescription

5.1.2 Resource Content

Structure

Name Flags Card. Type Description & Constraints doco
.. Patient DomainResource Information about an individual or animal receiving health care services
... identifier Σ 0..* Identifier An identifier for this patient
... active ?! Σ 0..1 boolean Whether this patient's record is in active use
... name Σ 0..* HumanName A name associated with the patient
... telecom Σ 0..* ContactPoint A contact detail for the individual
... gender Σ 0..1 code male | female | other | unknown
AdministrativeGender ( Required )
... birthDate Σ 0..1 date The date of birth for the individual
... deceased[x] ?! Σ 0..1 Indicates if the individual is deceased or not
.... deceasedBoolean boolean
.... deceasedDateTime dateTime
... address Σ 0..* Address Addresses for the individual
... maritalStatus 0..1 CodeableConcept Marital (civil) status of a patient
Marital Status Codes ( Required )
... multipleBirth[x] 0..1 Whether patient is part of a multiple birth
.... multipleBirthBoolean boolean
.... multipleBirthInteger integer
... photo 0..* Attachment Image of the patient
... contact I 0..* BackboneElement A contact party (e.g. guardian, partner, friend) for the patient
SHALL at least contain a contact's details or a reference to an organization
.... relationship 0..* CodeableConcept The kind of relationship
PatientContactRelationship ( Extensible )
.... name 0..1 HumanName A name associated with the contact person
.... telecom 0..* ContactPoint A contact detail for the person
.... address 0..1 Address Address for the contact person
.... gender 0..1 code male | female | other | unknown
AdministrativeGender ( Required )
.... organization I 0..1 Reference ( Organization ) Organization that is associated with the contact
.... period 0..1 Period The period during which this contact person or organization is valid to be contacted relating to this patient
... animal ?! Σ 0..1 BackboneElement This patient is known to be an animal (non-human)
.... species Σ 1..1 CodeableConcept E.g. Dog, Cow
AnimalSpecies ( Example )
.... breed Σ 0..1 CodeableConcept E.g. Poodle, Angus
AnimalBreeds ( Example )
.... genderStatus Σ 0..1 CodeableConcept E.g. Neutered, Intact
GenderStatus ( Example )
... communication 0..* BackboneElement A list of Languages which may be used to communicate with the patient about his or her health
.... language 1..1 CodeableConcept The language which can be used to communicate with the patient about his or her health
Language ( Required )
.... preferred 0..1 boolean Language preference indicator
... careProvider 0..* Reference ( Organization | Practitioner ) Patient's nominated primary care provider
... managingOrganization Σ 0..1 Reference ( Organization ) Organization that is the custodian of the patient record
... link ?! 0..* BackboneElement Link to another patient resource that concerns the same actual person
.... other ?! 1..1 Reference ( Patient ) The other patient resource that the link refers to
.... type ?! 1..1 code replace | refer | seealso - type of link
LinkType ( Required )

doco Documentation for this format

UML Diagram

Patient ( Resource DomainResource ) An identifier that applies to for this person as a patient identifier : Identifier 0..* [0..*] Whether this patient record is in active use (this element modifies the meaning of other elements) active : boolean [0..1] A name associated with the individual name : HumanName 0..* [0..*] A contact detail (e.g. a telephone number or an email address) by which the individual may be contacted telecom : Contact ContactPoint 0..* [0..*] Administrative Gender - the gender that the patient is considered to have for administration and record keeping purposes gender : CodeableConcept code 0..1 << [0..1] « The gender of a person used for administrative purposes purposes. (Strength=Required) AdministrativeGender >> ! » The date and time of birth for the individual birthDate : dateTime date 0..1 [0..1] Indicates if the individual is deceased or not (this element modifies the meaning of other elements) deceased[x] : Type [0..1] « boolean | dateTime 0..1 » Addresses for the individual address : Address 0..* [0..*] This field contains a patient's most recent marital (civil) status maritalStatus : CodeableConcept 0..1 << [0..1] « The domestic partnership status of a person person. (Strength=Required) MaritalStatus >> Marital Status ! » Indicates whether the patient is part of a multiple or indicates the actual birth order multipleBirth[x] : Type [0..1] « boolean | integer 0..1 » Image of the person patient photo : Attachment 0..* [0..*] Patient's nominated care provider careProvider : Reference [0..*] « Organization | Practitioner » Organization that is the custodian of the patient record managingOrganization : Reference [0..1] « Organization » Contact The nature of the relationship between the patient and the contact person relationship : CodeableConcept [0..*] « The nature of the relationship between a patient and a contact person for that patient. (Strength=Extensible) PatientContactRelationship + » A name associated with the contact person name : HumanName [0..1] A contact detail for the person, e.g. a telephone number or an email address telecom : ContactPoint [0..*] Address for the contact person address : Address [0..1] Administrative Gender - the gender that the contact person is considered to have for administration and record keeping purposes gender : code [0..1] « The gender of a person used for administrative purposes. (Strength=Required) AdministrativeGender ! » Organization on behalf of which the contact is acting or for which the contact is working organization : Reference [0..1] « Organization » The period during which this contact person or organization is valid to be contacted relating to this patient period : Period [0..1] Animal Identifies the high level taxonomic categorization of the kind of animal species : CodeableConcept [1..1] « The species of an animal. (Strength=Example) AnimalSpecies ?? » Identifies the detailed categorization of the kind of animal breed : CodeableConcept [0..1] « The breed of an animal. (Strength=Example) AnimalBreeds ?? » Indicates the current state of the animal's reproductive organs genderStatus : CodeableConcept [0..1] « The state of the animal's reproductive organs. (Strength=Example) GenderStatus ?? » Communication The ISO-639-1 alpha 2 code in lower case for the language, optionally followed by a hyphen and the ISO-3166-1 alpha 2 code for the region in upper case; e.g. "en" for English, or "en-US" for American English versus "en-EN" for England English language : CodeableConcept [1..1] « A human language. (Strength=Required) Language ! » Indicates whether or not the patient prefers this language (over other languages he masters up a certain level) preferred : boolean [0..1] Link The other patient resource that the link refers to (this element modifies the meaning of other elements) other : Reference [1..1] « Patient » The type of link between this patient resource and another patient resource (this element modifies the meaning of other elements) type : code [1..1] « The type of link between this patient resource and another patient resource. (Strength=Required) LinkType ! » A contact party (e.g. guardian, partner, friend) for the patient contact [0..*] This patient is known to be an animal (this element modifies the meaning of other elements) animal [0..1] Languages which may be used to communicate with the patient about his or her health communication : [0..*] Link to another patient resource that concerns the same actual patient (this element modifies the meaning of other elements) link [0..*]

XML Template


<Patient xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier An identifier for this patient --></identifier>
 <active value="[boolean]"/><!-- 0..1 Whether this patient's record is in active use -->
 <name><!-- 0..* HumanName A name associated with the patient --></name>
 <telecom><!-- 0..* ContactPoint A contact detail for the individual --></telecom>
 <gender value="[code]"/><!-- 0..1 male | female | other | unknown -->
 <birthDate value="[date]"/><!-- 0..1 The date of birth for the individual -->
 <deceased[x]><!-- 0..1 boolean|dateTime Indicates if the individual is deceased or not --></deceased[x]>
 <address><!-- 0..* Address Addresses for the individual --></address>
 <maritalStatus><!-- 0..1 CodeableConcept Marital (civil) status of a patient --></maritalStatus>
 <multipleBirth[x]><!-- 0..1 boolean|integer Whether patient is part of a multiple birth --></multipleBirth[x]>
 <photo><!-- 0..* Attachment Image of the patient --></photo>
 <contact>  <!-- 0..* A contact party (e.g. guardian, partner, friend) for the patient -->
  <relationship><!-- 0..* CodeableConcept The kind of relationship --></relationship>
  <name><!-- 0..1 HumanName A name associated with the contact person --></name>
  <telecom><!-- 0..* ContactPoint A contact detail for the person --></telecom>
  <address><!-- 0..1 Address Address for the contact person --></address>
  <gender value="[code]"/><!-- 0..1 male | female | other | unknown -->
  <organization><!-- ?? 0..1 Reference(Organization) Organization that is associated with the contact --></organization>
  <period><!-- 0..1 Period The period during which this contact person or organization is valid to be contacted relating to this patient --></period>
 </contact>
 <animal>  <!-- 0..1 This patient is known to be an animal (non-human) -->
  <species><!-- 1..1 CodeableConcept E.g. Dog, Cow --></species>
  <breed><!-- 0..1 CodeableConcept E.g. Poodle, Angus --></breed>
  <genderStatus><!-- 0..1 CodeableConcept E.g. Neutered, Intact --></genderStatus>
 </animal>
 <communication>  <!-- 0..* A list of Languages which may be used to communicate with the patient about his or her health -->
  <language><!-- 1..1 CodeableConcept The language which can be used to communicate with the patient about his or her health  --></language>
  <preferred value="[boolean]"/><!-- 0..1 Language preference indicator -->
 </communication>
 <careProvider><!-- 0..* Reference(Organization|Practitioner) Patient's nominated primary care provider --></careProvider>
 <managingOrganization><!-- 0..1 Reference(Organization) Organization that is the custodian of the patient record --></managingOrganization>
 <link>  <!-- 0..* Link to another patient resource that concerns the same actual person -->
  <other><!-- 1..1 Reference(Patient) The other patient resource that the link refers to --></other>
  <type value="[code]"/><!-- 1..1 replace | refer | seealso - type of link -->
 </link>
</Patient>

JSON Template


{doco
  "resourceType" : "Patient",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // An identifier for this patient
  "active" : <boolean>, // Whether this patient's record is in active use
  "name" : [{ HumanName }], // A name associated with the patient
  "telecom" : [{ ContactPoint }], // A contact detail for the individual
  "gender" : "<code>", // male | female | other | unknown
  "birthDate" : "<date>", // The date of birth for the individual
  // deceased[x]: Indicates if the individual is deceased or not. One of these 2:

  "deceasedBoolean" : <boolean>,
  "deceasedDateTime" : "<dateTime>",
  "address" : [{ Address }], // Addresses for the individual
  "maritalStatus" : { CodeableConcept }, // Marital (civil) status of a patient
  // multipleBirth[x]: Whether patient is part of a multiple birth. One of these 2:

  "multipleBirthBoolean" : <boolean>,
  "multipleBirthInteger" : <integer>,
  "photo" : [{ Attachment }], // Image of the patient
  "contact" : [{ // A contact party (e.g. guardian, partner, friend) for the patient
    "relationship" : [{ CodeableConcept }], // The kind of relationship
    "name" : { HumanName }, // A name associated with the contact person
    "telecom" : [{ ContactPoint }], // A contact detail for the person
    "address" : { Address }, // Address for the contact person
    "gender" : "<code>", // male | female | other | unknown
    "organization" : { Reference(Organization) }, // C? Organization that is associated with the contact
    "period" : { Period } // The period during which this contact person or organization is valid to be contacted relating to this patient
  }],
  "animal" : { // This patient is known to be an animal (non-human)
    "species" : { CodeableConcept }, // R!  E.g. Dog, Cow
    "breed" : { CodeableConcept }, // E.g. Poodle, Angus
    "genderStatus" : { CodeableConcept } // E.g. Neutered, Intact
  },
  "communication" : [{ // A list of Languages which may be used to communicate with the patient about his or her health
    "language" : { CodeableConcept }, // R!  The language which can be used to communicate with the patient about his or her health 
    "preferred" : <boolean> // Language preference indicator
  }],
  "careProvider" : [{ Reference(Organization|Practitioner) }], // Patient's nominated primary care provider
  "managingOrganization" : { Reference(Organization) }, // Organization that is the custodian of the patient record
  "link" : [{ // Link to another patient resource that concerns the same actual person
    "other" : { Reference(Patient) }, // R!  The other patient resource that the link refers to
    "type" : "<code>" // R!  replace | refer | seealso - type of link
  }]
}

Structure

Name Flags Card. Type Description & Constraints doco
.. Patient DomainResource Information about an individual or animal receiving health care services
... identifier Σ 0..* Identifier An identifier for this patient
... active ?! Σ 0..1 boolean Whether this patient's record is in active use
... name Σ 0..* HumanName A name associated with the patient
... telecom Σ 0..* ContactPoint A contact detail for the individual
... gender Σ 0..1 code male | female | other | unknown
AdministrativeGender ( Required )
... birthDate Σ 0..1 date The date of birth for the individual
... deceased[x] ?! Σ 0..1 Indicates if the individual is deceased or not
.... deceasedBoolean boolean
.... deceasedDateTime dateTime
... address Σ 0..* Address Addresses for the individual
... maritalStatus 0..1 CodeableConcept Marital (civil) status of a patient
Marital Status Codes ( Required )
... multipleBirth[x] 0..1 Whether patient is part of a multiple birth
.... multipleBirthBoolean boolean
.... multipleBirthInteger integer
... photo 0..* << Attachment Image of the patient
... contact I 0..* BackboneElement A human contact party (e.g. guardian, partner, friend) for the patient
SHALL at least contain a contact's details or a reference to an organization
.... relationship 0..* CodeableConcept The kind of relationship
PatientContactRelationship ( Extensible )
.... name 0..1 HumanName A name associated with the contact person
.... telecom 0..* ContactPoint A contact detail for the person
.... address 0..1 Address Address for the contact person
.... gender 0..1 code male | female | other | unknown
AdministrativeGender ( Required )
.... organization I 0..1 Reference ( Organization ) Organization that is associated with the contact
.... period 0..1 Period The period during which this contact person or organization is valid to be contacted relating to this patient
... animal ?! Σ 0..1 BackboneElement This patient is known to be an animal (non-human)
.... species Σ 1..1 CodeableConcept E.g. Dog, Cow
AnimalSpecies ( Example )
.... breed Σ 0..1 CodeableConcept E.g. Poodle, Angus
AnimalBreeds ( Example )
.... genderStatus Σ 0..1 CodeableConcept E.g. Neutered, Intact
GenderStatus ( Example )
... communication 0..* BackboneElement A list of Languages which may be used to communicate with the patient about his or her health
.... language 1..1 CodeableConcept The language which can be used to communicate with the patient about his or her health
Language >> ( Required )
Patient's nominated care provider . . . . preferred 0..1 boolean Language preference indicator
... careProvider : Resource 0..* Reference ( Organization | Practitioner ) 0..* Patient's nominated primary care provider
. . . managingOrganization Σ 0..1 Reference ( Organization ) Organization that is the custodian of the patient record managingOrganization
. . . link : Resource ?! 0..* BackboneElement Link to another patient resource that concerns the same actual person
.... other ?! 1..1 Reference ( Organization Patient ) 0..1 The other patient resource that the link refers to
.... type ?! 1..1 code replace | refer | seealso - type of link
LinkType ( Required )

doco Documentation for this format

UML Diagram

Patient ( DomainResource ) An identifier for this patient identifier : Identifier [0..*] Whether this patient record is in active use (this element modifies the meaning of other elements) active : boolean 0..1 [0..1] A name associated with the individual name : HumanName [0..*] A contact detail (e.g. a telephone number or an email address) by which the individual may be contacted telecom : ContactPoint [0..*] Administrative Gender - the gender that the patient is considered to have for administration and record keeping purposes gender : code [0..1] « The gender of a person used for administrative purposes. (Strength=Required) AdministrativeGender ! » The date of birth for the individual birthDate : date [0..1] Indicates if the individual is deceased or not (this element modifies the meaning of other elements) deceased[x] : Type [0..1] « boolean | dateTime » Addresses for the individual address : Address [0..*] This field contains a patient's most recent marital (civil) status maritalStatus : CodeableConcept [0..1] « The domestic partnership status of a person. (Strength=Required) Marital Status ! » Indicates whether the patient is part of a multiple or indicates the actual birth order multipleBirth[x] : Type [0..1] « boolean | integer » Image of the patient photo : Attachment [0..*] Patient's nominated care provider careProvider : Reference [0..*] « Organization | Practitioner » Organization that is the custodian of the patient record managingOrganization : Reference [0..1] « Organization » Contact The nature of the relationship between the patient and the contact person relationship : CodeableConcept 0..* << [0..*] « The nature of the relationship between a patient and a contact person for that patient patient. (Strength=Extensible) ContactRelationship PatientContactRelationship >> + » A name associated with the contact person name : HumanName 0..1 [0..1] A contact detail for the person, e.g. a telephone number or an email address telecom : Contact ContactPoint 0..* [0..*] Address for the contact person address : Address 0..1 [0..1] Administrative Gender - the gender that the contact person is considered to have for administration and record keeping purposes gender : CodeableConcept code 0..1 << [0..1] « The gender of a person used for administrative purposes purposes. (Strength=Required) AdministrativeGender >> ! » Organization on behalf of which the contact is acting or for which the contact is working organization : Resource Reference ( [0..1] « Organization ) 0..1 » The period during which this contact person or organization is valid to be contacted relating to this patient period : Period [0..1] Animal Identifies the high level taxonomic categorization of the kind of animal species : CodeableConcept 1..1 << [1..1] « The species of an animal animal. (Strength=Example) AnimalSpecies >> ?? » Identifies the detailed categorization of the kind of animal breed : CodeableConcept 0..1 << [0..1] « The breed of an animal animal. (Strength=Example) AnimalBreed AnimalBreeds >> ?? » Indicates the current state of the animal's reproductive organs genderStatus : CodeableConcept 0..1 << [0..1] « The state of the animal's reproductive organs organs. (Strength=Example) AnimalGenderStatus GenderStatus >> ?? » Communication The ISO-639-1 alpha 2 code in lower case for the language, optionally followed by a hyphen and the ISO-3166-1 alpha 2 code for the region in upper case; e.g. "en" for English, or "en-US" for American English versus "en-EN" for England English language : CodeableConcept [1..1] « A human language. (Strength=Required) Language ! » Indicates whether or not the patient prefers this language (over other languages he masters up a certain level) preferred : boolean [0..1] Link The other patient resource that the link refers to (this element modifies the meaning of other elements) other : Resource Reference ( [1..1] « Patient ) 1..1 » The type of link between this patient resource and another patient resource (this element modifies the meaning of other elements) type : code 1..1 << [1..1] « The type of link between this patient resource and another patient resource. (Strength=Required) LinkType >> ! » A contact party (e.g. guardian, partner, friend) for the patient contact 0..* [0..*] This element has a value if the patient is known to be an animal (this element modifies the meaning of other elements) animal 0..1 [0..1] Languages which may be used to communicate with the patient about his or her health communication [0..*] Link to another patient resource that concerns the same actual person patient (this element modifies the meaning of other elements) link 0..* [0..*] This resource is referenced by AdverseReaction , Alert , AllergyIntolerance , CarePlan , Composition , Condition , Device , DeviceObservationReport , DiagnosticOrder , DiagnosticReport , DocumentManifest , DocumentReference , Encounter , FamilyHistory , Group , ImagingStudy , Immunization , ImmunizationRecommendation , List , Media , MedicationAdministration , MedicationDispense , MedicationPrescription , MedicationStatement , Observation , Order , Other , Procedure , Questionnaire , RelatedPerson , SecurityEvent , Specimen and Supply

XML Template

< <!-- from --> <</identifier> <</name> <</telecom> <</gender> < <</deceased[x]> <</address> <</maritalStatus> < Whether patient is part of a multiple birth</multipleBirth[x]> <</photo>
<Patient xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier An identifier for this patient --></identifier>
 <active value="[boolean]"/><!-- 0..1 Whether this patient's record is in active use -->
 <name><!-- 0..* HumanName A name associated with the patient --></name>
 <telecom><!-- 0..* ContactPoint A contact detail for the individual --></telecom>
 <gender value="[code]"/><!-- 0..1 male | female | other | unknown -->
 <birthDate value="[date]"/><!-- 0..1 The date of birth for the individual -->
 <deceased[x]><!-- 0..1 boolean|dateTime Indicates if the individual is deceased or not --></deceased[x]>
 <address><!-- 0..* Address Addresses for the individual --></address>
 <maritalStatus><!-- 0..1 CodeableConcept Marital (civil) status of a patient --></maritalStatus>
 <multipleBirth[x]><!-- 0..1 boolean|integer Whether patient is part of a multiple birth --></multipleBirth[x]>
 <photo><!-- 0..* Attachment Image of the patient --></photo>

 <contact>  <!-- 0..* A contact party (e.g. guardian, partner, friend) for the patient -->
  <relationship><!-- 0..* CodeableConcept The kind of relationship --></relationship>
  <</name>
  <</telecom>
  <</address>
  <</gender>
  <
      Organization that is associated with the contact</organization>

  <name><!-- 0..1 HumanName A name associated with the contact person --></name>
  <telecom><!-- 0..* ContactPoint A contact detail for the person --></telecom>
  <address><!-- 0..1 Address Address for the contact person --></address>
  <gender value="[code]"/><!-- 0..1 male | female | other | unknown -->
  <organization><!-- ?? 0..1 Reference(Organization) Organization that is associated with the contact --></organization>
  <period><!-- 0..1 Period The period during which this contact person or organization is valid to be contacted relating to this patient --></period>

 </contact>
 <
  <</species>
  <</breed>
  <</genderStatus>

 <animal>  <!-- 0..1 This patient is known to be an animal (non-human) -->
  <species><!-- 1..1 CodeableConcept E.g. Dog, Cow --></species>
  <breed><!-- 0..1 CodeableConcept E.g. Poodle, Angus --></breed>
  <genderStatus><!-- 0..1 CodeableConcept E.g. Neutered, Intact --></genderStatus>

 </animal>
 <</communication>
 <
     Patient's nominated care provider</careProvider>
 <
     Organization that is the custodian of the patient record</managingOrganization>
 <
  <</other>
  <

 <communication>  <!-- 0..* A list of Languages which may be used to communicate with the patient about his or her health -->
  <language><!-- 1..1 CodeableConcept The language which can be used to communicate with the patient about his or her health  --></language>
  <preferred value="[boolean]"/><!-- 0..1 Language preference indicator -->
 </communication>
 <careProvider><!-- 0..* Reference(Organization|Practitioner) Patient's nominated primary care provider --></careProvider>
 <managingOrganization><!-- 0..1 Reference(Organization) Organization that is the custodian of the patient record --></managingOrganization>
 <link>  <!-- 0..* Link to another patient resource that concerns the same actual person -->
  <other><!-- 1..1 Reference(Patient) The other patient resource that the link refers to --></other>
  <type value="[code]"/><!-- 1..1 replace | refer | seealso - type of link -->

 </link>
 <

</Patient>

JSON Template


{doco
  "resourceType" : "Patient",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // An identifier for this patient
  "active" : <boolean>, // Whether this patient's record is in active use
  "name" : [{ HumanName }], // A name associated with the patient
  "telecom" : [{ ContactPoint }], // A contact detail for the individual
  "gender" : "<code>", // male | female | other | unknown
  "birthDate" : "<date>", // The date of birth for the individual
  // deceased[x]: Indicates if the individual is deceased or not. One of these 2:

  "deceasedBoolean" : <boolean>,
  "deceasedDateTime" : "<dateTime>",
  "address" : [{ Address }], // Addresses for the individual
  "maritalStatus" : { CodeableConcept }, // Marital (civil) status of a patient
  // multipleBirth[x]: Whether patient is part of a multiple birth. One of these 2:

  "multipleBirthBoolean" : <boolean>,
  "multipleBirthInteger" : <integer>,
  "photo" : [{ Attachment }], // Image of the patient
  "contact" : [{ // A contact party (e.g. guardian, partner, friend) for the patient
    "relationship" : [{ CodeableConcept }], // The kind of relationship
    "name" : { HumanName }, // A name associated with the contact person
    "telecom" : [{ ContactPoint }], // A contact detail for the person
    "address" : { Address }, // Address for the contact person
    "gender" : "<code>", // male | female | other | unknown
    "organization" : { Reference(Organization) }, // C? Organization that is associated with the contact
    "period" : { Period } // The period during which this contact person or organization is valid to be contacted relating to this patient
  }],
  "animal" : { // This patient is known to be an animal (non-human)
    "species" : { CodeableConcept }, // R!  E.g. Dog, Cow
    "breed" : { CodeableConcept }, // E.g. Poodle, Angus
    "genderStatus" : { CodeableConcept } // E.g. Neutered, Intact
  },
  "communication" : [{ // A list of Languages which may be used to communicate with the patient about his or her health
    "language" : { CodeableConcept }, // R!  The language which can be used to communicate with the patient about his or her health 
    "preferred" : <boolean> // Language preference indicator
  }],
  "careProvider" : [{ Reference(Organization|Practitioner) }], // Patient's nominated primary care provider
  "managingOrganization" : { Reference(Organization) }, // Organization that is the custodian of the patient record
  "link" : [{ // Link to another patient resource that concerns the same actual person
    "other" : { Reference(Patient) }, // R!  The other patient resource that the link refers to
    "type" : "<code>" // R!  replace | refer | seealso - type of link
  }]
}

 

Alternate definitions: Schema / Schematron , Resource Profile ( XML , JSON ), Questionnaire

5.1.2.1 Terminology Bindings

Path Definition Type Reference
Patient.gender
Patient.contact.gender
The gender of a person used for administrative purposes purposes. Incomplete Required http://hl7.org/fhir/vs/administrative-gender AdministrativeGender
Patient.maritalStatus The domestic partnership status of a person person. Incomplete Required http://hl7.org/fhir/vs/marital-status Marital Status Codes
Patient.contact.relationship The nature of the relationship between a patient and a contact person for that patient patient. Incomplete Extensible http://hl7.org/fhir/vs/patient-contact-relationship PatientContactRelationship
Patient.animal.species The species of an animal animal. Example http://hl7.org/fhir/vs/animal-species AnimalSpecies
Patient.animal.breed The breed of an animal animal. Example http://hl7.org/fhir/vs/animal-breeds AnimalBreeds
Patient.animal.genderStatus The state of the animal's reproductive organs organs. Example http://hl7.org/fhir/vs/animal-genderstatus GenderStatus
Patient.communication Patient.communication.language A human language language. Incomplete Required IETF language tag
Patient.link.type The type of link between this patient resource and another patient resource. Fixed Required http://hl7.org/fhir/link-type LinkType

5.1.2.2 Constraints

  • Inv-1 pat-1 : On Patient.contact: SHALL at least contain a contact's details or a reference to an organization (xpath on f:Patient/f:contact: f:name or f:telecom or f:address or f:organization )

Notes:

  • multipleBirth can be either expressed as a boolean Boolean (just indicating whether the patient is part of a multiple birth) or as an integer, indicating the actual birth order.
  • Patient records may only be in one of two statuses: in use (active=true) and not in use (active=false). A normal record is active, i.e. it is in use. Active is set to 'false' when a record is created as a duplicate or in error. A record does not need to be linked to be inactivated.
  • The link element is used to assert that two or more Patient resources are both about the same actual person. patient. See below for further discussion
  • There should be only one preferred language (Language.preference = true) per mode of expression.
  • The Contact for a Patient has an element organization , this is for use with guardians or business related contacts where just the organization is relevant.

5.1.3 Patient id's and Patient resource id's

A Patient record's Resource Id can never change. For this reason the identifiers with which humans are concerned (often called MRN - Medical Record Number, or UR - Unit Record) should not be used for the resource's id, since MRN's may change, i.e. as a result of having duplicate records of the same person. patient. Instead they should be represented in the Patient.identifier list where they can be managed. This is also useful for the case of institutions that have acquired multiple numbers because of mergers of patient record systems over time.

5.1.4 Linking Patients

The link element is used to assert that patient resources refer to the same person. patient. This element is used to support three distinct scenario's the following scenarios where multiple patient records of the same person exist:

5.1.4.1 Duplicate Patient records

Managing Patient registration is a well known difficult problem. Around 2% of registrations are in error, mostly duplicate records. Sometimes the duplicate record is caught fairly quickly and retired before much data is accumulated. In other cases, substantial amounts of data may accumulate. By using a link of type 'replace', the record containing such a link is marked as a duplicate and the link points forward to a record that should be used instead. Note that the record pointed to may in its turn have been identified as created in error and forward to yet another Patient resource. Records that replace another record, do not point back to the replaced record.

5.1.4.2 Patient record in a Patient index

A Patient record may be present in a system that acts as a Patient Index: it maintains a (summary of) patient data and a list of one or more servers that it are known to hold a more comprehensive and/or authorative record of the same patient. The link type 'refer' is used denote such a link. Note that linked records may contain contradictory information. The record referred to does not point back to the referring record.

5.1.4.3 Distributed Patient record

In a distributed architecture, multiple systems keep separate patient records concerning the same person. patient. These records are not considered duplicates, but contain a distributed, potentially overlapping view of the patient's data. Each such record may have its own focus or maintaining organization and there need not be a sense of one record being more complete or more authorative than another. In such cases, links of type 'seealso' 'see also' can be used to point to other patient records. It is not a requirement that such links are bilateral.

5.1.5 Patient vs. Person vs. Patient.Link

The Person resource on the surface appears to be very similar to the Patient resource, and the usage for it is very similar to using the Patient.Link capability.
The intention of the Person resource is to be able to link instances of resources together that are believed to be the same individual. This includes across resource types, such as RelatedPerson, Practitioner, Patient and even other Person resources.
The Patient Link however is only intended to be used for Patient resources.

The primary use case for the Person resource is to be able to support person registries that do not necessarily have a healthcare context, and are able to identify and quantify confidence levels that this is the same person.
This could include consumer portals where the maintainer of the person information is the actual person themselves.
A system could use the Person entry to cross check changes to information applied to one part of a record to values in another system; e.g., when moving, a consumer updates his contact numbers and address in his person record, and then a Patient Administration system is able to see that this data is changed and prompt the organization to follow up with the patient that was linked to the person record if they want their details updated, or if they no longer need services and they should be cancelled, as they've moved from the area.

5.1.6 Patient.contact vs. RelatedPerson

The contact element on the Patient Resource should be used for storing people to contact information. Where a system has a separate record for other people for purposes other than just the contact details, the RelatedPerson resource should be used.
This includes cases where these related people are actually contributing to the record, and need to be referenced individually (e.g. CarePlan.Participant, Encounter, DocumentReference, Appointment) where the Patient.Contact component cannot be used.

It is not expected that these records will be used for recording the primary care provider; this information should be stored in the Patient.careProvider field.

5.1.7 Merging records

This specification does not specify merge functionality: if multiple patient records are found to be duplicates, they can be linked together, as described above. These links merely express the relationship between records, and in the case of a replacement link, indicate a "master" record. This specification does not mandate that FHIR servers migrate information between such records on finding such a link. Note:

  • Health information administrators may call the process "merging", but it is often implemented as "linking" at the record level
  • Servers are allowed to implement merging/record migration even though it is not mandated.

DSTU Note: We are seeking input from the implementer community on what effect linking/merging/unlinking should have on other functionality such as the GET operation (where the result is the old version of the Patient), searching, reverse includes, etc.; e.g., should observation resources from all linked/merged patients be returned when querying for one of them?
How should an unlink behavior be done? (Assuming that no data was "re-allocated" as part of merge) These suggested updated behaviors could be the subject of a future connectathon.

Feedback here .

5.1.6 5.1.8 Patient Matching using an MPI

A Master Patient Index ( MPI ) is a service used to manage patient identification in a context where multiple patient databases exist. Healthcare applications and middleware use the MPI to match patients between the databases, and as new patient details are encountered. MPIs are highly specialized applications, often tailored extensively to the institution's particular mix of patients. MPIs can also be run on a regional and national basis.

To ask an MPI to match a patient, clients use the "mpi" query , which uses the normal search parameters defined for patient. However, rather than their normal use, they are interpreted as MPI inputs - e.g. instead of requiring that the resources literally contain the search parameters, they are passed to an MPI algorithm of some kind that uses them to determine the most appropriate matches in the patient set.


  GET [base]/Patient?_query=mpi&parameters...

The response from an "mpi" query is a set of patient records, ordered from most likely to least likely. If there are not patient matches, the MPI SHALL return an empty search set with no error, but may include an operation outcome with further advice. All patient records SHALL have a score from 0 to 1, where 1 is the most certain match, along with an extension "patient-mpi-match" that indicates the MPI's position on the match quality:


  <entry> 
    <resource>
      <Patient>
        <!-- patient details -->
      </Patient>
    </resource>
    <search>
      <extension url="http://hl7.org/fhir/StructureDefinition/patient-mpi-match">
        <valueCode value="probable"/>
      </extension>
      <score value="0.80"/>
    </search>
  </entry> 

The patient-mpi-match extension has one of the following codes :

certain This record meets the MPI criteria to be automatically considered as a full match.
probable This record is a close match, but not a certain match. Additional review (e.g. by a human) may be required before using this as a match.
possible This record may be a matching one. Additional review (e.g. by a human) SHOULD be performed before using this as a match.
certainly-not This record is known not to be a match. Note that usually non-matching records are not returned, but in some cases records previously or likely considered as a match may specifically be negated by the MPI.

One optional parameter to the MPI match operation is "userid", which is used to pass the user details from a trusted client to the MPI. This may be used by the MPI to restrict the possible matches that are returned, based on the user's rights. For example, a staff member covered by policies, etc., may well get a different result than a patient trying to find their own record. Note that this parameter is used where the user would not be expected to log in to the MPI directly; whether this is appropriate or not is a deployment choice.

A formal definition for the MPI query is published.

DSTU Note: This is the first draft of this approach, as a result of connectathon testing.

Feedback is sought here .

5.1.9 Search Parameters

Search parameters for this resource. The standard common parameters also apply. See Searching for more information about searching in REST, messaging, and services.

Name Type Description Paths
_id active token The logical resource id associated with Whether the resource (must be supported by all servers) patient record is active Patient.active
_language address token string The language An address in any kind of address/part of the resource patient Patient.address
active address-city token string Whether the patient record is active A city specified in an address Patient.active Patient.address.city
address-country string A country specified in an address Patient.address.country
address-postalcode string A postalCode specified in an address Patient.address.postalCode
address-state string An A state specified in an address Patient.address.state
address-use token A use code specified in any kind of address/part of the patient an address Patient.address Patient.address.use
animal-breed token The breed for animal patients Patient.animal.breed
animal-species token The species for animal patients Patient.animal.species
birthdate date The patient's date of birth Patient.birthDate
careprovider reference Patient's nominated care provider, could be a care manager, not the organization that manages the record Patient.careProvider
( Organization , Practitioner )
deathdate date The date of death has been provided and satisfies this search value Patient.deceasedDateTime
deceased token This patient has been marked as deceased, or as a death date entered Patient.deceased[x]
email token A value in an email contact Patient.telecom(system=email)
family string A portion of the family name of the patient Patient.name.family
gender token Gender of the patient Patient.gender
given string A portion of the given name of the patient Patient.name.given
identifier token A patient identifier Patient.identifier
language token Language code (irrespective of use value) Patient.communication Patient.communication.language
link reference All patients linked to the given patient Patient.link.other
( Patient )
name string A portion of either family or given name of the patient Patient.name
phonetic string A portion of either family or given name using some kind of phonetic matching algorithm provider organization reference The organization at which this person is a patient Patient.managingOrganization
( Organization )
telecom phone token A value in a phone contact Patient.telecom(system=phone)
phonetic string A portion of either family or given name using some kind of phonetic matching algorithm Patient.name
telecom token The value in any kind of telecom details of the patient Patient.telecom
var disqus_shortname = 'fhirdstu';(function() {var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js';(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq); })(); Please enable JavaScript to view the comments powered by Disqus. comments powered by Disqus var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-676355-1']); _gaq.push(['_setDomainName', '.hl7.org']); _gaq.push(['_trackPageview']); (function()