I profili e le guide all'implementazione di FHIR assicurano che le risorse in un datastore FHIR siano conformi a criteri specifici definiti. 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 guide e profili di implementazione negli archivi FHIR R4 utilizzando la Guida all'implementazione di base degli Stati Uniti 4.0.0.
Panoramica
I profili FHIR sono un insieme di regole aggiuntive definite in aggiunta alla specifica FHIR di base e che gestiscono il modo in cui i diversi sistemi sanitari elaborano le risorse. Puoi importare e abilitare i profili FHIR in un datastore FHIR per assicurarti che tutte le risorse in un datastore FHIR soddisfino criteri specifici per la struttura delle risorse e le informazioni acquisite.
Definizioni della struttura e guide all'implementazione
Puoi importare i profili FHIR per il tuo datastore FHIR inserendo una o più definizioni di struttura raggruppate in una o più guide all'implementazione. Utilizza una definizione di struttura per:
- Definisci il vincolo per un campo in una risorsa FHIR.
- Insiemi di valori di riferimento che collegano i sistemi di codice e le risorse FHIR.
Puoi utilizzare una guida all'implementazione con le definizioni della struttura per convalidare le risorse in modo che corrispondano al caso d'uso del tuo software di terze parti.
Ad esempio, supponi che il software di terze parti debba essere conforme alla regola finale dell'interoperabilità e dell'accesso dei pazienti (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 di CARIN nel tuo datastore FHIR per convalidare le risorse rispetto 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 abilitarla 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, la risorsa FHIR viene aggiunta al datastore. 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 seguenti sezioni descrivono come scaricare le definizioni della struttura da un software di terze parti e configurare una guida all'implementazione.
Scarica le risorse per la convalida del profilo
Per assicurarti che le definizioni della struttura corrispondano alla fonte ufficiale, devi scaricare le risorse di convalida del profilo, ad esempio definizioni della struttura, guide all'implementazione o set di valori, da una fonte esterna, ad esempio il registro di 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 sistema utilizza il profilo paziente US Core, puoi scaricare le definizioni della struttura e la guida all'implementazione utilizzate da US Core.
L'API Cloud Healthcare consente la convalida per i seguenti tipi 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 nella guida all'implementazione per convalidare le risorse FHIR.
Per configurare la guida all'implementazione, segui questi passaggi:
Apri il file della guida all'implementazione che hai scaricato dal fornitore di software di terze parti.
Aggiungi la seguente sezione per includere le definizioni della struttura che devono essere convalidate 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 è applicabile la guida all'implementazione.
- STRUCTURE_DEFINITION_URL: l'URL della definizione della struttura di origine del profilo, ad esempio il profilo paziente principale degli Stati Uniti.
Salva il file della guida all'implementazione.
L'esempio seguente mostra i profili paziente e organizzazione abilitati per la guida all'implementazione 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 in Cloud Storage
Dopo aver modificato la guida all'implementazione, devi caricare i seguenti file in Cloud Storage:
- La guida all'implementazione
- Definizioni della struttura
- Insiemi di valori
Dopo il caricamento, puoi utilizzare questi file per convalidare le risorse nel tuo datastore FHIR.
Per caricare la guida all'implementazione in Cloud Storage, segui questi passaggi:
Elimina dalla guida all'implementazione tutti i file che non sono utilizzati dai profili FHIR nell'API Cloud Healthcare.
Ad esempio, se stai implementando la guida all'implementazione principale degli 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 gli insiemi di valori a Cloud Storage, esegui questi comandi:
gsutil cp -r \ PATH_TO_IMPLEMENTATION_GUIDE \ gs://BUCKET/IMPLEMENTATION_GUIDE_DIRECTORY
Sostituisci quanto segue:
- PATH_TO_IMPLEMENTATION_GUIDE: il percorso della guida all'implementazione sulla tua macchina locale
- BUCKET/IMPLEMENTATION_GUIDE_DIRECTORY: bucket e directory in cui è archiviata la guida all'implementazione in Cloud Storage
Importa la guida all'implementazione
Per utilizzare la guida all'implementazione per convalidare i profili nel datastore FHIR, importalo nel datastore FHIR come risorsa FHIR.
I seguenti esempi mostrano come importare la guida all'implementazione in un datastore 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 datastore FHIR
- DATASET_ID: l'ID del 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 forniti nella chiamata al metodo
- OPERATION_ID: un identificatore per l'operazione a lunga esecuzione fornito dall'API Cloud Healthcare
Per visualizzare ulteriori dettagli dell'operazione, esegui il comando gcloud healthcare operations describe
, fornendo il valore OPERATION_ID dalla risposta:
gcloud healthcare operations describe OPERATION_ID \ --dataset=DATASET_ID
L'output è il seguente. Se la risposta contiene done: true
, l'operazione è completata. In caso contrario, l'operazione è ancora in esecuzione. Attendi qualche secondo ed 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 del set di dati
- FHIR_STORE_ID: l'ID 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 forniti nella chiamata al metodo
- OPERATION_ID: un identificatore per l'operazione a lunga esecuzione fornito 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 del set di dati
- FHIR_STORE_ID: l'ID datastore FHIR
- OPERATION_ID: l'ID restituito dall'operazione a lunga esecuzione
L'output è il seguente. Se la risposta contiene "done": true
, l'operazione è completata. In caso contrario, l'operazione è ancora in esecuzione. Attendi qualche secondo, quindi chiama 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 del set di dati
- FHIR_STORE_ID: l'ID 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 forniti nella chiamata al metodo
- OPERATION_ID: un identificatore per l'operazione a lunga esecuzione fornito 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 del set di dati
- FHIR_STORE_ID: l'ID datastore FHIR
- OPERATION_ID: l'ID restituito dall'operazione a lunga esecuzione
L'output è il seguente. Se la risposta contiene "done": true
, l'operazione è completata. In caso contrario, l'operazione è ancora in esecuzione. Attendi qualche secondo, quindi chiama 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 rispettivamente le istruzioni riportate in Caricare la guida all'implementazione in Cloud Storage e Importare la guida all'implementazione.
Attiva 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 abiliti. Se modifichi una guida all'implementazione e la abiliti di nuovo, l'API Cloud Healthcare convalida la guida all'implementazione modificata.
Se rimuovi una guida all'implementazione dopo averla abilitata, la guida verrà interrotta.
I seguenti esempi mostrano come abilitare la guida all'implementazione per la convalida del profilo su un datastore 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 padre
- Il nome del datastore FHIR
- Il campo
enabledImplementationGuides
impostato sul percorso della risorsa della guida all'implementazione
Il seguente esempio 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 del set di dati
- FHIR_STORE_ID: l'ID 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 padre
- 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 del set di dati
- FHIR_STORE_ID: l'ID 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 abilitare le guide all'implementazione
Quando utilizzi la console Google Cloud per creare o modificare un datastore FHIR, puoi fare quanto segue:
- 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 creerai il pacchetto 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 pacchetto di transazioni FHIR delle risorse di convalida del profilo, che include la guida all'implementazione, le definizioni della struttura e gli insiemi 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 località di Cloud Storage.
gsutil cp -r \ PATH_TO_PROFILE_VALIDATION_BUNDLE \ gs://BUCKET/IMPLEMENTATION_GUIDE_DIRECTORY
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 località di Cloud Storage in cui deve essere archiviato il bundle
Importa la guida all'implementazione personalizzata dalla località di Cloud Storage quando crei o modifichi il datastore FHIR.
Convalida le risorse in base a profili specifici
I seguenti esempi mostrano come convalidare una risorsa FHIR per un profilo specifico o per tutti i profili definiti per un datastore 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 del set di dati
- FHIR_STORE_ID: l'ID 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 Paziente. FHIR_STORE_ID deve avere una risorsa StructuredDefinition con questo URL. Se stai convalidando la risorsa sui profili che hai già abilitato nell'archivio, 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 del set di dati
- FHIR_STORE_ID: l'ID 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 Paziente. FHIR_STORE_ID deve avere una risorsa StructuredDefinition con questo URL. Se stai convalidando la risorsa sui profili che hai già abilitato nell'archivio, non fornire questo parametro di query. - RESOURCE_TYPE: il tipo di risorsa
Se una risorsa viene 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 viene 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" }