Fonctionnement du FHIR R4 $davinci-data-export pour HealthLake - AWS HealthLake

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Fonctionnement du FHIR R4 $davinci-data-export pour HealthLake

Il s'agit d'une $davinci-data-export opération FHIR asynchrone qui permet d'exporter les données de la liste d'attribution des membres depuis. AWS HealthLake Cette opération est une version spécialisée de l'$exportopération FHIR standard, conçue spécifiquement pour répondre aux exigences du guide de mise en œuvre de la liste d'attribution des DaVinci membres (ATR).

Fonctionnalités principales

  • Traitement asynchrone : suit le modèle de demande asynchrone FHIR standard

  • Exportation au niveau du groupe : exporte les données relatives aux membres d'une liste d'attribution spécifique (groupe)

  • Gestion spécialisée des ressources : met l'accent sur les ressources liées à l'attribution

  • Filtrage flexible : prend en charge le filtrage par patients, types de ressources et plages de temps

  • Sortie NDJSON : fournit des données au format JSON délimité par de nouvelles lignes

Opération Endpoint

GET [base]/Group/[id]/$davinci-data-export POST [base]/Group/[id]/$davinci-data-export

Paramètres de demande

Paramètre Cardinalité Description
patient 0.. * Membres spécifiques dont les données doivent être exportées. En cas d'omission, tous les membres du groupe sont exportés
_type 0,1 Liste délimitée par des virgules des types de ressources FHIR à exporter
_depuis 0,1 N'incluez que les ressources mises à jour après cette date/heure
Type d'exportation 0,1 Type d'export à effectuer (par défaut : hl7.fhir.us.davinci-atr)

Types de ressource pris en charge

Lorsque vous utilisez le _type paramètre, seuls les types de ressources suivants sont pris en charge :

  • Groupe

  • Patient

  • Couverture

  • RelatedPerson

  • Praticien

  • PractitionerRole

  • Organisation

  • Emplacement

Exemple de demande

Démarrage d'une tâche d'exportation

GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Group/example-group/$davinci-data-export?_type=Group,Patient,Coverage&exportType=hl7.fhir.us.davinci-atr or POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Group/example-group/$davinci-data-export?_type=Group,Patient,Coverage&exportType=hl7.fhir.us.davinci-atr Content-Type: application/json { "DataAccessRoleArn": "arn:aws:iam::444455556666:role/your-healthlake-service-role", "JobName": "attribution-export-job", "OutputDataConfig": { "S3Configuration": { "S3Uri": "s3://your-export-bucket/EXPORT-JOB", "KmsKeyId": "arn:aws:kms:region:444455556666:key/1234abcd-12ab-34cd-56ef-1234567890ab" } } }

Exemple de réponse

{ "datastoreId": "eaee622d8406b41eb86c0f4741201ff9", "jobStatus": "SUBMITTED", "jobId": "48d7b91dae4a64d00d54b70862f33f61" }

Relations avec les ressources

L'opération exporte les ressources en fonction de leurs relations au sein de la liste d'attribution des membres :

Group (Attribution List) ├── Patient (Members) ├── Coverage → RelatedPerson (Subscribers) ├── Practitioner (Attributed Providers) ├── PractitionerRole → Location └── Organization (Attributed Providers)

Sources de ressources

Ressource Emplacement de la source Description
Patient Groupe.membre/entité Les patients membres de la liste d'attribution
Couverture Group.Member.Extension : CoverageReference Couverture ayant abouti à l'adhésion du patient
Organisation group.member.extension : fournisseur attribué Organisations auxquelles les patients sont attribués
Praticien group.member.extension : fournisseur attribué Les patients des praticiens individuels sont attribués à
PractitionerRole group.member.extension : fournisseur attribué Rôles du praticien auxquels les patients sont attribués
RelatedPerson Couverture. Abonné Abonnés de la couverture
Emplacement PractitionerRole.localisation Lieux associés aux rôles des praticiens
Groupe Point final d'entrée La liste d'attribution elle-même

Gestion des emplois

Vérifier le statut du job

GET [base]/export/[job-id]

Annuler une tâche

DELETE [base]/export/[job-id]

Cycle de vie d'une tâche

  • SUBMITTED- Le job a été reçu et mis en file d'attente

  • IN_PROGRESS- Job en cours de traitement actif

  • COMPLETED- Job terminé avec succès, fichiers disponibles au téléchargement

  • FAILED- Job a rencontré une erreur

Format de sortie

  • Format de fichier : NDJSON (JSON délimité par une nouvelle ligne)

  • Organisation des fichiers : fichiers distincts pour chaque type de ressource

  • Extension de fichier : .ndjson

  • Emplacement : compartiment et chemin S3 spécifiés

Gestion des erreurs

L'opération renvoie une mauvaise demande HTTP 400 avec un OperationOutcome pour les conditions suivantes :

Erreurs d'autorisation
  • Autorisations d'accès aux données non valides ou insuffisantes

  • Problèmes d'accès au compartiment S3

  • Problèmes d'accès aux clés KMS

Erreurs de validation des paramètres
  • patientparamètre non formaté comme «Patient/id,Patient/id,... »

  • Références de patients non valides ou patients ne faisant pas partie du groupe

  • exportTypevaleur autre que hl7.fhir.us.davinci-atr

  • _typeparamètre contenant des types de ressources non pris en charge

  • _typeparamètre ne contenant pas les types minimaux requis (groupe, patient, couverture) pour le type d'exportation de hl7.fhir.us.davinci-atr

Erreurs de validation des ressources
  • La ressource de groupe demandée n'existe pas

  • Le groupe a une liste de membres vide

  • Les membres du groupe ne font pas référence à des ressources valides pour les patients

Sécurité et autorisation

  • Les mécanismes d'autorisation FHIR standard s'appliquent

  • Les clients doivent disposer des autorisations de lecture appropriées pour le groupe et les ressources associées

  • Autorisations d'écriture du compartiment S3 requises pour l'emplacement de sortie

  • Autorisations de clé KMS requises si le chiffrement est spécifié

Bonnes pratiques

  • Sélection du type de ressource : demandez uniquement les types de ressources dont vous avez besoin pour minimiser la taille des exportations et le temps de traitement

  • Filtrage basé sur le temps : utilisez un _since paramètre pour les exportations incrémentielles

  • Filtrage des patients : utilisez patient un paramètre lorsque vous n'avez besoin de données que pour des membres spécifiques

  • Surveillance des tâches : vérifiez régulièrement l'état des tâches pour les exportations importantes

  • Gestion des erreurs : implémentez une logique de nouvelle tentative appropriée pour les tâches ayant échoué

Limitations

  • Un maximum de 512 patients peut être spécifié dans le patient paramètre

  • L'exportation est limitée aux opérations au niveau du groupe uniquement

  • Prend uniquement en charge l'ensemble prédéfini de types de ressources liés à l'attribution

  • La sortie est toujours au format NDJSON