搜索

23.5. API 参数(13 API)

download PDF

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

fhir:apiName/methodName

下表中列出了 13 个 API 名称:

API 名称类型描述

功能

两者

API 为 Fetch 服务器的 capabilities 语句

create

两者

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

delete

两者

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

history

两者

历史记录方法的 API

load-page

两者

使用 atom 捆绑包中的链接 type=next 标签中指定的链接,从页面集中加载先前/下一步捆绑包的 API

meta

两者

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

operation

两者

用于扩展 FHIR 操作的 API

patch

两者

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

读取

两者

读取操作的 API 方法

search

两者

API 搜索与给定条件匹配的资源

事务

两者

用于将事务(资源集合)发送到要作为单个单元执行的服务器的 API

update

两者

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

validate

两者

用于验证资源的 API

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

23.5.1. API: capabilities

支持生成者和消费者

capabilities API 采用语法定义,如下所示:

fhir:capabilities/methodName?[parameters]

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

方法描述

ofType

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

23.5.1.1. Type 方法

签名:

  • 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.parameter 格式。inBody 参数覆盖消息标头,即 Body=myParameterNameHere 中的端点参数将覆盖 CamelFhir.myParameterNameHere 标头。

23.5.2. API: create

支持生成者和消费者

create API 采用语法定义,如下所示:

fhir:create/methodName?[parameters]

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

方法描述

resource

在服务器上创建一个 IBaseResource

23.5.2.1. 方法资源

签名:

  • ca.uhn.fhir.rest.api.MethodOutcome 资源(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 资源(org.hl7.fhir.instance.model.api.IBaseResource 资源, 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 标头,其请求服务器包含或阻止资源正文作为结果的一部分。如果服务器返回资源,它将通过 MethodOutcome114getResource ()解析客户端可访问,则可能是 null

PreferReturnEnum

resource

要创建的资源

IBaseResource

resourceAsString

要创建的资源

字符串

url

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

字符串

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

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

23.5.3. API: delete

支持生成者和消费者

删除 API 采用语法定义,如下所示:

fhir:delete/methodName?[parameters]

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

方法描述

resource

删除给定资源

resourceById

根据资源类型删除资源,例如

resourceConditionalByUrl

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

23.5.3.1. 方法资源

签名:

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

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

参数描述类型

extraParameters

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

Map

resource

要删除的 IBaseResource

IBaseResource

23.5.3.2. method resourceById

签名:

  • 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

字符串

23.5.3.3. method resourceConditionalByUrl

签名:

  • 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.parameter 格式。inBody 参数覆盖消息标头,即 Body=myParameterNameHere 中的端点参数将覆盖 CamelFhir.myParameterNameHere 标头。

23.5.4. api: history

支持生成者和消费者

history API 采用语法定义,如下所示:

fhir:history/methodName?[parameters]

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

方法描述

onInstance

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

onServer

在服务器上所有类型的所有版本中执行操作

onType

在服务器中给定类型的所有版本中执行操作

23.5.4.1. 对Instance 的方法

签名:

  • 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.IPrimitiveType<java.util.Date> iCutoff, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

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

参数描述类型

数�

请求服务器仅返回到Count 个资源数量,可以是 NULL

整数

cutoff

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

Date

extraParameters

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

Map

iCutoff

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

IPrimitiveType

id

IIdType,它必须同时填充资源类型和资源 ID

IIdType

returnType

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

23.5.4.2. Server 的方法

签名:

  • 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 方法有下表中列出的参数:

参数描述类型

数�

请求服务器仅返回到Count 个资源数量,可以是 NULL

整数

cutoff

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

Date

extraParameters

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

Map

iCutoff

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

IPrimitiveType

returnType

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

23.5.4.3. Type 的方法

签名:

  • 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 方法有下表中列出的参数:

参数描述类型

数�

请求服务器仅返回到Count 个资源数量,可以是 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.parameter 格式。inBody 参数覆盖消息标头,即 Body=myParameterNameHere 中的端点参数将覆盖 CamelFhir.myParameterNameHere 标头。

23.5.5. api: load-page

支持生成者和消费者

load-page API 在语法中定义,如下所示:

fhir:load-page/methodName?[parameters]

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

方法描述

byUrl

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

next

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

previous

使用捆绑包中关系 prev 的链接加载前面的结果页面

23.5.5.1. 方法 byUrl

签名:

  • 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

字符串

23.5.5.2. Next 方法

签名:

  • 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

23.5.5.3. 前一个方法

签名:

  • 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.parameter 格式。inBody 参数覆盖消息标头,即 Body=myParameterNameHere 中的端点参数将覆盖 CamelFhir.myParameterNameHere 标头。

23.5.6. api: meta

支持生成者和消费者

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

fhir:meta/methodName?[parameters]

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

方法描述

add

将给定元数据中的元素添加到现有集合(请勿删除任何)

delete

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

getFromResource

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

getFromServer

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

getFromType

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

23.5.6.1. 方法添加

签名:

  • 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

23.5.6.2. method delete

签名:

  • 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

23.5.6.3. method getFromResource

签名:

  • 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 类

23.5.6.4. method getFromServer

签名:

  • 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)

23.5.6.5. method getFromType

签名:

  • 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.parameter 格式。inBody 参数覆盖消息标头,即 Body=myParameterNameHere 中的端点参数将覆盖 CamelFhir.myParameterNameHere 标头。

23.5.7. api: operation

支持生成者和消费者

操作 API 采用语法定义,如下所示:

fhir:operation/methodName?[parameters]

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

方法描述

onInstance

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

onInstanceVersion

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

onServer

在服务器上所有类型的所有版本中执行操作

onType

在服务器中给定类型的所有版本中执行操作

processMessage

此操作称为 $process-message,如 FHIR 规格定义

23.5.7.1. 对Instance 的方法

签名:

  • 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, 布尔值使用HttpGet, 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/NNN/$everything)非常有用,可以是 NULL

useHttpGet

使用 HTTP GET 动词

布尔值

23.5.7.2. 方法 onInstanceVersion

签名:

  • 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, 布尔值使用HttpGet, 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/NNN/$everything)非常有用,可以是 NULL

useHttpGet

使用 HTTP GET 动词

布尔值

23.5.7.3. Server 的方法

签名:

  • 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.model.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/NNN/$everything)非常有用,可以是 NULL

useHttpGet

使用 HTTP GET 动词

布尔值

23.5.7.4. Type 的方法

签名:

  • 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> outputParameterType, 布尔值使用HttpGet, 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/NNN/$everything)非常有用,可以是 NULL

useHttpGet

使用 HTTP GET 动词

布尔值

23.5.7.5. method processMessage

签名:

  • 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> extraParameters);

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

参数描述类型

异步

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

布尔值

extraParameters

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

Map

msgBundle

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

IBaseBundle

respondToUri

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

字符串

responseClass

响应类

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

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

23.5.8. API: patch

支持生成者和消费者

patch API 采用语法定义,如下所示:

fhir:patch/methodName?[parameters]

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

方法描述

patchById

将补丁应用到给定资源 ID

patchByUrl

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

23.5.8.1. method patchById

签名:

  • 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 标头,其请求服务器包含或阻止资源正文作为结果的一部分。如果服务器返回资源,它将通过 MethodOutcome114getResource ()解析客户端可访问

PreferReturnEnum

stringId

要修补的资源 ID

字符串

23.5.8.2. method patchByUrl

签名:

  • 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 标头,其请求服务器包含或阻止资源正文作为结果的一部分。如果服务器返回资源,它将通过 MethodOutcome114getResource ()解析客户端可访问

PreferReturnEnum

url

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

字符串

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

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

23.5.9. API: read

支持生成者和消费者

read API 采用语法定义,如下所示:

fhir:read/methodName?[parameters]

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

方法描述

resourceById

通过 id 读取服务器上的 IBaseResource

resourceByUrl

通过 url 读取服务器上的 IBaseResource

23.5.9.1. method resourceById

签名:

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

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

资源版本

字符串

23.5.9.2. method resourceByUrl

签名:

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

fhir/resourceByUrl API 方法包含下表中列出的参数:

参数描述类型

extraParameters

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

Map

iUrl

IIdType 通过绝对 url 引用资源

IIdType

ifVersionMatches

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

字符串

resource

要读取的资源(如 Patient)

resourceClass

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

字符串

returnNull

如果版本匹配,则返回 null

布尔值

returnResource

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

IBaseResource

throwError

如果版本匹配,抛出错误

布尔值

url

通过绝对 url 引用资源

字符串

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

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

23.5.11. API: transaction

支持生成者和消费者

transaction API 的语法定义,如下所示:

fhir:transaction/methodName?[parameters]

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

方法描述

withBundle

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

withResources

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

23.5.11.1. 带有Bundle 的方法

签名:

  • 带有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

在事务中使用的捆绑包

字符串

23.5.11.2. 带有Resources 的方法

签名:

  • 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.parameter 格式。inBody 参数覆盖消息标头,即 Body=myParameterNameHere 中的端点参数将覆盖 CamelFhir.myParameterNameHere 标头。

23.5.12. API: update

支持生成者和消费者

更新 API 的语法定义,如下所示:

fhir:update/methodName?[parameters]

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

方法描述

resource

通过 id 更新服务器上的 IBaseResource

resourceBySearchUrl

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

23.5.12.1. 方法资源

签名:

  • ca.uhn.fhir.rest.api.MethodOutcome 资源(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 资源(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 资源(org.hl7.fhir.instance.model.api.IBaseResource 资源, 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 资源, org.hl7.fhir.instance.model.api.IIdType id, ca.uhn.fhir.rest.api.PreferReturn, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);

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

参数描述类型

extraParameters

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

Map

id

IIdType 引用资源

IIdType

preferReturn

在结果中,服务器是否包含或阻止资源正文

PreferReturnEnum

resource

要更新的资源(如 Patient)

IBaseResource

resourceAsString

要更新的资源正文

字符串

stringId

引用资源的 ID

字符串

23.5.12.2. method resourceBySearchUrl

签名:

  • 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 资源, 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.parameter 格式。inBody 参数覆盖消息标头,即 Body=myParameterNameHere 中的端点参数将覆盖 CamelFhir.myParameterNameHere 标头。

23.5.13. api: validate

支持生成者和消费者

validate API 采用语法定义,如下所示:

fhir:validate/methodName?[parameters]

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

方法描述

resource

验证资源

23.5.13.1. 方法资源

签名:

  • ca.uhn.fhir.rest.api.MethodOutcome 资源(String resourceAsString, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);
  • ca.uhn.fhir.rest.api.MethodOutcome 资源(org.hl7.fhir.instance.model.api.IBaseResource 资源, 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.parameter 格式。inBody 参数覆盖消息标头,即 Body=myParameterNameHere 中的端点参数将覆盖 CamelFhir.myParameterNameHere 标头。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.