医疗信息建模协同平台的设计需要明确服务的领域知识类型和形式、相关知识个体、医疗信息模型的运转流程和生命周期、管理功能。由于医疗信息建模协同平台的构建服务于大数据环境下医疗信息协同建模,因此平台的设计与所采用的信息建模方法紧密相关,包括领域信息建模的定义及其表现形式、信息建模参与者、参与和协同方式、管理功能。
以openEHR为例,其原型开发和生命周期如图4-7。由于原型的构建是一个需要结合多个相关领域知识而定义计算机和人可识别、处理的领域知识表达的过程,这个过程中涉及的知识个体包括临床专家、信息学专家、术语专家、技术实现人员、医疗信息化从业者等。在原型构建过程中,往往需要多个专家进行协同而不是由指定的个人独立工作,协同覆盖原型的创建、修订、审核等原型操作。虽然在现有的原型构建方法中并没有要求每个阶段必须协同,但是整个原型建模过程的协同对于原型定义质量的提高和原型的标准化或者重用至关重要。从另一个角度来看,原型构建过程中协同程度越高,涉及范围越大,其标准化和重用的可能性越高,这对于大数据下医疗信息的应用意义重大。
图4-7 原型开发流程与生命周期
上述的CKM平台就是一个国际openEHR原型和模板的管理平台,提供原型和模板的查看、下载、上传、审核和发布功能。它聚集了来自世界各地感兴趣和积极的个人组成的活跃社区,专注于推进一种开放的、国际化的临床信息学方法——一种与程序和信息无关的通用语言,用于在个人、临床医生和组织之间,以及在应用程序、跨区域和国界之间共享健康信息。所有对CKM的贡献都是自愿的,CKM的所有内容都是开源的,在知识共享许可下免费提供。它的主要功能是创建原型库,制定正式的审查流程,以实现内容达成一致以及原型发布和原型管理。所有注册者,包括临床医生,都能以多种特定角色参与CKM原型发布:编辑员、审查员、翻译员和术语绑定员。每个专家都可以通过专业领域的知识丰富各个原型的内容,因此其提出的意见都很受欢迎。显然,临床医生需要推动临床原型的临床内容,而其他人则负责对原型质量在其他方面的进一步提升,例如:确保原型的设计在技术上得到优化,具有正确的术语绑定和翻译等。编辑任务并非易事,为促进对每个原型的审查,直到内容共识和发布,它需要编辑员经过在openEHR和CKM方面的大量的基础培训,拥有持续的时间和精力。编辑员通常在小团队中负责编辑其专业领域知识的原型。临床医生和信息学家被任命为所有临床原型的编辑员;软件工程师和人口统计专家则担任人口统计原型的编辑。非注册用户可以浏览CKM应用程序,查看和下载所有组件,但进一步参与则需要进行注册。由于CKM的流程和活动是透明的,所有注册用户都可以查看模型、评论、背景资料、修订/版本历史、审查意见等。他们可以对每个原型发表评论,提供背景参考资料,采用原型并参与这些原型的审查以及通过监视列表和通知跟踪原型进度。
虽然领域专家或者其他利益相关者可以自行构建原型,但是自由、分散的原型构建模式可能会导致原型定义质量参差不齐、语义重叠等妨碍语义互操作的问题产生。整合领域资源进行协同建模是提升原型定义质量,促进原型共享和重用的一种途径。本研究的医疗信息建模方法包括3个主要部分:角色划分、原型构建和原型管理。其中原型构建又包含4个步骤,分别是:需求收集、概念表达、原型映射、原型定义,如图4-8所示。
图4-8 模型构建方法
1)角色划分
考虑到原型定义过程中需要3种知识:医学相关领域知识、信息技术知识和openEHR知识。领域知识是原型定义的来源、评估的依据;信息技术知识是原型定义的媒介、评估的依据;openEHR知识是原型定义、评估和使用的指导和规则。针对3种知识来源,方法中定义了3种角色:领域专家、信息专家和建模工程师。每一种身份都由拥有对应知识的人员所扮演,其中允许一人分饰多个角色。
2)原型构建
(1)需求收集。原型是一种计算机和人都能理解的领域知识表达方式,也是信息需求的一种表现形式。信息建模需求的采集是原型构建的开始,同时也决定了原型构建的质量。信息需求的来源多样,包括:现有信息系统需求文档、系统功能、临床指南、专家知识、发表的文章等。本研究为了促进原型的构建,在需求采集阶段要求将众多来源的需求整理成为一个语义清晰的数据元素集合。数据元素的元数据包括:数据元素名称、数据类型、数据元描述、术语绑定、数据元素来源。需求采集可以由3种身份中的任意一种身份完成。
(2)概念表达。每一个原型对应着一个领域概念,因此概念的表达是原型定义过程中重要的一环。概念的表达形式可以有很多种,包括自然语言、思维导图和其他计算机化的表达方式。为了促进原型的协同构建,本方法规定概念的元数据包括:概念名称、概念描述、概念包含的属性及其关系。在需求采集阶段的数据元素对应着概念中的属性。为了促进多角色人员的沟通与协作,概念的表达采用思维导图作为可视化媒介。概念的表达最好是由领域专家完成,或者经领域专家确认。
(3)原型映射。原型映射是对现有原型的重用。首先,依据领域概念表达对现有原型进行检索。其次,基于检索结果决定对应的原型映射操作。原型映射包括以下5种类型。
①直接采用:领域概念的语义被原型完全表达;领域概念的属性被原型的数据元素全部覆盖;概念元数据被原型元数据完全表达。
②原型修正:领域概念的语义被原型完全表达;领域概念的属性被原型的数据元素全部覆盖;概念元数据被原型元数据部分表达。
③原型扩展:领域概念的语义被原型完全表达;领域概念的属性被原型的数据元素部分覆盖;
④原型特例化:领域概念的语义是原型表达语义的一种特例;
⑤不兼容性修改(新建):领域概念的语义与原型表达语义不一致、不兼容。
(4)原定定义。当领域概念没有被现有原型表达或者需要进行不兼容修改时,新的原型需要被构建。首先依据“问题解决逻辑”和领域概念的语义确定原型所属类型。然后依据领域概念元数据定义原型的元数据。参照领域概念的属性及属性间关系定义原型的数据元素及数据元素对应的约束。原型的定义可以由建模工程师完成。
3)原型管理
一个开放的原型协作平台能够促进原型的协同构建、共享和重用,以获得更好的语义互操作能力。语义互操作需要严格的原型定义和管理来促进原型的共享和重用,因此原型管理平台也很重要,目前的原型管理平台有openEHR CKM、NHSCfH仓库和HMC。openEHR CKM作为一个国际原型管理平台和原型仓库已经被广泛地采用了,但是没有提供原型编辑功能。