Přehled mapování cíle FHIR služby MedTech
Tento článek obsahuje přehled mapování cíle FHIR® služby MedTech.
Služba MedTech vyžaduje dva typy mapování JSON , které jsou přidány do vaší služby MedTech prostřednictvím webu Azure Portal nebo rozhraní API Azure Resource Manageru. Mapování zařízení je prvním typem a řídí hodnoty mapování v datech zařízení odesílaných do služby MedTech do interního normalizovaného datového objektu. Mapování zařízení obsahuje výrazy, které služba MedTech používá k extrakci typů, identifikátorů zařízení, data měření a hodnot měření. Mapování cíle FHIR je druhým typem a řídí, jak se normalizovaná data mapují na pozorování FHIR.
Poznámka:
Mapování cílů zařízení a FHIR se při každém zpracování zprávy zařízení znovu vyhodnotí. Všechny aktualizace mapování se projeví okamžitě.
Základy mapování cíle FHIR
Mapování cíle FHIR řídí, jak se normalizované data extrahovaná ze zprávy zařízení mapují na pozorování FHIR.
- Má se pozorování vytvořit k určitému bodu v čase nebo v průběhu hodiny?
- Jaké kódy by se měly přidat do pozorování?
- Má být hodnota reprezentována jako SampledData nebo Quantity?
Tyto datové typy jsou všechny možnosti ovládacích prvků konfigurace mapování cíle FHIR.
Jakmile se data zařízení transformují na normalizovaný datový model, shromažďují se normalizovaná data pro transformaci na pozorování FHIR. Pokud je typ pozorování SampledData, data se seskupí podle identifikátoru zařízení, typu měření a časového období (časové období může být buď 1 hodina, nebo 24 hodin). Výstup tohoto seskupení se odešle pro převod na jedno pozorování FHIR, které představuje časové období pro tento datový typ. U jiných typů pozorování (Množství, CodeableConcept a String) nejsou data seskupována, ale každé měření se transformuje na jedno pozorování představující bod v čase.
Tip
Další informace o tom, jak služba MedTech zpracovává data zpráv zařízení do FHIR Observations pro trvalost služby FHIR, naleznete v tématu Přehled fází zpracování zpráv zařízení služby MedTech.
Tento diagram znázorňuje, co se stane během fáze transformace ve službě MedTech.
Poznámka:
Pozorování FHIR v tomto diagramu není úplným zdrojem. Podívejte se na příklad v tomto přehledu pro celé pozorování FHIR.
CollectionFhir
CollectionFhir je typ kořenové šablony používaný mapováním cíle FHIR služby MedTech. CollectionFhir je seznam všech šablon, které se používají během fáze transformace. V kolekci CollectionFhir můžete definovat jednu nebo více šablon s vyhodnocením každé normalizované zprávy pro všechny šablony.
CodeValueFhir
CodeValueFhir je v současné době jedinou šablonou podporovanou v mapování cíle FHIR. Umožňuje definovat kódy, efektivní období a hodnotu pozorování. Podporuje se více typů hodnot: SampledData, CodeableConcept, Quantity a String. Společně s těmito konfigurovatelnými hodnotami se automaticky zpracuje identifikátor prostředku pozorování a propojení se správnými prostředky zařízení a pacientů.
Důležité
Typ řešení určuje, jak služba MedTech přidruží data zařízení k prostředkům zařízení a prostředkům pacientů. Služba MedTech čte prostředky zařízení a pacientů ze služby FHIR pomocí identifikátorů zařízení a identifikátorů pacientů. Pokud je zadaný identifikátor výskytu a extrahován z datové části dat zařízení, je propojen s pozorováním, pokud na službě FHIR existuje s tímto identifikátorem. Pokud je identifikátor výskytu úspěšně normalizován, ale s tímto identifikátorem není nalezen žádný záznam FHIR, vyvolá se výjimka FhirResourceNotFound. Další informace o konfiguraci typu řešení služby MedTech naleznete v tématu Konfigurace cílové karty.
Element (Prvek) | Popis | Požaduje se |
---|---|---|
Typename | Typ měření by se tato šablona měla svázat. Poznámka: Měla by existovat alespoň jedna šablona mapování zařízení, která má stejnou typeName . Tento typeName prvek slouží k propojení šablony mapování cíle FHIR s jednou nebo více šablonami mapování zařízení. Šablony mapování zařízení se stejným typeName prvkem generují normalizovaná data, která se vyhodnocují pomocí šablony mapování cíle FHIR, která má stejnou typeName . |
True |
periodInterval | Časové období vytvořeného pozorování by mělo představovat. Podporované hodnoty jsou 0 (instance), 60 (hodina), 1440 (den). | True, pokud typ pozorování je SampledData; Ignorováno pro jiné typy pozorování. |
Kategorie | Libovolný počet CodeableConcepts pro klasifikaci typu vytvořeného pozorování. | False |
Kódy | Jeden nebo více kódování, které se použijí na vytvořené pozorování. | True |
codes[].code | Kód pro kódování v elementu codes . |
True |
kódy[].system | Systém kódování v codes prvku. |
False |
kódy[].display | Zobrazení kódu v elementucodes . |
False |
value | Hodnota, která se má extrahovat a znázorňovat v pozorování. Další informace o prvcích, které value prvek obsahuje, naleznete v tématu Typy hodnot. |
True, pokud components se prvek nepoužívá (pokud typ pozorování není CodebleConcept, v takovém případě tento prvek není pouze povinné, ale také ignorován). |
Součásti | Jedna nebo více součástí, které se mají vytvořit na pozorování. | True, pokud se value prvek nepoužívá. |
components[].codes | Nejméně jeden kód, který se má použít pro komponentu. | False |
components[].value | Hodnota, která se má extrahovat a reprezentovat v komponentě. Další informace o prvcích, které components[].value prvek obsahuje, naleznete v tématu Typy hodnot. |
True při použití elementu components (pokud typ Pozorování není CodebleConcept, v takovém případě tento prvek není pouze "povinné", ale také ignorován). |
Typy hodnot
Všechny elementy šablon value
CodeValueFhir obsahují tyto prvky:
Element (Prvek) | Popis | Požaduje se |
---|---|---|
Valuetype | Typ hodnoty. Tato hodnota by byla "SampledData", "Quantity", "CodeableConcept" nebo "String" v závislosti na typu hodnoty. | True |
Valuename | Název hodnoty. | True, pokud valueType není CodeableConcept. |
V mapování cíle FHIR služby MedTech se podporují tyto typy hodnot:
SampledData
Představuje datový typ SampledData FHIR. Měření pozorování se zapisují do hodnotového toku začínajícího v okamžiku v čase a inkrementují dopředu pomocí definovaného období. Pokud neexistuje žádná hodnota, E
zapíše se do datového proudu. Pokud je tečka taková, že dvě nebo více hodnot zabírají stejnou pozici v datovém proudu, použije se nejnovější hodnota. Stejná logika se použije při aktualizaci pozorování pomocí SampledData. Pro šablonu CodeValueFhir s typem SampledData obsahuje element šablony value
následující prvky:
Element (Prvek) | Popis | Požaduje se |
---|---|---|
defaultPeriod | Výchozí období v milisekundách, které se má použít. | True |
Jednotka | Jednotka, která se nastaví na původu SampledData. | True |
Množství
Představuje datový typ Quantity FHIR. Tento typ vytvoří jeden bod v čase, pozorování. Pokud dorazí nová hodnota, která obsahuje stejný identifikátor zařízení, typ měření a časové razítko, předchozí pozorování se aktualizuje na novou hodnotu. V případě šablony CodeValueFhir s typem hodnoty Quantity obsahuje element šablony value
následující prvky:
Element (Prvek) | Popis | Požaduje se |
---|---|---|
Jednotka | Reprezentace jednotek | False |
kód | Kódovaná forma jednotky. | False |
Systému | Systém, který definuje kódovaný formulář jednotky. | False |
CodeableConcept
Představuje datový typ CodeableConcept FHIR. Hodnota v normalizovaném datovém modelu se nepoužívá a místo toho se při přijetí tohoto typu dat vytvoří pozorování s konkrétním kódem představujícím, že pozorování bylo zaznamenáno v určitém časovém okamžiku. Pro šablonu CodeValueFhir s typem hodnoty CodeableConcept obsahuje element šablony value
následující prvky:
Element (Prvek) | Popis | Požaduje se |
---|---|---|
text | Reprezentace prostého textu | False |
Kódy | Jeden nebo více kódování, které se použijí na vytvořené pozorování. | True |
codes[].code | Kód pro kódování v elementu codes . |
True |
kódy[].system | Systém kódování v codes prvku. |
False |
kódy[].display | Zobrazení kódu v elementucodes . |
False |
Řetězec
Představuje datový typ String FHIR. Tento typ vytvoří jeden bod v čase, pozorování. Pokud dorazí nová hodnota, která obsahuje stejný identifikátor zařízení, typ měření a časové razítko, předchozí pozorování se aktualizuje na novou hodnotu. Nejsou definovány žádné další prvky.
Příklad
Tip
Ladicí program mapování služby MedTech můžete použít k pomoci s vytvářením, aktualizací a odstraňováním potíží se zařízením služby MedTech a cílovými mapováními FHIR. Ladicí program mapování umožňuje snadno zobrazit a provádět vložené úpravy v reálném čase, aniž byste museli opustit Azure Portal. Ladicí program mapování lze použít také k nahrání zpráv testovacího zařízení, abyste zjistili, jak budou vypadat po zpracování do normalizovaných zpráv a transformují se na FHIR Observations.
Poznámka:
Tento příklad a normalizovaná zpráva je pokračováním z přehledu mapování zařízení služby MedTech.
V tomto příkladu používáme normalizovanou zprávu, která heartRate
zachycuje data:
[
{
"type": "heartrate",
"occurrenceTimeUtc": "2023-03-13T22:46:01.875Z",
"deviceId": "device01",
"properties": [
{
"name": "hr",
"value": "78"
}
]
}
]
Pro fázi transformace používáme toto mapování cíle FHIR:
{
"templateType": "CollectionFhir",
"template": [
{
"templateType": "CodeValueFhir",
"template": {
"codes": [
{
"code": "8867-4",
"system": "http://loinc.org",
"display": "Heart rate"
}
],
"typeName": "heartrate",
"value": {
"system": "http://unitsofmeasure.org",
"code": "count/min",
"unit": "count/min",
"valueName": "hr",
"valueType": "Quantity"
}
}
}
]
}
Výsledné pozorování FHIR bude po fázi transformace vypadat takto:
[
{
"code": {
"coding": [
{
"system": {
"value": "http://loinc.org"
},
"code": {
"value": "8867-4"
},
"display": {
"value": "Heart rate"
}
}
],
"text": {
"value": "heartrate"
}
},
"effective": {
"start": {
"value": "2023-03-13T22:46:01.8750000Z"
},
"end": {
"value": "2023-03-13T22:46:01.8750000Z"
}
},
"issued": {
"value": "2023-04-05T21:02:59.1650841+00:00"
},
"value": {
"value": {
"value": 78
},
"unit": {
"value": "count/min"
},
"system": {
"value": "http://unitsofmeasure.org"
},
"code": {
"value": "count/min"
}
}
}
]
Tip
Pomoc s opravou běžných chyb nasazení služby MedTech najdete v tématu Řešení chyb nasazení služby MedTech.
Pomoc s opravou chyb služby MedTech najdete v tématu Řešení chyb pomocí protokolů služby MedTech.
Další kroky
Přehled mapování zařízení služby MedTech
Jak používat šablony CalculatedContent s mapováním zařízení služby MedTech
Jak používat šablony IotJsonPathContent s mapováním zařízení služby MedTech
Jak používat vlastní funkce s mapováním zařízení služby MedTech
Přehled ukázek mapování založených na scénářích služby MedTech
Poznámka:
FHIR® je registrovaná ochranná známka HL7 a používá se s povolením HL7.