## Profile Comparison between http://hl7.eu/fhir/laboratory/StructureDefinition/Patient-eu-lab vs http://hl7.eu/fhir/base/StructureDefinition/patient-eu-core

Left: | Patient: Person (http://hl7.eu/fhir/laboratory/StructureDefinition/Patient-eu-lab)
Right: | Patient (EU core) (http://hl7.eu/fhir/base/StructureDefinition/patient-eu-core)

### Messages

Error | StructureDefinition.url | Values for url differ: 'http://hl7.eu/fhir/laboratory/StructureDefinition/Patient-eu-lab' vs 'http://hl7.eu/fhir/base/StructureDefinition/patient-eu-core'
Error | StructureDefinition.version | Values for version differ: '0.1.1' vs '2.0.0'
Information | StructureDefinition.name | Values for name differ: 'PatientEuLab' vs 'PatientEuCore'
Information | StructureDefinition.title | Values for title differ: 'Patient: Person' vs 'Patient (EU core)'
Information | StructureDefinition.date | Values for date differ: '2025-03-25T12:00:10+01:00' vs '2026-04-17T18:08:11+02:00'
Information | StructureDefinition.copyright | Values for copyright differ: 'Used by permission of HL7 Europe, all rights reserved Creative Commons License' vs 'Copyright HL7 Europe. Licensed under creative commons public domain (CC0 1.0).'
Error | StructureDefinition.baseDefinition | Values for baseDefinition differ: 'http://hl7.org/fhir/StructureDefinition/Patient' vs 'http://hl7.eu/fhir/base/StructureDefinition/patient-eu'
Information | Patient.language | Example/preferred bindings differ at Patient.language using binding from PatientEuLab
Information | StructureDefinition.definition | Values for definition differ: 'Text representation of the full name. Due to the cultural variance around the world a consuming system may not know how to present the name correctly; moreover not all the parts of the name go in given or family. Creators are therefore strongly encouraged to provide through this element a presented version of the name. Future versions of this guide may require this element' vs 'Text representation of the full name. Due to the cultural variance around the world a consuming system may not know how to present the name correctly; moreover not all the parts of the name go in given or family. Creators are therefore strongly encouraged to provide through this element a presented version of the name. Future versions of this guide may require this element.'
Information | StructureDefinition.short | Values for short differ: 'Family name' vs 'Family name.'
Information | StructureDefinition.definition | Values for definition differ: 'Family name. When more the family is composed by more than one names, this element documents the full composed family name with the proper * name.familyrder. The parts are recorded in the fhater and mother family names extensions.' vs 'The part of a name that links to the genealogy. In some cultures (e.g. Eritrea) the family name of a son is the first name of his father.'
Information | StructureDefinition.short | Values for short differ: 'Given names. Includes middle names' vs 'Given names (not always 'first'). Includes middle names'
Information | StructureDefinition.comment | Values for comment differ: 'If only initials are recorded, they may be used in place of the full name parts. Initials may be separated into multiple given names but often aren't due to paractical limitations. This element is not called 'first name' since given names do not always come first.' vs 'If only initials are recorded, they may be used in place of the full name parts. Initials may be separated into multiple given names but often aren't due to practical limitations. This element is not called 'first name' since given names do not always come first.'
Information | StructureDefinition.comment | Values for comment differ: 'At least an estimated year should be provided as a guess if the real DOB is unknown There is a standard extension 'patient-birthTime' available that should be used where Time is required (such as in maternity/infant care systems).' vs 'At least an estimated year should be provided as a guess if the real DOB is unknown. There is a standard extension 'patient-birthTime' available that should be used where Time is required (such as in maternity/infant care systems).'
Information | StructureDefinition.short | Values for short differ: 'Marital (civil) status of a patient' vs 'Marital status'
Information | StructureDefinition.short | Values for short differ: 'Relationship between a patient and a contact person for that patient' vs 'Contact relationship'
Information | StructureDefinition.short | Values for short differ: 'A name associated with the contact person' vs 'Contact name'
Information | StructureDefinition.short | Values for short differ: 'A contact detail for the person' vs 'Contact details for the person'
Information | StructureDefinition.short | Values for short differ: 'Address for the contact person' vs 'Contact person address'
Information | StructureDefinition.short | Values for short differ: 'The language which can be used to communicate with the patient about his or her health' vs 'Communication language'
Information | Patient.communication.language | Example/preferred bindings differ at Patient.communication.language using binding from PatientEuLab
Information | StructureDefinition.short | Values for short differ: 'Patient's nominated care provider' vs 'Patient's nominated primary care provider.'

### Metadata

Name | Value | Comments
--- | --- | ---
abstract | false |
baseDefinition | http://hl7.org/fhir/StructureDefinition/Patient | http://hl7.eu/fhir/base/StructureDefinition/patient-eu | Values Differ
copyright | Used by permission of HL7 Europe, all rights reserved Creative Commons License | Copyright HL7 Europe. Licensed under creative commons public domain (CC0 1.0). | Values Differ
date | 2025-03-25T12:00:10+01:00 | 2026-04-17T18:08:11+02:00 | Values Differ
description | This profile defines how to represent a human Patient in FHIR for the purpose of this guide. When the ips-pat-1 invariant is satisfied \(Patient.name.given, Patient.name.family or Patient.name.text SHALL be present\) then this profile complies with the IPS patient profile. | This profile introduces essential constraints and extensions for the Patient resource that apply across multiple use cases. When the ips-pat-1 invariant is satisfied \(Patient.name.given, Patient.name.family or Patient.name.text SHALL be present\) then this profile complies with the IPS patient profile. | Values Differ
experimental |  |
fhirVersion | 4.0.1 |
jurisdiction |  |
jurisdiction[0] | http://unstats.un.org/unsd/methods/m49/m49.htm#150 |
kind | resource |
name | PatientEuLab | PatientEuCore | Values Differ
publisher | HL7 Europe |
purpose |  |
status | active |
title | Patient: Person | Patient (EU core) | Values Differ
type | Patient |
url | http://hl7.eu/fhir/laboratory/StructureDefinition/Patient-eu-lab | http://hl7.eu/fhir/base/StructureDefinition/patient-eu-core | Values Differ
version | 0.1.1 | 2.0.0 | Values Differ

### Structure

Name | L Flags | L Card. | L Type | L Description & Constraints | R Flags | R Card. | R Type | R Description & Constraints | Comments
--- | --- | --- | --- | --- | --- | --- | --- | --- | ---
Patient |  | 0..* | Patient | Information about an individual or animal receiving health care services |  | 0..* | PatientEu | Information about an individual or animal receiving health care services |
id | Σ | 0..1 | id | Logical id of this artifact | Σ | 0..1 | id | Logical id of this artifact |
meta | Σ | 0..1 | Meta | Metadata about the resource | Σ | 0..1 | Meta | Metadata about the resource |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
language |  | 0..1 | code | Language of the resource content Binding: ?? (preferred): A human language.
Additional Bindings | Purpose
?? | Max Binding
|  | 0..1 | code | Language of the resource content Binding: ?? (preferred): A human language.
Additional Bindings | Purpose
?? | Max Binding
| Example/preferred bindings differ at Patient.language using binding from PatientEuLab
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements |
contained |  | 0..* | Resource | Contained, inline Resources |  | 0..* | Resource | Contained, inline Resources |
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ?! | 0..* | Extension | Extensions that cannot be ignored |
identifier | Σ | 0..* | Identifier | Patient identifiers | Σ | 0..* | Identifier | Patient identifiers |
active | ?!Σ | 0..1 | boolean | Whether this patient's record is in active use | ?!Σ | 0..1 | boolean | Whether this patient's record is in active use |
name | Σ C | 1..* | ?? | A name associated with the patient Constraints: eu-pat-1 | Σ C | 1..* | HumanName | A name associated with the patient Constraints: eu-pat-1 |
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
Slices for extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |
use | ?!Σ | 0..1 | code | usual | official | temp | nickname | anonymous | old | maiden Binding: ?? (required): The use of a human name. | ?!Σ | 0..1 | code | usual | official | temp | nickname | anonymous | old | maiden Binding: ?? (required): The use of a human name. |
text | Σ | 0..1 | string | Text representation of the full name. | Σ | 0..1 | string | Text representation of the full name. |
family | Σ | 0..1 | string | Family name Example spanish name: Valero Iglesias Example spanish: Valero Iglesias | Σ | 0..1 | string | Family name. Example spanish: Valero Iglesias |
id |  | 0..1 | string | xml:id (or equivalent in JSON) |  |  |  |  | Removed this element
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url |  |  |  |  | Removed this element
value |  | 0..1 | string | Primitive value for string Max Length:1048576 |  |  |  |  | Removed this element
given | Σ | 0..* | string | Given names. Includes middle names This repeating element order: Given Names appear in the correct order for presenting the name Example spanish name: Borja | Σ | 0..* | string | Given names (not always 'first'). Includes middle names This repeating element order: Given Names appear in the correct order for presenting the name |
prefix | Σ | 0..* | string | Parts that come before the name This repeating element order: Prefixes appear in the correct order for presenting the name | Σ | 0..* | string | Parts that come before the name This repeating element order: Prefixes appear in the correct order for presenting the name |
suffix | Σ | 0..* | string | Parts that come after the name This repeating element order: Suffixes appear in the correct order for presenting the name | Σ | 0..* | string | Parts that come after the name This repeating element order: Suffixes appear in the correct order for presenting the name |
period | Σ | 0..1 | Period | Time period when name was/is in use | Σ | 0..1 | Period | Time period when name was/is in use |
telecom | Σ | 0..* | ContactPoint | A contact detail for the patient | Σ | 0..* | ContactPoint | A contact detail for the patient |
gender | Σ | 0..1 | code | Administrative Gender Binding: ?? (required): The gender of a person used for administrative purposes. | Σ | 0..1 | code | Administrative Gender Binding: ?? (required): The gender of a person used for administrative purposes. |
birthDate | Σ | 1..1 | date | The date of birth for the individual | Σ | 1..1 | date | The date of birth for the individual |
deceased[x] | ?!Σ | 0..1 | boolean, dateTime | Indicates if the individual is deceased or not | ?!Σ | 0..1 | boolean, dateTime | Indicates if the individual is deceased or not |
address | Σ | 0..* | ?? | An address for the individual | Σ | 0..* | ?? | An address for the individual |
maritalStatus |  | 0..1 | CodeableConcept | Marital (civil) status of a patient Binding: ?? (extensible): The domestic partnership status of a person. |  | 0..1 | CodeableConcept | Marital status Binding: ?? (extensible): The domestic partnership status of a person. |
multipleBirth[x] |  | 0..1 | boolean, integer | Whether patient is part of a multiple birth |  | 0..1 | boolean, integer | Whether patient is part of a multiple birth |
photo |  | 0..* | Attachment | Image of the patient |  | 0..* | Attachment | Image of the patient |
contact | C | 0..* | BackboneElement | A contact party (e.g. guardian, partner, friend) for the patient | C | 0..* | BackboneElement | A contact party (e.g. guardian, partner, friend) for the patient |
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
extension |  | 0..* | Extension | Additional content defined by implementations |  | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
relationship |  | 0..* | ?? | Relationship between a patient and a contact person for that patient Binding: ?? (extensible): The nature of the relationship between a patient and a contact person for that patient. |  | 0..* | CodeableConcept | Contact relationship Binding: ?? (extensible): The nature of the relationship between a patient and a contact person for that patient. |
name |  | 0..1 | HumanName | A name associated with the contact person |  | 0..1 | HumanName | Contact name |
telecom |  | 0..* | ContactPoint | A contact detail for the person |  | 0..* | ContactPoint | Contact details for the person |
address |  | 0..1 | ?? | Address for the contact person |  | 0..1 | ?? | Contact person address |
gender |  | 0..1 | code | male | female | other | unknown Binding: ?? (required): The gender of a person used for administrative purposes. |  | 0..1 | code | male | female | other | unknown Binding: ?? (required): The gender of a person used for administrative purposes. |
organization | C | 0..1 | Reference(Organization) | Organization that is associated with the contact | C | 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 |  | 0..1 | Period | The period during which this contact person or organization is valid to be contacted relating to this patient |
communication |  | 0..* | BackboneElement | A language which may be used to communicate with the patient about his or her health |  | 0..* | BackboneElement | A language which may be used to communicate with the patient about his or her health |
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
extension |  | 0..* | Extension | Additional content defined by implementations |  | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
language |  | 1..1 | CodeableConcept | The language which can be used to communicate with the patient about his or her health Binding: ?? (preferred): A human language.
Additional Bindings | Purpose
?? | Max Binding
|  | 1..1 | CodeableConcept | Communication language Binding: ?? (preferred): A human language.
Additional Bindings | Purpose
?? | Max Binding
| Example/preferred bindings differ at Patient.communication.language using binding from PatientEuLab
preferred |  | 0..1 | boolean | Language preference indicator |  | 0..1 | boolean | Language preference indicator |
generalPractitioner |  | 0..* | Reference(Organization | Practitioner | PractitionerRole) | Patient's nominated care provider |  | 0..* | Reference(Organization | Practitioner | PractitionerRole) | Patient's nominated primary care provider. |
managingOrganization | Σ | 0..1 | Reference(Organization) | Organization that is the custodian of the patient record | Σ | 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 | ?!Σ | 0..* | BackboneElement | Link to another patient resource that concerns the same actual person |
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
extension |  | 0..* | Extension | Additional content defined by implementations |  | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
other | Σ | 1..1 | Reference(Patient | RelatedPerson) | The other patient or related person resource that the link refers to | Σ | 1..1 | Reference(Patient | RelatedPerson) | The other patient or related person resource that the link refers to |
type | Σ | 1..1 | code | replaced-by | replaces | refer | seealso Binding: ?? (required): The type of link between this patient resource and another patient resource. | Σ | 1..1 | code | replaced-by | replaces | refer | seealso Binding: ?? (required): The type of link between this patient resource and another patient resource. |
Documentation for this format