## Profile Comparison between http://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-patient vs https://hl7.fi/fhir/finnish-smart/StructureDefinition/fi-smart-patient

Left: | IPA-Patient (http://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-patient)
Right: | FI SMART Patient (https://hl7.fi/fhir/finnish-smart/StructureDefinition/fi-smart-patient)

### Messages

Error | StructureDefinition.url | Values for url differ: 'http://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-patient' vs 'https://hl7.fi/fhir/finnish-smart/StructureDefinition/fi-smart-patient'
Error | StructureDefinition.version | Values for version differ: '1.1.0' vs '2.0.0-rc2'
Information | StructureDefinition.name | Values for name differ: 'IPAPatient' vs 'FiSMARTPatient'
Information | StructureDefinition.title | Values for title differ: 'IPA-Patient' vs 'FI SMART Patient'
Information | StructureDefinition.status | Values for status differ: 'active' vs 'draft'
Information | StructureDefinition.date | Values for date differ: '2022-08-02' vs '2025-05-11T17:05:15+03:00'
Information | StructureDefinition.publisher | Values for publisher differ: 'HL7 International / Patient Care' vs 'HL7 Finland ry'
Information | StructureDefinition.jurisdiction | Removed the item 'http://unstats.un.org/unsd/methods/m49/m49.htm#001'
Information | StructureDefinition.jurisdiction | Added the item 'urn:iso:std:iso:3166#FI'
Error | StructureDefinition.baseDefinition | Values for baseDefinition differ: 'http://hl7.org/fhir/StructureDefinition/Patient' vs 'https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/fi-base-patient'
Information | StructureDefinition.short | Values for short differ: 'Additional content defined by implementations' vs 'Extension'
Information | StructureDefinition.definition | Values for definition differ: 'May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.' vs 'An Extension'
Information | StructureDefinition.short | Values for short differ: 'An identifier for this patient' vs 'PIC (aka HETU).'
Information | StructureDefinition.definition | Values for definition differ: 'An identifier for this patient.' vs 'When using the official Finnish personal identifier code (PIC, also known as *HETU*), identifier.system SHALL be `urn:oid:1.2.246.21`.'

### Metadata

Name | Value | Comments
--- | --- | ---
abstract | false |
baseDefinition | http://hl7.org/fhir/StructureDefinition/Patient | https://hl7.fi/fhir/finnish-base-profiles/StructureDefinition/fi-base-patient | Values Differ
copyright | Used by permission of HL7 International all rights reserved Creative Commons License |  | Removed the item 'Used by permission of HL7 International all rights reserved Creative Commons License'
date | 2022-08-02 | 2025-05-11T17:05:15+03:00 | Values Differ
description | Minimum expectations for a Patient resource when accessed via a International Patient Access API. This profile describes how applications fetch the Patient resource to check the patient identity and access basic demographics and other administrative information about the patient. | This is the Finnish patient facing profile for the Patient resource. | Values Differ
experimental | false |  | Removed the item 'false'
fhirVersion | 4.0.1 |
jurisdiction |  |
jurisdiction[0] | http://unstats.un.org/unsd/methods/m49/m49.htm#001 |  | Removed the item 'http://unstats.un.org/unsd/methods/m49/m49.htm#001'
jurisdiction[1] |  | urn:iso:std:iso:3166#FI | Added the item 'urn:iso:std:iso:3166#FI'
kind | resource |
name | IPAPatient | FiSMARTPatient | Values Differ
publisher | HL7 International / Patient Care | HL7 Finland ry | Values Differ
purpose |  |
status | active | draft | Values Differ
title | IPA-Patient | FI SMART Patient | Values Differ
type | Patient |
url | http://hl7.org/fhir/uv/ipa/StructureDefinition/ipa-patient | https://hl7.fi/fhir/finnish-smart/StructureDefinition/fi-smart-patient | Values Differ
version | 1.1.0 | 2.0.0-rc2 | Values Differ

### Structure

Name | L Flags | L Card. | L Type | L Description & Constraints | R Flags | R Card. | R Type | R Description & Constraints | Comments
--- | --- | --- | --- | --- | --- | --- | --- | --- | ---
Patient | C | 0..* | Patient | Information about an individual or animal receiving health care services ipa-pat-4: If Patient.link is present, then Patient.active SHALL be present |  | 0..* | FiBasePatient | Information about an individual or animal receiving health care services This profile also imposes the profile IPA-Patient (1.1.0) |
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 |
id |  |  |  |  |  | 0..1 | string | Unique id for inter-element referencing | Added this element
Slices for extension |  |  |  |  |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | Added this element
versionId |  |  |  |  | Σ | 0..1 | id | Version specific identifier | Added this element
lastUpdated |  |  |  |  | Σ | 0..1 | instant | When the resource version last changed | Added this element
source |  |  |  |  | Σ | 0..1 | uri | Identifies where the resource comes from | Added this element
profile |  |  |  |  | Σ | 0..* | canonical(StructureDefinition) | Profiles this resource claims to conform to | Added this element
Slices for security |  |  |  |  | Σ | 0..* | Coding | Information about TURVAKIELTO SHALL be handled in meta.security. Slice: Unordered, Open by value:system Binding: ?? (extensible): Security Labels from the Healthcare Privacy and Security Classification System. | Added this element
tag |  |  |  |  | Σ | 0..* | Coding | Tags applied to this resource Binding: ?? (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones". | Added this element
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
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation |  | 0..1 | Narrative | Text summary of the resource, for human interpretation |
contained |  | 0..* | Resource | Contained, inline Resources |  | 0..* | Resource | Contained, inline Resources |
extension |  | 0..* | Extension | Additional content defined by implementations |  | 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 | SO Σ C | 1..* | Identifier | An identifier for this patient ipa-pat-1: At least one of Patient.identifier.system or Patient.identifier.type or Patient.identifier.assigner SHALL be present
Obligations | Actor
SHALL:explain | Server
SHALL:handle | Client
| S Σ C | 1..* | Identifier | PIC (aka HETU). Slice: Unordered, Open by value:use ipa-pat-1: At least one of Patient.identifier.system or Patient.identifier.type or Patient.identifier.assigner SHALL be present |
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 | secondary | old (If known) Binding: ?? (required): Identifies the purpose for this identifier, if known . | ?!Σ | 0..1 | code | usual | official | temp | secondary | old (If known) Binding: ?? (required): Identifies the purpose for this identifier, if known . |
type | Σ | 0..1 | CodeableConcept | Description of identifier Binding: ?? (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. | Σ | 0..1 | CodeableConcept | Description of identifier Binding: ?? (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. |
system | Σ | 0..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient | Σ | 0..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient |
value | SO Σ | 1..1 | string | The value that is unique within the system. Example General: 123456
Obligations | Actor
SHALL:populate-if-known | Server
| S Σ | 1..1 | string | The value that is unique within the system. Example General: 123456 |
period | Σ | 0..1 | Period | Time period when id is/was valid for use | Σ | 0..1 | Period | Time period when id is/was valid for use |
assigner | Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text) |
active | ?!SO Σ C | 0..1 | boolean | Whether this patient's record is in active use
Obligations | Actor
SHALL:populate-if-known | Server
| ?!S Σ C | 0..1 | boolean | Whether this patient's record is in active use ipa-pat-4: If Patient.link is present, then Patient.active SHALL be present |
name | SO Σ C | 0..* | HumanName | A name associated with the patient ipa-pat-2: Either Patient.name.given and/or Patient.name.family and/or Patient.name.text SHALL be present or a Data Absent Reason Extension SHALL be present. ipa-pat-3: To be usable for a wide range of internationally available applications, the Patient.name.text SHOULD be present.
Obligations | Actor
SHALL:populate-if-known | Server
| S Σ C | 0..* | HumanName | A name associated with the patient ipa-pat-2: Either Patient.name.given and/or Patient.name.family and/or Patient.name.text SHALL be present or a Data Absent Reason Extension SHALL be present. ipa-pat-3: To be usable for a wide range of internationally available applications, the Patient.name.text SHOULD be present. |
telecom | Σ | 0..* | ContactPoint | A contact detail for the individual | Σ | 0..* | ContactPoint | A contact detail for the individual |
gender | SO Σ | 0..1 | code | male | female | other | unknown Binding: ?? (required): The gender of a person used for administrative purposes.
Obligations | Actor
SHALL:populate-if-known | Server
SHALL:handle | Client
| S Σ | 0..1 | code | male | female | other | unknown Binding: ?? (required): The gender of a person used for administrative purposes. |
birthDate | SO Σ | 0..1 | date | The date of birth for the individual
Obligations | Actor
SHALL:populate-if-known | Server
SHALL:handle | Client
| S Σ | 0..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..* | Address | An address for the individual | Σ | 0..* | Address | 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 (civil) status of a patient 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 pat-1: SHALL at least contain a contact's details or a reference to an organization | C | 0..* | BackboneElement | A contact party (e.g. guardian, partner, friend) for the patient pat-1: SHALL at least contain a contact's details or a reference to an organization |
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..* | CodeableConcept | The kind of relationship Binding: ?? (extensible): The nature of the relationship between a patient and a contact person for that patient. |  | 0..* | CodeableConcept | The kind of 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 | A name associated with the contact person |
telecom |  | 0..* | ContactPoint | A contact detail for the person |  | 0..* | ContactPoint | A contact detail for the person |
address |  | 0..1 | Address | Address for the contact person |  | 0..1 | Address | Address for the contact person |
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 | 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
preferred |  | 0..1 | boolean | Language preference indicator |  | 0..1 | boolean | Language preference indicator |
generalPractitioner |  | 0..* | Reference(Organization | Practitioner | PractitionerRole) | Patient's nominated primary care provider |  | 0..* | Reference(FI Base Organization | FI Base Practitioner | FI Base PractitionerRole) | Patient's nominated primary care provider |
managingOrganization | Σ | 0..1 | Reference(Organization) | Organization that is the custodian of the patient record | Σ | 0..1 | Reference(FI Base Organization) | Organization that is the custodian of the patient record |
link | ?!SO Σ C | 0..* | BackboneElement | Link to another patient resource that concerns the same actual person
Obligations | Actor
SHALL:populate-if-known | Server
SHALL:handle | Client
| ?!S Σ C | 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(FI Base 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