Panoramica del mapping dei dispositivi del servizio MedTech

Questo articolo offre una panoramica del mapping dei dispositivi del servizio MedTech.

Il servizio MedTech richiede due tipi di mapping JSON aggiunti al servizio MedTech tramite l'API portale di Azure o Azure Resource Manager (ARM). Il mapping del dispositivo è il primo tipo e controlla i valori di mapping nei dati del dispositivo inviati al servizio MedTech a un oggetto dati interno normalizzato. Il mapping del dispositivo contiene espressioni usate dal servizio MedTech per estrarre tipi, identificatori del dispositivo, data di misurazione e valori di misura. Il mapping di destinazione FHIR® è il secondo tipo e controlla il mapping per le osservazioni FHIR.

Nota

I mapping di destinazione del dispositivo e FHIR vengono rivalutati ogni volta che viene elaborato un messaggio del dispositivo. Tutti gli aggiornamenti di entrambi i mapping avranno effetto immediatamente.

Nozioni di base sul mapping dei dispositivi

Il mapping dei dispositivi contiene raccolte di modelli di espressione usati per estrarre i dati dei messaggi del dispositivo in un formato interno normalizzato per un'ulteriore valutazione. Ogni messaggio del dispositivo ricevuto viene valutato rispetto a tutti i modelli di espressione nella raccolta. Questa valutazione significa che un singolo messaggio del dispositivo può essere separato in più messaggi in uscita di cui è possibile eseguire il mapping a più osservazioni FHIR nel servizio FHIR.

Suggerimento

Per altre informazioni sul modo in cui il servizio MedTech elabora i dati dei messaggi del dispositivo in osservazioni FHIR per la persistenza nel servizio FHIR, vedere Panoramica delle fasi di elaborazione dei dati dei dispositivi del servizio MedTech.

Questo diagramma fornisce un'illustrazione di ciò che accade durante la fase di normalizzazione all'interno del servizio MedTech.

Diagram example of the MedTech service device message normalization stage.

Convalide del mapping dei dispositivi

Il processo di normalizzazione convalida il mapping del dispositivo prima di consentire il salvataggio per l'uso. Questi elementi sono necessari nei modelli di mapping dei dispositivi.

Mapping dei dispositivi

Elemento Obbligatorio in CalculatedContent Obbligatorio in IotJsonPathContent
typeName Vero Vero
typeMatchExpression Vero Vero
deviceIdExpression Vero False e ignorato completamente.
timestampExpression Vero False e ignorato completamente.
patientIdExpression True quando il tipo di risoluzione dei servizi MedTech è impostato su Crea; False quando il tipo di risoluzione del servizio MedTech è impostato su Ricerca. True quando il tipo di risoluzione del servizio MedTech è impostato su Crea; False quando il tipo di risoluzione del servizio MedTech è impostato su Ricerca.
encounterIdExpression False False
correlationIdExpression False False
values[].valueName Vero Vero
values[].valueExpression Vero Vero
values[].required Vero Vero

Importante

Il tipo di risoluzione specifica il modo in cui il servizio MedTech associa i dati del dispositivo alle risorse dispositivo e alle risorse paziente. Il servizio MedTech legge le risorse dispositivo e paziente dal servizio FHIR usando identificatori di dispositivo e identificatori dei pazienti. Se un identificatore di rilevamento viene specificato ed estratto dal payload dei dati del dispositivo, viene collegato all'osservazione se esiste un incontro nel servizio FHIR con tale identificatore. Se l'identificatore di rilevamento viene normalizzato correttamente, ma non esiste alcun incontro FHIR con tale identificatore, viene generata un'eccezione FhirResourceNotFound. Per altre informazioni sulla configurazione del tipo di risoluzione del servizio MedTech, vedere Configurare la scheda Destinazione.

Nota

Gli values[].valueName, values[].valueExpressionelementi , e values[].required sono necessari solo se si dispone di una voce di valore nella matrice. Non è possibile eseguire il mapping dei valori. Questi elementi vengono usati quando i dati di telemetria inviati sono un evento.

Ad esempio, alcuni scenari possono richiedere la creazione di un'osservazione FHIR nel servizio FHIR che non contiene un valore.

CollectionContent

CollectionContent è il tipo di modello radice usato dal mapping dei dispositivi del servizio MedTech. CollectionContent è un elenco di tutti i modelli usati durante la fase di normalizzazione. È possibile definire uno o più modelli all'interno di CollectionContent, con ogni messaggio del dispositivo ricevuto dal servizio MedTech valutato rispetto a tutti i modelli.

È possibile usare questi tipi di modello all'interno di CollectionContent a seconda del caso d'uso:

e/o

Diagram showing MedTech service device mapping templates architecture.

Esempio

Suggerimento

È possibile usare il debugger di mapping del servizio MedTech per assistenza per la creazione, l'aggiornamento e la risoluzione dei problemi relativi ai mapping di destinazione del servizio MedTech e FHIR. Il debugger mapping consente di visualizzare e apportare facilmente modifiche inline in tempo reale, senza dover mai lasciare il portale di Azure. Il debugger mapping può essere usato anche per caricare i messaggi del dispositivo di test per vedere come verranno elaborati in messaggi normalizzati e trasformati in osservazioni FHIR.

In questo esempio viene usato un messaggio del dispositivo che acquisisce heartRate i dati:

{
  "heartRate": "78",
  "endDate": "2023-03-13T22:46:01.8750000",
  "deviceId": "device01"
}

Questo mapping dei dispositivi viene usato per la fase di normalizzazione:

{
  "templateType": "CollectionContent",
  "template": [
    {
      "templateType": "CalculatedContent",
      "template": {
        "typeName": "heartrate",
        "typeMatchExpression": "$..[?(@heartRate)]",
        "deviceIdExpression": "$.matchedToken.deviceId",
        "timestampExpression": "$.matchedToken.endDate",
        "values": [
          {
            "required": true,
            "valueExpression": "$.matchedToken.heartRate",
            "valueName": "hr"
          }
        ]
      }
    }
  ]
}

Il messaggio normalizzato risultante sarà simile al seguente dopo la fase di normalizzazione:

[
  {
    "type": "heartrate",
    "occurrenceTimeUtc": "2023-03-13T22:46:01.875Z",
    "deviceId": "device01",
    "properties": [
      {
        "name": "hr",
        "value": "78"
      }
    ]
  }
]

Quando il servizio MedTech elabora il messaggio del dispositivo, i modelli in CollectionContent vengono usati per valutare il messaggio. Viene typeMatchExpression usato per determinare se il modello deve essere usato o meno per creare un messaggio normalizzato dal messaggio del dispositivo. Se restituisce typeMatchExpression true, i deviceIdExpressionvalori , timestampExpressione valueExpression vengono usati per individuare ed estrarre i valori JSON dal messaggio del dispositivo e creare un messaggio normalizzato. In questo esempio tutte le espressioni vengono scritte in JSONPath, tuttavia, sarebbe valido scrivere tutte le espressioni in JMESPath. Spetta all'autore del modello determinare quale linguaggio delle espressioni è più appropriato.

Suggerimento

Per assistenza nella correzione degli errori comuni di distribuzione del servizio MedTech, vedere Risolvere gli errori di distribuzione del servizio MedTech.

Per assistenza per la correzione degli errori del servizio MedTech, vedere Risolvere gli errori usando i log del servizio MedTech.

Passaggi successivi

Come usare i modelli CalculatedContent con il mapping dei dispositivi del servizio MedTech

Come usare i modelli IotJsonPathContent con il mapping dei dispositivi del servizio MedTech

Come usare funzioni personalizzate con il mapping dei dispositivi del servizio MedTech

Panoramica del mapping di destinazione FHIR del servizio MedTech

Panoramica degli esempi di mapping basati su scenari del servizio MedTech

Nota

FHIR® è un marchio registrato di HL7 e viene usato con l'autorizzazione di HL7.