Cette page a été traduite par l'API Cloud Translation.
Switch to English

Activer des profils FHIR

Cette page explique comment importer et activer les guides de mise en œuvre FHIR et les profils dans les magasins FHIR.

Présentation

Les profils FHIR sont un ensemble de règles supplémentaires définies en plus de la spécification FHIR de base qui traite la manière dont différents systèmes de santé traitent les ressources. Les profils FHIR peuvent être importés et activés dans un magasin FHIR pour s'assurer que toutes les ressources d'un magasin FHIR répondent à des critères spécifiques concernant la structure des ressources et les informations capturées.

Vous pouvez importer des profils FHIR pour votre magasin FHIR en insérant une ou plusieurs définitions de structure regroupées dans un ou plusieurs guides de mise en œuvre. Une définition de structure définit les contraintes pour un champ dans une ressource FHIR. Les définitions de structure font également référence à des ensembles de valeurs qui associent des systèmes de code et des ressources FHIR. Le guide de mise en œuvre vous permet d'utiliser ces définitions de structure pour valider les ressources afin qu'elles correspondent au cas d'utilisation de votre logiciel tiers.

Par exemple, les logiciels tiers devront peut-être respecter l'interopérabilité des Centers for Medicare & Medicaid (CMS) et la règle finale d'accès aux patients aux États-Unis. Pour ce faire, ils doivent fournir une API d'accès aux patients conforme aux{ 101}Profils CARIN s'affiche en haut de l'écran. Vous pouvez importer et activer le guide de mise en œuvre CARIN dans votre magasin FHIR pour valider les ressources par rapport aux profils CARIN. L'importation et l'activation des guides de mise en œuvre sont décrites dans les sections suivantes de cette page.

Après avoir importé votre guide de mise en œuvre, vous pouvez l'activer dans votre magasin FHIR pour la validation des ressources. Lorsqu'une ressource est mise à jour ou ajoutée au magasin, elle est vérifiée si elle correspond à une définition de structure du guide de mise en œuvre. Si c'est le cas, la ressource est ajoutée au magasin. Si la ressource ne respecte pas les définitions de structure du guide de mise en œuvre, un message d'erreur est renvoyé et la ressource est rejetée.

La validation des données est appliquée lorsque vous utilisez les méthodes suivantes :

Workflow de validation du profil

Le diagramme suivant montre le workflow de validation pour l'ajout ou la mise à jour de ressources FHIR :

fhir-profiles

Définir vos profils FHIR

Les sections suivantes vous expliquent comment télécharger des définitions de structure à partir de votre logiciel tiers et comment configurer un guide de mise en œuvre.

Télécharger vos définitions de structure

Pour vous assurer que vos définitions de structure correspondent à votre source faisant autorité, téléchargez les définitions de structure, les guides de mise en œuvre et les ensembles de valeurs à partir de votre fournisseur de logiciels tiers.

Par exemple, si votre système utilise le profil d'attente du bouton bleu, vous pouvez télécharger les définitions de structure et le guide de mise en œuvre utilisés par le bouton bleu.

L'API Cloud Healthcare permet de valider le type de règles de définition de structure suivant :

  • restriction (sur le type value ou pattern)
  • min/max
  • type
  • fixed
  • modèle
  • minValue
  • maxValue
  • maxLength
  • liaison

Configurer votre guide de mise en œuvre

Après avoir téléchargé vos définitions de structure, votre guide de mise en œuvre et votre ensemble de valeurs, vous devez ajouter les profils qui seront validés par le guide de mise en œuvre.

Pour configurer votre guide de mise en œuvre à utiliser dans votre magasin FHIR, procédez comme suit :

  1. Ouvrez le fichier du guide de mise en œuvre que vous avez téléchargé à partir de votre fournisseur de logiciels tiers.

  2. Ajoutez la section suivante pour inclure les définitions de structure qui doivent être validées par votre guide de mise en œuvre :

    {
        "resourceType": "ImplementationGuide",
        ...
        "global": [
            {
            "type": "RESOURCE_TYPE",
            "profile": "STRUCTURE_DEFINITION_URL"
            }
        ]
        ...
    }
    

    Dans cet exemple, définissez les éléments suivants :

    • type définit le type de ressource.
    • profile renvoie à la définition de la structure source du profil.
  3. Enregistrez le fichier du guide de mise en œuvre.

Importer votre guide de mise en œuvre dans Cloud Storage

Après avoir modifié votre guide de mise en œuvre, vous devez ajouter le guide de mise en œuvre, vos définitions de structure et vos ensembles de valeurs à Cloud Storage afin de pouvoir les utiliser pour valider les ressources de votre magasin FHIR. Pour ajouter le guide de mise en œuvre, les définitions de structure et les ensembles de valeurs à Cloud Storage, exécutez les commandes suivantes :

gsutil cp -r \
   PATH_TO_IMPLEMENTATION_GUIDE \
   gs://BUCKET/IMPLEMENTATION_GUIDE

Importer le guide de mise en œuvre

Pour utiliser le guide de mise en œuvre pour valider les profils dans votre magasin FHIR, vous devez l'importer dans votre magasin en tant que ressource.

Les exemples suivants montrent comment importer votre guide de mise en œuvre dans un magasin FHIR:

gcloud

Pour ajouter votre guide de mise en œuvre en tant que ressource dans un magasin FHIR, exécutez la commande gcloud healthcare fhir-stores import gcs.

L'exemple suivant montre comment ajouter votre guide de mise en œuvre en tant que ressource à un magasin FHIR.

gcloud healthcare fhir-stores import gcs FHIR_STORE_ID \
  --dataset=DATASET_ID \
  --gcs-uri=gs://BUCKET/DIRECTORY/*

API

curl

Pour ajouter votre guide de mise en œuvre en tant que ressource à un magasin FHIR, envoyez une requête POST et spécifiez les informations suivantes:

  • Nom et emplacement de l'ensemble de données parent
  • Le nom du magasin FHIR
  • Emplacement du guide de mise en œuvre dans un bucket Cloud Storage

L'exemple suivant montre une requête POST utilisant curl.

curl -X POST \
    -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    -H "Content-Type: application/json; charset=utf-8" \
    --data '{
      "contentStructure": "RESOURCE_PRETTY",
      "gcsSource": {
        "uri": "gs://BUCKET/DIRECTORY/*"
      }
    }' "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID:import"

Si la requête aboutit, le serveur renvoie la réponse au format JSON :

{
  "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID"
}

PowerShell

Pour ajouter votre guide de mise en œuvre en tant que ressource à un magasin FHIR, envoyez une requête POST et spécifiez les informations suivantes:

  • Nom et emplacement de l'ensemble de données parent
  • Le nom du magasin FHIR
  • Emplacement du guide de mise en œuvre dans un bucket Cloud Storage

L'exemple suivant montre une requête POST utilisant Windows PowerShell.

$cred = gcloud auth application-default print-access-token
$headers = @{ Authorization = "Bearer $cred" }

Invoke-WebRequest `
  -Method Post `
  -Headers $headers `
  -ContentType: "application/json; charset=utf-8" `
  -Body '{
    "contentStructure": "RESOURCE_PRETTY",
    "gcsSource": {
      "uri": "gs://BUCKET/DIRECTORY/*"
    }
  }' `
  -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID:import" | Select-Object -Expand Content

Si la requête aboutit, le serveur renvoie la réponse au format JSON :

{
  "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID"
}

Activer le guide de mise en œuvre

Pour valider un profil à l'aide d'une ressource de guide de mise en œuvre, vous devez l'activer pour la validation. Si vous activez plusieurs guides de mise en œuvre, ces guides sont appliqués conjointement et une ressource ne doit correspondre qu'à un profil issu de tout guide de mise en œuvre activé.

Les exemples suivants montrent comment activer votre guide de mise en œuvre pour la validation de profil:

curl

Pour activer votre guide de mise en œuvre , envoyez une requête PATCH et spécifiez les informations suivantes:

  • Nom et emplacement de l'ensemble de données parent
  • Le nom du magasin FHIR
  • Champ enabledImplementationGuides défini sur le chemin d'accès à la ressource du guide de mise en œuvre

L'exemple suivant montre une requête PATCH utilisant curl.


curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    -H "Content-Type: application/fhir+json;charset=utf-8" \
    --data '{
      "validationConfig": {
          "enabledImplementationGuides": ["IMPLEMENTATION_GUIDE_URL"]
      }
    }' "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID?updateMask=validationConfig"

Si la requête aboutit, le serveur renvoie la réponse au format JSON :

{
  "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID",
  "validationConfig": {
    "enabledImplementationGuides": ["IMPLEMENTATION_GUIDE_URL"],
    "disableProfileValidation": false
  }
}

PowerShell

Pour activer votre guide de mise en œuvre , envoyez une requête PATCH et spécifiez les informations suivantes:

  • Nom et emplacement de l'ensemble de données parent
  • Le nom du magasin FHIR
  • Champ enabledImplementationGuides défini sur le chemin d'accès à la ressource du guide de mise en œuvre

L'exemple suivant montre une requête PATCH utilisant Windows PowerShell.

$cred = gcloud auth application-default print-access-token
$headers = @{ Authorization = "Bearer $cred" }

Invoke-WebRequest `
  -Method Patch `
  -Headers $headers `
  -ContentType: "application/json; charset=utf-8" `
  -Body '{
      "validationConfig": {
          "enabledImplementationGuides": ["IMPLEMENTATION_GUIDE_URL"],
          "disableProfileValidation": false
      }
  }' `
  -Uri "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID?updateMask=validationConfig" | Select-Object -Expand Content

Si la requête aboutit, le serveur renvoie la réponse au format JSON :

{
  "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID",
  "validationConfig": {
    "enabledImplementationGuides": ["IMPLEMENTATION_GUIDE_URL"]
    "disableProfileValidation": false
  },
}