Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

OHF Bridge Documentation

Revision as of 13:56, 13 November 2006 by Unnamed Poltroon (Talk) (Sending documents)

This page will try to supply missing documentation problems occurring due to the frequent updates and new requirements we receive from the IHE Connectathon 2007 tests.

Changes in Beta 3 Web services API

  • Changing pidType to patientIdType in order to avoid HL7 namespace conflicts.
  • Adding a "is PHAD" boolean to the RHIO config
  • Changed the names of the send document operations and added one that suits the IHE Connectathon 2007 most (see API clarifications)
  • In the XDSDocType, changed the name of EncodedDocument to Base64EncodedDocument
  • In DateTimeRangeType changes attribute to attributeName (make it more clear)
  • In FindDocumentsByPatientId using PatientIdType for the patient type instead of a string
  • In DocumentSearchType changed the PatientID from String to be a PatientIdType

API Clarification

SessionContext

The SessionContext is an object you should send in almost every transaction of the bridge. The SessionContext contains session information needed in order to resolve the resources and parameters the transaction will work with. The SessionContext contains the following:

  • User: The user name of the user of the application. Needed for ATNA Auditing
  • SessionID: Any string you like. Used in order to synchronize logs in the client and server side. This way you can look up in teh server's log the logs for session ### and match them with the client log.
  • RhioName: The name of the RHIO you would like to work with. You may get the list of RHIOs configured in the bridge using RhioConfig[] GetRhios()
  • UserApplicationName: The application name (CapMed, OpenEMR, etc). Needed for ATNA Auditing
  • UserFacilityName: The facility name (MyClinic, etc). Needed for ATNA Auditing

Sending documents

In beta 3 we've changed the name of the methods to clarify the document submission process and make testing for Connectathon 2007 as easy as possible. These are the only submission options for Connectathon 2007 testing.

  • SubmitDocument (use for Connectathon Tests 11746, 11748, 11742, 11743)
    • This service accepts a base 64 encoded, CDA R2 formatted document encoded using the popular Base64, and other necessary XDS Metadata needed for submission. This service will automatically extract XDS Metadata from this document and supplement the metadata with values from a DocumentSubmissionMetadataType object. Successful execution of this request will satisfy Test 11746 and 11742.
    • To replace a document (Test 11748) additionally include th UUID of the parent document you wish to be replaced. This UUID is most easily obtained by issuing a query for the document you want to replace.
    • Instructions for submitting a document over TLS (Test 11743) will be posted soon.
    • An example of this object will be posted soon.

Bridge users must provide the patientID and their sourceID (an OID) along with the codes they feel best describe the submission they are executing. These codes can be fixed, in many cases, based on the kind of application you own. Choices of codes can be found here. A parent document UUID must be provided in the case of document replacement.

AN ASIDE: General comment regarding the "DecodedDocument" field. Please ignore it. We had placed it there to overcome a problem we had with SOAP object translation and we intend to remove it soon.

Searching for Documents

  • DateTimeRangeType is used for searching a document with date constraints.
    • There might be more then one DateTimeRangeType in a search. There are five types of DateTimeRangeType distinguished by their AttributeName:
      • creationTime
      • serviceStartTime
      • serviceStopTime
      • submissionTime
      • lastUpdateTime
    • Time/date (To and From) must follow this format: YYYY[MM[DD]]

Patient ID

Note that we are using a PatientIdType object when referring to patient id, we are not using any longer a simple string. The PatientIdType object contains:

  • The idNumber (string) which is the id, for example 16edfc6d4bc341a.
  • An AssigningAuthorityType which is an object containing the attributes of the AssigningAuthority which contains:
    • namespaceId (string): the namespace ID. This attribute is allowed for PIX/PDQ but it's use is prohibited in XDS. The value used for PIX/PDQ for Connectathon is HIMSS2005.
    • universalId (string) : in the connectathon it will be 1.3.6.1.4.1.21367.2005.3.7
    • universalIdType (string) : This is always ISO
    • useDefaultAssigningAuthority (boolean) : Default is false. If it is true, then if case the AssigningAuthority is empty, the PIX server AssigningAuthority details will be used for the client.

Audit

All the Audit calls are receiving a AuditMessageType object which contains:

  • eventOutcomeIndicator(intiger) The eventOutcomeIndicator should be one of
    • 0 : Success
    • 4 : Minor failure
    • 8 : Serious failure
    • 12: Major failure; action made unavailable
  • userIDActiveParticipantConsumer(string): Identity of the consumer
  • userIDActiveParticipantRegistry(string): Identity of the registry
  • auditSourceId(string): Identity of the participant of the source
  • participantObjectId(string): Identity of the participant of the object
  • participantObjectQuery(string): Identity of the participant of the query

The methods exposed (which using the above object) are:

  • AuditPhiExport
  • AuditPhiImport
  • AuditLogin
  • AuditLogout
  • AuditLoginFailure

Back to the top