Data Management with FHIR
0.1.0 - ci-build France flag

Data Management with FHIR - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Raw layer

Vue d'ensemble

Cette documentation décrit le schéma de base de données PostgreSQL optimisé pour le stockage des variables du socle EDSH (Entrepôt de Données de Santé en répartition), généré à partir du questionnaire FHIR Questionnaire-UsageCore.json.

Le schéma implémente une architecture relationnelle normalisée permettant de stocker l'ensemble des données de santé core définies dans le questionnaire FHIR, avec un focus sur l'interopérabilité et les performances d'interrogation.

Architecture générale

Le schéma comprend 11 tables principales organisées autour de l'entité centrale patient :

  • patient : Données démographiques et identité
  • patient_adresse : Informations de géolocalisation
  • donnees_pmsi : Données de séjours et prises en charge (table de liaison centrale)
  • diagnostics : Codes diagnostiques CIM-10
  • actes : Actes médicaux et procédures CCAM
  • biologie : Résultats d'examens biologiques consolidés
  • prescription : Prescriptions médicamenteuses
  • administration : Administrations médicamenteuses réelles
  • posologie : Détails de posologie
  • dossier_soins : Observations et mesures cliniques
  • style_vie : Facteurs de mode de vie

Schéma Entité/Relation

Modèle de donnée du DPIModèle de donnée du DPIpatientpatient_id: BIGSERIALnom : VARCHAR(255)prenom : VARCHAR(255)nir : VARCHAR(15)ins : VARCHAR(50)date_naissance : DATEsexe : VARCHAR(20)date_deces : DATEsource_deces : VARCHAR(50)rang_gemellaire : INTEGERcreated_at : TIMESTAMP WITH TIME ZONEupdated_at : TIMESTAMP WITH TIME ZONEpatient_adressepatient_adresse_id: BIGSERIALpatient_id: BIGINTlatitude : DECIMAL(10,7)longitude : DECIMAL(10,7)code_iris : VARCHAR(20)libelle_iris : VARCHAR(200)code_geographique_residence : VARCHAR(10)libelle_geographique_residence : VARCHAR(200)date_recueil : DATEcreated_at : TIMESTAMP WITH TIME ZONEupdated_at : TIMESTAMP WITH TIME ZONEdonnees_pmsipmsi_id: BIGSERIALpatient_id: BIGINTmode_sortie : VARCHAR(100)age_admission : INTEGERdate_debut_sejour : DATEdate_fin_sejour : DATEmode_entree : VARCHAR(100)etablissement : VARCHAR(255)service : VARCHAR(255)unite_fonctionnelle : VARCHAR(255)created_at : TIMESTAMP WITH TIME ZONEupdated_at : TIMESTAMP WITH TIME ZONEdiagnosticsdiagnostic_id: BIGSERIALpatient_id: BIGINTpmsi_id: BIGINTcode_diagnostic : VARCHAR(20)type_diagnostic : VARCHAR(50)libelle_diagnostic : TEXTdate_recueil : DATEcreated_at : TIMESTAMP WITH TIME ZONEupdated_at : TIMESTAMP WITH TIME ZONEactesacte_id: BIGSERIALpatient_id: BIGINTpmsi_id: BIGINTcode_acte : VARCHAR(20)libelle_acte : TEXTdate_acte : TIMESTAMPexecutant : VARCHAR(255)date_recueil : DATEcreated_at : TIMESTAMP WITH TIME ZONEupdated_at : TIMESTAMP WITH TIME ZONEbiologiebiologie_id: BIGSERIALpatient_id: BIGINTcode_loinc : VARCHAR(20)libelle_test : VARCHAR(255)type_examen : VARCHAR(100)valeur : DECIMAL(15,6)unite : VARCHAR(50)valeur_texte : TEXTdate_prelevement : TIMESTAMP WITH TIME ZONEstatut_validation : VARCHAR(50)borne_inf_normale : DECIMAL(15,6)borne_sup_normale : DECIMAL(15,6)laboratoire : VARCHAR(255)created_at : TIMESTAMP WITH TIME ZONEupdated_at : TIMESTAMP WITH TIME ZONEprescriptionprescription_id: BIGSERIALpatient_id: BIGINTprescripteur : VARCHAR(50)denomination : VARCHAR(255)code_atc : VARCHAR(20)voie_administration : VARCHAR(100)date_prescription : DATEdate_debut_prescription : DATEdate_fin_prescription : DATEcreated_at : TIMESTAMP WITH TIME ZONEupdated_at : TIMESTAMP WITH TIME ZONEposologieposologie_id: BIGSERIALprescription_id: BIGINTnombre_prises_par_jour : INTEGERquantite : DECIMAL(10,3)unite_quantite : VARCHAR(20)date_heure_debut : TIMESTAMPdate_heure_fin : TIMESTAMPcreated_at : TIMESTAMP WITH TIME ZONEupdated_at : TIMESTAMP WITH TIME ZONEadministrationadministration_id: BIGSERIALpatient_id: BIGINTprescription_id: BIGINTdenomination : VARCHAR(255)code_atc : VARCHAR(20)voie_administration : VARCHAR(100)quantite : DECIMAL(10,3)unite_quantite : VARCHAR(20)date_heure_debut : TIMESTAMPdate_heure_fin : TIMESTAMPcreated_at : TIMESTAMP WITH TIME ZONEupdated_at : TIMESTAMP WITH TIME ZONEdossier_soinssoin_id: BIGSERIALpatient_id: BIGINTcode_loinc : VARCHAR(20)libelle_test : VARCHAR(255)valeur : DECIMAL(15,6)unite : VARCHAR(50)valeur_code : VARCHAR(50)valeur_texte : TEXTdate_mesure : DATEunite_soins : VARCHAR(255)professionnel : VARCHAR(255)created_at : TIMESTAMP WITH TIME ZONEupdated_at : TIMESTAMP WITH TIME ZONEstyle_viestyle_vie_id: BIGSERIALpatient_id: BIGINTconsommation_tabac : VARCHAR(100)consommation_alcool : VARCHAR(100)consommation_autres_drogues : VARCHAR(100)activite_physique : VARCHAR(100)date_recueil : DATEcreated_at : TIMESTAMP WITH TIME ZONEupdated_at : TIMESTAMP WITH TIME ZONEpatient_idpatient_idpatient_idpatient_idpmsi_idpmsi_idpatient_idpatient_idprescription_idprescription_idpatient_idpatient_idpatient_id

Documentation des Tables

Table patient

Description : Table consolidée des informations démographiques et d'identité patient, combinant les éléments d'identité (linkId: 2958000860428) et de géocodage (linkId: 5491974639955) du questionnaire FHIR.

Colonne Type Contraintes Défaut Description
🔑 patient_id BIGSERIAL PRIMARY KEY - Identifiant unique du patient
nom VARCHAR(255) - - Nom patient (linkId: 8605698058770)
prenom VARCHAR(255) - - Prénom patient (linkId: 6214879623503)
nir VARCHAR(15) CHECK format - Numéro inscription au Répertoire - NIR (linkId: 5711960356160)
ins VARCHAR(50) - - Identité Nationale de Santé - INS (linkId: 3764723550987)
date_naissance DATE CHECK validité - Date de naissance (linkId: 5036133558154)
sexe VARCHAR(20) CHECK ('h', 'f') - Sexe consolidé depuis PMSI (linkId: 3894630481120)
date_deces DATE CHECK cohérence - Date de décès (linkId: 5633552097315)
source_deces VARCHAR(50) - - Source de la date de décès (linkId: 9098810065693)
rang_gemellaire INTEGER CHECK (1-10) - Rang gémellaire du bénéficiaire (linkId: 6931296968515)
created_at TIMESTAMP WITH TIME ZONE - CURRENT_TIMESTAMP Horodatage de création
updated_at TIMESTAMP WITH TIME ZONE - CURRENT_TIMESTAMP Horodatage de dernière modification

Index principaux :

  • idx_patient_nir : Index sur NIR (WHERE nir IS NOT NULL)
  • idx_patient_ins : Index sur INS (WHERE ins IS NOT NULL)
  • idx_patient_nom_prenom : Index composé nom/prénom
  • idx_patient_date_naissance : Index sur date de naissance
  • idx_patient_search : Index GIN pour recherche textuelle française
  • idx_patient_nir_hash : Index de hachage pour recherche exacte NIR
  • idx_patient_ins_hash : Index de hachage pour recherche exacte INS

Table patient_adresse

Description : Informations de géolocalisation et adressage patient (linkId: 5491974639955).

Colonne Type Contraintes Défaut Description
🔑 patient_adresse_id BIGSERIAL PRIMARY KEY - Identifiant unique de l'adresse
🔗 patient_id BIGINT NOT NULL, FK - Référence vers patient
latitude DECIMAL(10,7) CHECK (-90 à 90) - Latitude du domicile patient (linkId: 3709843054556)
longitude DECIMAL(10,7) CHECK (-180 à 180) - Longitude du domicile patient (linkId: 7651448032665)
code_iris VARCHAR(20) - - Code IRIS du lieu de résidence
libelle_iris VARCHAR(200) - - Libellé IRIS du lieu de résidence
code_geographique_residence VARCHAR(10) - - Code géographique de résidence
libelle_geographique_residence VARCHAR(200) - - Libellé géographique de résidence
date_recueil DATE - - Date de recueil de l'information
created_at TIMESTAMP WITH TIME ZONE - CURRENT_TIMESTAMP Horodatage de création
updated_at TIMESTAMP WITH TIME ZONE - CURRENT_TIMESTAMP Horodatage de dernière modification

Index spécialisés :

  • idx_patient_coords_gist : Index spatial GIST pour les coordonnées géographiques
  • idx_patient_adresse_iris : Index sur code IRIS
  • idx_patient_adresse_date : Index composé patient/date de recueil

Table donnees_pmsi

Description : Table centrale des données de séjour PMSI (Programme de médicalisation des systèmes d'information) - point de liaison pour toutes les données cliniques (linkId: 2825244231605).

Colonne Type Contraintes Défaut Description
🔑 pmsi_id BIGSERIAL PRIMARY KEY - Identifiant unique du séjour PMSI
🔗 patient_id BIGINT NOT NULL, FK - Référence vers patient
mode_sortie VARCHAR(100) - - Mode de sortie du séjour
age_admission INTEGER CHECK (0-150) - Âge à l'admission (nécessaire si pas de date de naissance)
date_debut_sejour DATE - - Date de début du séjour
date_fin_sejour DATE CHECK cohérence dates - Date de fin du séjour
mode_entree VARCHAR(100) - - Mode d'entrée dans l'établissement
etablissement VARCHAR(255) - - Établissement de soins
service VARCHAR(255) - - Service médical
unite_fonctionnelle VARCHAR(255) - - Unité fonctionnelle
created_at TIMESTAMP WITH TIME ZONE - CURRENT_TIMESTAMP Horodatage de création
updated_at TIMESTAMP WITH TIME ZONE - CURRENT_TIMESTAMP Horodatage de dernière modification

Index de performance :

  • idx_pmsi_patient_id : Index sur patient_id
  • idx_pmsi_date_debut : Index sur date de début de séjour
  • idx_pmsi_date_fin : Index sur date de fin de séjour
  • idx_pmsi_etablissement : Index sur établissement
  • idx_pmsi_patient_date : Index composé patient/date de début
  • idx_pmsi_covering : Index couvrant avec INCLUDE
  • idx_pmsi_duree_sejour : Index calculé sur la durée de séjour

Table diagnostics

Description : Codes diagnostiques et informations liées aux séjours utilisant les classifications CIM-10 (linkId: 9391816419630).

Colonne Type Contraintes Défaut Description
🔑 diagnostic_id BIGSERIAL PRIMARY KEY - Identifiant unique du diagnostic
🔗 patient_id BIGINT NOT NULL, FK - Référence vers patient
🔗 pmsi_id BIGINT NOT NULL, FK - Référence vers séjour PMSI
code_diagnostic VARCHAR(20) NOT NULL, CHECK longueur - Code diagnostic CIM-10
type_diagnostic VARCHAR(50) - - Type de diagnostic (principal, associé, etc.)
libelle_diagnostic TEXT - - Libellé descriptif du diagnostic
date_recueil DATE CHECK ≤ CURRENT_DATE - Date de recueil de l'information
created_at TIMESTAMP WITH TIME ZONE - CURRENT_TIMESTAMP Horodatage de création
updated_at TIMESTAMP WITH TIME ZONE - CURRENT_TIMESTAMP Horodatage de dernière modification

Index de recherche :

  • idx_diagnostics_pmsi_id : Index sur pmsi_id
  • idx_diagnostics_code : Index sur code diagnostic
  • idx_diagnostics_type : Index sur type de diagnostic
  • idx_diagnostics_pmsi_code : Index composé pmsi/code
  • idx_diagnostics_patient_code : Index composé patient/code/date

Table actes

Description : Actes médicaux et procédures réalisés durant les séjours utilisant les classifications CCAM et autres standards (linkId: 591926901726).

Colonne Type Contraintes Défaut Description
🔑 acte_id BIGSERIAL PRIMARY KEY - Identifiant unique de l'acte
🔗 patient_id BIGINT NOT NULL, FK - Référence vers patient
🔗 pmsi_id BIGINT NOT NULL, FK - Référence vers séjour PMSI
code_acte VARCHAR(20) NOT NULL, CHECK longueur - Code de l'acte médical (CCAM, etc.)
libelle_acte TEXT - - Libellé descriptif de l'acte
date_acte TIMESTAMP CHECK ≤ CURRENT_TIMESTAMP - Date et heure de réalisation de l'acte
executant VARCHAR(255) - - Professionnel exécutant (non prévu dans le socle)
date_recueil DATE CHECK ≤ CURRENT_DATE - Date de recueil de l'information
created_at TIMESTAMP WITH TIME ZONE - CURRENT_TIMESTAMP Horodatage de création
updated_at TIMESTAMP WITH TIME ZONE - CURRENT_TIMESTAMP Horodatage de dernière modification

Index optimisés :

  • idx_actes_pmsi_id : Index sur pmsi_id
  • idx_actes_code : Index sur code d'acte
  • idx_actes_date : Index sur date d'acte
  • idx_actes_date_recueil : Index sur date de recueil
  • idx_actes_pmsi_code : Index composé pmsi/code
  • idx_actes_patient_code : Index composé patient/code/date

Table biologie

Description : Table consolidée des résultats d'examens biologiques, différenciés par codes LOINC et types d'examens incluant fonction rénale, bilan hépatique, hémogramme et autres tests (linkId: 7702944131447).

Colonne Type Contraintes Défaut Description
🔑 biologie_id BIGSERIAL PRIMARY KEY - Identifiant unique du résultat biologique
🔗 patient_id BIGINT NOT NULL, FK - Référence vers patient
code_loinc VARCHAR(20) - - Code LOINC identifiant le test biologique
libelle_test VARCHAR(255) - - Libellé descriptif du test
type_examen VARCHAR(100) CHECK types valides - Type examen: fonction_renale, bilan_hepatique, hemogramme, autres
valeur DECIMAL(15,6) CHECK ≥ 0 - Valeur numérique du résultat
unite VARCHAR(50) - - Unité de mesure
valeur_texte TEXT - - Valeur textuelle du résultat
date_prelevement TIMESTAMP WITH TIME ZONE CHECK ≤ CURRENT_TIMESTAMP - Date et heure du prélèvement
statut_validation VARCHAR(50) CHECK valeurs valides - Statut de validation (en_attente, valide, rejete, en_cours)
borne_inf_normale DECIMAL(15,6) CHECK cohérence bornes - Borne inférieure de normalité
borne_sup_normale DECIMAL(15,6) CHECK cohérence bornes - Borne supérieure de normalité
laboratoire VARCHAR(255) - - Laboratoire d'analyse (non prévu dans le socle)
created_at TIMESTAMP WITH TIME ZONE - CURRENT_TIMESTAMP Horodatage de création
updated_at TIMESTAMP WITH TIME ZONE - CURRENT_TIMESTAMP Horodatage de dernière modification

Index spécialisés pour biologie :

  • idx_biologie_patient_id : Index sur patient_id
  • idx_biologie_code_loinc : Index sur code LOINC
  • idx_biologie_type_examen : Index sur type d'examen
  • idx_biologie_date_prelevement : Index sur date de prélèvement
  • idx_biologie_statut_validation : Index sur statut de validation
  • idx_biologie_patient_loinc : Index composé patient/LOINC
  • idx_biologie_patient_type : Index composé patient/type
  • idx_biologie_covering : Index couvrant avec INCLUDE
  • idx_biologie_loinc_hash : Index de hachage pour recherche exacte LOINC
  • idx_biologie_valeur_non_null : Index partiel sur valeurs non nulles
  • idx_biologie_date_patient : Index optimisé date/patient

Table prescription

Description : Données de prescription médicamenteuse avec codage ATC pour la pharmacovigilance et la recherche clinique (linkId: 817801935685).

Colonne Type Contraintes Défaut Description
🔑 prescription_id BIGSERIAL PRIMARY KEY - Identifiant unique de la prescription
🔗 patient_id BIGINT NOT NULL, FK - Référence vers patient
prescripteur VARCHAR(50) - - Professionnel prescripteur
denomination VARCHAR(255) - - Dénomination du médicament
code_atc VARCHAR(20) - - Code ATC du médicament
voie_administration VARCHAR(100) - - Voie d'administration prévue
date_prescription DATE - - Date de la prescription (non prévu dans le socle)
date_debut_prescription DATE CHECK cohérence dates - Date de début de la prescription
date_fin_prescription DATE CHECK cohérence dates - Date de fin de la prescription
created_at TIMESTAMP WITH TIME ZONE - CURRENT_TIMESTAMP Horodatage de création
updated_at TIMESTAMP WITH TIME ZONE - CURRENT_TIMESTAMP Horodatage de dernière modification

Index de prescription :

  • idx_prescription_patient_id : Index sur patient_id
  • idx_prescription_code_atc : Index sur code ATC
  • idx_prescription_date_prescription : Index sur date de prescription
  • idx_prescription_patient_atc : Index composé patient/ATC
  • idx_prescription_covering : Index couvrant avec INCLUDE
  • idx_prescription_atc_hash : Index de hachage pour recherche exacte ATC
  • idx_prescription_active : Index partiel sur prescriptions actives
  • idx_prescription_period : Index sur période de prescription

Table posologie

Description : Informations détaillées de posologie pour les médicaments (linkId: 6348237104421).

Colonne Type Contraintes Défaut Description
🔑 posologie_id BIGSERIAL PRIMARY KEY - Identifiant unique de la posologie
🔗 prescription_id BIGINT NOT NULL, FK - Référence vers prescription
nombre_prises_par_jour INTEGER CHECK (1-24) - Nombre de prises par jour
quantite DECIMAL(10,3) CHECK > 0 - Quantité par prise
unite_quantite VARCHAR(20) - - Unité de la quantité
date_heure_debut TIMESTAMP CHECK cohérence dates - Date et heure de début
date_heure_fin TIMESTAMP CHECK cohérence dates - Date et heure de fin
created_at TIMESTAMP WITH TIME ZONE - CURRENT_TIMESTAMP Horodatage de création
updated_at TIMESTAMP WITH TIME ZONE - CURRENT_TIMESTAMP Horodatage de dernière modification

Table administration

Description : Données d'exposition médicamenteuse avec codage ATC pour la pharmacovigilance et la recherche clinique, traçant les administrations réelles (linkId: 817801935685).

Colonne Type Contraintes Défaut Description
🔑 administration_id BIGSERIAL PRIMARY KEY - Identifiant unique de l'administration
🔗 patient_id BIGINT NOT NULL, FK - Référence vers patient
🔗 prescription_id BIGINT FK - Référence vers prescription (optionnelle)
denomination VARCHAR(255) - - Dénomination du médicament administré
code_atc VARCHAR(20) - - Code ATC du médicament
voie_administration VARCHAR(100) - - Voie d'administration réelle
quantite DECIMAL(10,3) CHECK > 0 - Quantité administrée
unite_quantite VARCHAR(20) - - Unité de la quantité
date_heure_debut TIMESTAMP CHECK cohérence dates - Date et heure de début d'administration
date_heure_fin TIMESTAMP CHECK cohérence dates - Date et heure de fin d'administration
created_at TIMESTAMP WITH TIME ZONE - CURRENT_TIMESTAMP Horodatage de création
updated_at TIMESTAMP WITH TIME ZONE - CURRENT_TIMESTAMP Horodatage de dernière modification

Index d'administration :

  • idx_administration_patient_id : Index sur patient_id
  • idx_administration_code_atc : Index sur code ATC
  • idx_administration_denomination : Index sur dénomination
  • idx_administration_date_heure_debut : Index sur date de début
  • idx_administration_atc_hash : Index de hachage pour recherche exacte ATC
  • idx_administration_timeline : Index chronologique optimisé

Table dossier_soins

Description : Mesures et observations cliniques incluant signes vitaux, mesures physiques et données de soins infirmiers (linkId: 305831246173).

Colonne Type Contraintes Défaut Description
🔑 soin_id BIGSERIAL PRIMARY KEY - Identifiant unique de l'observation
🔗 patient_id BIGINT NOT NULL, FK - Référence vers patient
code_loinc VARCHAR(20) - - Code LOINC de l'observation
libelle_test VARCHAR(255) - - Libellé de l'observation
valeur DECIMAL(15,6) CHECK ≥ 0 - Valeur numérique mesurée
unite VARCHAR(50) - - Unité de mesure
valeur_code VARCHAR(50) - - Valeur codée
valeur_texte TEXT - - Valeur textuelle
date_mesure DATE CHECK ≤ CURRENT_DATE - Date de la mesure
unite_soins VARCHAR(255) - - Unité de soins (non prévu dans le socle)
professionnel VARCHAR(255) - - Professionnel réalisant la mesure (non prévu dans le socle)
created_at TIMESTAMP WITH TIME ZONE - CURRENT_TIMESTAMP Horodatage de création
updated_at TIMESTAMP WITH TIME ZONE - CURRENT_TIMESTAMP Horodatage de dernière modification

Index de soins :

  • idx_soins_patient_id : Index sur patient_id
  • idx_soins_loinc : Index sur code LOINC
  • idx_soins_date_mesure : Index sur date de mesure
  • idx_dossier_soins_timeline : Index chronologique optimisé

Table style_vie

Description : Informations consolidées sur le mode de vie incluant tabac, alcool, drogues et activité physique (linkId: 1693164086678).

Colonne Type Contraintes Défaut Description
🔑 style_vie_id BIGSERIAL PRIMARY KEY - Identifiant unique du style de vie
🔗 patient_id BIGINT NOT NULL, FK - Référence vers patient
consommation_tabac VARCHAR(100) - - Information sur la consommation de tabac
consommation_alcool VARCHAR(100) - - Information sur la consommation d'alcool
consommation_autres_drogues VARCHAR(100) - - Information sur la consommation d'autres drogues
activite_physique VARCHAR(100) - - Information sur l'activité physique
date_recueil DATE CHECK ≤ CURRENT_DATE - Date de recueil de l'information
created_at TIMESTAMP WITH TIME ZONE - CURRENT_TIMESTAMP Horodatage de création
updated_at TIMESTAMP WITH TIME ZONE - CURRENT_TIMESTAMP Horodatage de dernière modification

Matrice des Relations

Table Source Colonne Table Référencée Colonne Référencée Type de Relation Action DELETE
patient_adresse patient_id patient patient_id 1:N CASCADE
donnees_pmsi patient_id patient patient_id 1:N CASCADE
diagnostics patient_id patient patient_id 1:N CASCADE
diagnostics pmsi_id donnees_pmsi pmsi_id 1:N CASCADE
actes patient_id patient patient_id 1:N CASCADE
actes pmsi_id donnees_pmsi pmsi_id 1:N CASCADE
biologie patient_id patient patient_id 1:N CASCADE
prescription patient_id patient patient_id 1:N CASCADE
posologie prescription_id prescription prescription_id 1:N CASCADE
administration patient_id patient patient_id 1:N CASCADE
administration prescription_id prescription prescription_id 1:N RESTRICT
dossier_soins patient_id patient patient_id 1:N CASCADE
style_vie patient_id patient patient_id 1:N CASCADE

Règles Métier et Contraintes CHECK

Contraintes sur la table patient

  • chk_patient_sexe : Le sexe doit être 'h' (homme) ou 'f' (femme)
  • chk_patient_date_naissance : Date de naissance entre 1900-01-01 et la date courante
  • chk_patient_date_deces : Date de décès postérieure à la date de naissance et ≤ date courante
  • chk_patient_nir_format : Format NIR : 13 à 15 chiffres
  • chk_patient_rang_gemellaire : Rang gémellaire entre 1 et 10

Contraintes sur la table patient_adresse

  • chk_patient_latitude : Latitude entre -90 et 90 degrés
  • chk_patient_longitude : Longitude entre -180 et 180 degrés

Contraintes sur la table donnees_pmsi

  • chk_pmsi_dates : Date de fin de séjour ≥ date de début de séjour
  • chk_pmsi_age_admission : Âge à l'admission entre 0 et 150 ans

Contraintes sur la table biologie

  • chk_biologie_bornes : Borne supérieure ≥ borne inférieure
  • chk_biologie_type_examen : Type d'examen parmi 'fonction_renale', 'bilan_hepatique', 'hemogramme', 'autres'
  • chk_biologie_valeur_positive : Valeur ≥ 0
  • chk_biologie_date_prelevement : Date de prélèvement ≤ timestamp actuel
  • chk_biologie_statut_validation : Statut parmi 'en_attente', 'valide', 'rejete', 'en_cours'

Contraintes sur les médicaments (prescription, administration, posologie)

  • chk_prescription_dates : Date de fin ≥ date de début de prescription
  • chk_administration_dates : Date/heure de fin ≥ date/heure de début
  • chk_administration_quantite : Quantité > 0
  • chk_posologie_prises_jour : Nombre de prises par jour entre 1 et 24
  • chk_posologie_quantite : Quantité > 0
  • chk_posologie_dates : Date/heure de fin ≥ date/heure de début

Contraintes sur les soins et lifestyle

  • chk_soins_valeur_positive : Valeur mesurée ≥ 0
  • chk_soins_date_mesure : Date de mesure ≤ date courante
  • chk_style_vie_date_recueil : Date de recueil ≤ date courante

Contraintes sur les données cliniques

  • chk_diagnostics_code_format : Code diagnostic entre 3 et 20 caractères
  • chk_diagnostics_date_recueil : Date de recueil ≤ date courante
  • chk_actes_code_format : Code acte entre 4 et 20 caractères
  • chk_actes_date_acte : Date d'acte ≤ timestamp actuel
  • chk_actes_date_recueil : Date de recueil ≤ date courante

Documentation générée automatiquement à partir du script DDL PostgreSQL pour les variables du socle EDSH