GeoPrism Registry Documentation
  • Versions
    • Version 1.0.0
      • 1. Introduction
      • 2. Authors
      • 3. Deployment and setup
        • 3.1. License
        • 3.2. Creating a new installation
          • 3.2.1 System Architecture
          • 3.2.2. Hardware requirements
          • 3.2.3. SSL
          • 3.2.4. Installation, configuration and update
        • 3.3. Organization management
          • 3.3.1. Create an organization
          • 3.3.2. Invite a user to serve as the Registry Administrator for an organization
        • 3.4. Localization
          • 3.4.1. Install a new locale
          • 3.4.2. Export the default localization spreadsheet
          • 3.4.3. Add or edit a locale in the exported localization spreadsheet
          • 3.4.4. Import a new locale from the localization spreadsheet
          • 3.4.5. Switch locale
          • 3.4.6. Uninstall a locale
        • 3.5. System email management
        • 3.6. Branding (Logo)
        • 3.7. FHIR custom implementation
          • 3.7.1. Maven project setup
          • 3.7.2. Create a custom implementation for exporting data to FHIR
          • 3.7.3. Create a custom implementation for importing data from FHIR to GeoPrism Registry
          • 3.7.4. Register the implementations with the Java Services architecture
          • 3.7.5. Deploy implementation to server
        • 3.8. Configuration-based type setup
          • 3.8.1. Import type definitions
          • 3.8.2. Configuration-based type setup
          • 3.8.3. Hierarchy type definitions
          • 3.8.4. Directed acyclic graph type definitions
          • 3.8.5. Undirect graph type definitions
        • 3.9. DHIS2 OAuth integration
          • 3.9.1. Configuring DHIS2
        • 3.10. Database Migrations
      • 4. External system integration
        • 4.1. Available APIs
        • 4.2. Register and synchronize an external system
          • 4.2.1. DHIS2
          • 4.2.2. Reveal
          • 4.2.3. FHIR
      • 5. GeoPrism Registry key components
        • 5.1. Content
          • 5.1.1. Geographic features and geographic objects
          • 5.1.2. Geographic object types and groups
          • 5.1.3. Data elements and classification tables
          • 5.1.4. Hierarchies
          • 5.1.5. Lists
          • 5.1.6. Geospatial data
          • 5.1.7. Data quality
        • 5.2. Content-related capacities of GeoPrism Registry
          • 5.2.1. Changes over time
          • 5.2.2. Unique identifier
          • 5.2.3. Master vs. non-master
          • 5.2.4. Accessibility
          • 5.2.5. Documentation (metadata)
          • 5.2.6. Languages and character encoding
        • 5.3. User roles and rights
          • 5.3.1. Roles
          • 5.3.2. Rights by role
        • 5.4. User interface
          • 5.4.1. Home page
          • 5.4.2. Modules
          • 5.4.3. Settings
      • 6. GeoPrism Registry tutorial
        • 6.1. GeoPrism Registry sandbox
          • 6.1.1. Purpose
          • 6.1.2. Organizations and roles
          • 6.1.3. Content
          • 6.1.4. Access
        • 6.2. Logging in
          • 6.2.1. Local GeoPrism Registry credentials
          • 6.2.2. DHIS2 credentials
        • 6.3. User management
          • 6.3.1. Adding users
          • 6.3.2. Inviting users
          • 6.3.3. Resetting a forgotten password (local GeoPrism Registry credentials)
          • 6.3.4. Changing a password
          • 6.3.5. Enabling OAuth integration
        • 6.4. Content setup
          • 6.4.1. Groups
            • 6.4.1.1. Adding a group
            • 6.4.1.2. Adding a Geo-Object Type to a group
            • 6.4.1.3. Managing the attributes for a Geo-Object Type in a group
            • 6.4.1.4. Editing the metadata of a group
            • 6.4.1.5. Delete a group
          • 6.4.2. Geo-Object Types (outside a group)
            • 6.4.2.1. Adding a Geo-Object Type
            • 6.4.2.2. Managing the attributes of a Geo-Object Type
            • 6.4.2.3. Editing the metadata of a Geo-Object Type
            • 6.4.2.4. Deleting a Geo-Object Type
          • 6.4.3. Hierarchies
            • 6.4.3.1. Adding a hierarchy
            • 6.4.3.2. Managing the content of the hierarchy
            • 6.4.3.3. Editing the metadata of a hierarchy
            • 6.4.3.4. Deleting a hierarchy
        • 6.5. Content management
          • 6.5.1. Lists and spatial data
            • 6.5.1.1. Importing data
            • 6.5.1.2. Creating a set
            • 6.5.1.3. Managing versions of a set
            • 6.5.1.4. Exploring lists and spatial data
            • 6.5.1.5. Editing lists and spatial data
            • 6.5.1.6. Curating lists and spatial data
            • 6.5.1.7. Exporting lists and spatial data
          • 6.5.2. Change requests
            • 6.5.2.1. Submitting a change request
            • 6.5.2.2. Reviewing a change request
          • 6.5.3. Historical events
            • 6.5.3.1. Creating a historical event
            • 6.5.3.2. Exploring historical events
            • 6.5.3.3. Editing a historical event
            • 6.5.3.4. Exporting historical events
    • Version 1.4.x
      • 1. Introduction
      • 2. Authors
      • 3. Deployment and setup
        • 3.1. License
        • 3.2. Creating a new installation
          • 3.2.1 System Architecture
          • 3.2.2. Hardware requirements
          • 3.2.3. SSL
          • 3.2.4. Installation, configuration and update
        • 3.3. Organization management
          • 3.3.1. Create an organization
          • 3.3.2. Invite a user to serve as the Registry Administrator for an organization
        • 3.4. Localization
          • 3.4.1. Install a new locale
          • 3.4.2. Export the default localization spreadsheet
          • 3.4.3. Add or edit a locale in the exported localization spreadsheet
          • 3.4.4. Import a new locale from the localization spreadsheet
          • 3.4.5. Switch locale
          • 3.4.6. Uninstall a locale
        • 3.5. System email management
        • 3.6. Branding (Logo)
        • 3.7. FHIR custom implementation
          • 3.7.1. Maven project setup
          • 3.7.2. Create a custom implementation for exporting data to FHIR
          • 3.7.3. Create a custom implementation for importing data from FHIR to GeoPrism Registry
          • 3.7.4. Register the implementations with the Java Services architecture
          • 3.7.5. Deploy implementation to server
        • 3.8. Configuration-based type setup
          • 3.8.1. Import type definitions
          • 3.8.2. Configuration-based type setup
          • 3.8.3. Hierarchy type definitions
          • 3.8.4. Directed acyclic graph type definitions
          • 3.8.5. Undirect graph type definitions
        • 3.9. DHIS2 OAuth integration
          • 3.9.1. Configuring DHIS2
        • 3.10. Database Migrations
      • 4. External system integration
        • 4.1. Available APIs
        • 4.2. Register and synchronize an external system
          • 4.2.1. DHIS2
          • 4.2.2. Reveal
          • 4.2.3. FHIR
      • 5. GeoPrism Registry key components
        • 5.1. Content
          • 5.1.1. Geographic features and geographic objects
          • 5.1.2. Geographic object types and groups
          • 5.1.3. Data elements and classification tables
          • 5.1.4. Hierarchies
          • 5.1.5. Lists
          • 5.1.6. Geospatial data
          • 5.1.7. Data quality
        • 5.2. Content-related capacities of GeoPrism Registry
          • 5.2.1. Changes over time
          • 5.2.2. Unique identifier
          • 5.2.3. Master vs. non-master
          • 5.2.4. Accessibility
          • 5.2.5. Documentation (metadata)
          • 5.2.6. Languages and character encoding
        • 5.3. User roles and rights
          • 5.3.1. Roles
          • 5.3.2. Rights by role
        • 5.4. User interface
          • 5.4.1. Home page
          • 5.4.2. Modules
          • 5.4.3. Settings
      • 6. GeoPrism Registry tutorial
        • 6.1. GeoPrism Registry sandbox
          • 6.1.1. Purpose
          • 6.1.2. Organizations and roles
          • 6.1.3. Content
          • 6.1.4. Access
        • 6.2. Logging in
          • 6.2.1. Local GeoPrism Registry credentials
          • 6.2.2. DHIS2 credentials
        • 6.3. User management
          • 6.3.1. Adding users
          • 6.3.2. Inviting users
          • 6.3.3. Resetting a forgotten password (local GeoPrism Registry credentials)
          • 6.3.4. Changing a password
          • 6.3.5. Enabling OAuth integration
        • 6.4. Content setup
          • 6.4.1. Groups
            • 6.4.1.1. Adding a group
            • 6.4.1.2. Adding a Geo-Object Type to a group
            • 6.4.1.3. Managing the attributes for a Geo-Object Type in a group
            • 6.4.1.4. Editing the metadata of a group
            • 6.4.1.5. Delete a group
          • 6.4.2. Geo-Object Types (outside a group)
            • 6.4.2.1. Adding a Geo-Object Type
            • 6.4.2.2. Managing the attributes of a Geo-Object Type
            • 6.4.2.3. Editing the metadata of a Geo-Object Type
            • 6.4.2.4. Deleting a Geo-Object Type
          • 6.4.3. Hierarchies
            • 6.4.3.1. Adding a hierarchy
            • 6.4.3.2. Managing the content of the hierarchy
            • 6.4.3.3. Editing the metadata of a hierarchy
            • 6.4.3.4. Deleting a hierarchy
        • 6.5. Content management
          • 6.5.1. Lists and spatial data
            • 6.5.1.1. Importing data
            • 6.5.1.2. Creating a set
            • 6.5.1.3. Managing versions of a set
            • 6.5.1.4. Exploring lists and spatial data
            • 6.5.1.5. Editing lists and spatial data
            • 6.5.1.6. Curating lists and spatial data
            • 6.5.1.7. Exporting lists and spatial data
          • 6.5.2. Change requests
            • 6.5.2.1. Submitting a change request
            • 6.5.2.2. Reviewing a change request
          • 6.5.3. Historical events
            • 6.5.3.1. Creating a historical event
            • 6.5.3.2. Exploring historical events
            • 6.5.3.3. Editing a historical event
            • 6.5.3.4. Exporting historical events
    • ສະບັບ 1.4.x (ພາສາລາວ)
      • 1. ບົດນຳ
      • 2. ຜູ້ຂຽນ
      • 3. ການນໍາໃຊ້ ແລະ ການຕັ້ງຄ່າ
        • 3.1. ໃບອະນຸຍາດ
        • 3.2. ການສ້າງການຕິດຕັ້ງໃໝ່
          • 3.2.1. ລະບົບສະຖາປັດຕະຍະກໍາ
          • 3.2.2. ຂໍ້ກຳນົດດ້ານຮາດແວ
          • 3.2.3. SSL
          • 3.2.4. ການຕິດຕັ້ງ, ການກຳນົດຄ່າ ແລະ ການປັບປຸງ
        • 3.3. ການຈັດການອົງກອນ
          • 3.3.1. ການສ້າງອົງກອນ
          • 3.3.2. ເຊີນຜູ້ໃຊ້ໃຫ້ເຮັດໜ້າທີ່ເປັນຜູ້ບໍລິຫານການລົງທະບຽນ (Registry Administrator) ສຳລັບອົງກອນ
        • 3.4. ການກຳນົດທ້ອງຖິ່ນ
          • 3.4.1. ຕິດຕັ້ງພາສາທ້ອງຖິ່ນໃໝ່
          • 3.4.2. ການສົ່ງອອກຕາຕະລາງພາສາທ້ອງຖິ່ນເລີ່ມຕົ້ນ
          • 3.4.3. ການເພີ່ມ ຫຼື ການແກ້ໄຂພາສາໃນຕາຕະລາງພາສາທ້ອງຖິ່ນທີ່ສົ່ງອອກ
          • 3.4.4. ການນໍາເຂົ້າພາສາໃໝ່ຈາກຕາຕະລາງພາສາທ້ອງຖິ່ນ
          • 3.4.5. ການສະຫຼັບພາສາ
          • 3.4.6. ຖອນການຕິດຕັ້ງພາສາ
        • 3.5. ການຈັດການອີເມວຂອງລະບົບ
        • 3.6. ຍີ່ຫໍ້ (ໂລໂກ້)
        • 3.7. ການຕິດຕັ້ງ FHIR ແບບກຳນົດເອງ
          • 3.7.1. ການຕິດຕັ້ງໂຄງການ Maven
          • 3.7.2. ສ້າງການຕິດຕັ້ງແບບກຳນົດເອງສຳລັບການສົ່ງອອກຂໍ້ມູນໄປຍັງ FHIR
          • 3.7.3. ສ້າງການຕິດຕັ້ງແບບກໍານົດເອງສໍາລັບການນໍາເຂົ້າຂໍ້ມູນຈາກ FHIR ໄປຫາ GeoPrism Registry
          • 3.7.4. ການລົງທະບຽນການຕິດຕັ້ງສ້າງສະຖາປັດຕະຍະກໍາລະບົບ Java Services
          • 3.7.5. ການນຳໃຊ້ຕິດຕັ້ງເທິງລະບົບ
        • 3.8. ການຕັ້ງຄ່າ ຄ່າກຳນົດ (configuration-based type setup)
          • 3.8.1. ຄຳນິຍາມຂອງປະເພດການນຳເຂົ້າ
          • 3.8.2. ການກຳນົດຄ່າປະເພດໂດຍອີງໃສ່ການຕັ້ງຄ່າ (configuration-based type setup)
          • 3.8.3. ຄຳນິຍາມຂອງປະເພດ hierarchy
          • 3.8.4. ຄຳນິຍາມຂອງປະເພດກຣາຟ acyclic ທີ່ມີໂຕຊີ້ບອກ (directed acyclic graph)
          • 3.8.5. ຄຳນິຍາມຂອງປະເພດກຣາຟທີ່ບໍ່ມີທິດທາງ (undirected graph)
        • 3.9. ການເຊື່ອມກັນຂອງ DHIS2 OAuth (DHIS2 OAuth integration)
          • 3.9.1. ການກຳນົດຄ່າ DHIS2
        • 3.10. ການໂອນຍ້າຍຖານຂໍ້ມູນ (database migrations)
      • 4. ການເຊື່ອມໂຍງລະບົບພາຍນອກ
        • 4.1. APIs ທີ່ມີຢູ່
        • 4.2. ການລົງທະບຽນ ແລະ ການເຊື່ອມຕໍ່ລະບົບພາຍນອກ
          • 4.2.1. DHIS2
          • 4.2.2. Reveal
          • 4.2.3. FHIR
      • 5. ອົງປະກອບທີ່ສໍາຄັນ GeoPrism Registry
        • 5.1. ເນື້ອໃນ
          • 5.1.1. ລັກສະນະທາງພູມິສາດ ແລະ ວັດຖຸທາງພູມິສາດ
          • 5.1.2. ປະເພດວັດຖຸ ແລະ ກຸ່ມພູມິສາດ
          • 5.1.3. ອົງປະກອບຂໍ້ມູນ ແລະ ຕາຕະລາງການຈັດປະເພດ
          • 5.1.4. ລໍາດັບຊັ້ນ ຫຼື ໂຄງຮ່າງການຈັດຕັ້ງ
          • 5.1.5. ບັນຊີລາຍການ
          • 5.1.6. ຂໍ້ມູນທາງພູມິສາດ
          • 5.1.7. ຄຸນນະພາບຂໍ້ມູນ
        • 5.2. ຄວາມສາມາດທີ່ກ່ຽວຂ້ອງກັບເນື້ອຫາຂອງ GeoPrism Registry
          • 5.2.1. ການປ່ຽນແປງຕາມເວລາ
          • 5.2.2. ຕົວລະບຸຕົວຕົນທີ່ເປັນເອກະລັກ
          • 5.2.3. ຕົ້ນສະບັບ ແລະ ບໍ່ແມ່ນຕົ້ນສະບັບ
          • 5.2.4. ການເຂົ້າເຖິງ
          • 5.2.5. ເອກະສານປະກອບ (metadata)
          • 5.2.6. ພາສາ ແລະ ການເຂົ້າລະຫັດຕົວອັກສອນ
        • 5.3. ບົດບາດ ແລະ ສິດຂອງຜູ້ໃຊ້
          • 5.3.1. ບົດບາດ
          • 5.3.2. ສິດທິຕາມພາລະບົດບາດ
        • 5.4. ການໂຕ້ຕອບຜູ້ໃຊ້
          • 5.4.1. ໜ້າຫຼັກ
          • 5.4.2. ໂມດູນ
          • 5.4.3. ການຕັ້ງຄ່າ
      • 6. ການສອນ GeoPrism Registry
        • 6.1. GeoPrism Registry sandbox
          • 6.1.1. ຈຸດປະສົງ
          • 6.1.2. ອົງກອນ ແລະ ພາລະບົດບາດ
          • 6.1.3. ເນື້ອໃນ
          • 6.1.4. ການເຂົ້າເຖິງ
        • 6.2. ການເຂົ້າສູ່ລະບົບ
          • 6.2.1. ຂໍ້ມູນຮັບຮອງ local GeoPrism Registry
          • 6.2.2. ຂໍ້ມູນຮັບຮອງ DHIS2
        • 6.3. ການຈັດການຜູ້ໃຊ້
          • 6.3.1. ການເພີ່ມຜູ້ໃຊ້
          • 6.3.2. ການເຊີນຜູ້ໃຊ້
          • 6.3.3. ການຕັ້ງຄ່າລະຫັດຜ່ານໃໝ່ຈາກການລືມລະຫັດ (ຂໍ້ມູນຮັບຮອງ local GeoPrism Registry)
          • 6.3.4. ການປ່ຽນລະຫັດຜ່ານ
          • 6.3.5. ເປີດໃຊ້ການເຊື່ອມໂຍງ OAuth
        • 6.4. ການຕັ້ງຄ່າເນື້ອຫາ
          • 6.4.1. ກຸ່ມ
            • 6.4.1.1. ການເພີ່ມກຸ່ມ
            • 6.4.1.2. ການເພີ່ມ Geo-Object Type ໃສ່ກຸ່ມ
            • 6.4.1.3. ການຈັດການຄຸນລັກສະນະສໍາລັບ Geo-Object Type ໃນກຸ່ມ
            • 6.4.1.4. ການແກ້ໄຂ metadata ຂອງກຸ່ມ
            • 6.4.1.5. ການລຶບກຸ່ມ
          • 6.4.2. Geo-Object Type (ນອກກຸ່ມ)
            • 6.4.2.1. ການເພີ່ມ Geo-Object Type
            • 6.4.2.2. ການຈັດການຄຸນລັກສະນະຂອງ Geo-Object Type
            • 6.4.2.3. ການແກ້ໄຂ metadata ຂອງ Geo-Object Type
            • 6.4.2.4. ການລຶບ Geo-Object Type
          • 6.4.3. Hierarchies
            • 6.4.3.1. ການເພີ່ມລຳດັບຊັ້ນ
            • 6.4.3.2. ການຈັດການເນື້ອໃນຂອງລໍາດັບຊັ້ນ
            • 6.4.3.3. ການແກ້ໄຂ metadata ຂອງລໍາດັບຊັ້ນ
            • 6.4.3.4. ການລຶບລຳດັບຊັ້ນ
        • 6.5. ການຈັດການເນື້ອຫາ
          • 6.5.1. ລາຍການ ແລະ ຂໍ້ມູນພື້ນທີ່
            • 6.5.1.1. ການນຳເຂົ້າຂໍ້ມູນ
            • 6.5.1.2. ການສ້າງຊຸດ
            • 6.5.1.3. ການຈັດການລຸ້ນຂອງຊຸດ
            • 6.5.1.4. ການຄົ້ນຫາລາຍການ ແລະ ຂໍ້ມູນພື້ນທີ່
            • 6.5.1.5. ແກ້ໄຂລາຍການ ແລະ ຂໍ້ມູນພື້ນທີ່
            • 6.5.1.6. ຈັດການລາຍການ ແລະ ຂໍ້ມູນພື້ນທີ່
            • 6.5.1.7. ການສົ່ງອອກລາຍການ ແລະ ຂໍ້ມູນພື້ນທີ່
          • 6.5.2. ການປ່ຽນແປງຄຳຮ້ອງຂໍ
            • 6.5.2.1. ການສົ່ງຄໍາຮ້ອງຂໍການປ່ຽນແປງ
            • 6.5.2.2. ການກວດສອບຄຳຮ້ອງຂໍການປ່ຽນແປງ
          • 6.5.3. ເຫດການທີ່ເກີດຂຶ້ນມາກ່ອນ (Historical events)
            • 6.5.3.1. ການສ້າງ historical event
            • 6.5.3.2. ການສຳຫຼວດ historical events
            • 6.5.3.3. ການແກ້ໄຂ historical events
            • 6.5.3.4. ການສົ່ງອອກ historical events
  • Fundamentals
    • Glossary of terms
  • API Documentation
  • Install from Docker Hub
Powered by GitBook
On this page
  • 4.2.1.1. Registration
  • 4.2.1.2. Enable OAuth
  • 4.2.1.3. Compatibility
  • 4.2.1.4. Import
  • 4.2.1.5. Synchronization
  • 4.2.1.6. Matching organization units
  • 4.2.1.7. Matching organization unit groups
  • 4.2.1.8. Custom attribute matching
  • 4.2.1.9. Term matching
  • A. Option sets
  • B. Organization unit groups
  • 4.2.1.10. DHIS2 to GeoPrism Registry plugin
Edit on GitHub
Export as PDF
  1. Versions
  2. Version 1.4.x
  3. 4. External system integration
  4. 4.2. Register and synchronize an external system

4.2.1. DHIS2

Previous4.2. Register and synchronize an external systemNext4.2.2. Reveal

Last updated 2 years ago

4.2.1.1. Registration

The process for registering a DHIS2 instance in GeoPrism Registry is as follows:

  1. Navigate to the Settings page using the burger menu.\

  2. Scroll down to the 'External Systems' section and click on the + button to open the Registration modal.\

  3. Select DHIS2 from the Type dropdown and fill out the other fields (details on each field are provided in the table below).\

Field name
Description
Required?

Type

The type of external system.

Yes

Organization

The organization the user belongs to. An external system will only be available to data and users within this organization.

Yes

ID

The identifier for this external system.

Yes

Label

The label of the external system.

Yes

Description

A description of the external system.

No

Username

The username of the user from the DHIS2 instance to be used for authentication.

Yes

Password

The password of the user from the DHIS2 instance to be used for authentication.

Yes

URL

The URL of the DHIS2 instance.

Yes

4.2.1.2. Enable OAuth

  1. At the bottom of the External System modal, you will see a section for OAuth. Click the Enable OAuth Integration button.\

  2. A form for configuring the OAuth integration will expand. Client ID, Profile Location, Token Location and Authorization Location should be filled out automatically. It is not recommended to change these values.\

  3. Enter the Secret Key from the DHIS2 OAuth Client in the OAuth Secret Key field. You will need to get this from the DHIS2 instance.\

  4. Click Submit.

4.2.1.3. Compatibility

GeoPrism Registry's DHIS2 integration has not been tested on DHIS2 versions above 2.38 and below 2.31. It is not recommended to integrate with DHIS2 servers outside of this range, because GeoPrism Registry could throw unspecified errors during synchronization, or in the worst case scenario, it could corrupt your DHIS2 database..

Some GeoPrism Registry features may not work with some versions of DHIS2.

The following table lists the OAuth integration possibilities for each DHIS2 version, as tested by TerraFrame.

DHIS2 version
Integration via OAuth possible?

2.35.2 and later

Yes

2.35.1

No

2.35.0

No

2.34.2

Yes

2.33.7

Yes

2.32.7

Yes

2.31.9

Yes

4.2.1.4. Import

If Geo-Object data is already present as organization units in a DHIS2 instance, it must first be imported using the Import from an external system option in the Import module.

4.2.1.5. Synchronization

GeoPrism Registry supports using a DHIS2 external system synchronization to push data to a DHIS2 instance. The purpose of the external system synchronization is to define how Geo-Object Types in a specific hierarchy will map to organization units in a DHIS2 instance. The latest version of the Geo-Objects will be synchronized with DHIS2, as GeoPrism Registry currently does not support exporting at a specific date.

The following steps are to be followed to enable the synchronization:

  1. Navigate to the Settings page.\

  2. Find the External System Synchronizations section and click on the Register Synchronization button.\

  3. Click the Create button on the Synchronization Configurations page.\

  4. Fill out the fields in the Synchronization Configuration modal and click Submit.\

Field
Description

Label

Label of the synchronization configuration.

Organization

The organization the synchronization configuration will be available to.

Hierarchy

The hierarchy this synchronization will use to push data to an external system.

External System

The registered external system that this synchronization will use to push data to an external system.

Org Units

A mapping between the Geo-Object Types in the selected GeoPrism Registry hierarchy and the types in the DHIS2 instance.

4.2.1.6. Matching organization units

The Org Units section of the configuration modal allows you to map each organization unit level in DHIS2 to a Geo-Object Type in GeoPrism Registry. There is no limit to the number of levels that can be matched, however no more levels should be matched than exist in the DHIS2 instance being synchronized with. Additionally, the matched Geo-Object Type of each level should be a direct child of the level before it.

The Geo-Objects in GeoPrism Registry are matched to their DHIS2 counterparts using the external identifiers of the GeoPrism Registry Geo-Objects and the identifiers of the organization units in DHIS2. It is important to note that this matching does not use the Code properties from either system. If a Geo-Object does not have an external identifier, then it will be considered new and will be created as a new organization unit in DHIS2 if the synchronization type is set to ‘Org Units and Relationships’. GeoPrism Registry will then save the external identifier of that new organization unit in the database to be used for future updates. If the Geo-Object has an external identifier while DHIS2 does not have an organization unit with a matching identifier in their system, an error will be shown.

The DHIS2 Synchronization Type specifies what data will be synchronized to DHIS2.

Synchronization Type
Description

Org Units

Synchronizes attributes from Geo-Objects over to existing organization units in DHIS2. New Geo-Objects cannot be synchronized with this setting.

Relationships

Synchronizes relationships between Geo-Objects with DHIS2. If an organization unit in DHIS2 has a different parent than what exists in GeoPrism Registry, the existing parent will be set to the one in GeoPrism Registry. If multiple parents in GeoPrism Registry are detected for a Geo-Object an error will be thrown and the relationship will not be exported. New Geo-Objects cannot be synchronized with this setting.

Org Units and Relationships

Synchronizes both attributes and relationships over to DHIS2. If the organization unit does not exist in DHIS2 it will be created.

4.2.1.7. Matching organization unit groups

Geo-Object Types (levels) can be matched to an organization unit group, so that only selected organization units within that group are synchronized. The ‘Org Unit Group’ dropdown lists all organization unit groups which currently exist in the DHIS2 instance. When a Geo-Object Type is matched to a group, all Geo-Objects that are of that Geo-Object Type will be assigned to the selected organization unit group the next time the system synchronizes with this configuration.

This behavior operates in an additive fashion only. Any organization units which are already assigned to the organization unit group will not be affected.

4.2.1.8. Custom attribute matching

If a Geo-Object Type is matched which contains custom attributes, the custom attribute matcher will be displayed.

This attribute matching is specific to a Geo-Object Type and level. In order for a DHIS2 attribute to be a valid selection for the matching, it must be applied to organization units, and it must be close enough in Type to be a candidate. Here are the appropriate selection types:

GeoPrism Registry data type
Appropriate DHIS2 value types

Text

Text, Long Text, Letter, Phone Number, Email, Username, URL

Boolean

Boolean, True Only

Date

Date, Date Time, Time, Age

Integer

Integer, Integer Positive, Integer Negative, Integer Zero

Decimal

Number, Unit Interval, Percentage

Term

Option Set

The following DHIS2 value types cannot be mapped to attributes in GeoPrism Registry:

  • Tracker Associate

  • Coordinate

  • Organization Unit

  • File Resource

  • Image

If an attribute in GeoPrism Registry is not matched to one in DHIS2 (either because there were no valid selections, or the dropdown was intentionally left as ‘not matched’), then the data in that attribute will not be synchronized with DHIS2. It will not, however, prevent the rest of the attributes or relationships from being synchronized.

4.2.1.9. Term matching

A. Option sets

GeoPrism Registry Term-type attributes can be matched to DHIS2 option sets. When the Target Type is set to ‘Option Set’, the Target Attribute dropdown will populate with all DHIS2 attributes which contain an option set and are assigned to organization units. When a GeoPrism Registry Term-type attribute is matched to a valid option set in the DHIS2, then the user interface expands to allow matching between GeoPrism Registry terms and DHIS2 options.

If a Geo-Object does not have values for the Term-type attribute, then the attribute will not be set on the DHIS2 organization unit. Geo-Objects with terms which have not been matched (‘Not Mapped’) will not be exported and an error will occur.

B. Organization unit groups

Terms can also be mapped instead to organization unit groups. This can be done by selecting ‘Org Unit Group’ in the Target Type dropdown.

Geo-Objects will be assigned to the organization unit group as matched in the above screenshot. This provides some basic support for organization unit group synchronization.

Similar to option set matching, if a Geo-Object does not have a value for the Term-type attribute, then it will not be assigned to an organization unit group. Geo-Objects with terms which have not been matched (‘Not Mapped’) will not be exported and an error will occur.

This behavior operates in an additive fashion only. Any organization units which are already assigned to the organization unit group will not be affected.

If a level is matched to a DHIS2 organization unit group, and the Geo-Object Type also contains a term which is matched to DHIS2 organization unit groups, then the synchronized organization unit will be added to all organization unit groups which have been matched (in an additive fashion).

4.2.1.10. DHIS2 to GeoPrism Registry plugin

GeoPrism Registry provides a plugin which can be downloaded and installed onto a DHIS2 instance. When installed onto DHIS2, this plugin behaves as a standard DHIS2 app, which will redirect to the GeoPrism Registry instance configured in the external system.

To download the DHIS2 to GeoPrism Registry plugin:

  1. Navigate to an existing DHIS2 external system configuration form from the GeoPrism Registry Settings page.

  2. Click the Download DHIS2 Plugin button, which will download a zip file called “cgr-dhis2-app.zip” to your computer.\

  3. Successful installation will display the link to GeoPrism Registry in DHIS2.

An OAuth client must first be created in the DHIS2 instance. See for more information.

Please refer to the official to install the plugin.

section 3.9
DHIS2 documentation