의료 기록을 보관할 앱을 찾아본 적이 있다면 FHIR라는 약어를 접했을 것입니다. 설명, "보안 및 규정 준수" 페이지, 병원 및 정부 기관의 발표 등에서 볼 수 있습니다. 하지만 FHIR가 무엇인지, 어떤 문제를 해결하는지, 구체적으로 무엇을 의미하는지, 앱이 실제로 FHIR를 사용하는지 아니면 웹사이트에만 적어 놓은 것인지 어떻게 알 수 있는지 프로그래머가 되지 않고도 이해할 수 있도록 이 가이드에서 설명합니다.
문제: 각 시스템이 다른 언어를 사용합니다.
검사실에서 받은 혈액 검사 결과는 PDF 파일로 제공됩니다. 동일한 검사가 병원 시스템에서는 자체 형식의 데이터베이스 행으로 저장됩니다. 개인 의사에게는 아마도 자유 형식의 메모로 되어 있을 것입니다. 세 곳에서 세 가지 다른 형식으로 저장되어 서로 연결되지 않습니다. 이 정보들을 하나로 모으려면 사람이 직접 읽고 다시 입력하는 수밖에 없습니다.
수십 년 동안 의료 시스템은 이러한 방식으로 구축되었습니다. 각 시스템은 자체 형식을 가지고 있었고, "브리지"를 통해서만 데이터를 교환했는데, 이 브리지는 특별히 작성되어 비싸고 불안정했습니다. 이전 표준(1980년대 HL7 버전 2 또는 CDA)은 병원의 문제를 부분적으로 해결했지만, 최신 앱에서 사용하기 어렵고 사람이 읽기에는 거의 불가능했습니다.
FHIR란 무엇인가?
FHIR(발음: "파이어")은 Fast Healthcare Interoperability Resources의 약자입니다. 35년 이상 의료 데이터가 시스템 간에 어떻게 이동하는지 정의해 온 HL7 International에서 발행한 표준입니다. 현재 널리 사용되는 버전은 2019년에 발행된 R4(4.0.1)이며, 2023년부터 새로운 버전인 R5가 존재하지만, EU 및 미국 법적 요구 사항을 포함한 전 세계 대부분의 시스템은 R4를 기반으로 합니다.
핵심 아이디어는 간단합니다. 모든 의료 정보 조각은 알려진 구조를 가진 리소스로 설명됩니다. 환자(Patient), 검사 또는 측정(Observation), 진단(Condition), 처방된 약(MedicationRequest), 알레르기(AllergyIntolerance), 예방 접종(Immunization), 문서(DocumentReference) 등을 위한 리소스가 있으며, 총 약 150개입니다. 각 리소스에는 정의된 필드가 있습니다. 예를 들어 Observation에는 측정된 내용의 코드, 값, 단위, 날짜, 측정자, 대상자 등이 있습니다.
리소스는 모든 프로그래밍 언어가 읽을 수 있는 JSON 또는 XML 형식으로 작성되며, 웹 페이지와 마찬가지로 주소와 HTTP 요청을 통해 인터넷을 통해 전송됩니다. 이것이 이전 표준과의 차이점입니다. FHIR는 모든 프로그래머가 이미 알고 있는 도구를 사용하므로 구현 비용이 저렴하고 잘못 구현하기 어렵습니다.
코드: 모두가 같은 것을 이해하도록
구조만으로는 충분하지 않습니다. 한 시스템에서 "혈당"이라고 쓰고 다른 시스템에서 "혈청 포도당"이라고 쓰면 여전히 서로 이해하지 못합니다. FHIR는 표준 코드를 내용에 요구함으로써 이를 해결합니다.
- LOINC (검사 및 측정): 공복 혈당은 전 세계 어디에서나 코드 1558-6입니다.
- SNOMED CT 및 ICD-10 (진단 및 시술).
- ATC (WHO 분류) (약물, 활성 성분별).
- UCUM (단위): mg/dL 및 mmol/L는 모든 곳에서 동일하게 작성되며, 변환은 자동으로 이루어집니다.
구조와 코드를 사용하면 시비우의 검사실에서 생성된 FHIR 리소스는 비엔나의 병원이나 캘리포니아의 앱에서 아무도 "브리지"를 작성하지 않고도 올바르게 읽을 수 있습니다.
구체적으로 무엇을 의미하는가?
가장 눈에 띄는 것부터 가장 중요한 것까지 네 가지입니다.
데이터를 이동할 수 있습니다. 기록이 FHIR로 저장되어 있다면, 완전히 내보내고 다른 호환 시스템으로 가져올 수 있습니다. 단일 앱에 의존하지 않으며 해당 앱만 이해하는 형식에 갇히지 않습니다. "내 것"이라는 것은 실질적으로 "표준 형식으로 내보낼 수 있음"을 의미합니다.
의사들이 데이터를 이해할 수 있습니다. 새로운 의사, 다른 나라의 병원, 응급 서비스 등 모든 사람이 FHIR 요약(일반적으로 International Patient Summary 형식)을 받아 자신의 시스템에서 해당 코드와 언어로 읽을 수 있습니다. 40페이지짜리 PDF가 아니라 검색, 필터링, 비교할 수 있는 데이터입니다.
데이터를 통합할 수 있습니다. 다른 검사실의 검사 결과, 시계의 측정값, 처방전의 약, 스캔된 문서 등 모든 것이 LOINC 코드와 날짜가 있는 FHIR 리소스라면 동일한 타임라인에 맞춰 비교할 수 있습니다. 좋은 앱은 이를 자동으로 수행합니다.
데이터는 약속이 아닌 표준으로 보호됩니다. FHIR는 데이터 액세스가 어떻게 부여되는지도 설명합니다. SMART on FHIR는 OAuth 2를 기반으로 하는 프레임워크로, 어떤 앱이 기록의 어떤 부분을 얼마나 오래 볼 수 있는지 명시적으로 승인하고 액세스를 철회할 수 있습니다. 이는 웹사이트에서 "Google로 로그인"할 때 사용하는 것과 동일한 메커니즘으로, 의료 데이터에 적용되며 세분화된 권한(검사만, 약만, 읽기 전용)을 제공합니다.
FHIR가 이미 사용되는 곳
FHIR는 "미래를 위한" 표준이 아닙니다. 이미 여러분이 알고 있는 곳에서 의무화되거나 사용되고 있습니다.
- 미국은 법률(21st Century Cures Act 및 2020 ONC 규칙)에 따라 모든 인증된 의료 시스템이 FHIR R4 API를 통해 환자 데이터를 공개하고 환자가 선택한 앱으로 데이터를 가져갈 수 있도록 요구합니다.
- Apple Health Records는 FHIR를 통해 수백 개의 병원 기록을 iPhone의 Health 앱으로 가져옵니다.
- 유럽 연합은 회원국에 부과되는 유럽 전자 건강 기록 교환 형식(EEHRxF)으로 FHIR를 선택했으며, MyHealth@EU를 통해 국가 간에 교환되는 환자 요약은 이를 기반으로 합니다.
- 영국, 네덜란드, 독일, 북유럽 국가는 독일 전자 처방전부터 네덜란드 기록까지 국가 인프라에서 FHIR를 사용합니다.
- **세계보건기구(WHO)**는 세계 디지털 건강 인증서 네트워크를 위해 FHIR 기반 국제 환자 요약을 선택했습니다.
이는 FHIR R4로 기록을 보관하는 앱이 고립된 것이 아님을 의미합니다. 현재와 향후 10년 동안 병원 및 당국이 이미 사용하는 언어를 구사합니다.
FHIR를 실제로 사용하는 앱을 인식하는 방법
누구나 웹사이트에 "FHIR"라고 쓸 수 있습니다. 다음 질문들은 단어와 현실을 구분합니다.
- 전체 기록을 FHIR로 내보낼 수 있습니까? "PDF 보고서"가 아니라 다른 시스템에서 가져올 수 있는 리소스 파일(Bundle)이어야 합니다. 답이 "아니요"이거나 "요청 시 이메일로만 가능"이라면 데이터는 실제로 여러분의 것이 아닙니다.
- 검사 결과에 LOINC 코드와 UCUM 단위가 있습니까? "콜레스테롤: 210"을 텍스트로만 저장하는 앱은 작년 다른 검사실의 결과와 비교할 수 없습니다. 코드와 단위를 저장하는 앱은 비교할 수 있습니다.
- 다른 사람에게 제한적이고 철회 가능한 액세스를 부여할 수 있습니까? 의사, 클리닉, 다른 앱 등 SMART on FHIR를 사용하면 무엇을 얼마나 오래 볼지 선택하고 누가 무엇을 읽었는지 확인할 수 있습니다.
- IPS 요약을 생성할 수 있습니까? 이것은 "상호 운용성"의 실질적인 테스트입니다. 앱이 모든 유럽 병원에서 읽을 수 있는 표준 요약을 생성할 수 있다면 그 뒤의 구조는 실제입니다.
- 공개 개발자 문서가 있습니까? 공개된
CapabilityStatement가 있는 문서화된 FHIR API는 다른 시스템이 실제로 연결될 수 있음을 의미합니다. 그렇지 않다면 "상호 운용 가능"은 단지 형용사일 뿐입니다.
FHIR가 해결하지 못하는 것
한계를 명확히 밝히는 것도 중요합니다. FHIR는 데이터의 품질이 아닌 형식과 전송을 설명합니다. 잘못 입력된 결과는 좋은 형식으로 바뀌어도 여전히 잘못된 것입니다. FHIR는 개인 정보 보호를 보장하지 않습니다. 개인 정보 보호는 데이터를 호스팅하는 주체, 어느 국가이며 어떤 액세스 규칙이 적용되는지에 따라 달라집니다. 또한 FHIR는 시스템이 데이터를 교환하려는 의지를 만들지 않습니다. 많은 병원이 FHIR API를 가지고 있지만 아무에게도 공개하지 않으며, 이것이 바로 미국 및 EU(EHDS를 통해)에서 이를 의무화하는 법률이 존재하는 이유입니다.
Anpheros는 FHIR를 어떻게 사용하나요?
Anpheros는 각 개인의 기록을 HL7 FHIR R4 리소스(환자(Patient), 관찰(Observation), 문서 참조(DocumentReference), 동의(Consent) 등 26가지 리소스 유형)로 저장하며, LOINC, ICD-10, ATC 및 UCUM 코드를 사용하여 유럽 연합에 보관합니다. Anpheros Daily 앱은 클리닉 및 개발자가 사용하는 것과 동일한 공개 API의 클라이언트이며, 별도의 "내부" 형식은 없습니다. 언제든지 전체 기록 또는 IPS 요약을 내보낼 수 있으며, 공식 HL7 검증기로 검증됩니다. 다른 앱에 대한 액세스는 SMART on FHIR를 통해 부여되며, 제한된 기간 동안 철회 가능한 동의와 함께 볼 수 있는 로그가 제공됩니다. API 문서 및 기능 설명은 developers.anpheros.com에서 공개적으로 확인할 수 있습니다.
자주 묻는 질문
기록을 사용하기 위해 FHIR를 알아야 하나요?
아니요. FHIR는 내부적으로 작동합니다. 여러분은 검사 결과, 약물, 문서를 보게 되며, 이 표준은 이를 이동 가능하고 비교 가능하며 의사가 읽을 수 있도록 합니다. 존재를 아는 것은 데이터를 어디에 보관할지 잘 선택하기 위해서만 가치가 있습니다.
FHIR는 국가 전자 기록과 같은 것인가요?
아니요. FHIR는 형식과 전송 방식이며, 국가 전자 기록은 시스템입니다. 많은 국가 시스템이 FHIR를 사용하거나 채택하고 있지만, 한 국가에 전자 기록이 있다고 해서 FHIR 형식으로 데이터를 가져올 수 있다는 의미는 아닙니다. EU에서는 EHDS가 정확히 이를 요구할 것입니다.
FHIR R4와 R5의 차이점은 무엇인가요?
R5(2023)는 개선 사항을 제공하지만 아직 법률에서 요구하지 않으며 사용하는 시스템이 거의 없습니다. R4(2019)는 미국 및 EU 요구 사항과 기존 구현의 기반입니다. R4 기반 앱은 오늘날 안전한 선택이며, R5로의 전환은 점진적으로 호환성을 유지하며 이루어질 것입니다.
내보낸 파일이 FHIR 형식이라면 다른 앱으로 가져올 수 있나요?
다른 앱이 FHIR 가져오기를 지원한다면 가능합니다. 단, 한 가지 조건이 있습니다. 표준 코드입니다. LOINC, ICD-10 및 UCUM 코드가 있는 리소스는 깔끔하게 매핑되지만, 자유 텍스트가 있는 리소스는 메모로 처리됩니다. 그렇기 때문에 원본 앱이 처음부터 데이터를 코딩하는 것이 중요합니다.
FHIR는 안전한가요?
FHIR 자체는 안전하거나 안전하지 않은 것이 아니라 형식입니다. 보안은 구현에서 비롯됩니다. 암호화, 호스팅, 인증, 동의 등입니다. SMART on FHIR는 제어된 액세스를 위한 좋은 프레임워크를 제공하지만, 데이터를 누가 보유하고 어디에 있는지 여전히 확인해야 합니다.
건강 기록을 항상 소지하세요
Anpheros Daily는 증상, 검사 결과, 복용 중인 약 및 문서를 표준 형식으로 한곳에 모아 관리합니다. 기본 플랜은 무료입니다.