Professional Documents
Culture Documents
เชื่อมต่อข้อมูลทางการแพทย์ด้วย Health Informatics Standard
เชื่อมต่อข้อมูลทางการแพทย์ด้วย Health Informatics Standard
โดยพอสรุปโดยสังเขป ดังนี้
2. ระดับของ Interoperability
2) Structural interoperability
Semantic interoperability นี่ แหละเป็น Goal ของวงการ Health Informatics แต่มัน ยากตั้ งแต่ structural
interoperability โดยแต่ละ EHR อาจมีข้อมูลในฐานข้อมูลเป็นล้าน record ต้องมา custom ให้เข้ากับ standard ที่จะใช้เป็นโครงสร้าง
ข้อมูล หลังจากนั้นข้อมูลแต่ละอย่าง (หรือเรียก concept ในภาษา modeling) ก็ต้องไปผูก (bind) กับ standard กลุ่ม terminology
หรือ classification เพื่อให้ระบบอื่นๆ สามารถเข้าใจตรงกันได้ ซึ่ง healthcare เป็นเรื่องที่กว้างมาก concept จึงมีจานวนมหาศาล
(SNOMED-CT terminology มีมากกว่า 300,000 concept)
จริงๆ ยังมีวิธีการแบ่งระดับของ interoperability อื่นๆ อีก โดยหนังสือ Principles of Health Interoperability ก็แบ่งอีกแบบ
แต่ main idea เหมือนกัน โดยทุกแบบจะมี semantic interoperability แต่ level ที่ต่ากว่าแบ่งไม่เหมือนกัน หรืออาจมีการเพิ่ม level ที่
สูงกว่า semantic เช่น clinical interoperability เข้ามา (ก็คือเชื่อมต่อในระดับ workflow ของ 2 องค์กรประสานกันไปได้)
HL7 มาจากคาเต็มว่า Health Level 7 เป็นคาเรียกรวมๆ กลุ่มของ standard (คือมีหลาย standard อยู่ในกลุ่ม) ที่พัฒนาโดย
HL7 international ในสหรัฐอเมริกา ในบรรดา standard หลายๆ ตัวที่อยู่ในกลุ่ม ตัวที่ได้รับความนิยมและถูกพูดถึงบ่อยๆ ก็มี HL7 v2
(version 2), HL7 v3 (version 3) และล่าสุด HL7 FHIR
คาว่า Health Level 7 มาจากการที่ตัว standard เป็น protocol ที่ทางานบน layer 7 ของ OSI model (Application layer
หรือก็คือระดับเดียวกับพวก HTTP, FTP, SMTP พวกนั้นแหละครับ) ตัว message ก็เป็นเหมือนภาพด้านล่าง รายละเอียดการทางาน
หลักๆ ก็คือ แต่ละบรรทัดเป็นตัวแทนของ segment (เช่น MSH ก็คือ message header) แต่ละ segment ก็จะมี field ย่อยๆ โดยแต่ละ
field ก็จะแยกกันด้วย
terminology, nomenclature, vocabulary และ classification system สรุปง่ายๆ ก็คือ เป็นคล้ายๆ สมุดหน้าเหลืองที่บอก
ว่า ร้า นนี้เ บอร์ โ ทรอะไร อยู่ห มวดไหน อั น นี้ก็ คื อข้ อ มูล ที่ เราสนใจใช้ code อะไร อยู่ ในกลุ่ ม ไหน เป็ นต้ น terminologies และ
classification ที่ควรรู้จักมีดังนี้
2) SNOMED-CT
SNOMED-CT เป็น medical terminology ที่ใหญ่ที่สุดในโลก พัฒนาโดยองค์กรชื่อ SNOMED international (ชื่อเดิม IHTSDO) โดย
SNOMED-CT เป็น concept-oriented terminology (จะเข้าใจได้อาจต้องเข้าใจเรื่อง conceptual modeling ก่อน)
ภาพจาก ihtsdotools.org
3) LOINC
Logical Observation Identifiers Names and Codes (LOINC) เป็น terminology สาหรับผลการตรวจแล็บ และ clinical
observation (เช่น พวก EKG, vital sign) ใช้มากใน U.S. แต่ประเทศอื่นๆ อีก 160 กว่าประเทศก็ใช้ด้วยเหมือนกัน สาหรับประเทศไทย
ทาง THIS เองก็กาลังพยายามผลักดันให้ LOINC เป็น standard สาหรับ lab order ในไทย
LOINC เรียนรู้ง่ายกว่า implement ได้ง่ายกว่า และ LOINC ยังมี tool ให้ map กับ SNOMED-CT ได้
LOINC เป็น pre-coordinate concept คือประกอบร่างมาให้แล้ว เช่น “Bilirubin.direct [Mass/volume] in Serum or
Plasma” ส่วน SNOMED-CT เป็นทั้ง pre ทั้ง post ถ้าเป็น post-coordination concept เราอาจต้องมาประกอบร่างเอง
“bilirubin” + “direct” + “plasma” เป็นต้นครับ ซึ่งนามาซึ่งความยาก
LOINC ฟรี แต่ SNOMED-CT มีค่า license
U.S. ใช้ drug code หลักตอนนี้คือ RxNorm ส่วน procedure code หลักๆ คือ Current Procedural Terminology (CPT)
ของไทย drug code ปัจจุบันเรามี Thai Medicines Terminology จากทาง THIS ให้ใช้
6. HL7 v3
กลับมาที่ HL7 หลังจาก HL7 v2 ใช้ไปซักพักแล้วเกิดปัญหาไปต่อไม่ได้ ทาง HL7 international ก็เลยพัฒนา HL7 v3 ขึ้นมา
คราวนี้วางแผนดีๆ พยายามออกแบบให้ดี กะเอาให้ semantic interoperability เลย อย่างที่กล่าวไปก่อนหน้านี้ว่าการจะทาได้ต้องมี
reference information model สาหรับข้อมูลที่เกี่ยวข้อง ซึ่ง HL7 v3 ก็เลือกเดินทางนั้น เลยเกิดเป็น HL7 RIM ขึ้นมา ซึ่งเป็น model
สาหรับข้อมูลทุกอย่าง เผยแพร่ให้ใช้เมื่อราวปี 2005 (อธิบายเพิ่มคือ HL7 v3 เป็นกลุ่มของ standard นะครับ มีหลาย standard อยู่ในนั้น
ไม่ได้อยู่โดดๆ เหมือน HL7 v2)
HL7 RIM
แนวคิดหลักคือ จะแบ่งข้อมูลออกเป็น 5 class หลักๆ คือ Act, ActRelationship, Participants, Roles, Entities พวกนี้ รวมๆ
เรียกว่า RIM Backbone ข้อมูลทางการแพทย์ทุกอย่างก็จะ เป็น sub-class ของ class ใด class หนึ่งในนี้แหละ ในบาง class ก็มีการทา
terminology binding เพื่อ semantic interoperability
HL7 แต่แรกเลยเกิดมาเพื่อเป็น messaging standard พอมาเป็น HL7 v3 ฟังก์ชั่นนี้ก็ยังอยู่ แต่ว่าเปลี่ยนจาก message แบบใน
v2 มาใช้เป็น XML-based message แทน โดยการสร้าง message ก็ต้องอ้างอิงจาก HL7 RIM ปัญหาก็คือ เนื่องจากความซับซ้อนของ
HL7 RIM เลยทาให้เกิดความยากในการ implement HL7 v3 messaging ตามมา ทาให้ไม่มีใครเปลี่ยนจาก HL7 v2 มาเป็น v3 สรุปก็
เลยตกไป
HL7 CDA
แม้ HL7 v3 messaging จะอ่อนแอก็แพ้ไป แต่ยังมีมรดกจาก HL7 RIM ที่ถือได้ว่าประสบความสาเร็จอยู่นั่นคือ HL7 Clinical
Document Architecture (CDA) เป็น standard ที่บอกว่า document ต่างๆ ทางการแพทย์มันควรเป็นอย่างไร document ในที่นี้ก็คือ
เอกสาร ยกตัวอย่างเช่น care plan, referral note, progress note พวกนี้คือ document ทั้งหมด
CDA document เป็น XML document ที่ใช้ HL7 RIM เป็นฐานในการให้ความหมายข้อมูลต่างๆ โดย HL7 CDA standard
แค่บอกว่า document ควรมีลักษณะอย่างไร แต่ไ ม่ได้บอกว่าจะส่ง document นั้นยังไง จะไปใช้ v3 messaging, v2 messaging,
ส่งผ่าน email, เซฟใส่ USB ส่งไปรษณีย์ หรืออะไรก็แล้วแต่เราเลย
CDA document เป็นระบบ incremental semantic interoperability คือ implement ได้ 3 level ถ้า level 1 ก็มีแค่
header ที่มี meta-data นิดหน่อย ที่เหลือเป็น narrative text ธรรมดา มนุษย์อ่านเข้าใจแต่ machine ไม่เข้าใจ ถ้า level 3 ตรง
narrative text นั้นก็จะไปอยู่ใน body ในรูปของ structured data และ entry จาก HL7 RIM (ซึ่งทาให้ machine สามารถเข้าใจเนื้อหา
ได้มากขึ้น) วิธีนี้ทาให้การ adopt standard ทาได้ง่ายขึ้น ถ้ากาลังน้อยก็เอาแค่ level 1 ถ้าเงินเยอะก็จัด level 3
ภาพจาก http://iehr.eu/knowledge/what-is-hl7-cda/
เนื่องจาก CDA เป็น standard กว้างๆ เวลาองค์กรต่างๆ จะนา CDA ไปใช้ในงานเฉพาะเจาะจง (เช่น จะเอาไปทา referral
note) จะต้องสร้าง template ขึ้นมาก่อน (constraint CDA) วิธีการนา CDA ไปใช้นี้เรียกว่า implementation guide ไปๆ มาๆ เกิด
implementation guide ขึ้นมามากมาย
หลังรัฐบาล Obama ประกาศ HITECH Act และ Meaningful Use เรื่อง interoperability กลายเป็นเรื่องหนึ่งที่สาคัญ และ
ทาง ONC สนใจใช้ HL7 CDA เป็น standard สาหรับ clinical document ทาง HL7 เลยร่วมกับ CDA ทาการสังคายนาบรรดา
implementation guide ทั้งหลาย รวมเอามาแต่อันที่สาคัญๆ ออกมาเป็น Consolidated-CDA หรือ C-CDA
C-CDA กลายเป็น criteria หนึ่งในการที่ EHR นั้นจะได้รับการรับรองว่าผ่าน Meaningful Use stage 2 โดย CDA document
template ที่คนพูดถึงบ่อยคือ Continuity of Care Document (CCD) ซึ่งเป็นเอกสารสาหรับส่งต่อคนไข้เมื่อเปลี่ยนผู้ให้บริการทาง
การแพทย์ (providers)
7. HL7 FHIR
1) Resources: หน่วยย่อยที่สุดของข้อมูล เช่น patient resource, allergy resource, family history resource เป็นต้น แต่ละ
resource ก็จะมีโครงสร้างว่ามีข้อมูลอะไรบ้างใน resource นัน้
2) References: ความสัมพันธ์ระหว่าง resources ต่างๆ เช่น medication resource ก็สัมพันธ์กับ condition resource,
patient resource, practitioner resource, เป็นต้น
3) Profiles: การนา resources ต่างๆ มาประกอบกันให้เอาไปใช้งานได้ เช่น จะสร้าง discharge summary ต้องใช้ resources
อะไรบ้าง ต้อง binding กับ terminology อะไร เป็นต้น
การเข้าถึงส่วนประกอบต่างๆ เหล่านี้จะทาผ่าน REST API เหมือนเว็บอื่นๆ เช่น ต้องการ patient resource ก็ GET request ไป
mydomain/Patient/id เป็นต้น อันนี้ทาให้ developer รู้สึกว่า HL7 FHIR เรียนรู้และ implement ได้ง่ายกว่า standard อื่นๆ
ปัจจุบัน HL7 FHIR เป็น release 3 อยู่ในสถานะ Standard for Trial Use (STD) ก็คือพร้อมให้องค์กรต่างๆ ลองเอาไปใช้ดู ก่อนจะ
ผ่านไปสู่ normative edition (เวอร์ชั่นสมบูรณ์) ต่อไป
HL7 เป็นกลุ่มของ standard ที่ใช้ใน U.S. เป็นหลัก อาจมีบางอย่างที่ใช้ในต่างประเทศบ้าง เช่น HL7 RIM, หรือ HL7 CDA แต่
ในยุโรป, ออสเตรเลีย และทวีปอื่นๆ บางส่วน (ดูทั้งหมด) standard ที่ได้รับความนิยมคือ OpenEHR
OpenEHR เป็น architecture framework สาหรับ EHR (คล้ายๆ RIM) จริง ๆ แล้ว OpenEHR ไม่ใช่ standard (และไม่เคย
บอกว่าตัวเองเป็น standard) แต่แนวคิดของ OpenEHR เป็นสิ่งที่หลายๆ standard เช่น CEN/ISO EN13606 (EHR architecture
standard) ใช้เป็นต้นแบบในการพัฒนา standard รวมไปถึง national standard อื่นๆ เช่น Norwegian Clinical Knowledge
Manager
OpenEHR ใช้หลักการที่เรียกว่า Dual-model คือ มี information model 2 ส่วน คือ reference model และ archetypes
แนวคิดคือ ข้อมูลทางการแพทย์มีการเปลี่ยนแปลงบ่อย การผูกส่วนที่เป็นความรู้เข้ากับข้อมูล ทาให้ไม่เกิดความยืดหยุ่นในการเปลี่ยนแปลง
ดังนั้นต้องแยก 2 ส่วนนี้ออกจากกัน
ยกตัวอย่างเช่น
Information model: เป็นหน่วยย่อยที่สุดของข้อมูล เช่น data type (text, number, time, ฯลฯ), data structure (table,
list, tree, ฯลฯ), EHR component (composition, section, entry, ฯลฯ)
Archetype model: เป็น model สาหรับการจัดการความรู้ทางการแพทย์ เช่น Blood pressure model ก็จะประกอบด้วย
information model ที่เป็น number, time, subject ฯลฯ เมื่อนามาประกอบกันก็จะกลายเป็นฟิลด์ต่างๆ เช่น วัดได้เท่าไหร่
วัดอะไรบ้าง วัดท่านั่งหรือท่านอน วัดตอนหลับหรือตอนตื่น ฯลฯ บาง archetype ก็จะสามารถทา terminology binding ด้วย
ได้
หลังจากนั้นก็นา Archetype มาประกอบกันเป็น template เช่น template ของประวัติคนไข้ก็จะประกอบด้วย archetype
history, archetype blood pressure, archetype physical exam ฯลฯ เอาหลายๆ template มาประกอบร่างกัน ก็จะกลายเป็น EHR
architecture ขึ้นมา
9. ที่เล่ามาทั้งหมดนี่เกี่ยวอะไรกับเมืองไทยไหม?
Standard & interoperability เป็น 1 ใน building block ของ WHO-ITU eHealth strategy toolkit
อีกปัจจัยหนึ่งก็คือ ขนาดในต่างประเทศเอง ประเทศอุตสาหกรรมส่วนใหญ่ก็ยังพูดได้ไม่เต็มปากว่าตนเองประสบความสาเร็จใน
การสร้าง semantic interoperability ดังนั้นไทยอาจไม่ทาอะไรจริงจังจนกว่าจะเห็น success case แบบจับต้องได้จากประเทศอื่นๆ
อย่างไรก็ดี ล่าสุดผู้เขียนเห็นยุทธศาสตร์เทคโนโลยีสารสนเทศสุขภาพ กระทรวงสาธารณสุข (2559-2563) ฉบับร่างเผยแพร่ออก
มาแล้ว จะมีเรื่อง standard & interoperability อยู่ในนั้นด้วย
ผู้สนใจหาข้อมูลเพิ่มเติม
หนังสือ Principles of Health Interoperability: SNOMED CT, HL7 and FHIR โดย Tim Benson และ Grahame Grieve
eBook Ehealth in Thailand : interoperability and health information standards โดยอาจารย์บุญชัยและคณะ
SNOMED: Introduction to SNOMED CT ดูแค่ครึ่งแรกที่เป็นของ SNOMED-CT ก็ได้ครับ
C-CDA: ONC clip มี 3 ตอน
FHIR: เข้า Youtube เสิร์ชหาเลคเชอร์ที่ Grahame Grieve พูดครับ (เป็นคนริเริ่ม FHIR)
HL7, OpenEHR, interoperability: Channel ของ Rene Spronk, Orion Health, Furore_com ชอบมี lecture น่าสนใจ
สรุป
เราต้องมี standard เพื่อลดความจาเป็นในการ custom ระบบทุกครั้งเวลาเชื่อมต่อข้อมูลกันระหว่าง 2 ระบบ
Interoperability มี 3 ระดับ ต่อกันเฉยๆ เรียก Foundational ต่อกันแบบมีโครงสร้างเรียก Structural (syntactic) ต่อกันแบบ
เข้าใจความหมายตรงกันเรียก Semantic
HL7 v2 เป็น healthcare messaging standard ที่ใช้เยอะที่สุดในโลก
จะไปถึง semantic interoperability ได้ต้องมี 1) reference information model 2) terminology/classification system
SNOMED-CT เป็น medical terminology ที่ใหญ่ที่สุดในโลก และใช้ในโปรเจคท์ต่างๆ มากมาย
HL7 v3 มีส่วนประกอบหลัก 3 ส่วน (RIM, messaging, CDA) HL7 RIM เป็น information model , v3 messaging กะให้ใช้
แทน v2 แต่ล้มเหลว, HL7 CDA คนใช้พอสมควร ส่วนหนึ่งเพราะ Meaningful Use ดัน
HL7 FHIR เป็นน้องใหม่ไฟแรง ที่ทุกคนคาดหวังว่าจะเป็น standard ของยุคหน้า
OpenEHR เป็น architecture framework ที่ใช้เยอะในยุโรปและหลายๆ ประเทศ
ผมคิดว่า healthcare interoperability ในไทยคงอีกนานกว่าจะเกิด เพราะหลายๆ ปัจจัย
SMEs และ Startups สาย healthcare ก็ดๆู เรื่องพวกนี้ไว้บ้างก็ดี แต่ยังไม่ได้เร่งด่วนว่าต้อง implement
ที่มา
รัฐ ปัญโญวัฒน์
Co-founder of Health at Home
A doctor, MSc Health Informatics student, front-end web developer, UI/UX designer, and cat lover
Link: https://rath.asia/2017/04/health-informatics-standard-101/