Dichiarazione di conformità FHIR

Gli archivi FHIR all'interno dell'API Cloud Healthcare supportano più versioni della specifica FHIR (Fast Healthcare Interoperability Resources) pubblicata da Health Level 7 International (HL7).

L'API v1 supporta le seguenti versioni:

Quando crei un datastore FHIR, specifichi la versione FHIR come parametro del metodo fhirStores.create. Non puoi modificare la versione FHIR dopo aver creato l'archivio.

L'interfaccia API di ogni datastore è conforme alla versione FHIR dell'archivio. Ad esempio, l'interazione conformance di DSTU2 è diversa da quella di STU3 capabilities, ma entrambe condividono il percorso REST /fhir/metadata, pertanto il percorso restituisce risposte diverse in base alla versione FHIR del datastore.

La funzionalità aggiunta nelle versioni successive di FHIR è disponibile negli archivi che utilizzano le versioni FHIR precedenti se non crea incompatibilità. Ad esempio, l'interazione patch è disponibile su un negozio DSTU2 anche se l'interazione è definita solo a partire da STU3.

Dettagli delle funzionalità supportate nell'API v1 dalla versione FHIR

R4

La dichiarazione di capacità del server indica le parti della specifica supportate.

  • Archiviazione e recupero di tutte le risorse R4, incluso il supporto per gli elementi di estensione. L'API accetta, archivia e restituisce le estensioni su qualsiasi elemento di dati.
  • Sono supportati tutti i metodi nell'API RESTful che utilizzano il tipo di contenuto JSON, ad eccezione di:
    • Le interazioni della cronologia a livello di tipo e di sistema che recuperano la cronologia su più risorse non sono supportate. La cronologia delle risorse può essere recuperata per una sola risorsa alla volta.
    • L'interazione batch/transaction non supporta le operazioni di ricerca all'interno del bundle.
  • Sono supportate la convalida e l'applicazione forzata del profilo.
  • I parametri di ricerca definiti dall'utente, incluse le ricerche di elementi di estensione, sono supportati nell'API v1beta1.
  • Sono supportate tutte le funzionalità di ricerca, ad eccezione di:

    • I parametri di ricerca Group-characteristic-value, Location-near, Bundle-composition e Bundle-message non sono supportati.
    • I parametri di ricerca che eseguono la corrispondenza fonetica non sono supportati.
    • I parametri dei risultati di ricerca _contained, _containedType, _summary=count e _summary=true non sono supportati.
    • Il parametro di ricerca speciale _content cerca in tutti i campi della risorsa a cui fanno riferimento i parametri di ricerca. Sono esclusi i campi che non sono disponibili per la ricerca. Non supporta contenuti AND espliciti (i termini sono implicitamente combinati con AND) o parentesi.
    • I parametri di ricerca speciali _query, _filter e _list non sono supportati.
    • Il parametro _sort, se utilizzato su campi con elementi ripetuti, viene ordinato in base al primo elemento, diverso dalla specifica. Tutti i parametri di ricerca supportati sono idonei per _sort, ad eccezione del parametro di ricerca speciale _content.
    • Il modificatore di ricerca dei token :of-type e il modificatore di ricerca dei riferimenti :identifier non sono supportati.
    • Le ricerche nei riferimenti canonici non sono supportate. I riferimenti canonici vengono trattati come normali riferimenti.
    • Quando utilizzi il parametro _type, puoi utilizzare solo i parametri di ricerca comuni (per tutte le risorse) e non l'intersezione dei tipi di risorsa specificati.
    • È supportato il seguente sottoinsieme di parametri di ricerca composita:

      • DocumentReference-relationship
      • Observation-code-value-concept
      • Observation-code-value-date
      • Observation-code-value-quantity
      • Observation-code-value-string
      • Observation-combo-code-value-concept
      • Observation-combo-code-value-quantity
      • Observation-component-code-value-concept
      • Observation-component-code-value-quantity

      I restanti parametri di ricerca composita non sono supportati.

    • La ricerca con il metodo POST non accetta i parametri application/x-www-form-urlencoded nel corpo della richiesta.

    • Il carattere jolly (*) è supportato per _include, ma non è supportato per _revinclude.

Le aree non supportate includono:

  • La maggior parte delle operazioni estese non viene implementata.
  • Il tipo di contenuti XML non è supportato.
  • L'operazione di patch non supporta la patch XML o la patch FHIRPath.
  • Le richieste HTTP HEAD non sono supportate.

Aree in cui l'API differisce dalla specifica FHIR per consentire la compatibilità con le versioni precedenti:

  • null è accettato per i campi obbligatori
  • È accettato un codice vuoto per i campi obbligatori
  • urn:uuid riferimenti sono consentiti nei bundle batch

STU3

La dichiarazione di capacità del server indica le parti della specifica supportate.

  • Sono supportati l'archiviazione e il recupero di tutte le risorse STU3, incluso il supporto per gli elementi di estensione. L'API accetta, archivia e restituisce le estensioni su qualsiasi elemento di dati.
  • Sono supportati tutti i metodi nell'API RESTful che utilizzano il tipo di contenuto JSON, ad eccezione di:

    • Le interazioni della cronologia a livello di tipo e di sistema che recuperano la cronologia su più risorse non sono supportate. La cronologia delle risorse può essere recuperata per una sola risorsa alla volta.
    • L'interazione batch/transaction non supporta le operazioni di ricerca all'interno del bundle.
  • Sono supportate la convalida e l'applicazione forzata del profilo.

  • I parametri di ricerca definiti dall'utente, incluse le ricerche di elementi di estensione, sono supportati nell'API v1beta1.

  • Sono supportate tutte le funzionalità di ricerca, ad eccezione di:

    • I parametri di ricerca Group-characteristic-value, Sequence-coordinate, Location-near, Location-near-distance, Bundle-composition e Bundle-message non sono supportati.
    • I parametri di ricerca che eseguono la corrispondenza fonetica non sono supportati.
    • I parametri dei risultati di ricerca _contained, _containedType, _summary=count e _summary=true non sono supportati.
    • Il parametro di ricerca speciale _content cerca in tutti i campi della risorsa a cui fanno riferimento i parametri di ricerca. Sono esclusi i campi che non sono ricercabili. Non supporta valori AND espliciti (i termini sono implicitamente combinati con AND) o parentesi.
    • I parametri di ricerca speciali _query, _filter e _list non sono supportati.
    • Il parametro _sort, se utilizzato su campi con elementi ripetuti, viene ordinato in base al primo elemento, diverso dalla specifica. Tutti i parametri di ricerca supportati sono idonei per _sort, ad eccezione del parametro di ricerca speciale _content.
    • La ricerca con il metodo POST non accetta i parametri application/x-www-form-urlencoded nel corpo della richiesta.
    • Il carattere jolly (*) è supportato per _include, ma non è supportato per _revinclude.

Le aree non supportate includono:

  • La maggior parte delle operazioni estese non viene implementata.
  • Il tipo di contenuti XML non è supportato.
  • L'operazione di patch non supporta la patch XML o FHIRPath.

Aree in cui l'API differisce dalla specifica FHIR per consentire la compatibilità con le versioni precedenti:

  • null è accettato per i campi obbligatori
  • È accettato un codice vuoto per i campi obbligatori
  • urn:uuid riferimenti sono consentiti nei bundle batch

DSTU2

La dichiarazione di conformità del server indica le parti della specifica supportate.

  • Sono supportati l'archiviazione e il recupero di tutte le risorse DSTU2, incluso il supporto per gli elementi di estensione. L'API accetta, archivia e restituisce le estensioni su qualsiasi elemento di dati.
  • Sono supportati tutti i metodi nell'API RESTful che utilizzano il tipo di contenuto JSON, ad eccezione di:
    • Le interazioni della cronologia a livello di tipo e di sistema che recuperano la cronologia su più risorse non sono supportate. La cronologia delle risorse può essere recuperata per una sola risorsa alla volta.
    • L'interazione batch/transaction non supporta le operazioni di ricerca all'interno del bundle.
  • Sono supportate la convalida e l'applicazione forzata del profilo.
  • Sono supportate tutte le funzionalità di ricerca, ad eccezione di:
    • I parametri di ricerca Group-characteristic-value, Location-near, Location-near-distance, Bundle-composition, Bundle-message, Coverage-dependent e Coverage-sequence non sono supportati.
    • I parametri di ricerca definiti negli elementi dell'estensione non sono supportati.
    • I parametri di ricerca che eseguono la corrispondenza fonetica non sono supportati.
    • I parametri dei risultati di ricerca _contained, _containedType, _summary=count e _summary=true non sono supportati.
    • Il parametro di ricerca speciale _content cerca in tutti i campi della risorsa a cui fanno riferimento i parametri di ricerca. Sono esclusi i campi che non sono ricercabili. Non supporta valori AND espliciti (i termini sono implicitamente combinati con AND) o parentesi.
    • I parametri di ricerca speciali _query, _filter e _list non sono supportati.
    • Il parametro _sort, se utilizzato su campi con elementi ripetuti, viene ordinato in base al primo elemento, diverso dalla specifica. Tutti i parametri di ricerca supportati sono idonei per _sort, ad eccezione del parametro di ricerca speciale _content.
    • La ricerca con il metodo POST non accetta i parametri application/x-www-form-urlencoded nel corpo della richiesta.
    • Il carattere jolly (*) è supportato per _include, ma non è supportato per _revinclude.

Le aree non supportate includono:

  • La maggior parte delle operazioni estese non viene implementata.
  • I parametri di ricerca definiti dall'utente non sono supportati per DSTU2.
  • Il tipo di contenuti XML non è supportato.

Aree in cui l'API differisce dalla specifica FHIR per consentire la compatibilità con le versioni precedenti:

  • null è accettato per i campi obbligatori
  • È accettato un codice vuoto per i campi obbligatori
  • urn:uuid riferimenti sono consentiti nei bundle batch

Dettagli delle operazioni al di fuori della specifica pubblicata

  • La configurazione del datastore FHIR include un'opzione per notificare un argomento Pub/Sub specificato dall'utente per tutte le modifiche alle risorse nel datastore. Questo meccanismo di notifica è comune a tutti gli archivi dell'API Cloud Healthcare e non è destinato a sostituire le funzionalità degli abbonamenti FHIR (DSTU2, STU3 e R4).
  • L'operazione di esportazione degli archivi FHIR nelle destinazioni di Cloud Storage offre solo un'esportazione collettiva dell'intero datastore. Non è un'implementazione della bozza di specifica dei dati collettivi FHIR.
  • L'operazione di importazione del datastore FHIR non è definita nella specifica.
  • L'operazione Resource-purge che rimuove le versioni cronologiche delle risorse non è definita nella specifica. Questa API potrebbe cambiare in futuro se il processo degli standard o altre implementazioni FHIR convergono su un metodo API diverso per questo caso d'uso.
  • L'endpoint ExecuteBundle accetta bundle history in v1beta1 per creare versioni cronologiche delle risorse.