Implementation of interoperability strategy phase 1 - Import

Registered by Bob Jolliffe on 2009-10-02

DHIS2 is increasingly required to be a good interoperability citizen. At one level this involves being able to import/export data to and from a variety of different systems. For example the OpenMRS patient records system, the iHRIS HR system, the Baobab patient records system etc. In order for each of these not to become a new engineering challenge this blueprint proposes a generic xml processing framework which will allow the native XML representation of DHIS2 objects to be transformed via XSLT to a standard format(s) for transport. Currently we are implementing the SDMX HD protocol but the same framework should be usable to produce (and consume) different XML streams for example ODF or OOXML spreadsheet content, GML etc.

In order to be able to import xml based data or metadata from a variety of sources without building converters for each one we require:
(i) a means to analyze incoming streams which may be uncompressed, gzipped or packed in zip archive
(ii) a means to identify the xml format of the incoming stream, either by looking at the combination of files in a zip container or examining the Qname of the document root element or a combination of both
(iii) a mechanism for matching the identified stream to an appropriate xslt stylesheet
(iv) a mechanism for performing an xslt transformation on the incoming stream to produce a dxf stream

Some improvements are required to the amplecode staxwax framework to make it more robust and feature complete. For this reason staxwax should be brought under dhis2 version control within launchpad.

First priority in this phase is to support simple metadata transformation and import - such as GML GIS data - and SDMX-HD dataset import.

For sdmx-hd data import we require xslt stylesheets to transform dxf metadata output to an sdmx-hd DSD which defines the structure of the data to be imported. The snapshot of dxf metadata used to generate the dsd needs to be persisted so that it can be located again when an sdmx dataset is imported and translated to dxf data.

dhis2 data model needs to be extended with a notion of concept attached to categories. The concept is used to name the dimension in an sdmx-hd dataset.

Blueprint information

Status:
Complete
Approver:
None
Priority:
High
Drafter:
None
Direction:
Needs approval
Assignee:
Bob Jolliffe
Definition:
Approved
Series goal:
Accepted for trunk
Implementation:
Implemented
Milestone target:
milestone icon 2.0.5
Started by
Bob Jolliffe on 2009-10-02
Completed by
Lars Helge Ă˜verland on 2010-08-03

Related branches

Sprints

Whiteboard

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.