FHIR 按扩展名搜索
FHIR search by extension
如何在 FHIR 中搜索扩展值?搜索扩展是否需要 SearchParameter
注册?任何有关示例的帮助都会很棒。我一直在尝试使用我自己的 FHIR 服务器 (https://github.com/Microsoft/fhir-server) 在 SearchParameter
注册后使用 mothersMaidenName
但它提供了来自服务器的所有 Patients
。
更新
我已将此 JSON 设置为患者资源的扩展。
{
"extension": [
{
"url": "http://hl7.org/fhir/SearchParameter/patient-extensions-Patient-mothersMaidenName",
"valueString": "trial"
}
]
}
SearchParameters 注册是这样完成的(这些来自https://www.hl7.org/fhir):
{
"resourceType": "SearchParameter",
"id": "e3f10e54-f558-49bb-8732-faee3a4dda8d",
"url": "http://hl7.org/fhir/SearchParameter/patient-extensions-Patient-mothersMaidenName",
"version": "3.6.0",
"name": "mothersMaidenName",
"status": "draft",
"experimental": true,
"code": "mothersMaidenName",
"base": [
"Patient"
],
"type": "string",
"description": "Search based on patient's mother's maiden name",
"expression": "Patient.extension(http://hl7.org/fhir/SearchParameter/patient-extensions-Patient-mothersMaidenName)",
"xpathUsage": "normal"
}
需要两个步骤:首先,您需要定义一个自定义 SearchParameter,以您希望的方式搜索您希望的元素。其次,必须手动更改所有相关服务器(即编写代码)以支持新的搜索参数。
您仍然错过了 Lloyd 提到的第二步:服务器应该知道 SearchParameter 并且需要实现以支持它。
通过阅读 MS 服务器文档,他们使用了一个包含所有 SearchParameters 的文件。这是由服务器在启动时读取的,因此服务器可以支持它们。所以你需要找到它 (searchparameters.json) 并将你的 SearchParameter 添加到它,然后重新启动并查看它是否有效。
我不确定如何重建搜索索引,因此它可能只适用于新上传的资源,除非您了解它是如何完成的。
我们目前不支持在我们的 FHIR 服务器中搜索扩展。它在我们的路线图上。 https://github.com/Microsoft/fhir-server/blob/master/docs/Roadmap.md#extensions
马杰兹
如何在 FHIR 中搜索扩展值?搜索扩展是否需要 SearchParameter
注册?任何有关示例的帮助都会很棒。我一直在尝试使用我自己的 FHIR 服务器 (https://github.com/Microsoft/fhir-server) 在 SearchParameter
注册后使用 mothersMaidenName
但它提供了来自服务器的所有 Patients
。
更新
我已将此 JSON 设置为患者资源的扩展。
{
"extension": [
{
"url": "http://hl7.org/fhir/SearchParameter/patient-extensions-Patient-mothersMaidenName",
"valueString": "trial"
}
]
}
SearchParameters 注册是这样完成的(这些来自https://www.hl7.org/fhir):
{
"resourceType": "SearchParameter",
"id": "e3f10e54-f558-49bb-8732-faee3a4dda8d",
"url": "http://hl7.org/fhir/SearchParameter/patient-extensions-Patient-mothersMaidenName",
"version": "3.6.0",
"name": "mothersMaidenName",
"status": "draft",
"experimental": true,
"code": "mothersMaidenName",
"base": [
"Patient"
],
"type": "string",
"description": "Search based on patient's mother's maiden name",
"expression": "Patient.extension(http://hl7.org/fhir/SearchParameter/patient-extensions-Patient-mothersMaidenName)",
"xpathUsage": "normal"
}
需要两个步骤:首先,您需要定义一个自定义 SearchParameter,以您希望的方式搜索您希望的元素。其次,必须手动更改所有相关服务器(即编写代码)以支持新的搜索参数。
您仍然错过了 Lloyd 提到的第二步:服务器应该知道 SearchParameter 并且需要实现以支持它。 通过阅读 MS 服务器文档,他们使用了一个包含所有 SearchParameters 的文件。这是由服务器在启动时读取的,因此服务器可以支持它们。所以你需要找到它 (searchparameters.json) 并将你的 SearchParameter 添加到它,然后重新启动并查看它是否有效。
我不确定如何重建搜索索引,因此它可能只适用于新上传的资源,除非您了解它是如何完成的。
我们目前不支持在我们的 FHIR 服务器中搜索扩展。它在我们的路线图上。 https://github.com/Microsoft/fhir-server/blob/master/docs/Roadmap.md#extensions
马杰兹