如何将自定义Extension发布到Azure FHIR仓库以支持自定义字段搜索
Azure API for FHIR 自定义扩展发布操作指引
操作步骤
- 第一步:为每个自定义扩展编写对应的
StructureDefinition资源
你需要为ROW_ID、LOB两个扩展各生成一份StructureDefinition资源,该资源用来明确定义扩展的作用范围、字段类型等规则。以下是ROW_ID扩展的示例配置:
{ "resourceType": "StructureDefinition", "id": "extension-row-id", "url": "ROW_ID", "name": "ROW_ID", "status": "active", "kind": "complex-type", "abstract": false, "context": [ { "type": "element", "expression": "Claim" } ], "type": "Extension", "baseDefinition": "http://hl7.org/fhir/StructureDefinition/Extension", "derivation": "constraint", "differential": { "element": [ { "id": "Extension.url", "path": "Extension.url", "fixedUri": "ROW_ID" }, { "id": "Extension.value[x]", "path": "Extension.value[x]", "type": [ { "code": "string" } ] } ] } }
LOB扩展的配置仅需要把示例中的id、url、name字段修改为对应LOB的取值即可,其他规则保持一致。
- 第二步:将StructureDefinition资源上传到你的Azure API for FHIR实例
直接调用你的Azure FHIR服务的资源创建接口,接口地址为[你的FHIR服务根地址]/StructureDefinition,请求方法为POST,请求头设置Content-Type: application/fhir+json,同时携带你访问Azure FHIR服务的合法认证令牌,请求体填写上一步编写的StructureDefinition内容即可。
上传完成后,你后续创建SearchParameter资源时,就可以直接引用该扩展的url作为搜索目标路径。
注意事项
- StructureDefinition中填写的
url必须和你实际在Claim资源的extension节点中填写的url完全一致,否则后续搜索会无法匹配到对应字段 - 该扩展仅需要保存在你自己的Azure FHIR服务实例中即可,不需要发布到公网的公共FHIR注册中心,如果你需要和对接方共享扩展规则,直接导出StructureDefinition内容内部同步即可
内容的提问来源于stack exchange,提问作者aiman
相关产品推荐
相关产品推荐

