Le guide all'implementazione e i profili FHIR assicurano che le risorse in un archivio FHIR siano conformi a criteri definiti specifici. Alcuni esempi di guide all'implementazione includono la US Core Implementation Guide 4.0.0 e la Carin Blue Button Implementation Guide.
Questa pagina spiega come definire, configurare e utilizzare le guide all'implementazione e i profili nei datastore FHIR R4 utilizzando la Guida all'implementazione di base per gli Stati Uniti 4.0.0.
Panoramica
I profili FHIR sono un insieme di regole aggiuntive definite sulla base della specifica FHIR di base che gestiscono il modo in cui diversi sistemi sanitari elaborano le risorse. Puoi importare e attivare i profili FHIR in un archivio FHIR per assicurarti che tutte le risorse in un archivio FHIR soddisfino criteri specifici per la struttura delle risorse e le informazioni acquisite.
Definizioni delle strutture e guide all'implementazione
Puoi importare i profili FHIR per il tuo archivio FHIR inserendo una o più definizioni di strutture raggruppate in una o più guide all'implementazione. Utilizza una definizione di struttura per:
- Definisci la limitazione per un campo in una risorsa FHIR.
- Insiemi di valori di riferimento che collegano sistemi di codici e risorse FHIR.
Utilizza una guida all'implementazione con definizioni di strutture per convalidare le risorse in modo che corrispondano al caso d'uso del software di terze parti.
Ad esempio, supponiamo che il tuo software di terze parti debba essere conforme alla regola finale sull'interoperabilità e sull'accesso dei pazienti dei Centers for Medicare & Medicaid Services (CMS) negli Stati Uniti. Il software di terze parti deve fornire un'API Patient Access conforme ai profili CARIN. Puoi importare e attivare la guida all'implementazione CARIN nel tuo datastore FHIR per convalidare le risorse in base ai profili CARIN. L'importazione e l'attivazione delle guide all'implementazione sono descritte nelle sezioni successive di questa pagina.
Dopo aver importato la guida all'implementazione, puoi attivarla nel tuo datastore FHIR per la convalida delle risorse FHIR. Quando una risorsa FHIR viene aggiornata o aggiunta all'archivio, l'API Cloud Healthcare verifica se corrisponde a una definizione di struttura nella guida all'implementazione. Se la risorsa FHIR corrisponde, viene aggiunta all'archivio. Se la risorsa FHIR non è conforme alle definizioni della struttura nella guida all'implementazione, viene restituito un messaggio di errore e la risorsa FHIR viene rifiutata.
Applicazione della convalida dei dati
L'API Cloud Healthcare applica la convalida dei dati quando vengono utilizzati i seguenti metodi:
projects.locations.datasets.fhirStores.fhir.create
projects.locations.datasets.fhirStores.fhir.update
projects.locations.datasets.fhirStores.fhir.patch
projects.locations.datasets.fhirStores.executeBundle
Flusso di lavoro di convalida del profilo
Il seguente diagramma mostra il flusso di lavoro di convalida per l'aggiunta o l'aggiornamento delle risorse FHIR:
Definisci i tuoi profili FHIR
Le sezioni seguenti descrivono come scaricare le definizioni delle strutture dal software di terze parti e configurare una guida all'implementazione.
Scaricare le risorse per la convalida del profilo
Per assicurarti che le definizioni delle strutture corrispondano alla tua fonte autorevole, devi scaricare le risorse di convalida del profilo, come definizioni delle strutture, guide all'implementazione o insiemi di valori, da una fonte esterna, ad esempio il registro delle guide all'implementazione di FHIR.org. Le origini esterne forniscono un pacchetto contenente tutti i set di valori, i profili, le estensioni, un elenco di pagine e gli URL per ogni guida all'implementazione.
Ad esempio, se il tuo sistema utilizza il profilo del paziente di US Core, puoi scaricare le definizioni della struttura e la guida all'implementazione utilizzata da US Core.
L'API Cloud Healthcare consente la convalida per il seguente tipo di regole di definizione della struttura:
slicing
, con il supporto dei seguenti discriminatori:value
pattern
profile
min/max
type
fixed
pattern
minValue
maxValue
maxLength
binding
, ad eccezione delle seguenti regole:ValueSet.compose.include.filter
ValueSet.compose.exclude
Configura la guida all'implementazione
Dopo aver scaricato le definizioni della struttura, la guida all'implementazione e il set di valori, devi aggiungere i profili utilizzati dalla guida all'implementazione per convalidare le risorse FHIR.
Per configurare la guida all'implementazione, svolgi i seguenti passaggi:
Apri il file della guida all'implementazione scaricato dal fornitore di software di terze parti.
Aggiungi la sezione seguente per includere le definizioni della struttura da convalidare dalla guida all'implementazione:
{ "resourceType": "ImplementationGuide", ... "global": [ { "type": "RESOURCE_TYPE", "profile": "STRUCTURE_DEFINITION_URL" } ] ... }
Sostituisci quanto segue:
- RESOURCE_TYPE: definisce il tipo di risorsa a cui si applica la guida all'implementazione.
- STRUCTURE_DEFINITION_URL: l'URL alla definizione della struttura di origine del profilo, ad esempio il profilo del paziente principale degli Stati Uniti.
Salva il file della guida all'implementazione.
L'esempio seguente mostra i profili Patient e Organization abilitati per la guida all'implementazione di US Core:
"global":[ { "type":"Patient", "profile":"https://hl7.org/fhir/us/core/StructureDefinition/us-core-patient" }, { "type":"Organization", "profile":"https://hl7.org/fhir/us/core/StructureDefinition/us-core-organization" }, ... ]
Carica la guida all'implementazione su Cloud Storage
Dopo aver modificato la guida all'implementazione, devi caricare i seguenti file su Cloud Storage:
- Guida all'implementazione
- Definizioni della struttura
- Set di valori
Dopo il caricamento, puoi utilizzare questi file per convalidare le risorse nel tuo archivo FHIR.
Per caricare la guida all'implementazione su Cloud Storage, completa i seguenti passaggi:
Elimina dalla guida all'implementazione tutti i file non utilizzati dai profili FHIR nell'API Cloud Healthcare.
Ad esempio, se stai implementando la Guida all'implementazione di base per gli Stati Uniti, puoi eliminare i seguenti file:
.DS_Store
ig-r4.json
openapi/.index.json
package.json
Per aggiungere la guida all'implementazione, le definizioni della struttura e i set di valori a Cloud Storage, esegui i seguenti comandi:
gcloud storage cp \ PATH_TO_IMPLEMENTATION_GUIDE \ gs://BUCKET/IMPLEMENTATION_GUIDE_DIRECTORY \ --recursive
Sostituisci quanto segue:
- PATH_TO_IMPLEMENTATION_GUIDE: il percorso della guida all'implementazione sulla tua macchina locale
- BUCKET/IMPLEMENTATION_GUIDE_DIRECTORY: il bucket e la directory in cui memorizzi la guida all'implementazione in Cloud Storage
Importa la guida all'implementazione
Per utilizzare la guida all'implementazione per convalidare i profili nel tuo archivio FHIR, importala nel tuo archivio FHIR come risorsa FHIR.
Gli esempi riportati di seguito mostrano come importare la guida all'implementazione in un archivio FHIR:
gcloud
Per aggiungere la guida all'implementazione come risorsa a un datastore FHIR, esegui il comando
gcloud healthcare fhir-stores import gcs
:
gcloud healthcare fhir-stores import gcs FHIR_STORE_ID \ --dataset=DATASET_ID \ --gcs-uri='gs://BUCKET/IMPLEMENTATION_GUIDE_DIRECTORY/*' \ --content-structure=resource-pretty
Sostituisci quanto segue:
- FHIR_STORE_ID: l'ID del datastore FHIR
- DATASET_ID: l'ID set di dati
- BUCKET/IMPLEMENTATION_GUIDE_DIRECTORY: la posizione della guida all'implementazione in un bucket Cloud Storage
L'output è il seguente:
Request issued for: [FHIR_STORE_ID] Waiting for operation [OPERATION_ID] to complete...done. name: projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID
In questo output:
- PROJECT_ID, LOCATION, DATASET_ID: i valori che hai fornito nella chiamata al metodo
- OPERATION_ID: un identificatore per l'operazione a lunga esecuzione fornita dall'API Cloud Healthcare
Per visualizzare ulteriori dettagli sull'operazione, esegui il comando
gcloud healthcare operations describe
fornendo il valore OPERATION_ID della risposta:
gcloud healthcare operations describe OPERATION_ID \ --dataset=DATASET_ID
L'output è il seguente. Se la risposta contiene done: true
, l'operazione è stata completata. In caso contrario, l'operazione è ancora in esecuzione.
Attendi qualche secondo, quindi esegui di nuovo il comando gcloud healthcare operations describe
.
done: true metadata: '@type': type.googleapis.com/google.cloud.healthcare.v1.OperationMetadata apiMethodName: google.cloud.healthcare.v1.fhir.FhirService.ImportResources createTime: 'CREATE_TIME' endTime: 'END_TIME' name: projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID response: '@type': type.googleapis.com/google.cloud.healthcare.v1.fhir.rest.ImportResourcesResponse fhirStore: projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID
API
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/IMPLEMENTATION_GUIDE_DIRECTORY/*" } }' "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID:import"
Sostituisci quanto segue:
- BUCKET/IMPLEMENTATION_GUIDE_DIRECTORY: la posizione della guida all'implementazione in un bucket Cloud Storage
- PROJECT_ID: l'ID del tuo progetto Google Cloud
- LOCATION: la posizione del set di dati
- DATASET_ID: l'ID set di dati
- FHIR_STORE_ID: l'ID del datastore FHIR
La risposta è la seguente:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID" }
In questo output:
- PROJECT_ID, LOCATION, DATASET_ID: i valori che hai fornito nella chiamata al metodo
- OPERATION_ID: un identificatore per l'operazione a lunga esecuzione fornita dall'API Cloud Healthcare
Per monitorare lo stato dell'operazione,
utilizza il
metodo operations.get
:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID"
Sostituisci quanto segue:
- PROJECT_ID: l'ID del tuo progetto Google Cloud
- LOCATION: la posizione del set di dati
- DATASET_ID: l'ID set di dati
- FHIR_STORE_ID: l'ID del datastore FHIR
- OPERATION_ID: l'ID restituito dall'operazione a lunga esecuzione
L'output è il seguente. Se la risposta contiene "done": true
, l'operazione è stata completata. In caso contrario, l'operazione è ancora in esecuzione.
Attendi qualche secondo e poi richiama di nuovo il metodo operations.get
.
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.healthcare.v1.OperationMetadata", "apiMethodName": "google.cloud.healthcare.v1.fhir.FhirService.ImportResources", "createTime": "CREATE_TIME", "endTime": "END_TIME", "logsUrl": "https://console.cloud.google.com/logs/query/CLOUD_LOGGING_URL", "counter": { "success": "SUCCESS_COUNT" } }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.healthcare.v1.fhir.rest.ImportResourcesResponse", } }
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/IMPLEMENTATION_GUIDE_DIRECTORY/*" } }' ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID:import" | Select-Object -Expand Content
Sostituisci quanto segue:
- BUCKET/IMPLEMENTATION_GUIDE_DIRECTORY: la posizione della guida all'implementazione in un bucket Cloud Storage
- PROJECT_ID: l'ID del tuo progetto Google Cloud
- LOCATION: la posizione del set di dati
- DATASET_ID: l'ID set di dati
- FHIR_STORE_ID: l'ID del datastore FHIR
La risposta è la seguente:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID" }
In questo output:
- PROJECT_ID, LOCATION, DATASET_ID: i valori che hai fornito nella chiamata al metodo
- OPERATION_ID: un identificatore per l'operazione a lunga esecuzione fornita dall'API Cloud Healthcare
Per monitorare lo stato dell'operazione,
utilizza il
metodo operations.get
:
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Get ` -Headers $headers ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID" | Select-Object -Expand Content
Sostituisci quanto segue:
- PROJECT_ID: l'ID del tuo progetto Google Cloud
- LOCATION: la posizione del set di dati
- DATASET_ID: l'ID set di dati
- FHIR_STORE_ID: l'ID del datastore FHIR
- OPERATION_ID: l'ID restituito dall'operazione a lunga esecuzione
L'output è il seguente. Se la risposta contiene "done": true
, l'operazione è stata completata. In caso contrario, l'operazione è ancora in esecuzione.
Attendi qualche secondo e poi richiama di nuovo il metodo operations.get
.
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.healthcare.v1.OperationMetadata", "apiMethodName": "google.cloud.healthcare.v1.fhir.FhirService.ImportResources", "createTime": "CREATE_TIME", "endTime": "END_TIME", "logsUrl": "https://console.cloud.google.com/logs/query/CLOUD_LOGGING_URL", "counter": { "success": "SUCCESS_COUNT" } }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.healthcare.v1.fhir.rest.ImportResourcesResponse", } }
Carica e importa le dipendenze dell'implementazione
Prima di poter attivare la guida all'implementazione, devi assicurarti che tutte le dipendenze della guida siano caricate e importate. Le dipendenze sono definite dal parametro dependsOn
nella guida all'implementazione come segue:
"dependsOn":[
{
"id":"hl7_fhir_uv_bulkdata",
"uri":"http://hl7.org/fhir/uv/bulkdata/ImplementationGuide/hl7.fhir.uv.bulkdata",
"packageId":"hl7.fhir.uv.bulkdata",
"version":"1.0.1"
},
{
"id":"vsac",
"uri":"http://fhir.org/packages/us.nlm.vsac/ImplementationGuide/us.nlm.vsac",
"packageId":"us.nlm.vsac",
"version":"0.3.0"
}
]
Per caricare e importare le dipendenze, segui le istruzioni riportate rispettivamente in Caricare la guida all'implementazione su Cloud Storage e Importare la guida all'implementazione.
Attivare la guida all'implementazione
Per utilizzare una risorsa della guida all'implementazione per convalidare i profili, devi attivare la guida all'implementazione. Se attivi più di una guida all'implementazione, l'API Cloud Healthcare tenta di convalidare i profili in base a tutte le guide all'implementazione. Una risorsa FHIR deve corrispondere a un solo profilo di qualsiasi guida all'implementazione abilitata.
L'API Cloud Healthcare convalida le guide all'implementazione solo quando le attivi. Se modifichi una guida all'implementazione e la riattivi, l'API Cloud Healthcare convalida la guida all'implementazione modificata.
Se rimuovi una guida all'implementazione dopo averla attivata, la guida all'implementazione non avrà più effetto.
Gli esempi riportati di seguito mostrano come attivare la guida all'implementazione per la convalida del profilo in un archivio FHIR esistente:
curl
Per attivare la guida all'implementazione , effettua una richiesta PATCH
e specifica le seguenti informazioni:
- Il nome e la posizione del set di dati principale
- Il nome del datastore FHIR
- Il campo
enabledImplementationGuides
impostato sul percorso della risorsa della guida all'implementazione
L'esempio seguente mostra una richiesta PATCH
che utilizza 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"], "disableProfileValidation": false } }' "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID?updateMask=validationConfig"
Sostituisci quanto segue:
- IMPLEMENTATION_GUIDE_URL: l'URL definito nella proprietà
url
della risorsa ImplementationGuide, ad esempiohttp://hl7.org/fhir/us/core/ImplementationGuide/hl7.fhir.us.core
- PROJECT_ID: l'ID del tuo progetto Google Cloud
- LOCATION: la posizione del set di dati
- DATASET_ID: l'ID set di dati
- FHIR_STORE_ID: l'ID del datastore FHIR
La risposta è la seguente:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID", "validationConfig": { "enabledImplementationGuides": ["IMPLEMENTATION_GUIDE_URL"] } }
PowerShell
Per attivare la guida all'implementazione , effettua una richiesta PATCH
e specifica le seguenti informazioni:
- Il nome e la posizione del set di dati principale
- Il nome del datastore FHIR
- Il campo
enabledImplementationGuides
impostato sul percorso della risorsa della guida all'implementazione
Il seguente esempio mostra una richiesta PATCH
mediante 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"] } }' ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID?updateMask=validationConfig" | Select-Object -Expand Content
Sostituisci quanto segue:
- IMPLEMENTATION_GUIDE_URL: l'URL definito nella proprietà
url
della risorsa ImplementationGuide, ad esempiohttp://hl7.org/fhir/us/core/ImplementationGuide/hl7.fhir.us.core
- PROJECT_ID: l'ID del tuo progetto Google Cloud
- LOCATION: la posizione del set di dati
- DATASET_ID: l'ID set di dati
- FHIR_STORE_ID: l'ID del datastore FHIR
La risposta è la seguente:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID", "validationConfig": { "enabledImplementationGuides": ["IMPLEMENTATION_GUIDE_URL"], }, }
Python
Utilizzare la console Google Cloud per attivare le guide all'implementazione
Quando utilizzi la console Google Cloud per creare o modificare un archivio FHIR, puoi:
- Seleziona le guide all'implementazione predefinite fornite dall'API Cloud Healthcare
- Importa una guida all'implementazione personalizzata da Cloud Storage nel tuo datastore FHIR
Per importare una guida all'implementazione personalizzata:
(Facoltativo) Configura la guida all'implementazione.
Questo passaggio è necessario per aggiungere manualmente l'array
global
alla risorsa della guida all'implementazione. Se scegli di saltare questo passaggio, devi aggiungere l'arrayglobal
quando crei il bundle di transazioni FHIR nel passaggio successivo utilizzando un metodo diverso, ad esempio lo strumento Bundler per le risorse di convalida del profilo FHIR con il flaggenerate_global_array
.Crea un bundle di transazioni FHIR delle risorse di convalida del profilo, che include la guida all'implementazione, le definizioni della struttura e i set di valori.
Puoi creare il bundle di transazioni utilizzando lo strumento Bundler per le risorse di convalida del profilo FHIR.
Carica il bundle di convalida del profilo FHIR in una posizione Cloud Storage.
gcloud storage cp \ PATH_TO_PROFILE_VALIDATION_BUNDLE \ gs://BUCKET/IMPLEMENTATION_GUIDE_DIRECTORY \ --recursive
Sostituisci quanto segue:
- PATH_TO_PROFILE_VALIDATION_BUNDLE: il percorso del bundle di convalida del profilo sulla tua macchina locale
- BUCKET/IMPLEMENTATION_GUIDE_DIRECTORY: la posizione di Cloud Storage in cui deve essere archiviato il bundle
Importa la guida all'implementazione personalizzata dalla posizione Cloud Storage quando crei o modifichi il tuo archivio FHIR.
Convalida le risorse in base a profili specifici
Gli esempi riportati di seguito mostrano come convalidare una risorsa FHIR per un profilo specifico o per tutti i profili definiti per un archivio FHIR. La convalida della risorsa FHIR consente di determinare se la risorsa FHIR è conforme a uno o più profili.
Per convalidare una risorsa FHIR, utilizza il metodo fhir.Resource-validate
.
curl
curl -X POST \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data @RESOURCE_FILE \ 'https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/RESOURCE_TYPE/$validate?profile=PROFILE_URL'
Sostituisci quanto segue:
- RESOURCE_FILE: la posizione di un file contenente la risorsa
- PROJECT_ID: l'ID del tuo progetto Google Cloud
- LOCATION: la posizione del set di dati
- DATASET_ID: l'ID set di dati
- FHIR_STORE_ID: l'ID del datastore FHIR
- PROFILE_URL: l'URL canonico del profilo FHIR, ad esempio
http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient
per una risorsa Patient. In FHIR_STORE_ID deve essere presente una risorsa StructureDefinition con questo URL. Se stai convalidando la risorsa in base ai profili che hai già attivato nel store, non fornire questo parametro di query. - RESOURCE_TYPE: il tipo di risorsa
Se una risorsa è conforme ai profili, viene restituita una risposta simile alla seguente:
{ "issue": [ { "code": "informational", "details": { "text": "success" }, "diagnostics": "success", "severity": "information" } ], "resourceType": "OperationOutcome" }
Se una risorsa non è conforme a un profilo, viene restituito un errore con una risposta simile alla seguente:
{ "issue": [ { "code": "processing", "diagnostics": "Profile http://hl7.org/fhir/StructureDefinition/AuditEvent, Element 'AuditEvent.agent.requestor': minimum required = 1, but only found 0", "location": [ "AuditEvent.agent" ], "severity": "error" } ], "resourceType": "OperationOutcome" }
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 '@RESOURCE_FILE' ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID/fhir/RESOURCE_TYPE/$validate?profile=PROFILE_URL" | Select-Object -Expand Content
Sostituisci quanto segue:
- RESOURCE_FILE: la posizione di un file contenente la risorsa
- PROJECT_ID: l'ID del tuo progetto Google Cloud
- LOCATION: la posizione del set di dati
- DATASET_ID: l'ID set di dati
- FHIR_STORE_ID: l'ID del datastore FHIR
- PROFILE_URL: l'URL canonico del profilo FHIR, ad esempio
http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient
per una risorsa Patient. In FHIR_STORE_ID deve essere presente una risorsa StructureDefinition con questo URL. Se stai convalidando la risorsa in base ai profili che hai già attivato nel store, non fornire questo parametro di query. - RESOURCE_TYPE: il tipo di risorsa
Se una risorsa è convalidata per un profilo, viene restituita una risposta simile alla seguente:
{ "issue": [ { "code": "informational", "details": { "text": "success" }, "diagnostics": "success", "severity": "information" } ], "resourceType": "OperationOutcome" }
Se una risorsa non è convalidata per un profilo, viene restituito un errore con una risposta simile alla seguente:
{ "issue": [ { "code": "processing", "diagnostics": "Profile http://hl7.org/fhir/StructureDefinition/AuditEvent, Element 'AuditEvent.agent.requestor': minimum required = 1, but only found 0", "location": [ "AuditEvent.agent" ], "severity": "error" } ], "resourceType": "OperationOutcome" }