Objectives
- Standardise use of data elements, indicators, and other metadata used by DHIS.
- Through a web application make available international, national and provincial definitions (standards) to all DHIS users.
- Enable users of DHIS (and potentially also other health applications) to update their metadata through download+import or automatic synchronisation with their local applications.
- Enable authorised personnel to add/edit/delete the metadata and make this available for interested users.
- Present all metadata and related information in an organised way and make the content searchable to the web users.
- The metadata information shall be available on a suitable format (XML?) for downloading or distribution to non-networked users.
How to build and install this module
- You need the xwork-optional package, which is used by WebWork in order to communicate with Spring. This package is not in the global Maven 2 repository, so you have to get it manually. Here is a link on how where to download it and install it:
- Further you need the Maven Jetty plugin in order to run the Jetty web server with Maven 2. Check out this Subversion repository:
- Finally in order to be able to build and install the DD module you have to build the trunk/dhis-2/ module:
trunk/dhis-2> mvn install
- Then build the dd module:
- Run Jetty:
/dhis-dd> mvn jetty:run-war
Project plan
Subprojects
Project meetings
Reports
Developers
NOTE: When using GAIM together with a yahoo account it seems like the Vietnamese contacts are not found. So, if in Norway and using GAIM to communicate with yahoo you must install Yahoo Messenger separately. There are both MS and Linux distributions avaliable.
Developer responsibilities
- GUI
- Duc Nguyen-Hong
- Thu Trinh-Nguyen-Minh
- Anh Tran-Hong
- Synchronisation
- Thuy Pham-Thi
- Quang Nguyen-Dang
- Andreas Solberg
- Anders Martinsen
- Standardisation
- Ve Le-Van
- Seid Hussein Yimam
Illustration (click to enlarge) of the data dictionary in use

Technical requirements
- Technologies:
- Hibernate - persistence layer
- Spring - application layer
- WebWork - presentation layer
- DBMS-independent application through Hibernate's ORM and abstraction of the database layer.
- Shall be run both on networked servers as well as locally on non-networked DHIS 2.0 applications.
- The persistence of metadata is provided by the DHIS 2.0 core module's datastore.
- The GUI shall be integrated with the rest of the DHIS 2.0 application.
- The data dictionary shall provide services to all (interested) connected DHIS 2.0 users (and potentially other health applications) so that updates to a central DD can be automatically detected and imported into the local DHIS 2.0 installations' own data dictionaries.
- The DD GUI shall be internationalised (i18n)
- The DD metadata shall be internationalised
- i18n shall be facilitated through the use of services provided by the DHIS 2.0 i18n module
- User administration and user roles shall define accessibility to different functionality of the DD.
- User administration is provided by the user admin module.
Integration with the core module
- The core module provides CRUD services and persistence of metadata:
- The object model, the service layer, the DAO layer, the hibernate implementation.
- The DD shall provide a GUI for defining and maintaining the metadata. Access to metadata is done through the services provided by the core module.
Example of DD and Core interaction:
Scenario: Add new data element
DD:
- Provide a form for capturing the information and the necessary functionality to retrieve the information.
- Call the service addDataElementI() in the org.hisp.dhis.service.datastore.dataelement.DataElementStore package
Core module:
- Spring provide the desired impl. of the DataElementStore.java interface, the org.hisp.dhis.service.datastore.dataelement.DefaultDataElementStore.java class
- DateElementStore.java calls the addDataElement() method provided by the general purpose datastore interface org.hisp.dhis.service.DataStore.java
- Spring provides the implementation - the dhis-service-datastore-hibernate.HibernateDataStore.java class which calls the appropriate hibernate method to persist the object in the database.
General information
- The metadata to handle in DD is under development
- Data element, data element group, data set is ready
- Indicator and validation rules almost in place
- Targets and benchmarks most likely to be developed this fall
- The DD will therefore be dependent on the Core module's progress and must adapt to the changes to Core.
- The Oslo part of the DD development group will work closely with the core developers.
Collaboration facilitated through tools like:
- Wiki website
- JIRA issue tracking and project management
- E-mail list dhis-dev@hisp.info
- Internal e-mail
- Instant messaging
- IP telephony (e.g. Skype)
Useful references
- The Data Dictionary developed for DHIS 1.4
- Development support for dhis2
- Coding conventions dhis2 project
News/blog