Dichiarazione di conformità FHIR

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

L'API v1 supporta le seguenti versioni:

Quando crei un archivio FHIR, specifichi la versione FHIR come parametro per il metodo fhirStores.create. Non puoi modificare la versione FHIR dopo la creazione dell'archivio.

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

La funzionalità aggiunta nelle versioni FHIR successive è disponibile nei datastore che utilizzano versioni FHIR precedenti se non crea incompatibilità. Ad esempio, l'interazione patch è disponibile in un negozio DSTU2 anche se è stata definita solo da STU3 in poi.

Dettagli delle funzionalità supportate nell'API v1 in base alla versione FHIR

R4

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

  • Archiviazione e recupero di tutte le risorse R4, incluso il supporto per gli elementi di estensione. L'API accetta, archivia e restituisce estensioni su qualsiasi elemento di dati.
  • Sono supportati tutti i metodi dell'API RESTful che utilizzano il tipo di contenuti JSON, ad eccezione di:
    • Le interazioni con history a livello di tipo e di sistema che recuperano la cronologia in più risorse non sono supportate. La cronologia delle risorse può essere recuperata solo per una risorsa alla volta.
    • L'interazione batch/transaction non supporta le operazioni di ricerca all'interno del bundle.
  • La convalida e l'applicazione forzata dei profili sono supportate.
  • I parametri di ricerca definiti dall'utente, incluse le ricerche negli elementi dell'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 esegue ricerche 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 AND esplicito (i termini sono combinati implicitamente con AND) o parentesi.
    • I parametri di ricerca speciali _query, _filter e _list non sono supportati.
    • Il parametro _sort, se utilizzato in campi con elementi ripetuti, viene ordinato in base al primo elemento; questo è 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 del riferimento :identifier non sono supportati.
    • Le ricerche di riferimenti canonici non sono supportate. I riferimenti canonici vengono trattati come riferimenti normali.
    • Quando utilizzi il parametro _type, possono essere utilizzati solo i parametri di ricerca comuni (per tutte le risorse) e non l'intersezione dei tipi di risorse specificati.
    • È supportato il seguente sottoinsieme di parametri di ricerca compositi:

      • 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 compositi non sono supportati.

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

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

Le aree non supportate includono:

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

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

  • null è accettato per i campi obbligatori
  • Per i campi obbligatori è accettato un codice vuoto
  • I riferimenti a urn:uuid sono consentiti nei pacchetti batch

STU3

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

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

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

  • I parametri di ricerca definiti dall'utente, incluse le ricerche negli elementi dell'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 esegue ricerche 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 AND esplicito (i termini sono combinati implicitamente con AND) o parentesi.
    • I parametri di ricerca speciali _query, _filter e _list non sono supportati.
    • Il parametro _sort, se utilizzato in campi con elementi ripetuti, viene ordinato in base al primo elemento; questo è diverso dalla specifica. Tutti i parametri di ricerca supportati sono idonei per _sort, ad eccezione del parametro di ricerca speciale _content.
    • La ricerca utilizzando il metodo POST non accetta parametri application/x-www-form-urlencoded nel corpo della richiesta.
    • Il carattere jolly (*) è supportato per _include, ma non per _revinclude.

Le aree non supportate includono:

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

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

  • null è accettato per i campi obbligatori
  • Per i campi obbligatori è accettato un codice vuoto
  • I riferimenti a urn:uuid sono consentiti nei pacchetti batch

DSTU2

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

  • Sono supportati lo stoccaggio e il recupero di tutte le risorse DSTU2, incluso il supporto per gli elementi di estensione. L'API accetta, archivia e restituisce estensioni su qualsiasi elemento di dati.
  • Sono supportati tutti i metodi dell'API RESTful che utilizzano il tipo di contenuti JSON, ad eccezione di:
    • Le interazioni con history a livello di tipo e di sistema che recuperano la cronologia in più risorse non sono supportate. La cronologia delle risorse può essere recuperata solo per una risorsa alla volta.
    • L'interazione batch/transaction non supporta le operazioni di ricerca all'interno del bundle.
  • La convalida e l'applicazione forzata del profilo sono supportate.
  • Tutte le funzionalità di ricerca sono supportate, 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 di 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 esegue ricerche 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 AND esplicito (i termini sono combinati implicitamente con AND) o parentesi.
    • I parametri di ricerca speciali _query, _filter e _list non sono supportati.
    • Il parametro _sort, se utilizzato in campi con elementi ripetuti, ordina in base al primo elemento; questo è diverso dalla specifica. Tutti i parametri di ricerca supportati sono idonei per _sort, ad eccezione del parametro di ricerca speciale _content.
    • La ricerca utilizzando il metodo POST non accetta parametri application/x-www-form-urlencoded nel corpo della richiesta.
    • Il carattere jolly (*) è supportato per _include, ma non per _revinclude.

Le aree non supportate includono:

  • La maggior parte delle operazioni estese non è 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 si discosta dalla specifica FHIR per consentire la compatibilità con le versioni precedenti:

  • null è accettato per i campi obbligatori
  • Per i campi obbligatori è accettato un codice vuoto
  • I riferimenti a urn:uuid sono consentiti nei pacchetti batch

Dettagli delle operazioni non incluse nella specifica pubblicata

  • La configurazione degli archivi FHIR include un'opzione per notificare un argomento Pub/Sub specificato dall'utente per tutte le modifiche apportate alle risorse nell'archivio. Questo meccanismo di notifica è comune a tutti gli archivi dell'API Cloud Healthcare e non è inteso a sostituire la funzionalità di sottoscrizione FHIR (DSTU2, STU3 e R4).
  • L'operazione di esportazione degli archivi FHIR in destinazioni Cloud Storage offre solo la possibilità di esportare in blocco l'intero archivio. Non è un'implementazione della bozza di specifica dei dati collettivi FHIR.
  • L'operazione di importazione degli archivi FHIR non è definita nella specifica.
  • L'operazione Resource-purge che rimuove le versioni precedenti delle risorse non è definita nella specifica. Questa API potrebbe cambiare in futuro qualora l'elaborazione degli standard o altre implementazioni FHIR portino all'uso di un altro metodo API per questo caso d'uso.
  • L'endpoint ExecuteBundle accetta bundle history nella versione v1beta1 per creare versioni storiche delle risorse.