## Profile Comparison between https://hl7.fr/ig/fhir/core/StructureDefinition/fr-core-observation-saturation-oxygen vs https://hl7.fr/ig/fhir/core/StructureDefinition/fr-core-observation-saturation-oxygen

Left: | FR Core Observation Oxygen Saturation Profile (https://hl7.fr/ig/fhir/core/StructureDefinition/fr-core-observation-saturation-oxygen)
Right: | FR Core Observation Oxygen Saturation Profile (https://hl7.fr/ig/fhir/core/StructureDefinition/fr-core-observation-saturation-oxygen)

### Messages

Error | StructureDefinition.version | Values for version differ: '2.2.0-ballot-2' vs '2.2.0'
Information | StructureDefinition.date | Values for date differ: '2026-01-29T09:40:58+01:00' vs '2026-03-25T18:02:37+01:00'
Information | StructureDefinition.jurisdiction | Removed the item 'urn:iso:std:iso:3166#FRA'
Information | StructureDefinition.jurisdiction | Added the item 'urn:iso:std:iso:3166#FR'

### Metadata

Name | Value | Comments
--- | --- | ---
abstract | false |
baseDefinition | http://hl7.org/fhir/StructureDefinition/oxygensat|4.0.1 |
copyright |  |
date | 2026-01-29T09:40:58+01:00 | 2026-03-25T18:02:37+01:00 | Values Differ
description | French profile for Oxygen saturation in Arterial blood. Profil de la saturation en oxygène du sang artériel. |
experimental |  |
fhirVersion | 4.0.1 |
jurisdiction |  |
jurisdiction[0] | urn:iso:std:iso:3166#FRA |  | Removed the item 'urn:iso:std:iso:3166#FRA'
jurisdiction[1] |  | urn:iso:std:iso:3166#FR | Added the item 'urn:iso:std:iso:3166#FR'
kind | resource |
name | FRCoreObservationOxygenSaturationProfile |
publisher | Interop'Santé |
purpose | Measurement of the oxygen saturation in the arterial blood | Mesure de la saturation en oxygène du sang artériel |
status | active |
title | FR Core Observation Oxygen Saturation Profile |
type | Observation |
url | https://hl7.fr/ig/fhir/core/StructureDefinition/fr-core-observation-saturation-oxygen |
version | 2.2.0-ballot-2 | 2.2.0 | Values Differ

### Structure

Nom | Flags G | Card. G | Type G | Description et contraintes G | Flags D | Card. D | Type D | Description et contraintes D | Commentaires
--- | --- | --- | --- | --- | --- | --- | --- | --- | ---
Observation | C | 0..* | observation-oxygensat(4.0.1) | French FHIR Oxygen Saturation Profile | C | 0..* | observation-oxygensat(4.0.1) | French FHIR Oxygen Saturation Profile |
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 |  | 0..1 | string | Unique id for inter-element referencing |
Slices pour extension |  | 0..* | Extension | Additional content defined by implementations Slice: Non ordonné, Ouvert par value:url |  | 0..* | Extension | Additional content defined by implementations Slice: Non ordonné, Ouvert par value:url |
versionId | Σ | 0..1 | id | Version specific identifier | Σ | 0..1 | id | Version specific identifier |
lastUpdated | Σ | 0..1 | instant | When the resource version last changed | Σ | 0..1 | instant | When the resource version last changed |
source | Σ | 0..1 | uri | Identifies where the resource comes from | Σ | 0..1 | uri | Identifies where the resource comes from |
Slices pour profile | Σ | 0..* | canonical(StructureDefinition) | Profiles this resource claims to conform to Slice: Non ordonné, Ouvert par value:$this | Σ | 0..* | canonical(StructureDefinition) | Profiles this resource claims to conform to Slice: Non ordonné, Ouvert par value:$this |
security | Σ | 0..* | Coding | Security Labels applied to this resource Binding: ?? (extensible): Security Labels from the Healthcare Privacy and Security Classification System. | Σ | 0..* | Coding | Security Labels applied to this resource Binding: ?? (extensible): Security Labels from the Healthcare Privacy and Security Classification System. |
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". | Σ | 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". |
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.
Bindings Additionnels | But
?? | Binding Max
|  | 0..1 | code | Language of the resource content Binding: ?? (preferred): A human language.
Bindings Additionnels | But
?? | Binding Max
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 pour extension |  | 0..* | Extension | Extension Slice: Non ordonné, Ouvert par value:url |  | 0..* | Extension | Extension Slice: Non ordonné, Ouvert par value:url |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ?! | 0..* | Extension | Extensions that cannot be ignored |
identifier | Σ | 0..* | Identifier | Business Identifier for observation | Σ | 0..* | Identifier | Business Identifier for observation |
basedOn | Σ | 0..* | Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | Fulfills plan, proposal or order | Σ | 0..* | Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | Fulfills plan, proposal or order |
partOf | S Σ | 0..1 | Reference(FR Core Medication Administration Inhaled Oxygen Profile(2.2.0-ballot-2)) | Part of referenced event | S Σ | 0..1 | Reference(FR Core Medication Administration Inhaled Oxygen Profile(2.2.0)) | Part of referenced event |
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
Slices pour extension |  | 0..* | Extension | Additional content defined by implementations Slice: Non ordonné, Ouvert par value:url |  | 0..* | Extension | Additional content defined by implementations Slice: Non ordonné, Ouvert par value:url |
reference | Σ C | 0..1 | string | Literal reference, Relative, internal or absolute URL | Σ C | 0..1 | string | Literal reference, Relative, internal or absolute URL |
type | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ?? (extensible): Aa resource (or, for logical models, the URI of the logical model). | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") Binding: ?? (extensible): Aa resource (or, for logical models, the URI of the logical model). |
identifier | Σ | 0..1 | Identifier | Logical reference, when literal reference is not known | Σ | 0..1 | Identifier | Logical reference, when literal reference is not known |
display | Σ | 0..1 | string | Text alternative for the resource | Σ | 0..1 | string | Text alternative for the resource |
status | ?!S Σ | 1..1 | code | registered | preliminary | final | amended + Binding: ?? (required) | ?!S Σ | 1..1 | code | registered | preliminary | final | amended + Binding: ?? (required) |
Slices pour category | S | 1..* | CodeableConcept | Classification of type of observation Slice: Non ordonné, Ouvert par value:coding.code, value:coding.system Binding: ?? (preferred): Codes for high level observation categories. | S | 1..* | CodeableConcept | Classification of type of observation Slice: Non ordonné, Ouvert par value:coding.code, value:coding.system Binding: ?? (preferred): Codes for high level observation categories. |
code | S Σ | 1..1 | CodeableConcept | Oxygen Saturation Binding: ?? (extensible): This identifies the vital sign result type. | S Σ | 1..1 | CodeableConcept | Oxygen Saturation Binding: ?? (extensible): This identifies the vital sign result type. |
id |  | 0..1 | string | Unique id for inter-element referencing |  | 0..1 | string | Unique id for inter-element referencing |
Slices pour extension |  | 0..* | Extension | Additional content defined by implementations Slice: Non ordonné, Ouvert par value:url |  | 0..* | Extension | Additional content defined by implementations Slice: Non ordonné, Ouvert par value:url |
Slices pour coding | Σ | 1..* | Coding | Code defined by a terminology system Slice: Non ordonné, Ouvert par value:code, value:system | Σ | 1..* | Coding | Code defined by a terminology system Slice: Non ordonné, Ouvert par value:code, value:system |
text | Σ | 0..1 | string | Plain text representation of the concept | Σ | 0..1 | string | Plain text representation of the concept |
subject | S Σ | 1..1 | Reference(Patient | FR Core Patient Profile(2.2.0-ballot-2)) | Who and/or what the observation is about | S Σ | 1..1 | Reference(Patient | FR Core Patient Profile(2.2.0)) | Who and/or what the observation is about |
focus | Σ | 0..* | Reference(Resource) | What the observation is about, when it is not about the subject of record | Σ | 0..* | Reference(Resource) | What the observation is about, when it is not about the subject of record |
encounter | Σ | 0..1 | Reference(Encounter | FR Core Encounter Profile(2.2.0-ballot-2)) | Healthcare event during which this observation is made | Σ | 0..1 | Reference(Encounter | FR Core Encounter Profile(2.2.0)) | Healthcare event during which this observation is made |
effective[x] | S Σ C | 1..1 | dateTime, Period | Often just a dateTime for Vital Signs | S Σ C | 1..1 | dateTime, Period | Often just a dateTime for Vital Signs |
issued | Σ | 0..1 | instant | Date/Time this version was made available | Σ | 0..1 | instant | Date/Time this version was made available |
performer | Σ | 0..* | Reference(CareTeam | RelatedPerson | FR Core Patient Profile(2.2.0-ballot-2) | FR Core Practitioner Profile(2.2.0-ballot-2) | PractitionerRole | FR Core Organization Profile(2.2.0-ballot-2)) | Who is responsible for the observation | Σ | 0..* | Reference(CareTeam | RelatedPerson | FR Core Patient Profile(2.2.0) | FR Core Practitioner Profile(2.2.0) | PractitionerRole | FR Core Organization Profile(2.2.0)) | Who is responsible for the observation |
Slices pour value[x] | S Σ C | 0..1 | Quantity | Vital Signs value are recorded using the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept. Slice: Non ordonné, Fermé par type:$this | S Σ C | 0..1 | Quantity | Vital Signs value are recorded using the Quantity data type. For supporting observations such as Cuff size could use other datatypes such as CodeableConcept. Slice: Non ordonné, Fermé par type:$this |
dataAbsentReason | S C | 0..1 | CodeableConcept | Why the result is missing Binding: ?? (extensible): Codes specifying why the result (Observation.value[x]) is missing. | S C | 0..1 | CodeableConcept | Why the result is missing Binding: ?? (extensible): Codes specifying why the result (Observation.value[x]) is missing. |
interpretation |  | 0..* | CodeableConcept | High, low, normal, etc. Binding: ?? (extensible): Codes identifying interpretations of observations. |  | 0..* | CodeableConcept | High, low, normal, etc. Binding: ?? (extensible): Codes identifying interpretations of observations. |
note |  | 0..* | Annotation | Comments about the observation |  | 0..* | Annotation | Comments about the observation |
bodySite |  | 0..1 | CodeableConcept | Observed body part Binding: ?? (example) |  | 0..1 | CodeableConcept | Observed body part Binding: ?? (example) |
method |  | 0..1 | CodeableConcept | How it was done Binding: ?? (example): Methods for simple observations. |  | 0..1 | CodeableConcept | How it was done Binding: ?? (example): Methods for simple observations. |
specimen |  | 0..1 | Reference(Specimen) | Specimen used for this observation |  | 0..1 | Reference(Specimen) | Specimen used for this observation |
device |  | 0..1 | Reference(Device | DeviceMetric) | (Measurement) Device |  | 0..1 | Reference(Device | DeviceMetric) | (Measurement) Device |
referenceRange | C | 0..* | BackboneElement | Provides guide for interpretation | C | 0..* | BackboneElement | Provides guide for interpretation |
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 |
low | C | 0..1 | ?? | Low Range, if relevant | C | 0..1 | ?? | Low Range, if relevant |
high | C | 0..1 | ?? | High Range, if relevant | C | 0..1 | ?? | High Range, if relevant |
type |  | 0..1 | CodeableConcept | Reference range qualifier Binding: ?? (preferred): Code for the meaning of a reference range. |  | 0..1 | CodeableConcept | Reference range qualifier Binding: ?? (preferred): Code for the meaning of a reference range. |
appliesTo |  | 0..* | CodeableConcept | Reference range population Binding: ?? (example): Codes identifying the population the reference range applies to. |  | 0..* | CodeableConcept | Reference range population Binding: ?? (example): Codes identifying the population the reference range applies to. |
age |  | 0..1 | Range | Applicable age range, if relevant |  | 0..1 | Range | Applicable age range, if relevant |
text |  | 0..1 | string | Text based reference range in an observation |  | 0..1 | string | Text based reference range in an observation |
hasMember | Σ | 0..* | Reference(QuestionnaireResponse | MolecularSequence | Vital Signs Profile) | Used when reporting vital signs panel components | Σ | 0..* | Reference(QuestionnaireResponse | MolecularSequence | Vital Signs Profile) | Used when reporting vital signs panel components |
derivedFrom | Σ | 0..* | Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | MolecularSequence | Vital Signs Profile) | Related measurements the observation is made from | Σ | 0..* | Reference(DocumentReference | ImagingStudy | Media | QuestionnaireResponse | MolecularSequence | Vital Signs Profile) | Related measurements the observation is made from |
component | S Σ C | 0..* | BackboneElement | Used when reporting systolic and diastolic blood pressure. | S Σ C | 0..* | BackboneElement | Used when reporting systolic and diastolic blood pressure. |
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 |
code | S Σ | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: ?? (extensible): This identifies the vital sign result type. | S Σ | 1..1 | CodeableConcept | Type of component observation (code / type) Binding: ?? (extensible): This identifies the vital sign result type. |
value[x] | S Σ C | 0..1 | Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period | Vital Sign Value recorded with UCUM Binding: ?? (extensible): Common UCUM units for recording Vital Signs. | S Σ C | 0..1 | Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period | Vital Sign Value recorded with UCUM Binding: ?? (extensible): Common UCUM units for recording Vital Signs. |
dataAbsentReason | S C | 0..1 | CodeableConcept | Why the component result is missing Binding: ?? (extensible): Codes specifying why the result (Observation.value[x]) is missing. | S C | 0..1 | CodeableConcept | Why the component result is missing Binding: ?? (extensible): Codes specifying why the result (Observation.value[x]) is missing. |
interpretation |  | 0..* | CodeableConcept | High, low, normal, etc. Binding: ?? (extensible): Codes identifying interpretations of observations. |  | 0..* | CodeableConcept | High, low, normal, etc. Binding: ?? (extensible): Codes identifying interpretations of observations. |
referenceRange |  | 0..* | Voir referenceRange (Observation) | Provides guide for interpretation of component result |  | 0..* | Voir referenceRange (Observation) | Provides guide for interpretation of component result |
Documentation pour ce format