搜索库或框架,提供一个对象模型,分析,验证等HL7对象模型的.NET
的想法是能够旋转起来类型HL7 V2或V3的一个新对象。然后也许称它为消息类型ORU_R01或ADT或ORM。
难道生命是伟大的,如果我们能够做这样的事:
HL7V2 myMessage = new HL7V2();
myMessage.Type = V2MsgTypes.ORU_R01;
myMessage.TryParse(someHL7_string);
if (myMessage.IsValid)
{
//do some work
//maybe access the PID segment
if (myMessage.Patient.Names.FamilyName =="Johnson")
{
//do more work
}
}
虽然nHAPI的问题在于它假定某个特定“HL7版本”的任何给定消息具有一种风味。 HL7的现实是,不同的国家对HL7有不同的定义(例如澳大利亚的参考消息与美国不同),并且在一个国家内,不同的病理学实验室会有自己的2.3.1 ORU消息。一些国家甚至不更改版本号。 nHAPI使并发定义变得困难。一种更好的方法可能是从诸如HL7等EDI格式中抽象出来并使用XML; XSD和XSLT代替 – MickyD 2015-04-29 09:15:17
这是一个有效的论点,但或许更好的答案是改进nHAPI,因为nHAPI的重点在于将相同的抽象从EDI格式转换为对象模型。人们也可以争辩说,各种HL7应用程序的实施者应该更好地遵守标准,因为这是真正的潜在问题。鉴于这不会发生,改善。NET抽象似乎比创建一个更好的解决方案。 – 2015-04-29 16:45:33