MedTech 서비스 디바이스 매핑 개요

이 문서에서는 MedTech 서비스 디바이스 매핑에 대한 개요를 제공합니다.

MedTech 서비스에는 Azure Portal 또는 ARM(Azure Resource Manager) API를 통해 MedTech 서비스에 추가되는 두 가지 유형의 JSON 매핑이 필요합니다. 디바이스 매핑은 첫 번째 유형이며 MedTech 서비스로 전송된 디바이스 데이터의 값을 정규화된 내부 데이터 개체에 매핑하는 것을 제어합니다. 디바이스 매핑에는 MedTech 서비스에서 형식, 디바이스 식별자, 측정 날짜와 시간 및 측정값을 추출하는 데 사용하는 식이 포함됩니다. FHIR® 대상 매핑은 두 번째 유형이며 FHIR 관찰에 대한 매핑을 제어합니다.

참고 항목

디바이스 및 FHIR 대상 매핑은 디바이스 메시지가 처리될 때마다 다시 평가됩니다. 매핑에 대한 모든 업데이트는 즉시 적용됩니다.

디바이스 매핑 기본 사항

디바이스 매핑에는 추가 평가를 위해 디바이스 메시지 데이터를 내부의 정규화된 형식으로 추출하는 데 사용되는 식 템플릿 컬렉션이 포함되어 있습니다. 수신된 각 디바이스 메시지는 컬렉션의 모든 식 템플릿에 대해 평가됩니다. 이 평가는 단일 디바이스 메시지가 여러 아웃바운드 메시지로 구분되어 FHIR 서비스의 여러 FHIR 관찰에 매핑될 수 있음을 의미합니다.

MedTech 서비스가 FHIR 서비스의 지속성을 위해 디바이스 메시지 데이터를 FHIR 관찰로 처리하는 방법에 대한 자세한 내용은 MedTech 서비스 디바이스 데이터 처리 단계 개요를 참조하세요.

이 다이어그램은 MedTech 서비스 내의 정규화 단계에서 발생하는 작업을 설명합니다.

Diagram example of the MedTech service device message normalization stage.

디바이스 매핑 유효성 검사

정규화 프로세스는 사용을 위해 저장하도록 허용하기 전에 디바이스 매핑의 유효성을 검사합니다. 이러한 요소는 디바이스 매핑 템플릿에 필요합니다.

디바이스 매핑

요소 CalculatedContent에 필요 IotJsonPathContent에 필요
typeName True True
typeMatchExpression True True
deviceIdExpression True False이고 완전히 무시됩니다.
timestampExpression True False이고 완전히 무시됩니다.
patientIdExpression MedTech 서비스의 해결 유형만들기로 설정된 경우에는 True, MedTech 서비스의 해결 유형조회로 설정된 경우에는 False입니다. MedTech 서비스의 해결 유형만들기로 설정된 경우에는 True, MedTech 서비스의 해결 유형조회로 설정된 경우에는 False입니다.
encounterIdExpression False False
correlationIdExpression False False
values[].valueName True True
values[].valueExpression True True
values[].required True True

Important

해결 유형은 MedTech 서비스가 디바이스 리소스 및 환자 리소스와 디바이스 데이터를 연결하는 방법을 지정합니다. MedTech 서비스는 디바이스 식별자환자 ID를 사용하여 FHIR 서비스에서 디바이스 및 환자 리소스를 읽습니다. 디바이스 데이터 페이로드에서 encounter 식별자를 지정 및 추출하는 경우, 해당 식별자를 사용하여 FHIR 서비스에 encounter가 있는지 여부에 대한 관찰에 연결됩니다. encounter 식별자는 정규화되었지만 해당 encounter 식별자가 있는 FHIR encounter가 없으면 FhirResourceNotFound 예외가 발생합니다. MedTech 서비스 해결 형식 구성에 대한 자세한 내용은 대상 탭 구성을 참조하세요.

참고 항목

values[].valueName, values[].valueExpressionvalues[].required 요소는 배열에 값 항목이 있는 경우에만 필요합니다. 매핑된 값이 없어도 유효합니다. 이 요소는 전송되는 원격 측정이 이벤트인 경우에 사용됩니다.

예를 들어 일부 시나리오에서는 값을 포함하지 않는 FHIR 서비스에서 FHIR 관찰을 만들어야 할 수 있습니다.

CollectionContent

CollectionContent는 MedTech 서비스 디바이스 매핑에서 사용하는 루트 템플릿 형식입니다. CollectionContent는 정규화 단계에서 사용되는 모든 템플릿의 목록입니다. CollectionContent 내에서 하나 이상의 템플릿을 정의하여, MedTech 서비스에서 받은 각 디바이스 메시지가 모든 템플릿에 대해 평가되게 할 수 있습니다.

사용 사례에 따라 CollectionContent 내에서 이러한 템플릿 형식을 사용할 수 있습니다.

및/또는

Diagram showing MedTech service device mapping templates architecture.

예시

MedTech 서비스 매핑 디버거를 사용하여 MedTech 서비스 디바이스 및 FHIR 대상 매핑을 만들고 업데이트하고 문제를 해결하도록 지원할 수 있습니다. 매핑 디버거를 사용하면 Azure Portal을 벗어나지 않고도 실시간으로 인라인을 쉽게 보고 조정할 수 있습니다. 매핑 디버거는 테스트 디바이스 메시지를 업로드하여 해당 메시지가 정규화된 메시지로 처리되고 FHIR 관찰로 변환된 후 어떻게 보이는지 확인하는 데에도 사용할 수 있습니다.

이 예에서는 heartRate 데이터를 캡처하는 디바이스 메시지를 사용하고 있습니다.

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

정규화 단계에서는 이 디바이스 매핑을 사용하고 있습니다.

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

이 결과물인 정규화된 메시지는 정규화 단계 후 다음과 같습니다.

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

MedTech 서비스가 디바이스 메시지를 처리할 때 CollectionContent의 템플릿을 사용하여 메시지를 평가합니다. typeMatchExpression은 디바이스 메시지에서 정규화된 메시지를 만드는 데 템플릿을 사용해야 하는지 여부를 결정하는 데 사용됩니다. typeMatchExpression이 true로 평가되면 deviceIdExpression, timestampExpressionvalueExpression 값을 사용하여 디바이스 메시지에서 JSON 값을 찾아 추출하고 정규화된 메시지를 만듭니다. 이 예제에서는 모든 식이 JSONPath로 작성되지만 JMESPath에서 모든 식을 작성하는 것이 합당합니다. 가장 적합한 식 언어를 결정할 책임은 템플릿 작성자에게 있습니다.

일반적인 MedTech 서비스 배포 오류를 해결하는 데 도움이 필요하면 MedTech 서비스 배포 오류 문제 해결을 참조하세요.

MedTech 서비스 오류 수정에 대한 도움을 받으려면 MedTech 서비스 로그를 사용하여 오류 문제 해결을 참조하세요.

다음 단계

MedTech 서비스 디바이스 매핑과 함께 CalculatedContent 템플릿을 사용하는 방법

MedTech 서비스 디바이스 매핑과 함께 IotJsonPathContent 템플릿을 사용하는 방법

MedTech 서비스 디바이스 매핑과 함께 사용자 지정 함수를 사용하는 방법

MedTech 서비스 FHIR 대상 매핑 개요

MedTech 서비스 시나리오 기반 매핑 샘플 개요

참고 항목

FHIR®은 HL7의 등록 상표이며, HL7의 사용 허가 하에 사용됩니다.