如何通过单次FHIR搜索查询Practitioner关联的Level 0 Organization?
单次FHIR搜索获取关联的Level 0机构方案
核心逻辑
要直接获取目标从业者关联的顶级机构(Level0),需同时满足两个条件:
- 该机构无上级(
partof字段为空,是Level0的核心特征) - 该机构是目标从业者关联的Level2机构的祖先节点
具体搜索请求
通过链式_has参数结合字段筛选,构造如下请求:
/Organization?partof:missing=true&_has:Organization:partof:_has:PractitionerRole:organization:practitioner=Practitioner/[你的PractitionerID]
参数说明
partof:missing=true:直接筛选出没有上级机构的顶级节点_has:Organization:partof:_has:PractitionerRole:organization:practitioner=Practitioner/[ID]:通过两层链式关联,定位到属于目标从业者关联机构(Level2)上级链的顶级机构
替代实现(服务器支持时可用)
若FHIR服务器支持_filter参数,也可以先拉取所有关联机构再筛选顶级:
/Organization?_include:iterate=Organization:partof&_has:PractitionerRole:organization:practitioner=Practitioner/[ID]&_filter=partof:missing=true
注:该方式可能返回所有层级机构,但仅保留符合partof:missing=true的结果,具体取决于服务器实现。
内容的提问来源于stack exchange,提问作者Orissa
相关产品推荐
相关产品推荐

