_包含在hapi fhir中

问题描述

当前,我正在使用HAPI FHIR(Java)开发FHIR搜索API。

在HAPI FHIR(Java)的FHIR资源MedicationRequest中,我想将Medication资源内联包括MedicationRequest.medication[x]下,而不是作为参考。我在下面提供了一个代码段。

//code
@IncludeParam(allow = { "MedicationRequest:medication" }) Set<Include> theIncludes 


// url
/MedicationRequest?_include=MedicationRequest:medication&status=stopped,active

但是,当我点击url时,响应未包含内联的药物资源。

如果我使用_include=*,则可以得到理想的结果。内联包括药物以及其他参考文献。

// code
@IncludeParam(allow = { "*" }) Set<Include> theIncludes

// url
/MedicationRequest?_include=*&status=stopped,active

有人可以帮助我了解为什么在使用_include=MedicationRequest:medication时为什么我没有得到期望的结果吗?

解决方法

_include=MedicationRequest:medication是合适的用法。

medication[x]是指:

  • medicationCodeableConcept
  • medicationReference

我最好的猜测是您正在尝试_include没有设置全局可解析ID的Medication资源。

没有全局可解析的ID,HAPI FHIR将生成本地可解析的ID,并将本地可解析的Medication包含在MedicationRequest.contained下。

通过设置ID并使用全局可解析的引用(即medicationReference.reference: Medication/myMed1而非medicationReference.reference: #myMed1

修复

请参阅:


URL:http://test.fhir.org/r4/MedicationRequest?_id=medrx0311&_include=MedicationRequest:medication

返回仅包含MedicationRequest的分发包。 Medication位于MedicationRequest.contained

{
  "resourceType" : "MedicationRequest","id" : "medrx0311",...
  "contained" : [
    {
      "resourceType" : "Medication","id" : "med0316",...
  "medicationReference" : {
      "reference" : "#med0316"
},

medicationReference.reference: #med0316不是全局的;因此,它被包含了。

URL http://test.fhir.org/r4/MedicationRequest?_id=medrx002&_include=MedicationRequest:medication

返回同时包含MedicationRequestMedication的分发包。

{
  "resourceType" : "MedicationRequest","id" : "medrx002",... 
  "medicationReference" : {
  "reference" : "Medication/med0316","display" : "prescribed medication"
},...
{
  "resourceType" : "Medication",

在这里,使用了适当的全局ID medicationReference.reference: Medication/med0316,因此药物在捆绑销售商品中列为单独的条目。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...