ปัญหาใดที่มักเกิดขึ้นเมื่อทำงานกับข้อความ HL7


12

ฉันกำลังทดสอบผลิตภัณฑ์สำหรับธุรกิจด้านการดูแลสุขภาพและเรากำลังทำงานกับข้อความ HL7 ฉันเห็นผู้คนส่งเสียงพึมพัมคำถามอื่นเกี่ยวกับปัญหาของ HL7 แต่ไม่ได้กล่าวถึงเฉพาะ ใครสามารถให้แนวคิดบางอย่างเกี่ยวกับปัญหาหรือประเภทของปัญหาที่เราควรมองหาเป็นพิเศษ

เรากำลังใช้ห้องสมุดที่ใช้งานได้ดีสำหรับการวิเคราะห์คำ หากข้อมูลเฉพาะเกี่ยวกับสิ่งเหล่านี้หรือสิ่งที่เรากำลังทำอยู่จะเป็นประโยชน์โปรดแจ้งให้เราทราบในความคิดเห็นและฉันจะเพิ่มคำถามหากฉันทำได้

คำตอบ:


13

ฉันถือว่าคุณกำลังจัดการกับ HL7 v2.x

HL7 ยืดหยุ่นอย่างมากโดยสมัครใจ นั่นมีข้อดีมาก แต่ก็แนะนำความท้าทายด้วย กฎพื้นฐานที่ต้องคำนึงถึงคือการใช้งานทุกอย่างจะแตกต่างกัน หากคุณปรับใช้ผลิตภัณฑ์เดียวกันใน 2 สภาพแวดล้อมที่แตกต่างกัน (เช่นโรงพยาบาล 2 แห่ง) กฎการแลกเปลี่ยนข้อมูลอาจแตกต่างกัน ผลิตภัณฑ์ของคุณจะต้องพร้อมที่จะตอบสนองความต้องการที่ซ่อนอยู่หากคุณต้องการที่จะปรับขนาดจำนวนของอินเตอร์เฟซ HL7 มันจะโต้ตอบกับ

ในระบบการดูแลสุขภาพส่วนใหญ่ที่เกี่ยวข้องกับ HL7 เรากำลังเผชิญกับรายการบางส่วนของความท้าทายที่พบบ่อย:

  • แต่ละระบบสามารถตีความความหมายของแต่ละส่วนข้อมูล บริบทและเวิร์กโฟลว์ก็มีอิทธิพลต่อความหมายเช่นกัน ฉันเห็นระบบบางระบบที่ใช้หมายเลขบัญชี (PID.18) หรือหมายเลขเยี่ยมชม (PV1.19) เพื่อระบุผู้ป่วยที่เป็นไปตามกระบวนการทางคลินิกบางอย่าง ประเภทของช่องว่างความหมายนั้นอาจมีผลกระทบต่อวิธีการที่ระบบรับข้อมูลนี้เกี่ยวข้องกับมัน
  • จำเป็นและเป็นตัวเลือก: เนื่องจากสามารถแลกเปลี่ยนข้อมูลเพื่อบรรลุเป้าหมายหลายอย่างในบริบทที่แตกต่างกันเซ็กเมนต์และฟิลด์ส่วนใหญ่จะมีการบันทึกเป็นตัวเลือกในเอกสารประกอบอย่างเป็นทางการ (และตัวแยกวิเคราะห์บางส่วน) อย่างไรก็ตามเพื่อให้เป็นไปตามกระบวนการทำงานที่เฉพาะเจาะจงผลิตภัณฑ์ดูแลสุขภาพอาจจะเพิ่มกฎข้อ จำกัด ของข้อมูลและผ่อนคลายบางอย่าง ส่วนใหญ่แล้วการวิเคราะห์รายกรณีจะต้องเกิดขึ้นเพื่อระบุตัวตน
  • ตาราง: HL7 แสดงรายการค่าที่แนะนำสำหรับบางฟิลด์ ตัวอย่างเช่นรายการค่าที่แนะนำสำหรับเพศนั้นมีความยาว 6 ... เห็นได้ชัดว่าระบบส่วนใหญ่ไม่ได้ใช้ทั้งหมด 6 แต่กลยุทธ์การทำแผนที่ของคุณคืออะไรถ้าคุณได้รับสิ่งที่คุณไม่สนับสนุนล่วงหน้า
  • สามารถกำหนดกลุ่มและฟิลด์ได้: ความยาวฟิลด์, ชนิดข้อมูลและแอ็ตทริบิวต์นิยามอื่น ๆ สามารถกำหนดเองได้ คุณต้องแมปไปยังโครงสร้างข้อมูลบางอย่างที่คุณรู้โดยไม่สูญเสียข้อมูลสำคัญ

jlmorin

www.caristix.com


6

ปัญหาเล็กน้อยที่ฉันพบ:

  • บางองค์กรอาจใช้ HL7 รุ่นที่แตกต่างกันดังนั้นคุณจะมีปัญหาความเข้ากันได้ ("การเดินข้าม") แน่นอนคุณจะพบปัญหานี้หากคุณมีส่วนร่วมในการถ่ายโอนข้อมูลระหว่างองค์กร
  • ไม่มีมาตรฐานความหมาย (สำหรับ v2.x ฉันคิดว่า v3 อาจเริ่มจัดการกับเรื่องนี้) ดังนั้นแม้ว่าคุณจะรู้ว่าข้อมูลใดควรอยู่ในเขตข้อมูลใดโดยเฉพาะคุณอาจไม่ทราบความหมายที่แท้จริงหรือการเป็นตัวแทนของไบต์เหล่านั้น
  • HL7 เป็นมาตรฐานที่ไม่ได้มาตรฐาน สนับสนุนเฉพาะผู้ขายZ-segmentsซึ่งใช้กันอย่างแพร่หลายและเป็นกรรมสิทธิ์โดยสิ้นเชิง
  • HL7 v2.x (ค่า x จำนวนมากที่ยังคงใช้งานอยู่ใน wild) เป็นรูปแบบที่ไม่ใช่กรรมสิทธิ์ของ XML ดังนั้นคุณจะต้องใช้เครื่องมือแยกวิเคราะห์ HL7 เพื่อทำงานกับมัน (สิ่งนี้คุณรู้แล้วว่าคุณมีห้องสมุดแยก HL7 อยู่แล้วรวมถึงห้องสมุดอื่น ๆ ด้วย)

2
ที่เลวร้ายที่สุดของเหล่านั้นคือการขาดความหมาย เมื่อแม้แต่คนที่เขียนมาตรฐานบอกว่า "คุณสามารถส่ง X หรือ Y ได้ แต่ Z ก็ใช้ได้" คุณรู้ว่าคุณมีปัญหา สิ่งที่ช่วยประหยัดคือไม่มีใครยกเว้นคนแยกวิเคราะห์ที่ต้องจัดการกับตัวเลือกทั้งหมดของ HL7 - ทุกคนจัดการกับชุดย่อยขนาดเล็กที่ลูกค้าได้รับจริง หมายความว่าการเขียน accepter ใหม่นั้นเป็นกระบวนการค้นพบ (ที่ฉันกำลังดำเนินอยู่ในขณะนี้) แทนที่จะเป็นการฝึก "ใช้มาตรฐาน" โอ้และคาดเดาว่าคุณต้องส่งตัวเลือกใดเพื่อให้ได้เอฟเฟกต์ที่ต้องการ

@ +1 สำหรับคำตอบและฉันสามารถให้ +1 เพื่อรวมข้อมูลสำหรับผู้อื่นที่ไม่ใช่ OP (ฉัน) @moz - จุดที่ดีเพียงแค่ต้องการชุดย่อยขนาดเล็ก นั่นคือสถานการณ์ของเราอย่างแม่นยำ คุณยังยืนยันว่าฉันสงสัยว่าการเปรียบเทียบกับข้อมูลลูกค้าจะเป็นกุญแจสำคัญ
Ethel Evans

1
@ethel และ @moz นั่นเป็นประเภทของความคิดที่ทำให้การจัดการกับ HL7 นั้นยากมากโปรดใช้เวลาในการทำให้โปรแกรมของคุณมีความยืดหยุ่นเท่าที่เป็นไปได้ HL7 เป็นที่เดียวที่ YAGNI ไม่สามารถใช้งานได้
Peter Turner

โอเคมันสมเหตุสมผลแล้ว ฉันไม่คิดว่าแอปพลิเคชันของเราจะทำให้เกิดปัญหา YAGNI ใด ๆ เนื่องจากเราวางแผนล่วงหน้าเพื่อขยายประเภทข้อความ HL7 ที่เราสามารถใช้เพื่อให้คุณค่า เรารู้ว่าเราไม่รู้ว่าเราต้องการอะไรในอนาคต
Ethel Evans

1
นั่นเป็นเหตุผลที่ฉันเป็นแฟนตัวยงของการใช้ไลบรารีโอเพนซอร์ส (HAPI / NHAPI) เป็นอย่างน้อยสำหรับฝ่ายรับ ดีกว่าที่จะมีระดับสูง "เราได้รับข้อความ HL7 ที่ถูกต้อง แต่ยังไม่ได้เขียนโค้ดเพื่อประมวลผล" กว่า "โปรแกรมแยกวิเคราะห์ของเราล้มเหลวเพราะเราไม่ได้คาดหวังข้อความนั้น" น่าเสียดายที่ทุกคนเริ่มเล็ก "เราแค่ส่ง X และรับ Y" มันง่ายกว่ามากที่จะแฮ็กบางสิ่งด้วยกันเพื่อขยายความมันทุกครั้งที่มีข้อกำหนดใหม่มาถึงจนกระทั่งในที่สุดมันก็พังตามน้ำหนักของ cruft สะสม

2

ปัญหาแรกคือทำให้แน่ใจว่าทุกคนรู้ว่า HL7 คืออะไร

มันเป็นวิธีที่จะแทนที่ coders [แพทย์ | การเรียกเก็บเงิน | ประกัน] และบันทึกเงิน [ร้านขายยา | ธนาคาร | บริษัท ประกันภัย]

นั่นคือรอยย่นบนปัญหาปกติทั้งหมดในการพัฒนาซอฟต์แวร์

  1. ขอบเขตคืบ
  2. ข้อกำหนดที่ไม่สมบูรณ์
  3. ข้อกำหนดเฉพาะของกรรมสิทธิ์ไม่ถูกต้องที่ "ไม่สามารถเปลี่ยนแปลงได้"

ดังนั้นคุณจึงติดต่อ [เภสัชศาสตร์ | ธนาคาร | บริษัท ประกันภัย] ของคุณที่ต้องการส่งเงินทั้งหมดเท่าที่จะทำได้จากอินเตอร์เฟส HL7 ไปยังสถานที่ที่ใช้ซอฟต์แวร์ของคุณ สัญญาของคุณอยู่กับโรงงานสัญญาของพวกเขาอยู่ที่ร้านขายยา [ร้านขายยา | ธนาคาร | บริษัท ประกันภัย] ไม่มีเงื่อนงำว่าซอฟต์แวร์ของคุณทำงานได้อย่างไรสถานที่ดังกล่าวไม่มีเงื่อนงำว่า HL7 คืออะไรและคุณถูกเลือกที่ร้านขายยา บอกคุณเสมอว่าซอฟต์แวร์ของคุณเป็นรถบั๊กกี้

ฉันเชื่อว่าปัญหาของ HL7 นั้นส่วนใหญ่จะทำในราคาถูก HL7 3.0 อาจไม่เกิดขึ้นจริงเพราะจะไม่สร้างรายได้

หากคุณกำลังจะ "จ่ายสำหรับ HL7" โปรดจำไว้ว่าคุณกำลังจ่ายให้กับ HL [1-6] เช่นกัน อินเตอร์เฟส SOAP ไม่ใช่ HL7 ตัวแยกวิเคราะห์ข้อความ HL7 ไม่ใช่ HL7 ไม่ใช่ตัวสร้างข้อความ


1
HL7 เป็นมากกว่าร้านขายยา HL7 ส่วนใหญ่มักใช้เพื่อเชื่อมต่อระบบที่แตกต่างกันเช่น EMR กับระบบการเรียกเก็บเงิน
Bill

ผลิตภัณฑ์ของเราไม่ได้ถูกกำหนดเป้าหมายที่ร้านขายยาแม้แต่ทางอ้อมและการตอบสนองนั้นมีอคติมากโดยมีการสนับสนุนเล็กน้อยสำหรับคำตอบ
Ethel Evans

1
@Ethel ฉันจะเพิ่ม regexes แต่คุณควรจะเจาะจงมากขึ้นในคำถามของคุณ เราทำมากกว่าร้านขายยาด้วยการใช้งาน HL7 ที่ปลูกในบ้านของเรา 100% แต่ผู้มีอิทธิพลสำคัญเบื้องหลังการพัฒนานั้นมักจะเป็น "ฟาร์มาขนาดใหญ่" ถ้าผู้อื่นสามารถใช้ประโยชน์จากข้อกำหนดที่ใช้กันอย่างแพร่หลาย
Peter Turner

@ Peter: ฉันจะพยายามที่จะเฉพาะเจาะจงมากขึ้นด้วยเหตุผลที่ฉันคิดว่ามันไม่เป็นประโยชน์ ก่อนอื่นคำพูดที่เน้นของคุณดูเหมือนจะเอนเอียงและไม่สนับสนุนอย่างมาก ประการที่สองรายการในรายการหมายเลขของคุณอาจคลุมเครือหรือไม่เพิ่มเข้าไปนอกเหนือจากคำตอบอื่น ๆ ที่กล่าวไว้ชัดเจนยิ่งขึ้น ประการที่สามตัวอย่างสถานการณ์ของคุณมีความเฉพาะเจาะจงสูงและดูเหมือนว่าสถานการณ์ที่ฉัน (และคนอื่น ๆ ดูเหมือน) กำลังเผชิญอยู่นั้นไม่เกี่ยวข้อง ประการที่สี่ข้อความสั่งของคุณที่ HL7 ทำในราคาถูกดูเหมือนว่ามีอคติและไม่สนับสนุน ประการที่ห้าฉันไม่ได้ทำ "HL7" ฉันกำลังทำงานกับข้อความ HL7 ดังนั้นจุดในย่อหน้าสุดท้ายจะหายไป
Ethel Evans

2
@Ethel ฉันควรสนับสนุนข้อเรียกร้องของฉันอย่างไรบนโลกใบนี้ฉันไม่ได้รับผลประโยชน์ใด ๆ จากการจับ HL7 สิ่งที่ฉันรู้จากประสบการณ์การทำงานกับผู้ขายหลายปีที่ผ่านมาคือเมื่อมีคนบอกว่าพวกเขาต้องการทำงานกับฉัน ซอฟต์แวร์และเพื่อส่ง "ข้อความทดสอบ" เพื่อให้พวกเขาสามารถจัดการสิ่งที่ควรจะดูเหมือนพวกเขาจะสร้าง ORM บางส่วนเกี่ยวกับข้อความและมันจะใช้งานได้ มันไม่ดี หากคำตอบของฉันดูเหมือนแตกต่างจากที่อื่นก็ไม่ใช่เพราะฉันไม่ได้บอกความจริงกับคุณ HL7 ส่วนใหญ่เกี่ยวกับเงิน
Peter Turner
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.