FHIR资源的简单搜索URL

时间:2013-08-23 10:11:46

标签: hl7-fhir

在文档的查询部分http://www.hl7.org/implement/standards/fhir/query.htm中,搜索请求的定义如下

GET .../[resourcetype]/(?parameters)

然后我们找到(没有/之前的?)

GET .../patient?_id=23

我们也找到了搜索关键字

GET [baseurl]/diagnosticreport/search?subject.name="peter"

我向格雷厄姆的测试服务器提出了3个请求

http://hl7connect.healthintersections.com.au/svc/fhir/practitioner/?given=Henry
http://hl7connect.healthintersections.com.au/svc/fhir/practitioner?given=Henry
http://hl7connect.healthintersections.com.au/svc/fhir/practitioner/search?given=Henry

一切顺利。 All给出了相同的href(用于链接)表单(使用搜索关键字)

<link href="http://hl7connect.healthintersections.com.au/svc/fhir/practitioner/search?_format=text/xml+fhir&amp;search-id=c7d9338a-b64a-41db-875d-d3c68a12c6&amp;given=Henry&amp;search-sort=_id" rel="self" xmlns="http://www.w3.org/2005/Atom" />

我向Ewout的测试服务器/

提出了这3个请求
http://fhir.furore.com/fhir/practitioner/search?given=Henry
http://fhir.furore.com/fhir/practitioner?given=Henry
http://fhir.furore.com/fhir/practitioner/?given=Henry

前两个请求有效,并返回相同的链接

<link rel="self" href="http://fhir.furore.com/fhir/practitioner/search?given=Henry" />

第三次失败:资源/?param。

那么好的语法是什么? 他们都没事吧?

3 个答案:

答案 0 :(得分:1)

这很可能是规范中的一个错误。尾部斜杠不应该在规范中,并且Ewout的服务器没有错。我在选票评论中注意到这是一个问题

我不确定我的服务器是不是错了 - 我认为没有理由禁止那里的斜线,但这肯定不是意图。可能是我的错误从我的实现中复制和粘贴

答案 1 :(得分:1)

“/ search”是默认命令,因此省略它会得到相同的结果。因此,Ewout服务器接受的两个选项都被认为是正确的。

答案 2 :(得分:1)

鉴于我们要修复搜索规范,我不会尝试支持第三种语法。此外,我的服务器正在使用.NET WCF REST框架的默认行为,试图强制其他语法也将迫使其他.NET WCF REST开发人员采取额外的步骤。如果可能的话,我想尽量避免!