ch-ppq2 component
The ch-ppq2 component provides interfaces for actors of the Privacy Policy Retrieve IHE transaction (CH-PPQ-2), which is described in the Swiss national extensions to the IHE Technical Framework.
Actors
The transaction defines the following actors:
Producer side corresponds to the Policy Consumer actor. Consumer side corresponds to the Policy Repository actor.
Dependencies
In a Maven-based environment, the following dependency must be registered in pom.xml
:
<dependency>
<groupId>org.openehealth.ipf.platform-camel</groupId>
<artifactId>ipf-platform-camel-ihe-xacml20</artifactId>
<version>${ipf-version}</version>
</dependency>
Endpoint URI Format
Producer
The endpoint URI format of the ch-ppq2
component producers is:
ch-ppq2://hostname:port/path/to/service[?parameters]
where hostname is either an IP address or a domain name, port is a port number, and path/to/service represents additional path elements of the remote service. URI parameters are optional and control special features as described in the corresponding section below.
Consumer
The endpoint URI format of ch-ppq2
component consumers is:
ch-ppq2:serviceName[?parameters]
For automatic creation of error messages in case of exceptions occurred in the Camel route, the home community ID
must be known. It can be specified statically using the URL parameter homeCommunityId
(e.g. &homeCommunityId=urn:oid:1.2.3.4.5
), or dynamically — either in the Camel message header named
HomeCommunityUtils.HOME_COMMUNITY_ID_NAME
,
or in the Camel exchange property with the same name.
The resulting URL of the exposed IHE Web Service endpoint depends on both the configuration of the deployment container and the serviceName parameter provided in the Camel endpoint URI.
For example, when a Tomcat container on the host eHealth.server.org
is configured in the following way:
port = 8888
contextPath = /IHE
servletPath = /policy/*
and serviceName equals to chppq2
, then the ch-ppq2 consumer will be available for external clients under the URL
http://eHealth.server.org:8888/IHE/policy/chppq2
Additional URI parameters are optional and control special features as described in the corresponding section below.
Data Types
Messages exchanged in the ch-ppq2
transaction are defined in XACML 2.0 standard:
- Request message –
XACMLPolicyQueryType
or - Response message –
ResponseType
Example
This is an example on how to use the component on the consumer side:
from("ch-ppq2:chppq2?audit=true")
.process(myProcessor)
// process the incoming request and create a response