Diversity Gazetteer

Scope of DiversityGazetteer within the Diversity Workbench

DiversityGazetteer is part of the database framework Diversity Workbench. Within this framework the application DiversityGazetteer is confined to the display of geographic places. Any module within the Diversity Workbench is focused on a specific data domain. DiversityGazetteer keeps only data regarding geographic names and places. Data of other realms like e.g. taxonomy are handled in separate modules.

DiversityGazetteer is based on Microsoft SQL-Server 2016 or above and the .Net Framework, Version 8.

For licence and copyright see the licence section.

Diversity Workbench modules

Jan 30, 2025

Subsections of Gazetteer

Diversity Gazetteer

Download

Upcoming version

4.5.1 (2024-??-??)

Current version

4.5

Download

  • Bugfixes in Workbench.dll

Previous versions

4.4.3

  • Database tools included and layout improved
  • Bugfix database tools
  • Adaption of documentation tools to help projects configuration
  • Documentation: Bugfix setting deprecated roles

Database updates

  • 02.05.37: Missing descriptions; TaxonOrder: Adding column IgnoreButKeepForReference for query; TaxonFamily: Adding column IgnoreButKeepForReference for query; New table SynonymyListCache to store results of function SynonymyList; New procedure procFillSynonymyListCache to fill table SynonymyListCache; SynonymyList - Try to get data from cache;

4.4.2

  • Optional inclusion of continents in hierarchy 

Database updates

  • 01.00.34: New function HierarchyIncludeContinents for decision if continents should be included in hierarchy; Inclusion of HierarchyIncludeContinents in SetHierarchyCacheAll; Inclusion of HierarchyIncludeContinents in RefreshGeoCache;

Subsections of Download

Diversity Gazetteer

Installation

Resources

To run a module of the Diversity Workbench framework, you need access to a database and an installation of the respective client. The following instructions explain how to install the DiversityCollection client. All other modules are installed in the same way.

If you do not yet have an account for your institutional DWB platform, please contact your institution’s DWB administrator. If you wish to set up and use your own personal, institutional, domain-specific, or research-group-internal database environment, see Installation of a database for more information.

A German-language video demonstrates the installation using the DC client as an example. Please note that the initial steps in the video are outdated, as the downloads are now available via this manual, as described below. .

Download

All DiversityWorkbench modules can be downloaded free of charge. Within each module in the manual, you will find a Download menu item. There, you can download the latest version in the Current version section.

Installation of the client

The client is currently based on the .Net framework version 4.8 from Microsoft. If not already present, the software will prompt you to install it.

After downloading the client, unzip the .zip folder. The extracted setup folder contains two files: an .msi and a .bat file.

If you want to install the client on your computer, start the installation by double-clicking the .msi file.

If necessary, you can adjust the installation location in the next step.

Once the installation is complete, the software will be added to the program menu (see below) and a shortcut will be created on the desktop.

In the next chapter Database Login the login process is explained.

Troubleshooting

If you don’t have sufficient permissions on your computer to install anything, you can use the client by following the instructions Run the program without an installer. If you receive a warning from Windows that this computer is protected, follow the instructions Windows protection warning.

Run program without installer

There are several reasons why you might prefer to run DiversityCollection without installation. E.g. if you lack administrative permissions on your computer or if you want to use several different versions of DiversityCollection in parallel.

Therefore, the downloaded .zip file contains a .bat file. With this .bat file, a folder DiversityCollection_x_x_x is created on your desktop containing all relevant files to run the client DiversityCollection.

You have to unzip the downloaded .zip file to a local folder. The unzipped folder contains the .msi file and the .bat file. Within this unzipped! folder start the .bat file with a double-click. You might get a security warning, as shown in the section Windows protection warning.

The batch file unpacks the program files to a folder on your desktop named DiversityCollection_x_x_x, where "x_x_x" stands for the program version.

To start the DiversityCollection program, go to the folder and double-click on the file DiversityCollection.exe.

The login process is explained in the next chapter Database Login.

Technical notes and additional information

The software will be placed in the programs directory, as shown below.

Additionally, a folder is created in the user directory. This folder contains files and templates, for example, for label printing. It also contains hidden folders, such as Query. User input is saved there so that it can be loaded again the next time the program is started.

Windows protection warning

If you receive the following warning from Windows

please click on Weitere Informationen. A button Trotzdem ausführen will appear.

Please click on Trotzdem ausführen to install the software.

 

Apr 16, 2025

Diversity Gazetteer

Tutorial

Tutorial - first steps

This tutorial will guide you through the first basic steps in DiversityGazetteers. After the installation, make sure that you have access to the database. To start the program, double click on the DiversityGazetteers.exe in the directory where you placed the files of DiversityGazetteers. The main window will open.

Start page 

If you open this window for the first time, you have to connect to the database. A window will open automatically where you can enter your account information and choose the database (see image below, for further informations see database access). If not, click on the button or choose Connection → Database… from the menu to open the Connection window.

Connect page 

After having connected to the server and having chosen a database click on the OK button to return to the main window. As indicated by the  symbol in the tool bar, you are now connected to the database. The tooltip of the button will show your current login informations.

 

Apr 16, 2025

Subsections of Tutorial

Diversity Gazetteer

Tutorial Query

To search for data in the database, use the query section in the left part of the window. To select the query conditions, click on the button in the top panel. A window as shown below will open.

 

With the Maximal number of results you can limit the packet size that should be retrieved from the server. For a slow connection to the database server choose a low value (e.g. 100 as set by default).

Select the desired entries of

  • Name
  • Longitude / Latitude / Distance (km)
  • Place type
  • Project
  • Language
  • Place ID
  • Name ID

Click OK to close the window. According to the example above your query conditions will look like this:

Operators: Press the button to open the operator dropdown list and choose an appropriate operator for your query:

  • “~”: Like - The search string is part of the item.
  • “=”: Equal - The search string matches the item exactly.
  • “<”: Less than - All results less than the search string.
  • “>”: Greater than - All results greater than the search string.

Name: Enter the name of the place you are searching for in the adjacent text box. The results are depending on the operator.

Longitude: Enter the longitude for the desired places. Only numerical input allowed.

Latitude: Enter the latitude for the desired places. Only numerical input allowed.

Distance: Enter the distance regarding longitude and latitude. Depending on the operator all items will be displayed which are inside or outside the distance. Only numerical input allowed.

Place type: Choose from a list of possible entries. Select the type of place you are looking for. “—” means all kind of types.

Language: Choose from a list of possible entries. Select the language which is assigned to the place. If there are no results, set the language to “—” (all languages or no language assigned).

Project: Choose from a list of possible entries. Select your current project. “—” means all projects.

Place ID: Enter the place ID for the desired places. Only integer numbers allowed.

Name ID: Enter the name ID for the desired places. Only integer numbers allowed.

After all query conditions are set, click on the button to start the query. In the resultlist all places will be displayed which matches your query and the selected maximal number of results.

Jan 14, 2025

Diversity Gazetteer

Tutorial - query results

Pressing the Filter button will display all places in the list box which matches the query conditions and the selected maximal number of results:

Query results

The entries consist of name ID, name, place type and coordinates (if any). If no coordinates are available, the entry is shown in gray. In case the entry describes a complex geography (e.g. a country polygon, a river line string etc.), the coordinates represent the “envelope center” of the shape.

The indices of the currently displayed database entries are shown in the header of the list box, as well as the total number of entries. The first line in the list box also contains the indices and may be used to display all entries in total.

Pressing the Filter button will display the next set of entries (according to maximal number of results). The indices will change accordingly.

Pressing the Filter button will display the previous set of entries (according to maximal number of results). The indices will change accordingly.

Pressing the Filter button will add the next set of entries (according to maximal number of results) to the ones already displayed in the list. The indices will change accordingly.

Pressing the Filter button will clear the list box and the query conditions.

The Filter button is designed as a toggle button, which has 2 states. Pressing the button will switch the GISEditor display mode between “View” and “Edit”. If the mode is set to “Edit”, the button will appear as Filter and the map window will be extended by its control panel.

Query results

Jul 22, 2024

Diversity Gazetteer

Tutorial - show places

Tutorial - show places

The results list box displays the current set of places found by the database query. To show a certain place on the map, just double click at the entry. Due to the coordinates of the place the map will be adjusted to this area and build up. Depending on the internet connection and the map server this can take some seconds. A message box will pop up to advice the user to wait, until the map is complete:

Message box

When all tiles of the background map are drawn, press OK to continue. Then the online map will be scanned and the place will be shown on the map. If the coordinates are single positions, markers will be set. If the coordinates describe areas or line strings, the appropriate geometrical objects are drawn. The information area above the map lists the details of the place (name ID, name, place ID, place type, coordinates as well as more names and hierarchy, if available).

Map with marker

A double click at the first line shows all places currently listed in the results box. The information area will not show specific details, but moving the mouse over a place on the map displays the details in a tool tip.

Map with all places

If a place hierachy has been defined, it is shown in the hierarchy list box. Due to historical reasons there might also be a hierarchy text entry for the place, which is displayed beneath the hierarchy, if it is available. Below the place names are displayed, which are one level under the current place in the hierarchy tree, if there are any. By clicking on an entry of the upper or lower hierarchy list the current place can can be switched to that one. If you have administrator permissions, the hierarchy and the hierarchy text entry can be modified.

Map with all places

Since version 1.4.2.0 multiple languages and place types are supported for a place name. If there is more than one language or place types entry assigned, the additional ones are diplayed beneath the preferred entry.

Multiple languages and places

Press the Show Name Parameters button button to display all parameters for a place name stored in the database at a glance in a separate window.

Show name parameters

Jul 22, 2024

Diversity Gazetteer

Tutorial - edit places

If the user has administrator rights for the dataset, the Newbutton, Delete button and Savebutton items are displayed in the toolbar. Additionally the Add name button, Set parentbutton and Remove parentbutton buttons will appear in the info area.

The user then may edit the name of the place using the text box. The Save button item turns to red Redbutton to notify the user that the changes need to be saved by pressing this item before going to another place. The assigned geographical objects may also be edited or changed using the Edit mode of the GIS Editor and saved by pressing the Save button item. To add a new place to the gazetteer, create a geo object within the GISEditor, enter a description and subsequently press the New button item to put it into the database. The user may delete a name entry by pressing the Deletebutton item. To add a new name for the current place just type it into the Name text box and press the Add namebutton button aside. This button is only enabled, if the name has been edited.

To create or change the places hierarchy select an entry and switch ON the Set parent button toggle button. Search and select an entry using the query results list box to assign it as the parent place for the one which is displayed in the info area. The tool tip of the list box will change accordingly. As soon it has been assigned the toggle button will switch OFF again. If no entry should be assigned the button may be released by pressing it again. If the place is part of the hierarchy the Remove parent button button is enabled and may be pressed to remove the assignment of the parent for the current place. This will cut off the upper part of the place’s hierarchy tree.

Appropriate message boxes will pop up for changing or editing the name and hierarchy of a place to prevent changes by mistake. If there are multiple places selected, these buttons will not be functional.

Admin View

If there are more than one name entries for the current place, all names are shown in a list box right of the selected name. The user may switch to another name of the list by double clicking it. One of the name entries may be assigned as the preferred name for the current place. This can be done by left clicking it. A message box will be shown to ensure that the assignment should be made. The preferred name then will appear in red color in the list.

At the right side of the information area there are 2 list boxes. The first shows the projects which are assigned to the current name, the second shows the other projects which are not assigned. The administrator may assign or remove projects to the name by selecting a project and clicking on an appropriate arrow button to shift it to the opposite box. Alternatively he may easily shift the project by double clicking on it.

If the assignment of the projects has been changed, the Savebutton button turns to red Redbutton to notify the user that the changes need to be saved before going to another place. Otherwise the changes will be lost.

Admin View

Jul 22, 2024

Diversity Gazetteer

Tutorial - add places

If the user has administrator rights for the database, the New icon symbol is shown in the tool bar. Then the user may add new place entries to the database using the GISEditor. A background map and geographical objects may be created or imported, e.g. from ArcView shape files. These shapes are often very big and do not match the restrictions of MS SQL Geography Objects as used in the database, so there are several save options, which can help to avoid problems for the import:

Message box

One major restriction of MS SQL Geography Objects is, that polygon lines must not overlap. This is frequently the case on multiple polygons within one geographical object, e.g. the outlines of neighbouring countries. To avoid this, multiple polygons may be split up to single polygons, which can be saved either as separate place entries (with the drawback that the collection will be disbanded) or as one geographical collection (which keeps the togetherness of the elements).

Big ArcView shapes often contain millions of coordinates, which may cause out of memory errors when they are converted to a geographical data object. This can be avoided by successively saving the samples of the GIS editor to the database. Precondition for that is, that a big shape file is split into single geographical objects (samples) already when reading it by the GIS Editor. To do this the appropriate check box of the GIS Editor Settings has to be checked:

Message box

If you create a new place using the GIS Editor, be sure to enter a description in the “Text” field before you add it to the sample list. Clicking the New icon symbol of the tool bar will save the samples of the GIS Editor according to the save options and will use the sample descriptions as the place names. If the samples are split into multiple entries, an index is appended to the name.

Message box

Jul 22, 2024

Diversity Gazetteer

Import Export

  • Export

    Exporting data to text files

  • Import

    Importing data from text files

Apr 16, 2025

Subsections of Import Export

Diversity Gazetteer

Import

Apr 16, 2025

Subsections of Import

Diversity Gazetteer

Import wizard

The examples below are from the module DiversityAgents, but are valid for any other module as well.

With the current solution please ensure that there are no concurrent imports in the same database.

For some imports like e.g. for Collections in DiversityCollection you will be reminded to update the cache tables for the hierarchies.

With this import routine, you can import data from text files (as tab-separated lists) into the database. A short introduction is provided in a video Video starten. Choose Data Import Wizard Agent from the menu. A window as shown below will open that will lead you through the import of the data. The window is separated in 3 areas. On the left side, you see a list of possible data related import steps according to the type of data you choose for the import. On the right side you see the list of currently selected import steps. In the middle part the details of the selected import steps are shown.

Choosing the File and Settings

  • File: As a first step, choose the File from where the data should be imported. The currently supported format is tab-separated text. Choosing a file will automatically set the default directory for the import files. To avoid setting this directory, deselect the option Adapt default directory in the context menu of the button to open the file.
  • Encoding: Choose the Encoding of the file, e.g. Unicode. The preferred encoding is UTF8.
  • Lines: The Start line and End line will automatically be set according to your data. You may change these to restrict the data lines that should be imported. The not imported parts in the file are indicated as shown below with a gray background. If the
  • First line: The option First line contains the column definition decides if this line will not be imported.
  • Duplicates: To avoid duplicate imports you can Use the default duplicate check - see a video Video starten for an explanation.
  • Language: If your data contains e.g. date information where notations differ between countries (e.g. 31.4.2013 - 4.31.2013), choose the Language / Country to ensure a correct interpretation of your data.
  • Line break: With the option Translate \r\n to line break the character sequence \r\n in the data will be translated in a line break in the database.
  • SQL statements: To save all SQL statements that are generated during a test or import, you can check the option Record all SQL statements. Video starten
  • Schema: Finally you can select a prepared Schema (see chapter Schema below) for the import.

Choosing the data ranges

In the selection list on the left side of the window (see below) all possible import steps for the data are listed according to the type of data you want to import.

The import of certain tables can be paralleled. To add parallels click on the button (see below). To remove parallels, use the button. Only selected ranges will appear in the list of the steps on the right (see below).

To import information of logging columns like who created and changed the data, click on the include logging columns button in the header line. This will include additional substeps for every step containing the logging columns (see below). If you do not import these data, they will be automatically filled by default values like the current time and user.

Attaching data

You can either import your data as new data or Attach them to data in the database. Select the import step Attachment from the list. All tables that are selected and contain columns at which you can attach data are listed (see below). Either choose the first option Import as new data or one of the columns the attachment columns offered like SeriesCode in the table Series in the example below.

If you select a column for attachment, this column will be marked with a blue background (see below and chapter Table data).

Merging data

You can either import your data as new data or Merge them with data in the database. Select the import step Merge from the list. For every table you can choose between Insert, Merge, Update and Attach (see below).

The Insert option will import the data from the file independent of existing data in the database.

The Merge option will compare the data from the file with those in the database according to the Key columns (see below). If no matching data are found in the database, the data from the file will be imported. Otherwise the data will be updated.

The Update option will compare the data from the file with those in the database according to the Key columns. Only matching data found in the database will be updated.

The Attach option will compare the data from the file with those in the database according to the Key columns. The found data will not be changed, but used as a reference data in depending tables. 

Empty content will be ignored e.g. for the Merge or Update option. To remove content you have to enter the value NULL. As long as the column will allow emty values, the content will be removed using the NULL value.

Table data

To set the source for the columns in the file, select the step of a table listed underneath the Merge step. All columns available for importing data will be listed in the central part of the window. In the example shown below, the first column is used to attach the new data to data in the database.

A reminder in the header line will show you which actions are still needed to import the data into the table:

  • Please select at least one column   = No column has been selected so far.
  • Please select at least one decisive column   = If data will be imported depends on the content of decisive columns, so at least one must be selected.
  • Please select the position in the file   = The position in the file must be given if the data for a column should be taken from the file.
  • Please select at least one column for comparison   = For all merge types other than insert columns for comparison with data in the database are needed.
  • From file or For all   = For every you have to decide whether the data are taken from the file or a value is entered for all
  • Please select a value from the list   = You have to select a value from the provided list
  • Please enter a value   = You have to enter a value used for all datasets

The handling of the columns in described in the chapter columns.

Testing

- To test if all requirements for the import are met use the Testing step. You can use a certain line in the file for your test and then click on the Test data in line:  button. If there are still unmet requirements, these will be listed in a window as shown below.

If finally all requirements are met, the testing function will try to write the data into the database and display any errors that occurred as shown below. All datasets marked with a red background, produced some error.  

To see the list of all errors, double click in the error list window in the header line (see below).

If finally no errors are left, your data are ready for import. The colors in the table nodes in the tree indicate the handling of the datasets:

  • INSERT
  • MERGE
  • UPDATE,
  • No difference
  • Attach
  • No data

The colors of the table columns indicate whether a column is decisive , a key column or an attachment column .  

If you suspect, that the import file contains data already present in the database, you may test this and extract only the missing lines in a new file. Choose the attachment column (see chapter Attaching data) and click on the button Check for already present data. The data already present in the database will be marked red (see below). Click on the button Save missing data as text file to store the data not present in the database in a new file for the import. The import of agents contains the option Use default duplicate check for AgentName that is selected by default. To ensure the employment of this option the column AgentName must be filled according to the generation of the name by the insert trigger of the table Agent (InheritedNamePrefix + ' ' + Inheritedname + ', ' + GivenName  + ' ' + GivenNamePostfix + ', ' + InheritedNamePostfix + ', ' + AgentTitle - for details, see the documentation of the database).

If you happen to get a file with a content as shown below, you may have seleted the wrong encoding or the encoding is incompatible. Please try to save the original file as UTF8 and select this encoding for the import. 

Import

- With the last step you can finally start to import the data into the database. If you want to repeat the import with the same settings and data of the same structure, you can save a schema of the current settings (see below). You optionally can include a description of your schema and with the button you can generate a file containing only the description.


Schedule for import of tab-separated text files into DiversityAgents

  • Target within DiversityAgents: Agent
  • Database version: 02.01.13
  • Schedule version: 1
  • Use default duplicate check:
  • Lines: 2 - 7
  • First line contains column definition:
  • Encoding: UTF8
  • Language: US

Lines that could not be imported will be marked with a red background while imported lines are marked green (see below).

If you want to save lines that produce errors during the import in a separate file, use the Save failed lines option. The protocol of the import will contain all settings according to the used schema and an overview containing the number of inserted, updated, unchanged and failed lines (see below).

Description

- A description of the schema may be included in the schema itself or with a click on the Import button generated as a separate file. This file will be located in a separate directory Description to avoid confusion with import schemas. An example for a description file is shown below, containing common settings, the treatment of the file columns and interface settings as defined in the schema.