Convalida delle risorse FHIR con $validate - AWS HealthLake

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Convalida delle risorse FHIR con $validate

AWS HealthLake ora supporta il $validate funzionamento delle risorse FHIR, consentendoti di convalidare una risorsa rispetto alle specifiche FHIR e di verificarne la conformità a un profilo specifico o a una definizione di risorsa di base senza eseguire alcuna operazione di storage. Questa operazione è particolarmente utile quando è necessario:

  • Convalidare i requisiti di conformità FHIR CMS

  • Testa le risorse prima di utilizzarle in produzione

  • Fornisci feedback di convalida in tempo reale mentre gli utenti modificano i dati clinici

  • Riduci gli invii di dati non validi per crearli e aggiornarli APIs

Utilizzo

L'$validateoperazione può essere richiamata sulle risorse FHIR utilizzando i metodi POST:

Operazioni supportate

POST [base]/[type]/[id]/$validate POST [base]/[type]/$validate

Payload supportati

Risorsa di parametri

HealthLake supporta i seguenti $validate parametri FHIR:

Parametro Tipo Campo obbligatorio Descrizione
resource Risorsa La risorsa da convalidare
profile canonico No URL canonico del profilo con cui eseguire la convalida
mode code No Modalità di convalida:, oppure create update
Risorsa diretta con parametri di interrogazione

Parametro Tipo Campo obbligatorio Descrizione
profile canonico No URL canonico del profilo con cui eseguire la convalida
mode code No Modalità di convalida:, oppure create update

Esempi

Richiesta POST di risorsa con payload ID e parametri

POST [base]/Patient/example-patient/$validate Content-Type: application/fhir+json { "resourceType": "Parameters", "parameter": [ { "name": "resource", "resource": { "resourceType": "Patient", "id": "example-patient", "name": [ { "family": "Smith", "given": ["John"] } ], "gender": "male", "birthDate": "1990-01-01" } }, { "name": "profile", "valueCanonical": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient" }, { "name": "mode", "valueString": "create" } ] }
Richiesta POST per il tipo di risorsa e il payload dei parametri

POST [base]/Patient/$validate Content-Type: application/fhir+json { "resourceType": "Parameters", "parameter": [ { "name": "resource", "resource": { "resourceType": "Patient", "name": [ { "family": "Doe", "given": ["Jane"] } ], "gender": "female", "birthDate": "1985-05-15" } }, { "name": "profile", "valueCanonical": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient" }, { "name": "mode", "valueString": "update" } ] }
Richiesta di risorsa POST con ID e payload diretto della risorsa

POST [base]/Patient/example-patient/$validate?profile=http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient&mode=create Content-Type: application/fhir+json { "resourceType": "Patient", "id": "example-patient", "name": [ { "family": "Smith", "given": ["John"] } ], "gender": "male", "birthDate": "1990-01-01" }
Richiesta POST per tipo di risorsa e payload diretto della risorsa

POST [base]/Patient/$validate?profile=http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient&mode=create Content-Type: application/fhir+json { "resourceType": "Patient", "id": "example-patient", "name": [ { "family": "Smith", "given": ["John"] } ], "gender": "male", "birthDate": "1990-01-01" }
Risposta di esempio

L'operazione restituisce una OperationOutcome risorsa con risultati di convalida:

{ "resourceType": "OperationOutcome", "issue": [ { "severity": "information", "code": "informational", "diagnostics": "Validation successful" } ] }
Esempio di risposta con errori di convalida

{ "resourceType": "OperationOutcome", "issue": [ { "severity": "error", "code": "required", "details": { "text": "Missing required element" }, "diagnostics": "Patient.identifier is required by the US Core Patient profile", "location": [ "Patient.identifier" ] }, { "severity": "warning", "code": "code-invalid", "details": { "text": "Invalid code value" }, "diagnostics": "The provided gender code is not from the required value set", "location": [ "Patient.gender" ] } ] }

Comportamento

L'$validateoperazione:

  1. Convalida la risorsa rispetto alla specifica FHIR e alla definizione della risorsa di base

  2. Verifica la conformità ai profili specificati quando viene fornito il parametro profile

  3. Esegue la convalida in base alla modalità specificata (o) create update

  4. Restituisce risultati di convalida dettagliati, inclusi errori, avvisi e messaggi informativi

  5. Non esegue alcuna operazione di archiviazione, solo convalida

  6. Restituisce HTTP 200 OK quando è possibile eseguire la convalida, indipendentemente dal fatto che vengano rilevati problemi di convalida

Modalità di convalida

  • create: convalida la risorsa come se fosse in fase di creazione (nuova risorsa)

  • update: convalida la risorsa come se fosse in fase di aggiornamento (risorsa esistente)

Gestione errori

L'operazione restituisce:

  • 200 OK: la convalida è stata eseguita correttamente (indipendentemente dal risultato della convalida)

  • 400 Bad Request: formato o parametri della richiesta non validi

  • 404 Not Found: Tipo di risorsa o profilo non trovato

Per ulteriori informazioni sulle specifiche $validate operative, consulta la documentazione delle risorse $validate FHIR R4.