36.6. API 参数(13 API)


@FHIR 端点是基于 API 的组件,它基于使用 API 名称和 API 方法的其他参数。API name 和 API 方法位于端点 URI 中,作为 apiName/methodName 路径参数:

fhir:apiName/methodName

下表中列出的 13 API 名称:

API 名称类型描述

功能

两者

API 用于修补服务器的能力声明

create

两者

用于 create 操作的 API,它会在服务器上创建新资源实例

delete

两者

删除操作的 API,它会在服务器资源上执行逻辑删除

history

两者

历史记录方法的 API

load-page

两者

使用位于om 捆绑包中的链接 type=next 标签中指定的链接,从 paged 集合加载之前/下一步捆绑包的 API

meta

两者

用于 meta 操作的 API,可用于从资源或跨服务器获取、添加和删除标签和其他 Meta 元素

operation

两者

用于扩展 FHIR 操作的 API

patch

两者

补丁操作的 API,对服务器资源执行逻辑补丁

读取

两者

读操作的 API 方法

search

两者

API 用于搜索与给定条件集合匹配的资源

transaction

两者

用于向服务器发送事务集合(资源集合)的 API,以作为单个单元执行

update

两者

更新操作的 API,它会在服务器资源上执行逻辑删除

validate

两者

用于验证资源的 API

每个 API 均记录在以下部分中。

36.6.1. API: 功能

支持生成者和消费者

capabilities API 语法定义如下:

fhir:capabilities/methodName?[parameters]

下表中列出了该方法,后面是每种方法的详细语法。(API 方法可以有一个简写别名名称,可在语法而不是名称中使用。)

方法描述

ofType

使用给定的模型类型检索 conformance 语句

36.6.1.1. Type 的方法

signatures:

  • org.hl7.fhir.instance.model.api.IBaseConformance ofType (Class<org.hl7.fhir.instance.model.api.IBaseConformance> type, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

fhir/ofType API 方法有下表中列出的参数:

参数描述类型

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

type

模型类型

除了以上参数外,fhir API 也可以使用任何 查询参数

任何参数都可以在端点 URI 中提供,或者在消息标头中动态提供。消息标头名称的格式必须是 CamelFhir.parameterinBody 参数覆盖消息标头,即 Body=myParameterNameHere 中的端点参数将覆盖 CamelFhir.myParameterNameHere 标头。

36.6.2. API: create

支持生成者和消费者

create API 语法定义如下:

fhir:create/methodName?[parameters]

下表中列出了 1 方法,后跟每种方法的详细语法。(API 方法可以有一个简写别名名称,可在语法而不是名称中使用。)

方法描述

resource

在服务器上创建 IBaseResource

36.6.2.1. 方法资源

signatures:

  • ca.uhn.fhir.rest.api.MethodOutcome resource (String resourceAsString, String url, ca.uhn.fhir.rest.api.PreferReturnEnum preferReturn, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);
  • ca.uhn.fhir.rest.api.MethodOutcome resource (org.hl7.fhir.instance.model.api.IBaseResource resource, String url, ca.uhn.fhir.rest.api.PreferReturnEnum preferReturn, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

fhir/resource API 方法有下表中列出的参数:

参数描述类型

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

preferReturn

在请求中添加 Prefer 标头,请求服务器包含或阻止资源正文作为结果的一部分。如果服务器返回了资源,它将通过 MethodOutcome#getResource ()解析客户端可访问,则可以为 null

PreferReturnEnum

resource

要创建的资源

IBaseResource

resourceAsString

要创建的资源

字符串

url

要使用的搜索 URL。此 URL 的格式应为 ResourceTypeParameters 格式,例如: Patientname=Smith&identifier=13.2.4.11.4%7C847366,可以是 null

字符串

除了以上参数外,fhir API 也可以使用任何 查询参数

任何参数都可以在端点 URI 中提供,或者在消息标头中动态提供。消息标头名称的格式必须是 CamelFhir.parameterinBody 参数覆盖消息标头,即 Body=myParameterNameHere 中的端点参数将覆盖 CamelFhir.myParameterNameHere 标头。

36.6.3. API: delete

支持生成者和消费者

删除 API 的语法定义如下:

fhir:delete/methodName?[parameters]

下表中列出了 3 种方法,后跟每种方法的详细语法。(API 方法可以有一个简写别名名称,可在语法而不是名称中使用。)

方法描述

resource

删除给定资源

resourceById

按资源类型 e 删除资源

resourceConditionalByUrl

指定删除应作为对给定搜索 URL 的条件删除

36.6.3.1. 方法资源

signatures:

  • org.hl7.fhir.instance.model.api.IBaseOperationOutcome resource (org.hl7.fhir.instance.model.api.IBaseResource resource, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

fhir/resource API 方法有下表中列出的参数:

参数描述类型

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

resource

要删除的 IBaseResource

IBaseResource

36.6.3.2. method resourceById

signatures:

  • org.hl7.fhir.instance.model.api.IBaseOperationOutcome resourceById (String type, String stringId, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);
  • org.hl7.fhir.instance.model.api.IBaseOperationOutcome resourceById (org.hl7.fhir.instance.model.api.IIdType id, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

fhir/resourceById API 方法有下表中列出的参数:

参数描述类型

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

id

引用资源的 IIdType

IIdType

stringId

它是 id

字符串

type

资源类型,如 Patient

字符串

36.6.3.3. method resourceConditionalByUrl

signatures:

  • org.hl7.fhir.instance.model.api.IBaseOperationOutcome resourceConditionalByUrl (String url, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

fhir/resourceConditionalByUrl API 方法有下表中列出的参数:

参数描述类型

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

url

要使用的搜索 URL。此 URL 的格式应为 ResourceTypeParameters 格式,例如: Patientname=Smith&identifier=13.2.4.11.4%7C847366

字符串

除了以上参数外,fhir API 也可以使用任何 查询参数

任何参数都可以在端点 URI 中提供,或者在消息标头中动态提供。消息标头名称的格式必须是 CamelFhir.parameterinBody 参数覆盖消息标头,即 Body=myParameterNameHere 中的端点参数将覆盖 CamelFhir.myParameterNameHere 标头。

36.6.4. API: history

支持生成者和消费者

历史记录 API 语法定义如下:

fhir:history/methodName?[parameters]

下表中列出了 3 种方法,后跟每种方法的详细语法。(API 方法可以有一个简写别名名称,可在语法而不是名称中使用。)

方法描述

onInstance

在服务器中的所有特定资源(按 ID 和类型)上执行操作

onServer

对服务器上所有类型的所有资源都执行该操作

onType

在服务器上给定类型的所有资源中执行该操作

36.6.4.1. Instance 的方法

signatures:

  • org.hl7.fhir.instance.model.api.IBaseBundle onInstance (org.hl7.fhir.instance.model.api.IIdType id, Class<org.hl7.fhir.instance.model.api.IBaseBundle> returnType, Integer count, java.util.Date cutoff, org.hl7.fhir.instance.model.api.IPrimitType<java.Date>, ioffcoff, ioff java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

fhir/onInstance API 方法有下表中列出的参数:

参数描述类型

数�

请求服务器仅返回到有限数量的资源,可以是 NULL

整数

cutoff

请求服务器只返回在给定时间(包括)之后创建的资源版本,可能是 NULL

Date

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

iCutoff

请求服务器只返回在给定时间(包括)之后创建的资源版本,可能是 NULL

IPrimitiveType

id

必须使用资源类型和资源 ID 填充的 IIdType

IIdType

returnType

请求方法返回 Bundle 资源(如 ca.uhn.fhir.model.dstu2.resource.Bundle)。如果您正在访问 DSTU2 服务器,则使用此方法。

36.6.4.2. onServer 的方法

signatures:

  • org.hl7.fhir.instance.model.api.IBaseBundle onServer (Class<org.hl7.fhir.instance.model.api.IBaseBundle> returnType, Integer count, java.util.Date cutoff, org.hl7.fhir.instance.model.api.IPrimitiveType<java.util.Date> iCutoff, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

fhir/onServer API 方法有下表中列出的参数:

参数描述类型

数�

请求服务器仅返回到有限数量的资源,可以是 NULL

整数

cutoff

请求服务器只返回在给定时间(包括)之后创建的资源版本,可能是 NULL

Date

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

iCutoff

请求服务器只返回在给定时间(包括)之后创建的资源版本,可能是 NULL

IPrimitiveType

returnType

请求方法返回 Bundle 资源(如 ca.uhn.fhir.model.dstu2.resource.Bundle)。如果您正在访问 DSTU2 服务器,则使用此方法。

36.6.4.3. Type 的方法

signatures:

  • org.hl7.fhir.instance.model.api.IBaseBundle onType (Class<org.hl7.fhir.instance.model.api.IBaseResource> resourceType, Class<org.hl7.fhir.instance.model.api.IBaseBundle> returnType, Integer count, java.util.Date cutoff, org.hl7.fhir.instance.model.api.IPrimitiveType<java.util.Date> iCutoff, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

fhir/onType API 方法有下表中列出的参数:

参数描述类型

数�

请求服务器仅返回到有限数量的资源,可以是 NULL

整数

cutoff

请求服务器只返回在给定时间(包括)之后创建的资源版本,可能是 NULL

Date

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

iCutoff

请求服务器只返回在给定时间(包括)之后创建的资源版本,可能是 NULL

IPrimitiveType

resourceType

要搜索的资源类型

returnType

请求方法返回 Bundle 资源(如 ca.uhn.fhir.model.dstu2.resource.Bundle)。如果您正在访问 DSTU2 服务器,则使用此方法。

除了以上参数外,fhir API 也可以使用任何 查询参数

任何参数都可以在端点 URI 中提供,或者在消息标头中动态提供。消息标头名称的格式必须是 CamelFhir.parameterinBody 参数覆盖消息标头,即 Body=myParameterNameHere 中的端点参数将覆盖 CamelFhir.myParameterNameHere 标头。

36.6.5. api: load-page

支持生成者和消费者

载入页面 API 的语法定义如下:

fhir:load-page/methodName?[parameters]

下表中列出了 3 种方法,后跟每种方法的详细语法。(API 方法可以有一个简写别名名称,可在语法而不是名称中使用。)

方法描述

byUrl

使用给定 URL 和捆绑包类型加载结果页面并返回 DSTU1 Atom 捆绑包

next

使用捆绑包中的相关链接载入下一页的结果

previous

使用捆绑包中的关系链接来加载上一个结果页面

36.6.5.1. 方法 byUrl

signatures:

  • org.hl7.fhir.instance.model.api.IBaseBundle byUrl (String url, Class<org.hl7.fhir.instance.model.api.IBaseBundle> returnType, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

fhir/byUrl API 方法具有下表中列出的参数:

参数描述类型

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

returnType

返回类型

url

搜索 url

字符串

36.6.5.2. 下一个方法

signatures:

  • org.hl7.fhir.instance.model.api.IBaseBundle next (org.hl7.fhir.instance.model.api.IBaseBundle bundle, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

fhir/next API 方法有下表中列出的参数:

参数描述类型

bundle

IBaseBundle

IBaseBundle

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

36.6.5.3. 之前的方法

signatures:

  • org.hl7.fhir.instance.model.api.IBaseBundle previous (org.hl7.fhir.instance.model.api.IBaseBundle bundle, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

fhir/previous API 方法具有下表中列出的参数:

参数描述类型

bundle

IBaseBundle

IBaseBundle

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

除了以上参数外,fhir API 也可以使用任何 查询参数

任何参数都可以在端点 URI 中提供,或者在消息标头中动态提供。消息标头名称的格式必须是 CamelFhir.parameterinBody 参数覆盖消息标头,即 Body=myParameterNameHere 中的端点参数将覆盖 CamelFhir.myParameterNameHere 标头。

36.6.6. API: meta

支持生成者和消费者

meta API 语法定义如下:

fhir:meta/methodName?[parameters]

下表中列出了 5 种方法,后跟每种方法的详细语法。(API 方法可以有一个简写别名名称,可在语法而不是名称中使用。)

方法描述

add

将给定元数据中的元素添加到已经存在的集合(不会删除任何)

delete

从给定的 id 中删除给定元数据中的元素

getFromResource

从特定资源获取当前元数据

getFromServer

从整个服务器获取当前的元数据

getFromType

从特定类型的获取当前元数据

36.6.6.1. 方法添加

signatures:

  • org.hl7.fhir.instance.model.api.IBaseMetaType add (org.hl7.fhir.instance.model.api.IBaseMetaType meta, org.hl7.fhir.instance.model.api.IIdType id, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

fhir/add API 方法有下表中列出的参数:

参数描述类型

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

id

id

IIdType

meta

IBaseMetaType 类

IBaseMetaType

36.6.6.2. 方法删除

signatures:

  • org.hl7.fhir.instance.model.api.IBaseMetaType delete (org.hl7.fhir.instance.model.api.IBaseMetaType meta, org.hl7.fhir.instance.model.api.IIdType id, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

fhir/delete API 方法有下表中列出的参数:

参数描述类型

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

id

id

IIdType

meta

IBaseMetaType 类

IBaseMetaType

36.6.6.3. 方法 getFromResource

signatures:

  • org.hl7.fhir.instance.model.api.IBaseMetaType getFromResource (Class<org.hl7.fhir.instance.model.api.IBaseMetaType> metaType, org.hl7.fhir.instance.model.api.IIdType id, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters;

fhir/getFromResource API 方法有下表中列出的参数:

参数描述类型

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

id

id

IIdType

metaType

IBaseMetaType 类

36.6.6.4. 方法 getFromServer

signatures:

  • org.hl7.fhir.instance.model.api.IBaseMetaType getFromServer (Class<org.hl7.fhir.instance.model.api.IBaseMetaType> metaType, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

fhir/getFromServer API 方法有下表中列出的参数:

参数描述类型

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

metaType

给定 FHIR 模型版本的 meta 数据类型(应该是 MetaDt.class 或 MetaType.class)

36.6.6.5. 方法 getFromType

signatures:

  • org.hl7.fhir.instance.model.api.IBaseMetaType getFromType (Class<org.hl7.fhir.instance.model.api.IBaseMetaType> metaType, String resourceType, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

fhir/getFromType API 方法有下表中列出的参数:

参数描述类型

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

metaType

IBaseMetaType 类

resourceType

资源类型,如 Patient

字符串

除了以上参数外,fhir API 也可以使用任何 查询参数

任何参数都可以在端点 URI 中提供,或者在消息标头中动态提供。消息标头名称的格式必须是 CamelFhir.parameterinBody 参数覆盖消息标头,即 Body=myParameterNameHere 中的端点参数将覆盖 CamelFhir.myParameterNameHere 标头。

36.6.7. API: operation

支持生成者和消费者

操作 API 的语法定义如下:

fhir:operation/methodName?[parameters]

下表中列出了 5 种方法,后跟每种方法的详细语法。(API 方法可以有一个简写别名名称,可在语法而不是名称中使用。)

方法描述

onInstance

在服务器中的所有特定资源(按 ID 和类型)上执行操作

onInstanceVersion

此操作在资源的特定版本上运行

onServer

对服务器上所有类型的所有资源都执行该操作

onType

在服务器上给定类型的所有资源中执行该操作

processMessage

此操作被称为 FHIR 规格定义的 $process-message

36.6.7.1. Instance 的方法

signatures:

  • org.hl7.fhir.instance.model.api.IBaseResource onInstance (org.hl7.fhir.instance.model.api.IIdType id, String name, org.hl7.fhir.instance.model.api.IBaseParameters parameters, Class<org.hl7.fhir.instance.model.api.IBaseParameters> outputParameterType, 布尔值 useHttpGet, Class<org.hl7.fhir.instance.model.api.IBaseResource> returnType, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

fhir/onInstance API 方法有下表中列出的参数:

参数描述类型

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

id

资源(版本将被剥离)

IIdType

name

操作名称

字符串

outputParameterType

用于输出参数的类型(这应设置为来自您使用的 FHIR 结构版本的 Parameters.class drawn),可能是 NULL

parameters

用作输入的参数。如果操作不需要任何输入参数,则也可以是 null。

IBaseParameters

returnType

如果此操作返回单个资源正文作为其返回类型而不是 Parameters 资源,则使用此方法指定该资源类型。这对返回捆绑包而不是 Parameters 资源的某些操作(如 Patient/NN/$everything)很有用,可以是 NULL

useHttpGet

使用 HTTP GET 动词

布尔值

36.6.7.2. InstanceVersion 的方法

signatures:

  • org.hl7.fhir.instance.model.api.IBaseResource onInstanceVersion (org.hl7.fhir.instance.model.api.IIdType id, String name, org.hl7.fhir.instance.model.api.IBaseParameters parameters, Class<org.hl7.fhir.instance.model.api.IBaseParameters> outputParameterType, 布尔值 useHttpGet, Class<org.hl7.fhir.instance.model.api.IBaseResource> returnType, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

fhir/onInstanceVersion API 方法具有下表中列出的参数:

参数描述类型

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

id

资源版本

IIdType

name

操作名称

字符串

outputParameterType

用于输出参数的类型(这应设置为来自您使用的 FHIR 结构版本的 Parameters.class drawn),可能是 NULL

parameters

用作输入的参数。如果操作不需要任何输入参数,则也可以是 null。

IBaseParameters

returnType

如果此操作返回单个资源正文作为其返回类型而不是 Parameters 资源,则使用此方法指定该资源类型。这对返回捆绑包而不是 Parameters 资源的某些操作(如 Patient/NN/$everything)很有用,可以是 NULL

useHttpGet

使用 HTTP GET 动词

布尔值

36.6.7.3. onServer 的方法

signatures:

  • org.hl7.fhir.instance.model.api.IBaseResource onServer (String name, org.hl7.fhir.instance.model.api.IBaseParameters parameters, Class<org.hl7.fhir.instance.model.api.IBaseParameters> outputParameterType, boolean useHttpGet, Class<org.hl7.fhir.instance.IBaseResource> return.instance.IBaseParameters> outputParameterType, boolean useHttpGet, Class<org.hl7.fhir.api.IBaseResource> returnType java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

fhir/onServer API 方法有下表中列出的参数:

参数描述类型

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

name

操作名称

字符串

outputParameterType

用于输出参数的类型(这应设置为来自您使用的 FHIR 结构版本的 Parameters.class drawn),可能是 NULL

parameters

用作输入的参数。如果操作不需要任何输入参数,则也可以是 null。

IBaseParameters

returnType

如果此操作返回单个资源正文作为其返回类型而不是 Parameters 资源,则使用此方法指定该资源类型。这对返回捆绑包而不是 Parameters 资源的某些操作(如 Patient/NN/$everything)很有用,可以是 NULL

useHttpGet

使用 HTTP GET 动词

布尔值

36.6.7.4. Type 的方法

signatures:

  • org.hl7.fhir.instance.model.api.IBaseResource onType (Class<org.hl7.fhir.instance.model.api.IBaseResource> resourceType, String name, org.hl7.fhir.instance.model.api.IBaseParameters parameters, Class<org.hl7.fhir.instance.model.api.IBaseParameters> outputParameters> outputParameters, 布尔值 useHttpGet, Class<org.hl7.fhir.instance.model.api.IBaseResource> returnType, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

fhir/onType API 方法有下表中列出的参数:

参数描述类型

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

name

操作名称

字符串

outputParameterType

用于输出参数的类型(这应设置为来自您使用的 FHIR 结构版本的 Parameters.class drawn),可能是 NULL

parameters

用作输入的参数。如果操作不需要任何输入参数,则也可以是 null。

IBaseParameters

resourceType

要操作的资源类型

returnType

如果此操作返回单个资源正文作为其返回类型而不是 Parameters 资源,则使用此方法指定该资源类型。这对返回捆绑包而不是 Parameters 资源的某些操作(如 Patient/NN/$everything)很有用,可以是 NULL

useHttpGet

使用 HTTP GET 动词

布尔值

36.6.7.5. method processMessage

signatures:

  • org.hl7.fhir.instance.model.api.IBaseBundle processMessage (String respondToUri, org.hl7.fhir.instance.model.api.IBaseBundle msgBundle, boolean asynchronous, Class<org.hl7.fhir.instance.model.api.IBaseBundle> responseClass, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> Object>Parameters;

fhir/processMessage API 方法有下表中列出的参数:

参数描述类型

asynchronous

是否异步或同步处理消息,默认为同步。

布尔值

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

msgBundle

将 Message Bundle 设置为 POST 到消息传递服务器

IBaseBundle

respondToUri

可选的查询参数表示来自接收服务器的响应应该发送到此 URI,可能是 NULL

字符串

responseClass

响应类

除了以上参数外,fhir API 也可以使用任何 查询参数

任何参数都可以在端点 URI 中提供,或者在消息标头中动态提供。消息标头名称的格式必须是 CamelFhir.parameterinBody 参数覆盖消息标头,即 Body=myParameterNameHere 中的端点参数将覆盖 CamelFhir.myParameterNameHere 标头。

36.6.8. API: patch

支持生成者和消费者

patch API 语法定义如下:

fhir:patch/methodName?[parameters]

下表中列出了 2 方法,其后是每种方法的详细语法。(API 方法可以有一个简写别名名称,可在语法而不是名称中使用。)

方法描述

patchById

将补丁应用到给定的资源 ID

patchByUrl

指定更新应作为针对给定搜索 URL 创建的条件执行

36.6.8.1. 方法 patchById

signatures:

  • ca.uhn.fhir.rest.api.MethodOutcome patchById (String patchBody, String stringId, ca.uhn.fhir.rest.api.PreferReturnEnum preferReturn, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);
  • ca.uhn.fhir.rest.api.MethodOutcome patchById (String patchBody, org.hl7.fhir.instance.model.api.IIdType id, ca.uhn.fhir.rest.api.PreferReturnEnum preferReturn, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

fhir/patchById API 方法有下表中列出的参数:

参数描述类型

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

id

要修补的资源 ID

IIdType

patchBody

在 XML 或符合的 JSON 中序列化补丁文档的正文

字符串

preferReturn

在请求中添加 Prefer 标头,请求服务器包含或阻止资源正文作为结果的一部分。如果服务器返回了资源,它将可以通过 MethodOutcome"getResource ()解析客户端可访问的资源

PreferReturnEnum

stringId

要修补的资源 ID

字符串

36.6.8.2. 方法 patchByUrl

signatures:

  • ca.uhn.fhir.rest.api.MethodOutcome patchByUrl (String patchBody, String url, ca.uhn.fhir.rest.api.PreferReturnEnum preferReturn, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

fhir/patchByUrl API 方法具有下表中列出的参数:

参数描述类型

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

patchBody

在 XML 或符合的 JSON 中序列化补丁文档的正文

字符串

preferReturn

在请求中添加 Prefer 标头,请求服务器包含或阻止资源正文作为结果的一部分。如果服务器返回了资源,它将可以通过 MethodOutcome"getResource ()解析客户端可访问的资源

PreferReturnEnum

url

要使用的搜索 URL。此 URL 的格式应为 ResourceTypeParameters 格式,例如: Patientname=Smith&identifier=13.2.4.11.4%7C847366

字符串

除了以上参数外,fhir API 也可以使用任何 查询参数

任何参数都可以在端点 URI 中提供,或者在消息标头中动态提供。消息标头名称的格式必须是 CamelFhir.parameterinBody 参数覆盖消息标头,即 Body=myParameterNameHere 中的端点参数将覆盖 CamelFhir.myParameterNameHere 标头。

36.6.9. API: 读取

支持生成者和消费者

读取 API 在语法中定义,如下所示:

fhir:read/methodName?[parameters]

下表中列出了 2 方法,其后是每种方法的详细语法。(API 方法可以有一个简写别名名称,可在语法而不是名称中使用。)

方法描述

resourceById

根据 id 读取服务器上的 IBaseResource

resourceByUrl

根据 url 读取服务器上的 IBaseResource

36.6.9.1. method resourceById

signatures:

  • org.hl7.fhir.instance.model.api.IBaseResource resourceById (Class<org.hl7.fhir.instance.model.api.IBaseResource> resource, Long longId, String ifVersionMatches, Boolean returnNull, org.hl7.fhir.instance.model.api.IBaseResource returnResource, 布尔值 throwError, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);
  • org.hl7.fhir.instance.model.api.IBaseResource resourceById (Class<org.hl7.fhir.instance.model.api.IBaseResource> resource, String stringId, String version, String ifVersionMatches, Boolean returnNull, org.hl7.fhir.instance.model.api.IBaseResource returnResource, 布尔值 throwError, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);
  • org.hl7.fhir.instance.model.api.IBaseResource resourceById (Class<org.hl7.fhir.instance.model.api.IBaseResource> resource, org.hl7.fhir.instance.model.api.IIdType id, String ifVersionMatches, Boolean returnNull, org.hl7.fhir.instance.IBaseResource, returnResource)布尔值 throwError, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);
  • org.hl7.fhir.instance.model.api.IBaseResource resourceById (String resourceClass, Long longId, String ifVersionMatches, Boolean returnNull, org.hl7.fhir.instance.model.api.IBaseResource returnResource, Boolean throwError, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters;
  • org.hl7.fhir.instance.model.api.IBaseResource resourceById (String resourceClass, String stringId, String ifVersionMatches, String version, Boolean returnNull, org.hl7.fhir.instance.model.api.IBaseResource returnResource, Boolean throwError, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters;
  • org.hl7.fhir.instance.model.api.IBaseResource resourceById (String resourceClass, org.hl7.fhir.instance.model.api.IIdType id, String ifVersionMatches, Boolean returnNull, org.hl7.fhir.instance.model.api.IBaseResource returnResource, Boolean throwError, java.util.apache.camel.component.fhir.api.models, ObjectParameters; ObjectParameters; ObjectParameters;

fhir/resourceById API 方法有下表中列出的参数:

参数描述类型

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

id

引用资源的 IIdType

IIdType

ifVersionMatches

与服务器中最新版本匹配的版本

字符串

longId

资源 ID

Long

resource

要读取的资源(例如,Patient)

resourceClass

要读取的资源(例如,Patient)

字符串

returnNull

如果版本匹配,则返回 null

布尔值

returnResource

如果版本匹配,则返回资源

IBaseResource

stringId

资源 ID

字符串

throwError

如果版本匹配,则抛出错误

布尔值

version

资源版本

字符串

36.6.9.2. method resourceByUrl

signatures:

  • org.hl7.fhir.instance.model.api.IBaseResource resourceByUrl (Class<org.hl7.fhir.instance.model.api.IBaseResource> resource, String url, String ifVersionMatches, Boolean returnNull, org.hl7.fhir.instance.model.api.IBaseResource returnResource, 布尔值 throwError, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);
  • org.hl7.fhir.instance.model.api.IBaseResource resourceByUrl (Class<org.hl7.fhir.instance.model.api.IBaseResource> resource, org.hl7.fhir.instance.model.api.IIdType iUrl, String ifVersionMatches, Boolean returnNull, org.hl7.fhir.instance.model.api.IBaseResource, returnResource, returnResource)布尔值 throwError, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);
  • org.hl7.fhir.instance.model.api.IBaseResource resourceByUrl (String resourceClass, String url, String ifVersionMatches, Boolean returnNull, org.hl7.fhir.instance.model.api.IBaseResource returnResource, Boolean throwError, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters;
  • org.hl7.fhir.instance.model.api.IBaseResource resourceByUrl (String resourceClass, org.hl7.fhir.instance.model.api.IIdType iUrl, String ifVersionMatches, Boolean returnNull, org.hl7.fhir.instance.model.api.IBaseResource returnResource, 布尔值 throwError, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

fhir/resourceByUrl API 方法具有下表中列出的参数:

参数描述类型

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

iUrl

使用绝对 url 引用资源的 IIdType

IIdType

ifVersionMatches

与服务器中最新版本匹配的版本

字符串

resource

要读取的资源(例如,Patient)

resourceClass

要读取的资源(如 Patient.class)

字符串

returnNull

如果版本匹配,则返回 null

布尔值

returnResource

如果版本匹配,则返回资源

IBaseResource

throwError

如果版本匹配,则抛出错误

布尔值

url

使用绝对 url 引用资源

字符串

除了以上参数外,fhir API 也可以使用任何 查询参数

任何参数都可以在端点 URI 中提供,或者在消息标头中动态提供。消息标头名称的格式必须是 CamelFhir.parameterinBody 参数覆盖消息标头,即 Body=myParameterNameHere 中的端点参数将覆盖 CamelFhir.myParameterNameHere 标头。

36.6.11. API: transaction

支持生成者和消费者

事务 API 语法定义如下:

fhir:transaction/methodName?[parameters]

下表中列出了 2 方法,其后是每种方法的详细语法。(API 方法可以有一个简写别名名称,可在语法而不是名称中使用。)

方法描述

withBundle

使用给定原始文本(应为 Bundle 资源)作为事务输入

withResources

使用资源列表作为事务输入

36.6.11.1. 带有Bundle 的方法

signatures:

  • 带有Bundle (String stringBundle, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);
  • org.hl7.fhir.instance.model.api.IBaseBundle withBundle (org.hl7.fhir.instance.model.api.IBaseBundle bundle, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

fhir/withBundle API 方法有下表中列出的参数:

参数描述类型

bundle

在事务中使用的捆绑包

IBaseBundle

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

stringBundle

在事务中使用的捆绑包

字符串

36.6.11.2. 带有Resources 的方法

signatures:

  • java.util.List<org.hl7.fhir.instance.model.api.IBaseResource> withResources (java.util.List<org.hl7.fhir.instance.model.api.IBaseResource> resources, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

fhir/withResources API 方法有下表中列出的参数:

参数描述类型

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

资源

在事务中使用的资源

list

除了以上参数外,fhir API 也可以使用任何 查询参数

任何参数都可以在端点 URI 中提供,或者在消息标头中动态提供。消息标头名称的格式必须是 CamelFhir.parameterinBody 参数覆盖消息标头,即 Body=myParameterNameHere 中的端点参数将覆盖 CamelFhir.myParameterNameHere 标头。

36.6.12. API: update

支持生成者和消费者

更新 API 语法定义如下:

fhir:update/methodName?[parameters]

下表中列出了 2 方法,其后是每种方法的详细语法。(API 方法可以有一个简写别名名称,可在语法而不是名称中使用。)

方法描述

resource

根据 id 更新服务器上的 IBaseResource

resourceBySearchUrl

通过搜索 url 更新服务器上的 IBaseResource

36.6.12.1. 方法资源

signatures:

  • ca.uhn.fhir.rest.api.MethodOutcome resource (String resourceAsString, String stringId, ca.uhn.fhir.rest.api.PreferReturnEnum preferReturn, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);
  • ca.uhn.fhir.rest.api.MethodOutcome resource (String resourceAsString, org.hl7.fhir.instance.model.api.IIdType id, ca.uhn.fhir.rest.api.PreferReturnEnum preferReturn, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);
  • ca.uhn.fhir.rest.api.MethodOutcome resource (org.hl7.fhir.instance.model.api.IBaseResource resource, String stringId, ca.uhn.fhir.rest.api.PreferReturnEnum preferReturn, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);
  • ca.uhn.fhir.rest.api.MethodOutcome resource (org.hl7.fhir.instance.model.api.IBaseResource resource, org.hl7.fhir.instance.model.api.IIdType id, ca.uhn.fhir.rest.api.PreferReturnEnum preferReturn, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, ObjectParameters; ObjectParameters;

fhir/resource API 方法有下表中列出的参数:

参数描述类型

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

id

引用资源的 IIdType

IIdType

preferReturn

服务器是否包含或隐藏资源正文作为结果的一部分

PreferReturnEnum

resource

要更新的资源(例如,Patient)

IBaseResource

resourceAsString

要更新的资源正文

字符串

stringId

引用资源的 ID

字符串

36.6.12.2. method resourceBySearchUrl

signatures:

  • ca.uhn.fhir.rest.api.MethodOutcome resourceBySearchUrl (String resourceAsString, String url, ca.uhn.fhir.rest.api.PreferReturnEnum preferReturn, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);
  • ca.uhn.fhir.rest.api.MethodOutcome resourceBySearchUrl (org.hl7.fhir.instance.model.api.IBaseResource resource, String url, ca.uhn.fhir.rest.api.PreferReturnEnum preferReturn, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

fhir/resourceBySearchUrl API 方法有下表中列出的参数:

参数描述类型

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

preferReturn

服务器是否包含或隐藏资源正文作为结果的一部分

PreferReturnEnum

resource

要更新的资源(例如,Patient)

IBaseResource

resourceAsString

要更新的资源正文

字符串

url

指定更新应作为针对给定搜索 URL 创建的条件执行

字符串

除了以上参数外,fhir API 也可以使用任何 查询参数

任何参数都可以在端点 URI 中提供,或者在消息标头中动态提供。消息标头名称的格式必须是 CamelFhir.parameterinBody 参数覆盖消息标头,即 Body=myParameterNameHere 中的端点参数将覆盖 CamelFhir.myParameterNameHere 标头。

36.6.13. API: 验证

支持生成者和消费者

validate API 的语法定义如下:

fhir:validate/methodName?[parameters]

下表中列出了 1 方法,后跟每种方法的详细语法。(API 方法可以有一个简写别名名称,可在语法而不是名称中使用。)

方法描述

resource

验证资源

36.6.13.1. 方法资源

signatures:

  • ca.uhn.fhir.rest.api.MethodOutcome resource (String resourceAsString, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);
  • ca.uhn.fhir.rest.api.MethodOutcome resource (org.hl7.fhir.instance.model.api.IBaseResource resource, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

fhir/resource API 方法有下表中列出的参数:

参数描述类型

extraParameters

有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL

Map

resource

用于验证的 IBaseResource

IBaseResource

resourceAsString

用于验证的原始资源

字符串

除了以上参数外,fhir API 也可以使用任何 查询参数

任何参数都可以在端点 URI 中提供,或者在消息标头中动态提供。消息标头名称的格式必须是 CamelFhir.parameterinBody 参数覆盖消息标头,即 Body=myParameterNameHere 中的端点参数将覆盖 CamelFhir.myParameterNameHere 标头。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.