36.6. API 参数(13 API)
@FHIR 端点是基于 API 的组件,它基于使用 API 名称和 API 方法的其他参数。API name 和 API 方法位于端点 URI 中,作为 apiName/methodName
路径参数:
fhir:apiName/methodName
下表中列出的 13 API 名称:
API 名称 | 类型 | 描述 |
---|---|---|
两者 | API 用于修补服务器的能力声明 | |
两者 | 用于 create 操作的 API,它会在服务器上创建新资源实例 | |
两者 | 删除操作的 API,它会在服务器资源上执行逻辑删除 | |
两者 | 历史记录方法的 API | |
两者 | 使用位于om 捆绑包中的链接 type=next 标签中指定的链接,从 paged 集合加载之前/下一步捆绑包的 API | |
两者 | 用于 meta 操作的 API,可用于从资源或跨服务器获取、添加和删除标签和其他 Meta 元素 | |
两者 | 用于扩展 FHIR 操作的 API | |
两者 | 补丁操作的 API,对服务器资源执行逻辑补丁 | |
两者 | 读操作的 API 方法 | |
两者 | API 用于搜索与给定条件集合匹配的资源 | |
两者 | 用于向服务器发送事务集合(资源集合)的 API,以作为单个单元执行 | |
两者 | 更新操作的 API,它会在服务器资源上执行逻辑删除 | |
两者 | 用于验证资源的 API |
每个 API 均记录在以下部分中。
36.6.1. API: 功能
支持生成者和消费者
capabilities API 语法定义如下:
fhir:capabilities/methodName?[parameters]
下表中列出了该方法,后面是每种方法的详细语法。(API 方法可以有一个简写别名名称,可在语法而不是名称中使用。)
方法 | 描述 |
---|---|
使用给定的模型类型检索 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.parameter
。inBody
参数覆盖消息标头,即 Body=myParameterNameHere
中的端点参数将覆盖 CamelFhir.myParameterNameHere
标头。
36.6.2. API: create
支持生成者和消费者
create API 语法定义如下:
fhir:create/methodName?[parameters]
下表中列出了 1 方法,后跟每种方法的详细语法。(API 方法可以有一个简写别名名称,可在语法而不是名称中使用。)
方法 | 描述 |
---|---|
在服务器上创建 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.parameter
。inBody
参数覆盖消息标头,即 Body=myParameterNameHere
中的端点参数将覆盖 CamelFhir.myParameterNameHere
标头。
36.6.3. API: delete
支持生成者和消费者
删除 API 的语法定义如下:
fhir:delete/methodName?[parameters]
下表中列出了 3 种方法,后跟每种方法的详细语法。(API 方法可以有一个简写别名名称,可在语法而不是名称中使用。)
方法 | 描述 |
---|---|
删除给定资源 | |
按资源类型 e 删除资源 | |
指定删除应作为对给定搜索 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.parameter
。inBody
参数覆盖消息标头,即 Body=myParameterNameHere
中的端点参数将覆盖 CamelFhir.myParameterNameHere
标头。
36.6.4. API: history
支持生成者和消费者
历史记录 API 语法定义如下:
fhir:history/methodName?[parameters]
下表中列出了 3 种方法,后跟每种方法的详细语法。(API 方法可以有一个简写别名名称,可在语法而不是名称中使用。)
方法 | 描述 |
---|---|
在服务器中的所有特定资源(按 ID 和类型)上执行操作 | |
对服务器上所有类型的所有资源都执行该操作 | |
在服务器上给定类型的所有资源中执行该操作 |
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.parameter
。inBody
参数覆盖消息标头,即 Body=myParameterNameHere
中的端点参数将覆盖 CamelFhir.myParameterNameHere
标头。
36.6.5. api: load-page
支持生成者和消费者
载入页面 API 的语法定义如下:
fhir:load-page/methodName?[parameters]
下表中列出了 3 种方法,后跟每种方法的详细语法。(API 方法可以有一个简写别名名称,可在语法而不是名称中使用。)
方法 | 描述 |
---|---|
使用给定 URL 和捆绑包类型加载结果页面并返回 DSTU1 Atom 捆绑包 | |
使用捆绑包中的相关链接载入下一页的结果 | |
使用捆绑包中的关系链接来加载上一个结果页面 |
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.parameter
。inBody
参数覆盖消息标头,即 Body=myParameterNameHere
中的端点参数将覆盖 CamelFhir.myParameterNameHere
标头。
36.6.6. API: meta
支持生成者和消费者
meta API 语法定义如下:
fhir:meta/methodName?[parameters]
下表中列出了 5 种方法,后跟每种方法的详细语法。(API 方法可以有一个简写别名名称,可在语法而不是名称中使用。)
方法 | 描述 |
---|---|
将给定元数据中的元素添加到已经存在的集合(不会删除任何) | |
从给定的 id 中删除给定元数据中的元素 | |
从特定资源获取当前元数据 | |
从整个服务器获取当前的元数据 | |
从特定类型的获取当前元数据 |
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.parameter
。inBody
参数覆盖消息标头,即 Body=myParameterNameHere
中的端点参数将覆盖 CamelFhir.myParameterNameHere
标头。
36.6.7. API: operation
支持生成者和消费者
操作 API 的语法定义如下:
fhir:operation/methodName?[parameters]
下表中列出了 5 种方法,后跟每种方法的详细语法。(API 方法可以有一个简写别名名称,可在语法而不是名称中使用。)
方法 | 描述 |
---|---|
在服务器中的所有特定资源(按 ID 和类型)上执行操作 | |
此操作在资源的特定版本上运行 | |
对服务器上所有类型的所有资源都执行该操作 | |
在服务器上给定类型的所有资源中执行该操作 | |
此操作被称为 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.parameter
。inBody
参数覆盖消息标头,即 Body=myParameterNameHere
中的端点参数将覆盖 CamelFhir.myParameterNameHere
标头。
36.6.8. API: patch
支持生成者和消费者
patch API 语法定义如下:
fhir:patch/methodName?[parameters]
下表中列出了 2 方法,其后是每种方法的详细语法。(API 方法可以有一个简写别名名称,可在语法而不是名称中使用。)
方法 | 描述 |
---|---|
将补丁应用到给定的资源 ID | |
指定更新应作为针对给定搜索 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.parameter
。inBody
参数覆盖消息标头,即 Body=myParameterNameHere
中的端点参数将覆盖 CamelFhir.myParameterNameHere
标头。
36.6.9. API: 读取
支持生成者和消费者
读取 API 在语法中定义,如下所示:
fhir:read/methodName?[parameters]
下表中列出了 2 方法,其后是每种方法的详细语法。(API 方法可以有一个简写别名名称,可在语法而不是名称中使用。)
方法 | 描述 |
---|---|
根据 id 读取服务器上的 IBaseResource | |
根据 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.parameter
。inBody
参数覆盖消息标头,即 Body=myParameterNameHere
中的端点参数将覆盖 CamelFhir.myParameterNameHere
标头。
36.6.10. API: search
支持生成者和消费者
搜索 API 的语法定义如下:
fhir:search/methodName?[parameters]
下表中列出了 1 方法,后跟每种方法的详细语法。(API 方法可以有一个简写别名名称,可在语法而不是名称中使用。)
方法 | 描述 |
---|---|
根据 URL 直接执行搜索 |
36.6.10.1. 方法 searchByUrl
signatures:
- org.hl7.fhir.instance.model.api.IBaseBundle searchByUrl (String url, java.util.Map<org.apache.camel.component.fhir.api.ExtraParameters, Object> extraParameters);
fhir/searchByUrl API 方法具有下表中列出的参数:
参数 | 描述 | 类型 |
---|---|---|
extraParameters | 有关可传递的参数的完整列表,请参阅 ExtraParameters,可以是 NULL | Map |
url | 要搜索的 URL。请注意,此 URL 可能已完成(例如 ),在这种情况下,将忽略客户端的基本 URL。或者它可以是 relative (如 Patientname=foo),在这种情况下,将使用客户端的基本 URL。 | 字符串 |
除了以上参数外,fhir API 也可以使用任何 查询参数。
任何参数都可以在端点 URI 中提供,或者在消息标头中动态提供。消息标头名称的格式必须是 CamelFhir.parameter
。inBody
参数覆盖消息标头,即 Body=myParameterNameHere
中的端点参数将覆盖 CamelFhir.myParameterNameHere
标头。
36.6.11. API: transaction
支持生成者和消费者
事务 API 语法定义如下:
fhir:transaction/methodName?[parameters]
下表中列出了 2 方法,其后是每种方法的详细语法。(API 方法可以有一个简写别名名称,可在语法而不是名称中使用。)
方法 | 描述 |
---|---|
使用给定原始文本(应为 Bundle 资源)作为事务输入 | |
使用资源列表作为事务输入 |
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.parameter
。inBody
参数覆盖消息标头,即 Body=myParameterNameHere
中的端点参数将覆盖 CamelFhir.myParameterNameHere
标头。
36.6.12. API: update
支持生成者和消费者
更新 API 语法定义如下:
fhir:update/methodName?[parameters]
下表中列出了 2 方法,其后是每种方法的详细语法。(API 方法可以有一个简写别名名称,可在语法而不是名称中使用。)
方法 | 描述 |
---|---|
根据 id 更新服务器上的 IBaseResource | |
通过搜索 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.parameter
。inBody
参数覆盖消息标头,即 Body=myParameterNameHere
中的端点参数将覆盖 CamelFhir.myParameterNameHere
标头。
36.6.13. API: 验证
支持生成者和消费者
validate API 的语法定义如下:
fhir:validate/methodName?[parameters]
下表中列出了 1 方法,后跟每种方法的详细语法。(API 方法可以有一个简写别名名称,可在语法而不是名称中使用。)
方法 | 描述 |
---|---|
验证资源 |
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.parameter
。inBody
参数覆盖消息标头,即 Body=myParameterNameHere
中的端点参数将覆盖 CamelFhir.myParameterNameHere
标头。