Skip to content

Registry Stored Query

Transaction to lookup the document metadata for the documents stored in a patient's EPR. Primary systems shall use this transaction to view the metadata of the available documents for to display the data in the UI.

Overview

Primary systems shall use this transaction to retrieve the document metadata for the documents stored in a patients EPR. In the Swiss EPR the IHE XDS.b profile and transactions shall be used to retrieve the document metadata.

To retrieve the document metadata of the document stored in a patients EPR, the primary system shall perform a Registry Stored Query [ITI-18]. The Registry Stored Query [ITI-18] supports various query parameter as search and filter parameter. The most common parameter used in the Swiss EPR are the patient ID in CX format and the status information, which must be Approved.

The community responds with the metadata sets of all documents registered in the patient's EPR, which match the search and filter parameter of the query. The profile is based upon the ebXML standard. Due to the genericity of the ebXML standard, the response is not human readable and needs without background information given below.

Transaction

Message Semantics

Messages are encoded as described in the ebXML standard with restrictions defined in the IHE profile and the ordinances to the Swiss EPR.

Request Message

The following snippet is taken from a sample request recorded during the EPR projectathon in September 2020. Some elements were omitted to increase readability. The raw request file may be found here.

The request message shall be a XML SOAP envelope with the query embedded in the Body element of the SOAP envelope. The SOAP Header element conveys the following information:

  • To element: The URL of the registry stored query service.
  • MessageID element: a UUID of the message.
  • Action element: The SOAP action identifier of the query as defined in the IHE ITI Technical Framework.
  • Security element: The Web Service Security header as defined in the WS Security specification. This element conveys the XUA Assertion used for authorization (see Provide X-User Assertion).

The SOAP Body element conveys the AdhocQuery (lines 15 to 26 below) with the following information:

  • Slot element with name $XDSDocumentEntryStatus: The status filter parameter, which must take the value urn:oasis:names🇹🇨ebxml-regrep:StatusType:Approved (line 18).
  • Slot element with name $XDSDocumentEntryPatientId: The master patient ID (XAD-PID) of the patient in CX format (see PIX Feed) (line 23).
ITI-18_request.xml
<soapenv:Envelope xmlns="!-- namespaces ommitted -->">
 <soapenv:Header>
  <wsa:To soapenv:mustUnderstand="1">https://epd-test.com/Registry/services/RegistryService</wsa:To>
  <wsa:MessageID soapenv:mustUnderstand="1">urn:uuid:31D7E4B5-C117-481E-9EE1-F32849E81BF8</wsa:MessageID>
  <wsa:Action soapenv:mustUnderstand="1">urn:ihe:iti:2007:RegistryStoredQuery</wsa:Action>
  <wsse:Security>
   <saml2:Assertion xmlns:saml2="urn:oasis:names:tc:SAML:2.0:assertion">
    <!-- CH:XUA Assertion omitted -->
   </saml2:Assertion>
  </wsse:Security>
 </soapenv:Header>
 <soapenv:Body>
  <ns0:AdhocQueryRequest>
   <ns0:ResponseOption returnType="ObjectRef" returnComposedObjects="true"/>
   <rim:AdhocQuery id="urn:uuid:14d4debf-8f97-4251-9a74-a90016b0af0d">
    <rim:Slot name="$XDSDocumentEntryStatus">
     <rim:ValueList>
      <rim:Value>('urn:oasis:names:tc:ebxml-regrep:StatusType:Approved')</rim:Value>
     </rim:ValueList>
    </rim:Slot>
    <rim:Slot name="$XDSDocumentEntryPatientId">
     <rim:ValueList>
      <rim:Value>'7e1c6e78-58f1-4a43-ae88-0d5a5c4ab43e^^^&amp;1.3.6.1.4.1.21367.2017.2.5.45&amp;ISO'</rim:Value>
     </rim:ValueList>
    </rim:Slot>
   </rim:AdhocQuery>
  </ns0:AdhocQueryRequest>
 </soapenv:Body>
</soapenv:Envelope>

Response Message

TODO add the originalProvider to the response message.

Since the ebXML standard is very generic, the response message is quite lengthy and needs some background information to interpret.

The structure of the result set is as follows (see example below):

  • The metadata of the individual documents are bundled in a ExtrinsicObject element.
  • The metadata attributes are encoded as Slot, as Classification or as ExternalIdentifier elements.
  • Metadata attributes encoded as Slots can be identified and interpreted by the slot's name attribute.
  • Metadata attributes encoded as Classification can be identified and interpreted by the classification's classificationScheme attribute.
  • The unique ID of the document is encoded as ExternalIdentifier, which has an identificationScheme attribute with a fixed value.

The table of the identifier used to indicate the metadata attributes is defined by the metadata model used by IHE XDS.b in IHE ITI Technical Framework Vol. 3, Section 4.2.5.2.

The corresponding interpretation of the metadata attributes in the Swiss EPR and the supported value sets may be found in Annex 3 of the ordinances of the Swiss electronic patient dossier.

A request message is quite lengthy. A listing with abrevations used in the step by step interpretation below is found here. The raw version of the message may be found here.

Message Interpretation

The response message is not very complex, but quite lengthy due to the genericity of the ebXML standard. Therefore the following step by step interpretation may be of help to interpret the response.

The SOAP Header element conveys the following information:

  • Action element: The SOAP action identifier of the response as defined in the IHE ITI Technical Framework.
  • RelatesTo element: The messageID of the query request (see above).
ITI-18_response.xml
2
3
4
5
6
7
 <S:Header>
  <wsa:Action s:mustUnderstand="1"
   xmlns:s="http://www.w3.org/2003/05/soap-envelope"
   xmlns:wsa="http://www.w3.org/2005/08/addressing">urn:ihe:iti:2007:RegistryStoredQueryResponse</wsa:Action>
  <wsa:RelatesTo xmlns:wsa="http://www.w3.org/2005/08/addressing">urn:uuid:a8313b99-aad5-4880-94d2-4b02197cb650</wsa:RelatesTo>
 </S:Header>

The SOAP body element conveys 0..N ExtrinsicObject elements, each conveying the metadata of a single document.

    <ExtrinsicObject mimeType="application/fhir+json" objectType="urn:uuid:7edca82f-054d-47f2-a032-9b2a5b5186c1" id="urn:uuid:1415538d-41bc-41b2-9ae6-8b785f7f3aa6" lid="urn:uuid:1415538d-41bc-41b2-9ae6-8b785f7f3aa6" status="urn:oasis:names:tc:ebxml-regrep:StatusType:Approved" home="urn:oid:1.1.4567334.1.6"

The element has fixed attributes defined in the IHE ITI Technical Framework. Beyond these, the ExtrinsicObject conveys the following information for the primary system:

  • mimeType attribute: The document mime type. It's value must match a mime type supported by the Swiss EPR as defined in Annex 3.
  • status attribute: The status of the document, which should be Approved.

As explained above, a subset of the relevant metadata are defined in ebXML slot elements. These are:

     <Slot name="repositoryUniqueId"
      xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
      <ValueList xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
       <Value xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">1.1.4567332.1.75</Value>
      </ValueList>
     </Slot>
  • repositoryUniqueId: The unique ID of the repository the document is stored. This value must be used when retrieving documents to display (see Retrieve Document Set).
     <Slot name="hash"
      xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
      <ValueList xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
       <Value xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">a72f1824ea1d57af00faf5dd5ccb9aea0b0ce390</Value>
      </ValueList>
     </Slot>
  • hash: The hash value of the binary.
     <Slot name="size"
      xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
      <ValueList xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
       <Value xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">5375</Value>
      </ValueList>
     </Slot>
  • size: The size of the binary.
     <Slot name="creationTime"
      xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
      <ValueList xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
       <Value xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">20231219095121</Value>
      </ValueList>
     </Slot>
  • creationTime: The timestamp the document was uploaded to the patient EPR (or last modified).
     <Slot name="languageCode"
      xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
      <ValueList xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
       <Value xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">en</Value>
      </ValueList>
     </Slot>
  • languageCode: The coded value of the documents language. It's value must match one code value supported by the Swiss EPR as defined in Annex 3.
     <Slot name="sourcePatientId"
      xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
      <ValueList xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
       <Value xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">CHPAM3946^^^&amp;1.3.6.1.4.1.12559.11.20.1&amp;ISO</Value>
      </ValueList>
     </Slot>
  • sourcePatientId: The local ID of the patient in the document source system which uploaded the document.
     <Slot name="urn:e-health-suisse:2020:originalProviderRole"
      xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
      <ValueList xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
       <Value xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">HCP^^^&amp;2.16.756.5.30.1.127.3.10.6&amp;ISO</Value>
      </ValueList>
     </Slot>
  • urn:e-health-suisse:2020:originalProviderRole: The Role of original uploader who uploaded the initial version of the document as defined in Attachment 1 to Annex 5. This attribute is used to track the initial uploader role which shall never be modified by metadat update transactions.
     <Name xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
      <LocalizedString charset="UTF-8" value="Vaccination - FSME-Immun 0.25 ml Junior"
       xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"/>
     </Name>
  • Name: The document name to display in the UI.
     <VersionInfo versionName="1"
      xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"/>
  • the version info to track upadated by metadata update transactions and document replacements.

A subset of the relevant metadata are defined in ebXML Classification elements. These are:

     <Classification classificationScheme="urn:uuid:93606bcf-9494-43ec-9b4e-a7748d1a838d" classifiedObject="urn:uuid:1415538d-41bc-41b2-9ae6-8b785f7f3aa6" nodeRepresentation="" id="urn:uuid:e0fcf0a2-f44c-46c5-bc4a-26ac0743f193"
      xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
      <Slot name="authorPerson"
       xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
       <ValueList xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
        <Value xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">^Max^Mustermann^^^Dr.Med</Value>
       </ValueList>
      </Slot>
      <Slot name="authorRole"
       xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
       <ValueList xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
        <Value xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">HCP^^^&amp;2.16.756.5.30.1.127.3.10.6&amp;ISO</Value>
       </ValueList>
      </Slot>
      <Slot name="authorSpecialty"
       xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
       <ValueList xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
        <Value xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">1050^^^&amp;2.16.756.5.30.1.127.3.5&amp;ISO</Value>
       </ValueList>
      </Slot>
      <VersionInfo versionName="-1"
       xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"/>
     </Classification>
     <Classification classificationScheme="urn:uuid:41a5887f-8865-4c09-adf7-e362475b143a" classifiedObject="urn:uuid:1415538d-41bc-41b2-9ae6-8b785f7f3aa6" nodeRepresentation="184216000" id="urn:uuid:b6a1074e-c92e-4648-9f08-f011b6453689"
      xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
      <Slot name="codingScheme"
       xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
       <ValueList xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
        <Value xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">2.16.840.1.113883.6.96</Value>
       </ValueList>
      </Slot>
      <Name xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
       <LocalizedString charset="UTF-8" value="Patient record type (record artifact)"
        xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"/>
      </Name>
      <VersionInfo versionName="-1"
       xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"/>
     </Classification>
  • Class Code: The document Class Code metadata attribute, indicated by the value of the classificationScheme equal to urn:uuid:41a5887f-8865-4c09-adf7-e362475b143a as defined in IHE ITI Technical Framework Vol. 3, Section 4.2.5.2. The value conveyed with the nodeRepresentation attribute and the codingScheme value must match one of the supported values in the Swiss EPR as defined in Annex 3.
  • Name : The human readable display name of the document class.
     <Classification classificationScheme="urn:uuid:f33fb8ac-18af-42cc-ae0e-ed0b0bdb91e1" classifiedObject="urn:uuid:1415538d-41bc-41b2-9ae6-8b785f7f3aa6" nodeRepresentation="43741000" id="urn:uuid:84594dc4-814a-495f-94d7-08ee5741bbe3"
      xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
      <Slot name="codingScheme"
       xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
       <ValueList xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
        <Value xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">2.16.840.1.113883.6.96</Value>
       </ValueList>
      </Slot>
      <Name xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
       <LocalizedString charset="UTF-8" value="Site of Care (environment)"
        xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"/>
      </Name>
      <VersionInfo versionName="-1"
       xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"/>
     </Classification>
  • Healthcare Facility Type Code: The type of the healthcare facility from which the document was registered. The value conveyed with the nodeRepresentation attribute and the codingScheme value must match one of the supported values in the Swiss EPR as defined in Annex 3.
  • Name : The human readable display name of the healthcare facility type code.
     <Classification classificationScheme="urn:uuid:cccf5598-8b07-4b77-a05e-ae952c785ead" classifiedObject="urn:uuid:1415538d-41bc-41b2-9ae6-8b785f7f3aa6" nodeRepresentation="394802001" id="urn:uuid:56fd7e42-192f-4c6b-a2ca-ad0cb9f93e42"
      xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
      <Slot name="codingScheme"
       xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
       <ValueList xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
        <Value xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">2.16.840.1.113883.6.96</Value>
       </ValueList>
      </Slot>
      <Name xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
       <LocalizedString charset="UTF-8" value="General medicine (qualifier value)"
        xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"/>
      </Name>
      <VersionInfo versionName="-1"
       xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"/>
     </Classification>
  • Practice Setting Code: The practice setting code the document is registered with. The value conveyed with the nodeRepresentation attribute and the codingScheme value must match one of the supported values in the Swiss EPR as defined in Annex 3.
  • Name : The human readable display name of the practice setting code.
     <Classification classificationScheme="urn:uuid:f0306f51-975f-434e-a61c-c59651d33983" classifiedObject="urn:uuid:1415538d-41bc-41b2-9ae6-8b785f7f3aa6" nodeRepresentation="41000179103" id="urn:uuid:bb58016b-ec14-498f-9969-a9a8e6b1ab03"
      xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
      <Slot name="codingScheme"
       xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
       <ValueList xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
        <Value xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">2.16.840.1.113883.6.96</Value>
       </ValueList>
      </Slot>
      <Name xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
       <LocalizedString charset="UTF-8" value="Immunization Record (record artifact)"
        xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"/>
      </Name>
      <VersionInfo versionName="-1"
       xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"/>
     </Classification>
  • Document Type Code: The type code of the document. The value conveyed with the nodeRepresentation attribute and the codingScheme value must match one of the supported values in the Swiss EPR as defined in Annex 3.
  • Name : The human readable display name of the document type code.
     <Classification classificationScheme="urn:uuid:f4f85eac-e6cb-4883-b524-f2705394840f" classifiedObject="urn:uuid:1415538d-41bc-41b2-9ae6-8b785f7f3aa6" nodeRepresentation="17621005" id="urn:uuid:4819ee10-581a-49f0-b144-6f85be87b38b"
      xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
      <Slot name="codingScheme"
       xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
       <ValueList xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
        <Value xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">2.16.840.1.113883.6.96</Value>
       </ValueList>
      </Slot>
      <Name xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
       <LocalizedString xml:lang="en-US" charset="UTF-8" value="Normal"
        xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"/>
      </Name>
      <VersionInfo versionName="-1"
       xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"/>
     </Classification>
  • confidentiality code: The confidentiality of the the document. The value conveyed with the nodeRepresentation attribute and the codingScheme value must match one of the supported values in the Swiss EPR as defined in Annex 3.
  • Name : The human readable display name of the document confidentiality.

A subset of the relevant metadata are defined in ebXML ExternalIdentifier elements. These are:

     <ExternalIdentifier registryObject="urn:uuid:1415538d-41bc-41b2-9ae6-8b785f7f3aa6" identificationScheme="urn:uuid:58a6f841-87b3-4a3e-92fd-a8ffeff98427" value="CHPAM3946^^^&amp;1.3.6.1.4.1.12559.11.20.1&amp;ISO" id="urn:uuid:a019bc95-f172-42cf-af20-38406d848c5b"
      xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
      <Name xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
       <LocalizedString value="XDSDocumentEntry.patientId"
        xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"/>
      </Name>
      <VersionInfo versionName="-1"
       xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"/>
     </ExternalIdentifier>
  • The master patient ID (XAD-SPID): The value conveyed with the value attribute conveys the master patient ID (XAD-SPID) in the repository. Its value must be used when retrieving documents to display (see Retrieve Document Set).
     <ExternalIdentifier registryObject="urn:uuid:1415538d-41bc-41b2-9ae6-8b785f7f3aa6" identificationScheme="urn:uuid:2e82c1f6-a085-4c72-9da3-8640a32e42ab" value="2.25.306443472873218838784535217290635593269" id="urn:uuid:b37c4f57-e554-43fb-ab34-8f74dfc5376a"
      xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
      <Name xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
       <LocalizedString value="XDSDocumentEntry.uniqueId"
        xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"/>
      </Name>
      <VersionInfo versionName="-1"
       xmlns="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0"/>
     </ExternalIdentifier>
  • The document unique ID, indicated by the value of the identificationScheme equal to urn:uuid:2e82c1f6-a085-4c72-9da3-8640a32e42ab as defined in IHE ITI Technical Framework Vol. 3, Section 4.2.5.2. The value conveyed with the id attribute uniquely identifies the document in the repository. It's value must be used when retrieving documents to display (see Retrieve Document Set).

Transport Protocol

The primary system shall send the request messages to the registry of the community using the http POST binding as defined in the W3C SOAP specification. It may look like:

1
2
3
4
5
6
POST /RegistryStoredQueryService HTTP/1.1
Host: company.example.org
Accept-Encoding: gzip, deflate
Connection: Keep-Alive
Content-Type: application/soap+xml; charset="utf-8"
Content-Length: nnnn  

Audit Log

Primary systems shall store syslog messages to the audit record repository of the community using TLS transport protocol. The audit message uses XML formatting as specified in RFC 3881 with restrictions specified in the IHE ITI TF and the Extension 1 to Annex5 in the ordinances of the Swiss electronic patient record (see Section 1.5 "Requirements on ATNA").

The following snippet shows a example audit message to be written by the primary system:

iti-18-log.xml
<AuditMessage>
  <EventIdentification EventActionCode="E" EventDateTime="2023-09-11T14:18:27.579+02:00" EventOutcomeIndicator="0">
    <EventID csd-code="110112" codeSystemName="DCM" originalText="Query" />
    <EventTypeCode csd-code="ITI-18" codeSystemName="IHE Transactions" originalText="Registry Stored Query" />
    <PurposeOfUse csd-code="NORM" codeSystemName="2.16.756.5.30.1.127.3.10.5" originalText="Normaler Zugriff" />
  </EventIdentification>
  <ActiveParticipant UserID="761337610410035724" UserName="&lt;761337610410035724@http://ith-icoserve.com/eHealthSolutionsSTS&gt;"/>
  <ActiveParticipant UserID="761337610410035724" UserName="Andreas Friederich TANNER-WELTI" UserIsRequestor="true">
    <RoleIDCode csd-code="PAT" codeSystemName="2.16.756.5.30.1.127.3.10.6" originalText="Patient" />
  </ActiveParticipant>
  <ActiveParticipant UserID="http://www.w3.org/2005/08/addressing/anonymous" AlternativeUserID="20559@epd-test.ith-icoserve.com.ForkJoinPool-5-worker-3" UserIsRequestor="true" NetworkAccessPointID="81.223.215.43" NetworkAccessPointTypeCode="2">
    <RoleIDCode csd-code="110153" codeSystemName="DCM" originalText="Source" />
  </ActiveParticipant>
  <ActiveParticipant UserID="https://localhost:7443/Registry/services/RegistryService" UserIsRequestor="false" NetworkAccessPointID="localhost" NetworkAccessPointTypeCode="1">
    <RoleIDCode csd-code="110152" codeSystemName="DCM" originalText="Destination" />
  </ActiveParticipant>
  <AuditSourceIdentification AuditEnterpriseSiteID="1.3.6.1.4.1.21367.2017.2.6.19" AuditSourceID="1.3.6.1.4.1.12559.11.20.1">
    <AuditSourceTypeCode csd-code="4" codeSystemName="1.3.6.1.4.1.9784.999200" originalText="ITH icoserve information technology for healthcare sense (tm)" />
  </AuditSourceIdentification>
  <ParticipantObjectIdentification ParticipantObjectID="d5e42fed-5962-4bb9-b8b6-5d9e8afb0f2a^^^&amp;1.3.6.1.4.1.21367.2017.2.5.93&amp;ISO" ParticipantObjectTypeCode="1" ParticipantObjectTypeCodeRole="1">
    <ParticipantObjectIDTypeCode csd-code="2" codeSystemName="RFC-3881" originalText="Patient Number" />
  </ParticipantObjectIdentification>
  <ParticipantObjectIdentification ParticipantObjectID="urn:uuid:10b545ea-725c-446d-9b95-8aeb444eddf3" ParticipantObjectTypeCode="2" ParticipantObjectTypeCodeRole="24">
    <ParticipantObjectIDTypeCode csd-code="ITI-18" codeSystemName="IHE Transactions" originalText="Registry Stored Query" />
    <ParticipantObjectQuery>PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9InllcyI/PjxBZGhvY1F1ZXJ5UmVxdWVzdCB4bWxucz0idXJuOm9hc2lzOm5hbWVzOnRjOmVieG1sLXJlZ3JlcDp4c2Q6cXVlcnk6My4wIiB4bWxuczpuczY9InVybjpvYXNpczpuYW1lczp0YzplYnhtbC1yZWdyZXA6eHNkOmxjbTozLjAiIHhtbG5zOm5zNT0idXJuOm9hc2lzOm5hbWVzOnRjOmVieG1sLXJlZ3JlcDp4c2Q6cnM6My4wIiB4bWxuczpuczc9InVybjppaGU6aXRpOnJtZDoyMDE3IiB4bWxuczpuczI9InVybjppaGU6aXRpOnhkcy1iOjIwMDciIHhtbG5zOm5zND0idXJuOm9hc2lzOm5hbWVzOnRjOmVieG1sLXJlZ3JlcDp4c2Q6cmltOjMuMCIgeG1sbnM6bnMzPSJ1cm46aWhlOnJhZDp4ZHNpLWI6MjAwOSI+PFJlc3BvbnNlT3B0aW9uIHJldHVyblR5cGU9IkxlYWZDbGFzcyIgcmV0dXJuQ29tcG9zZWRPYmplY3RzPSJ0cnVlIi8+PG5zNDpBZGhvY1F1ZXJ5IGlkPSJ1cm46dXVpZDoxMGI1NDVlYS03MjVjLTQ0NmQtOWI5NS04YWViNDQ0ZWRkZjMiPjxuczQ6U2xvdCBuYW1lPSIkcGF0aWVudElkIj48bnM0OlZhbHVlTGlzdD48bnM0OlZhbHVlPidkNWU0MmZlZC01OTYyLTRiYjktYjhiNi01ZDllOGFmYjBmMmFeXl4mYW1wOzEuMy42LjEuNC4xLjIxMzY3LjIwMTcuMi41LjkzJmFtcDtJU08nPC9uczQ6VmFsdWU+PC9uczQ6VmFsdWVMaXN0PjwvbnM0OlNsb3Q+PG5zNDpTbG90IG5hbWU9IiRYRFNEb2N1bWVudEVudHJ5U3RhdHVzIj48bnM0OlZhbHVlTGlzdD48bnM0OlZhbHVlPigndXJuOm9hc2lzOm5hbWVzOnRjOmVieG1sLXJlZ3JlcDpTdGF0dXNUeXBlOkFwcHJvdmVkJyk8L25zNDpWYWx1ZT48bnM0OlZhbHVlPigndXJuOm9hc2lzOm5hbWVzOnRjOmVieG1sLXJlZ3JlcDpTdGF0dXNUeXBlOkRlcHJlY2F0ZWQnKTwvbnM0OlZhbHVlPjwvbnM0OlZhbHVlTGlzdD48L25zNDpTbG90PjxuczQ6U2xvdCBuYW1lPSIkWERTRm9sZGVyU3RhdHVzIj48bnM0OlZhbHVlTGlzdD48bnM0OlZhbHVlPigndXJuOm9hc2lzOm5hbWVzOnRjOmVieG1sLXJlZ3JlcDpTdGF0dXNUeXBlOkFwcHJvdmVkJyk8L25zNDpWYWx1ZT48L25zNDpWYWx1ZUxpc3Q+PC9uczQ6U2xvdD48bnM0OlNsb3QgbmFtZT0iJFhEU1N1Ym1pc3Npb25TZXRTdGF0dXMiPjxuczQ6VmFsdWVMaXN0PjxuczQ6VmFsdWU+KCd1cm46b2FzaXM6bmFtZXM6dGM6ZWJ4bWwtcmVncmVwOlN0YXR1c1R5cGU6QXBwcm92ZWQnKTwvbnM0OlZhbHVlPjwvbnM0OlZhbHVlTGlzdD48L25zNDpTbG90PjxuczQ6U2xvdCBuYW1lPSIkWERTRG9jdW1lbnRFbnRyeVR5cGUiPjxuczQ6VmFsdWVMaXN0PjxuczQ6VmFsdWU+KCd1cm46dXVpZDozNDI2OGU0Ny1mZGY1LTQxYTYtYmEzMy04MjEzM2M0NjUyNDgnKTwvbnM0OlZhbHVlPjxuczQ6VmFsdWU+KCd1cm46dXVpZDo3ZWRjYTgyZi0wNTRkLTQ3ZjItYTAzMi05YjJhNWI1MTg2YzEnKTwvbnM0OlZhbHVlPjwvbnM0OlZhbHVlTGlzdD48L25zNDpTbG90PjwvbnM0OkFkaG9jUXVlcnk+PC9BZGhvY1F1ZXJ5UmVxdWVzdD4=</ParticipantObjectQuery>
    <ParticipantObjectDetail type="QueryEncoding" value="VVRGLTg=" />
    <ParticipantObjectDetail type="urn:ihe:iti:xca:2010:homeCommunityId" value="MS4zLjYuMS40LjEuMjEzNjcuMjAxNy4yLjYuMTk=" />
  </ParticipantObjectIdentification>
</AuditMessage>

The message is made of the following blocks:

  • EventIdentification: Event related information including the timestamp.
  • ActiveParticipant: Information related to the portal or primary system performing the query.
  • ActiveParticipant: Information on the authenticated user as required by IHE XUA profile.
  • ActiveParticipant: Information on the authenticated user including the user name who initiated the request.
  • ActiveParticipant: Information on the responding service endpoint.
  • AuditSourceIdentification: Information related to the primary system performing the query.
  • ParticipantObjectIdentification: Request message related information including a BASE-64 encoded copy of the query.
  • ParticipantObjectIdentification: Information on the patients EPR accessed.

Security Requirements

To ensure privacy the transaction must be secured using https with mutual authentication, using X.509 certificates (extended validation required) and client and server side certificate validation.

To enable authorization, the transaction must convey the XUA Assertion for authorization in the security header of the SOAP envelope. See Provide X-User Assertion for the implementation details.

Note

  • Some test environments dropped the mutual authentication or TLS for testing purposes. Please contact your test system provider on the details.
  • Some test environments may also drop authorization for testing purposes. Please contact your test system provider on the details.

Test Opportunity

The transaction can be tested with the test suite of the EPR reference environment, test systems of the EPR communities or the EPR Playground.


Last update: 2024-08-09