wanghaisheng / fhir-cn

FHIR中文版 the Chinese translation of FHIR
https://github.com/FHIR-CN/fhir-spec-ZhCN
72 stars 23 forks source link

查询功能 #40

Open wanghaisheng opened 9 years ago

wanghaisheng commented 9 years ago

chained 参数 Organization have 4 search param: L2-depart-identifier、hospital-identifier、L1-depart-identifier、type(to differentize these 3 types) Practitioner在Practitioner.practitionerRole.managingOrganization中引用表示二级科室的Organization实例,如果要在Practitioner.practitionerRole.managingOrganization处使用chained参数,如何操作 某家医院的所有医生

GET  base /Practitioner?organization:Organization.hospital-identifier=[id] &organization:Organization.type=prov{&_format=[mime-type]
GET  base /Practitioner?organization:Organization.hospital-identifier=[id]&Organization.type=prov{&_format=[mime-type]

某家医院某个一级科室的所有医生

GET  base /Practitioner?organization:Organization.L1-depart-identifier=[id]&organization:Organization.hospital-identifier=[id] &organization:Organization.type=L1-depart{&_format=[mime-type]
GET  base /Practitioner?organization:Organization.L1-depart-identifier=[id]&Organization.hospital-identifier=[id]&Organization.type=L1-depart{&_format=[mime-type]

某家医院的某个一级科室下的某个二级科室的所有医生列表

GET  base /Practitioner?organization:Organization.L2-depart-identifier=[id]&organization:Organization.hospital-identifier=[id]&organization:Organization.L1-depart-identifier=[id]&organization:Organization.type=L2-depart{&_format=[mime-type]}
GET  base /Practitioner?organization:Organization.L2-depart-identifier=[id]&Organization.hospital-identifier=[id]&Organization.L1-depart-identifier=[id]&Organization.type=L2-depart{&_format=[mime-type]}
wanghaisheng commented 9 years ago

organization is a reference type search param(Practitioner.practitionerRole.managingOrganization ) defined in Practitioner resource type.

  1. does any reference type search param imexplicit say it is a Chained parameter. 2.i have a use case as follows: one hospital have some L1-departments, each L1-depart have some L2-departments. I have defined 3 search params for Organization ,plus type. L2-depart-identifier、hospital-identifier、L1-depart-identifier(each point to a extension )、type(to differentize these 3 types),if organization search param support chained query, 1)get all doctors work in a hospital
GET  base /Practitioner?organization:Organization.hospital-identifier=[id]&Organization.type=prov{&_format=[mime-type]

2)get all doctors work in a L1-depart in a hospital

GET  base /Practitioner?organization:Organization.L1-depart-identifier=[id]&Organization.hospital-identifier=[id]&Organization.type=L1-depart{&_format=[mime-type]

3)get all doctors work in a a L2-depart in a hospital

GET  base /Practitioner?organization:Organization.L2-depart-identifier=[id]&organization:Organization.hospital-identifier=[id]&organization:Organization.type=L2-depart{&_format=[mime-type]}
wanghaisheng commented 9 years ago

如果抛弃Practitioner在Practitioner.practitionerRole.managingOrganization,把一级科室、医院以contained资源形式包含在Practitioner里面 问题就简单了 把查询参数指向contained的资源字段即可