Intégrité référentielle FHIR

Cette page explique le concept d'intégrité référentielle qui concerne les ressources d'un magasin FHIR dans l'API Cloud Healthcare.

Le magasin FHIR applique l'intégrité du référentiel aux références à d'autres ressources du même magasin :

  • Lors de la création, de la mise à jour, ou de l'application d'un correctif d'une ressource, l'opération échouera si le contenu résultant de la ressource contient une référence à une ressource ou à une version de ressource qui n'existe pas.
  • Lors de la suppression d'une ressource, l'opération échoue si d'autres ressources du magasin y font référence.

Vous pouvez désactiver l'intégrité référentielle en paramétrant l'option disableReferentialIntegrity lors de la création du magasin.

Exclusions et limites

La spécification FHIR autorise diverses formes de références, dont certaines ne sont pas couvertes par l'intégrité référentielle :

Certaines méthodes d'API peuvent nuire à l'intégrité référentielle dans certaines conditions :

Un état dans lequel l'intégrité est appliquée, mais qui a été enfreint par l'une des situations précédentes, entraînera le rejet des mises à jour de ressources sur une ressource contenant une référence non valide, sauf si la mise à jour corrige ou supprime toutes les références non valides. Un état de ce type peut également créer des difficultés pour les applications utilisant le magasin qui supposent l'intégrité.

Ressources contenues

La spécification FHIR comporte une contrainte exigeant que chaque ressource contenue soit référencée à partir d'un emplacement de sa ressource conteneur (y compris les références d'autres ressources contenues), et que chaque référence à une ressource contenue soit valide. Cette contrainte est appliquée indépendamment de l'intégrité référentielle et ne peut être désactivée, car elle est définie dans les invariants FHIRPath sur chaque ressource individuelle.