Sunteți pe pagina 1din 61

UNCLASSIFIED

Hootenanny - User Interface Guide


v0.2.40, May 25, 2018

Prepared For:

National Geospatial Intelligence Agency

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED ii

Hootenanny was developed at the National Geospatial-Intelligence Agency (NGA) in collaboration with DigitalGlobe. The govern-
ment has ’unlimited rights’ and is releasing this software to increase the impact of government instruments by providing developers
with the opportunity to take things in new directions. The software use, modification, and distribution rights are stipulated within
the GNU General Public License v3.0.
All pull requests contributions to this project will be released under the GNU General Public License 3.0.
Software source code previously released under an open source license and then modified by NGA staff is considered a "joint
work" (see 17 USC 101); it is partially copyrighted, partially public domain, and as a whole is protected by the copyrights of the
non-government authors and must be released according to the terms of the original open source license.
Licensed under the GNU General Public License v3.0 (the "License"); you may not use this file except in compliance with the
License. You may obtain a copy of the License at http://www.gnu.org/copyleft/gpl.html.
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language
governing permissions and limitations under the License.
Imagery provided by permission from DigitalGlobe.
Users are responsible for complying with terms of use for data and imagery they use in conjunction with Hootenanny. Specifically,
they must properly protect and comply with all legal, copyright, and licensing terms.
This document contains domestic imagery, which has been included consistent with applicable laws, directives and policies. Handle
in accordance with recipients intelligence oversight and/or information handling procedures.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED iii

Contents

1 Hootenanny User Interface 1


1.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Accessing Hootenanny . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3 Adding Layers to the Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.4 Data display in Hootenanny using Mapnik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.5 Editing Features in Hootenanny . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.5.1 Modifying Layer Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.5.2 Modifying Layer Geometry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.6 Adding New Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.6.1 Copying Features/Tags in Hootenanny . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Copying Features/Tags Within a Single Layer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Copying Tags Between Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.7 Hootenanny Map Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.7.1 Map Navigation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.7.2 Background Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.7.3 Image Carousel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.7.4 Map Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Data Layers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Fill Areas and Line Width . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Map Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.7.5 Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Measurement Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Clip Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.7.6 Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.8 Hootenanny Shortcuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.9 Conflation Workflows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.10 Conflation Info and Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.11 Types of Conflation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
1.11.1 Reference Conflation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
1.11.2 Average Conflation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
1.11.3 Cookie Cutter & Horizontal Conflation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
1.11.4 Advanced Conflation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.12 Reviewing Conflicts in Hootenanny . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
1.12.1 Review Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.12.2 Show Review Relations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED iv

1.12.3 Toggle Conflated Layer with Inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26


1.12.4 Map-in-Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
1.12.5 Multi-user Conflict Reviewing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
1.12.6 Bookmark Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
1.13 Conflating OSM API Database Data (MapEdit, etc.) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
1.14 Conflation Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
1.14.1 Reference Conflation: Washington DC GIS Roads against Census Tiger data. . . . . . . . . . . . . . . . . 31
1.14.2 Cookie Cutter and Horizontal Conflation: Conflating Boulder, CO City Streets against OpenStreetMap data. 33
1.14.3 POI to POI conflation: Washington, D.C. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
1.14.4 Advanced Conflation Example: Generic River Conflation . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
1.14.5 Export Conflated Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Export Translation Schema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Export Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Export File Output Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
1.15 Manage Hootenanny . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
1.15.1 Datasets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Data Ingest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Add Reference / Secondary Layer to Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Adding Folders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Export Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Other Dataset Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
1.15.2 Translation Assistant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
1.15.3 Notional Custom Translation Example: Washington, D.C. Street Centerlines . . . . . . . . . . . . . . . . 48
1.15.4 Translations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
1.15.5 WFS Exports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
1.15.6 Manage Basemaps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Hoot Log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Review Bookmarks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
1.16 About Hootenanny . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

2 Appendix: Hootenanny Advanced Parameters 55


2.1 Cleaning Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
2.2 Rubber Sheeting Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
2.3 General Conflation Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
2.4 Road Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
2.5 Building Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
2.6 POI Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
2.7 Waterway Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 1

1 Hootenanny User Interface

1.1 Background

Hootenanny deploys with an interactive web-based user interface adapted from the MapBox iD Editor. This offers several benefits
including its open license that allows users to customize and add functionality, along with an in-depth editing capability that was
originally designed for interactive editing of OSM features. Hootenanny is designed to facilitate automated and semi-automated
conflation of critical Foundation GEOINT features in the topographic domain, namely roads (polylines), buildings (polygons), and
points-of-interest (POIs) (points). Conflation happens at the dataset level, where the user’s workflow determines the best reference
dataset and source content, geometry and attributes, to transfer to the output map. The input data must be normalized to allow
processing and matching of features and attributes from different schemas. Hootenanny internal processing leverages the key value
pair structure of OpenStreetMap (OSM) for improved utility and applicability to broader user groups, e.g. normalized attributes
can be used to aid in feature matching and OSM’s free tagging system allows the map to include an unlimited number of attributes
describing each feature. Depending on the data and selected conflation options, the process of resolving ambiguous features is
handled by an interactive conflict resolution workflow. Hootenanny cues up conflicts and drives the user to each conflict to make
the appropriate geometry or attribute fix. Additionally, the user has the option to edit other features they may come across that need
correcting while working through the conflict cue. For users that do not want to perform this manual editing or want to accept the
automated solution in full, there is the option to accept all or discard all conflicts. This becomes a user choice and ultimately a risk
assessment between accepting geometry and attribute errors resulting from automated algorithms versus the use purpose of the end
product.
The general case of the Hootenanny conflation workflow is shown in Figure 1 and depicts the high-level steps necessary to conflate
data and generate an output map in Hootenanny. It is important for the user to understand these functions as each have implications
on the conflated results. The squares represent a specific conflation task, while the oval canisters represent a database function. The
workflow is described as follows:

Figure 1: Hootenanny Conflation Workflow.

Hootenanny currently supports the conflation of POIs, Building polygons, Transportation polylines (highways, cart tracks, trails,
bridges, and tunnels), and experimentally, Waterway polylines (hydrologic features such as rivers, streams, drainage, and ditches).
When conflating these features, it is important to note that conflation occurs between similar feature types (e.g. POI to POI,
Building to Building, Transportation polyline to Transportation polyline, etc.) but not across feature domains (POI to Polygon, POI
to Polyline, etc.).
This guide is intended as a general purpose reference to understand various components of the software functionality and provide
simple use cases that demonstrate how to leverage these capabilities using publicly available datasets. The document is broken down
into sections by application functionality such as adding new layers, editing map data, translation between different application
schemas and performing conflation using reference and non-reference datasets. For background on the project history, command
line interface, javascript api, and other technical details please refer to the Hootenanny User Guide.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 2

1.2 Accessing Hootenanny

Hootenanny can be accessed from a web browser using the standard URL http://(your_servername):port/hootenanny-id/. The current
version of Hootenanny iD is only supported in Chrome (recommended) and/or Chromium.

Figure 2: Hootenanny User Interface Layout. A: Hootenanny version info (click on Hootenanny). B: Manage/Return to Map toggle.
C: Map tools for measuring, cropping, and editing features. D: Overview map available using /. E: Map navigation and background
layer configuration tool bar (DigitalGlobe Global Basemap selected as background layer). F: Add Reference Dataset button. G:
Add Secondary Dataset button. H: Layer directory structure with scrolling and resize options. I: Recently Used Layers dropdown
lists most recent layers accessed. J: Layer color picker. K Add layer button (layer must be selected i.e. highlighted in yellow to
add to map). L: Sidebar resizing. M: Hoot scale bar (meters or imperial). N: WGS84 degrees, minutes, seconds. O: Map View.
Basemap Imagery is DigitalGlobe GlobalBasemap (GBM).

Note: Some screenshots may not reflect the latest version of Hootenanny UI.

Important
Drop-down menus in iD Editor can also act as a filter on the data. If something is typed into the input box, the drop down
will only show the user matching values if clicking in the input box. If the user clicks on the down arrow, all options will be
shown.

1.3 Adding Layers to the Map

During conflation, source datasets are merged based on user-specified conflation parameters to create an output layer that is ulti-
mately superior in terms of complete geometry and attribution. Two datasets are required to perform a conflation; Reference and
Secondary Data. To add a new Reference Dataset to the map, click on the Add Reference Dataset button on the left side. A list of

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 3

available layers will appear in the drop down menu as shown in Figure 3. Note that in order to add a layer it must be imported into
Hootenanny using the workflow described in Section 1.15.1. Layers can also be added directly from the Dataset tab in Manage.
This is described in Section 1.15.1.

Figure 3: Adding Datasets. Click on Add Reference/Secondary Dataset button to display a list of available layers and folders.
Clicking on the folder icon e.g. dc, expands the contents showing all layers and subfolders. In order to add a layer to the map it
must be selected (highlighted in yellow). To modify the layer color click on the palette or select OSM symbology then add to map.
Recently used layers can be added using the dropdown menu shown. The size of the panel can be expanded to increase/decrease the
width of the panel by dragging the sidebar (L in Figure 2) to the desired size.

Figure 4: Displaying Haiti roads layers in Hootenanny. The datasets shown are extracted OSM highway data (pink) and MGCP data
(yellow); DigitalGlobe GlobalBasemap (GBM).

To zoom to the layer extent simply right-click on the layer and click on the Zoom to Layer button that appears on the layer name.
This is useful when panning or zooming outside of the viewable extent or scale of the data.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 4

Figure 5: Zooming to Layer extent. Right click on the layer name and select zoom to layer.

1.4 Data display in Hootenanny using Mapnik

Displaying a layer that has a dense feature count or large extent can be a challenge within Hootenanny due to the resources required
to render the features on the map. To better support this constraint, we have integrated Mapnik, an open source toolkit for rendering
map data. Mapnik is preconfigured during install and will run as a parallel node-mapnik server rendering data dynamically based
on the user’s layer color selection. Note that although data may be rendered on the map, it does not become selectable i.e. to edit or
display tags, until the user zooms to an appropriate zoom level (data dependent).

Figure 6: Mapnik rendering with warning message indicating features not editable at current zoom level. Washington, D.C. Street
Centerline data downloaded from DCGIS Open Data’s data catalog. DigitalGlobe GBM basemap.

1.5 Editing Features in Hootenanny

Similar to editing data in OpenStreetMap.org, users can select any point, line or polygon feature and modify both the geometry and
attribution displayed. To aid the user during the editing process, Hootenanny provides the additional functionality of allowing users
to toggle between different display tag schemas (OSM, TDS 6.1/4.0, and MGCP) by changing the Filter By Type drop down to the
desired tag format. This does not modify the underlying data but merely changes the displayed tag schema in the left panel.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 5

Figure 7: The Filter By Type dropdown menu that allows users to select a desired tag schema e.g. TDS, OSM, MCCP.

1.5.1 Modifying Layer Attributes

When a feature has been selected (or a new one has been added), it is possible to modify both its geometry (e.g. moving a point,
adding vertices, modifying the shape of a polygon, etc..) and the associated attribute values. First it’s important to note that each
tag schema maintains it’s own set of default presets. For example, clicking on the Secondary Road icon using the OSM schema
displays a list of suggested presets based on the schema and element type (poi, line, area). If a type does not appear listed, type the
name (e.g. Culvert) in the Search window that appears when you click on the icon. To learn more about a tag such as Secondary
Road, click on the i button next to the preset and an image will pop-up as shown below with a link to the OpenStreetMap Wiki
page for that feature. Values for each field can be edited by clicking in each attribute and either typing or selecting from a set of
pre-populated values. Note that both OSM and TDS schemas will only support a set of limited values for certain fields so it’s best
to consult domain subject matter experts when modifying.

Figure 8: Click on the info i to bring up more information about a preset.

The All Tags section shown below contains all of the feature tags for a layer that have been translated from their native data structure
to Hootenanny during import. If an expected tag does not appear, it might be a good time to revisit the translation steps described in
Section 1.15.2, Section 1.15.4 or review the original source data. New fields can be added by clicking on the Add Field drop down
menu and selecting an appropriate value. Additional tags can be added by clicking on the + button at the bottom of the All tags
shown below. To delete or display additional info about a tag, click on either the trash can or info icons that appear next to each tag.
Note that any changes will not be final to a layer until the user clicks on Save to commit the edits to the Hootenanny database. For
OSM tags, users can check the Sort A-Z box to sort tags in alphabetical order.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 6

Figure 9: Displaying all OSM feature tags in Hootenanny. Note check boxes are shown for tags that a user might copy/paste into a
matching feature.

Note
You can check all/none tags for a selected feature by clicking on the bold check that appears just above the "All Tags" table.

1.5.2 Modifying Layer Geometry

To modify the feature geometry, click on the feature to expose the editing palette that pertains to the particular selected feature. Note
that each unique geometry type and shape present their own options that may not display for other features. For instance, selecting
a linear feature exposes editing options to straighten or change the directionality whereas clicking on a feature that traces a square,
rectangle or circular path exposes options to make the feature a square or circle. Editing options include adding additional nodes by
double clicking on a line segment, moving a node to manually modify the shape or path of a line or polygon, moving a point, and
deleting features. For a list of shortcut keys to each operation, see short-cuts.

Figure 10: Editing layer geometry in Hootenanny. Port Au Prince, Haiti; OSM Highway data (pink) selected and geometry editing
palette options display; DigitalGlobe GlobalBasemap (GBM).

In order to save any edits applied to a layer click on the Save button displayed on top in the map view or to revert to a previous edit.
Save will commit any edits on a particular layer to the hoot database where as the Undo/Redo buttons will step back/forward through
any modifications applied to either that layer’s geometry or attribution. The number displayed next to the Save button indicates the
number of edits that will be committed to the database for a given session.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 7

Figure 11: Saving edits in Hootenanny. The user applied the editing option to square the corners of line feature to expose the Save
button above. The number of edits made before committing (2 in this example) is displayed in addition to options for undo/redo
changes. Port Au Prince, Haiti; OSM Highway data (pink); DigitalGlobe GlobalBasemap (GBM).

1.6 Adding New Features

It is also possible to create new features for a given layer in Hootenanny iD but any new feature added must be done with at least
one layer present. Note that any new features added without an associated layer cannot be saved. The ability to create new features
within the GUI is a key component of the OpenStreetMap version of iD Editor and additional background and editing workflows
can be found online via OpenStreetMap-iD’s help menu. A brief background is provided here for general user orientation.
To add a new point, click on the Point button appearing in the Map Viewer or use the 1 shortcut key. Points can be used to represent
features such as shops, restaurants, parks and monuments, etc. They mark a specific location and describe the feature based on
the OSM/TDS tag relationship. Once a new point is added to the map, a panel will appear on the map prompting you to select
an appropriate feature type (park, cafe, etc) and any associated tags. Note that even though OSM values are presented, the data is
stored on the database using the TDS tag equivalent. The next time it is edited within Hootenanny it will display the values using
the english translated LTDS schema.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 8

Figure 12: Adding a new point in Hootenanny. In this example a new Point is added to the Haiti OSM roads data indicating that the
feature represents a Hospital Grounds amenity=hospital. DigitalGlobe GlobalBasemap (GBM).

To add a new linear feature, click on the Line button or use the 2 shortcut key and begin digitizing on the map. Click on a single
location to begin the linear feature and then continue clicking until feature has been completed. Double-click to complete the
process and edit any attribution as needed. Repeat process for a new Area feature (shortcut = 3). Click Save to save all edits or step
back/forward using the undo/redo buttons as needed.

Note
Line snapping is disabled by default. To enable it click on the Map Data button and check the enable line snap option.

1.6.1 Copying Features/Tags in Hootenanny

In certain circumstances it may be useful to utilize copy/paste functionality when editing layers and addressing conflict reviews
within Hootenanny. For example, if users need to create multiple copies of a selected feature (or set of features) within the same
map layer (e.g. foot path, bridge, secondary road, POI, etc. . . ) or they would like to copy tags from one feature to another similar
feature, the following workflows can be used.

Note
Currently users can only copy/paste geometry and tags of any feature(s) within a single "active" layer or copy selected tags from
a feature(s) and either overwrite or merge them with the tags from selected feature(s) in either layer. It is currently not possible
to copy/paste a feature from the Reference Dataset to the Secondary Dataset (or vice-versa) manually and if attempted the
application will enter a idle state requiring refresh.

Copying Features/Tags Within a Single Layer

To copy a feature(s) within a single layer, select the feature or set of features that you wish to copy using the left-mouse button (for
multiple features press the shift key during selection). Use the Ctrl + c to copy the selected feature(s) and then Ctrl + v to
display a duplicate feature(s) that can be placed anywhere on the map.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 9

Figure 13: Copying Feature Geometry/Tags within a Layer. The selected item, a Monument named Major General Rochambeau is
copied and pasted. Note that the name tag is not copied to the newly created feature since it is assumed to be unique.

Note
If only specific tags are needed to manually copy from one feature to another within a single layer do not use Ctrl + c but instead
check the box next to each tag in the All Tags list and follow the steps described below.

Copying Tags Between Features

When reviewing conflicts or editing features it is often useful to be able to copy tags from a selected feature and either append
or overwrite the tags of another feature that can be within the same layer or in a different layer. For example, when conflating
two layers a selected set of features are flagged for the user to review and determine whether any further action is required. This
is explained using the following POI scenario involving OSM and MGCP place name features in the Democratic Republic of the
Congo (2°58’40.82" N 22°20’45.08" E).
1) Select a source point (orange highlighted marker) and check the boxes next to each tag in the All Tags list that you wish to copy
to the other feature.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 10

Figure 14: List of tags from source feature with selected tags checked. Data sources are OSM (pink) and MGCP (orange) POI data
in the Democratic Republic of the Congo (2°58’40.82" N 22°20’45.08" E). DigitalGlobe GlobalBasemap (GBM).

2) Select a target point (pink highlighted marker) and expand the All Tags list to display the existing tags. Note that the name in this
selected OSM POI is "Badjoki" whereas in the MGCP feature it is "Bodjoki".

Figure 15: List of tags in selected target POI (orange highlighted marker). Data sources are OSM (pink) and MGCP (orange) POI
data in the Democratic Republic of the Congo (2°58’40.82" N 22°20’45.08" E). DigitalGlobe GlobalBasemap (GBM).

3) To append the copied tags, select the OSM POI (pink highlighted marker) and hit Ctrl + Alt + v. Note that this action
will produce a semicolon delimited list for any existing value e.g. name, source along with any new tags added from the source

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 11

POI e.g. landuse =built_up_area; place:importance=fifth; place=village, etc. To commit changes click the
Save button or to undo click the undo button.

Figure 16: Copying tags using append (Ctrl + Alt + v). Data sources are OSM (pink) and MGCP (orange) POI data in the
Democratic Republic of the Congo (2°58’40.82" N 22°20’45.08" E). DigitalGlobe GlobalBasemap (GBM). Red boxes appear over
the modified tags.

4) To overwrite the copied tags in the target feature, select the OSM POI feature and Ctrl + Shift + v. Note that this action
will overwrite any existing tag values.

Figure 17: Copying tags using overwrite (Ctrl + Shift + v). Data sources are OSM (pink) and MGCP (orange) POI data in
the Democratic Republic of the Congo (2°58’40.82" N 22°20’45.08" E). DigitalGlobe GlobalBasemap (GBM). Red boxes appear
over the modified tags.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 12

1.7 Hootenanny Map Tools

The Hootenanny map portion of the interface mirrors the OpenStreetMap iD editor OpenStreetMap-iD with additional customization
to support conflation workflows. Map navigation options appear in the upper right portion of the map viewer noted by B in figure
Figure 2. To view a maptip and/or shortcut, hover the cursor over each button and information concerning the functionality of a
particular feature will appear.

1.7.1 Map Navigation

Clicking on either + or - buttons will zoom the user one level higher/lower in the map. Alternatively users can use the middle scroll
wheel of their mouse to zoom up or down levels. To open the map to your current location, click on the arrow button noting that
some browser security settings do not allow users to share their location information.

1.7.2 Background Settings

Clicking on the Background Settings button (shortcut key = b) opens up a panel displaying different background layer display
options. To set the brightness for the background layer, click on the palette next to Background for 100%, 75%, 50%, or 25%
brightness. Users can select from a range of publicly available basemaps such as Bing aerial imagery, MapQuest Open Aerial,
Mapbox Satellite, OpenStreetMap, or create a custom basemap URL using the following URL template shown below. Any user
uploaded Basemap images will appear in this panel. For those users with access to DigitalGlobe EV Web Hosting Service (EVWHS),
the GBM/EGD imagery service can be selected using different imagery profiles e.g. Most Recent, Most Aesthetic Color, Least Cloud
Cover. To get register for an account please visit: https://evwhs.digitalglobe.com/myDigitalGlobeAdmin/RegistrationRequest.html

Figure 18: DigitalGlobe GBM/EGD display options.

Below is a URL template for creating your own basemap URL service. Click on the Custom option and enter a basemap url with
the coordinates and zoom level similar to the example shown below. The x and y coords represent the center point and the zoom
represents the zoom level. Creating a custom basemap tiled service using a georeferenced geotif/tif is described in Manage Basemap.
http://(hosted_imagery_service_name)/OSM/{zoom}/{x}/{y}.png

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 13

Figure 19: Background Settings in Hootenanny with the Custom Basemap URL options displayed.

Note
The DigitalGlobe GBM/EGD basemap is not enabled by default due to user access restrictions. If an account has been set up
with a valid UUID, you will need to edit the dgservices.js file located in $TOMCAT8_HOME/webapps/hootenanny-id/js/id/services/
adding in your UUID account credentials for the egd/gbm_connectId = enteruuidhere parameters. You will also need to set
dg.enabled = true.

1.7.3 Image Carousel

The image carousel displays all of the available images by timestamp and sensor that are in the DigitalGlobe GBM/EGD service if
the service has been enabled. Users can select a particular DigitalGlobe image from the listed sensors/dates displayed in the carousel
by clicking on the Image Carousel button (highlighted in blue below) or typing the c shortcut key.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 14

Figure 20: DigitalGlobe GBM Image Carousel displayed with Washington, D.C. Street Centerline roads on DigitalGlobe Global-
Basemap (GBM) imagery.

Note
The image carousel thumbnails do not appear, only the image acquisition date and sensor type (e.g. WV02, WV01, WV03_VNIR,
etc. . . ).

1.7.4 Map Data

The Map Data options, which can be accessed by clicking on the map data button located above the help menu (shortcut key = F),
allow users to incorporate different overlay layers like the mapillary and traffic sign photos, change the default map fill and line
width values, and provides a filtering capability for different map feature types (e.g. Points, Roads, Buildings, etc.).

Figure 21: Map Data options.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 15

Data Layers

Within the Data Layers menu, users can overlay mapillary traffic sign and street view photos. Mapillary is a service for crowd-
sourcing street level photos using smartphones and computer vision. Checking the boxes displays icons representing locations for
crowdsourced street level photos and traffic signals. When a user clicks on each icon, a photo will appear in the lower left or right
corner of the map providing the visual representation from vantage point represented.

Figure 22: Mapillary traffic sign and street view photos displayed in Hootenanny/iD Editor.

It is also possible to overlay a local GPX file (GPS generated dataset) using the file browser to add the dataset into the map. Although
these features found in Data Layers are not the primary tools used when conflating data, they can utilized since they are inherited
from the base iD Editor version that Hootenanny has been developed from.

Fill Areas and Line Width

Fill Areas allows users to select from three different options for displaying relevant vector data. The first option is No Fill or
Wireframe (shortcut key = W) which makes it easier to display background imagery. Partial Fill displays fill areas around their
inner edges only. Full Fill displays features with complete fill turned. To make the lines from map layers appear thicker/thinner,
users can unchecking the Use Default Value appearing under the Line Width option and nudge the width value up/down accordingly.

Map Features

To filter out different features of interest, simply check or uncheck the boxes next to each associated map feature e.g. Points, Major
Roads, Buildings, etc. Note that this will not impact conflation since this only impacts the display of features on the map, not the
actual data contained within a given layer. We have also provided some additional enhancements to aid in the editing of feature
geometry by adding two additional options; Highlight Edited Layer and Enable Line Snap. Highlight Edited Layer turns on a gold
halo around any feature geometry that is actively being edited on the map. Once the Save button is clicked, the highlighting will
dissappear as it is only intended to show active edits, not saved changes to a layer. Finally the enable line snap option is provided
to set the default behavior when adding new line/area geometry onto the map. When enable line snap is checked, this feature is
enabled and any new line segment that is added close to an existing feature geometry will be snapped to that feature.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 16

Figure 23: Map features and edited layer highlighting. When Highlight Edited Layer is checked, a gold halo appears around the
edited feature geometry until the changes are saved and committed to the Hootenanny database.

1.7.5 Tools

The Tools button provides users with a quick set of customized tools for measuring length/area and cropping layers to smaller
subsets using either the visual extent or user defined bounding box. To access both options click on the Tools button and select
either Measurement or Clip Tools.

Figure 24: Tools button shown in Hoot UI.

Measurement Tools

There are two measurement tools currently provided; Measure linear distance or length of an object and measure the area of an
object. To measure the length of an object on the map, click on the Tools button and select Measurement Tools | Measure Length.
The cursor will then change into crosshairs indicating that you are able to measure a feature by drawing a line. To continue a drawing,
left click to add nodes as needed. To complete the measurement double-click. To measure an area/perimeter of a feature, select the
Measure Area option and click on the screen to add nodes and double click to complete the measurement. The measurement values
will appear with the perimeter value listed above the area. This value will remain on the map until the user clicks the Clear button

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 17

appearing in the place of Tools once a new measurement has been added. Users can zoom and pan on the map while capturing a
measurement.

Figure 25: Measuring area in Hootenanny.

Clip Tools

The Clip Dataset tool allows users to crop existing datasets using a custom bounding box or the current visual extent of the map.
To access this tool click on the Tools | Clip Tools | Clip Dataset button which will open a dialog box that supports three mechanisms
to define a clip bounding box. First the bounding box can be defined by manually entering coordinate values in the displayed box.
Secondly, the user can click on Clip to Bounding Box and drag a box over a specific AOI to populate the clip region bounding box
coordinates. Third, users can select User Visual Extent and pass in the current map visual extent as the clip region. To define a
bounding box on the map, single left-click on any location on the map within the source dataset AOI and drag window to the desired
clip size and direction.
Once a bounding box (or visual extent) has been selected, additional options to specify an output name and path of the clipped
dataset will appear. After the job has completed it will show up in the list of available datasets and specified output folder.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 18

Figure 26: Clipping a layer using a defined bounding box. The imagery basemap displayed is the DigitalGlobe GBM service.

1.7.6 Help

To access the help for Hootenanny, click on the bookmark icon below the Background Settings button or type the h shortcut key.
Each section provides relevant background on different functionality found within the Hootenanny UI. Users can navigate between
sections by clicking on the section title e.g. Adding Layers and scrolling through the contents.

Figure 27: Accessing the Hootenanny Help Menu.

1.8 Hootenanny Shortcuts

The following table provides all of the available shortcut keys for accessing Hootenanny functionality.

Shortcut Action
1 Create new point feature

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 19

2 Create new line feature


3 Create new area feature
6 Measure length
7 Measure area
8 Clip Dataset(s)
Ctrl + b Bookmark current review
Ctrl + c Copies feature geometry and tags
Ctrl + s Save
Ctrl + v Pastes selected feature geometry/tags
Ctrl + Alt + v Pastes selected tags using the append option
Ctrl + Shift + v Pastes selected tags using the overwrite option
Ctrl + y Redo
Ctrl + z Undo
Ctrl + Backspace Deletes object permanently
Shift + Left mouse click Selects multiple features geometry/tags within layer
Shift + r Shows review relations for a selected feature within a layer
(in review mode)
Shift + t Switches between layers during post-conflation conflict
review
Alt + i Open Image Carousel
Alt + n Toggles layer visibility on/off
+ Zoom in one level
- Zoom out one level
/ Toggles display of overview map and map-in-map results (in
review mode)
↓,↑,←,→ Pan map in direction
a Continue drawing a line at the selected node
b Display background layer switcher
c Open image carousel
d Disconnect lines/areas from selected node
f Displays map data settings
h Display in-editor help/documentation
i Display feature info such as length and centroid coords
m Move selected feature or Merge (for POIs only in review
mode)
n Advances to next review (in review mode)
o Make feature a circle (must be poly or closed loop line)
p Steps back to previous review (in review mode)
r Rotate object around center or resolved (in review mode)
s Straighten a line or square corner of area
x Split line into two at selected node
v Make line go in opposite direction
w Toggles wireframe vector display on/off
Enter/Esc Stops drawing feature
F11 Sets browser to full screen

1.9 Conflation Workflows

When conflating data in Hootenanny, users must have both a Reference Dataset and a Secondary Dataset loaded in the map. Once
the layers have been selected, the Conflate button will appear with various options that can be selected by the user. The following
section(s) highlight those options as well as explore different types of conflation strategies using publicly available datasets. When
users are ready to conflate they will need to populate the following fields.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 20

Figure 28: Conflation options displayed in lower left panel. In this example, a reference conflation between OSM roads (pink) and
MGCP roads (orange) in Port Au Prince, Haiti is displayed on DigitalGlobe GlobalBasemap (GBM).

Save As: The name you would like to save the merged layer as. By default, a file name Merged_* is populated in this field but this
can be overwritten manually by entering a specific layer name. If no value is provided a default name will be provided.
Path: The existing folder path where you want to save the conflated output. To create a new folder to save the output enter that in
the New Folder Name field.
New Folder Name (optional): The name of any new folder you want to save the output to. Note that it will be created at the folder
level specified in the Path. Leave blank if no new folder is required.
Type: This is the type of conflation you want to run. Note that there are four conflation options available: Reference Conflation,
Average Conflation, Cookie Cutter & Horizontal Conflation and Advanced Conflation.
Attribute Reference Layer: By default, the Reference layer contains both the geometry and attribution that dictates the merged
features. In many cases, however, reference geometry and attribution exists across multiple layers and therefore we provide the
ability to utilize the Secondary layer as the reference attribution for cases where the secondary layer is determined to contain the
most accurate tag information while the reference layer contains the most accurate geometry.
Collect Stats?: True/False. Allows users to collect statistics about the performance of a conflation job such as the counts of pois,
highways, buildings or the percentage of merged/reviewed features and display them underneath the layer as shown in Figure 29.
To enable this switch the drop-down from false to true. To view the stats collected, click on the i next to the layer name and expand
the Statistics as shown below.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 21

Figure 29: Hootenanny merged layer statistics. To view click on the i highlighted in the red box and expand the relevant sections
e.g. Parameters, Options, Statistics, Statistics (Raw). Note that the sidebar is expanded to view the full table.

1.10 Conflation Info and Statistics

Hootenanny provides users with the ability to generate statistics and display information pertaining to each conflation and associated
input layers. Statistics are collected when users set the collect stats option to true for a given conflation as described here. If collect
stats = false, Hootenanny will display only the conflation parameters i.e. the Reference/Secondary layer names and Conflation Type,
and Options, i.e. what args were included in the conflation job, for the merged layer after the conflation job has completed. When
the Collect Stats option is set to true, Hootenanny will generate statistics such as the counts for all nodes, ways and relations in each
of the input and output layers (similarly for counts of pois, roads, and buildings), counts of unmatched, merged, and review features
as well as percentages for each. These formatted statistics are displayed in the Statistics section of the layer info shown in Figure 29.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 22

In addition to these stats, users can also view the raw statistics that Hootenanny collects when this option has been enabled. These
values appear as comma separated lists (e.g. Total Conflatable Features = 374,227,0) pertaining to the Reference Layer, Secondary
Layer, and Merged Output Layer next to each statistic parameter.

1.11 Types of Conflation

1.11.1 Reference Conflation

Reference conflation assumes that the Reference Dataset contains the most accurate geometry/tag info with the Secondary Dataset
containing the non-authoritative features to merge. By default, Hootenanny assumes that the Reference Dataset contains the refer-
ence tag values but users have the option to set this to the secondary dataset by selecting that layer in the Attribute Reference Layer
dropdown list.
When using Reference Conflation the output is assumed to contain the following:
1) Matched feature geometry/tags from the Secondary Dataset into the Reference Dataset.
2) Unmatched feature geometry/tags from both the Reference and Secondary Datasets.

Note
If a required tag has a null or missing value, a default value will get assigned based on the output specification for that field and
data type.

1.11.2 Average Conflation

Average conflation maintains the general shape of the two inputs, produces close to an exact average, and avoids large data pertur-
bations. Using the road data example, the operator starts by averaging the first two nodes for a road, then moves along each segment
or way, averaging nodes together and at the end of the feature averages the final two nodes. To determine the average value for each
way, it first calculates the maximal nearest subline, assigns a weight based on the circular error (lowest error, highest weight and
vice-versa), and returns the weighted average of the two geometries.

Note
Average conflation will modify the merged layer geometry for any matching features. For this reason caution should be applied
and the output should be verified by a qualified data steward for any inaccurate intersections generated in the process.

1.11.3 Cookie Cutter & Horizontal Conflation

Cookie Cutter & Horizontal Conflation is intended for use cases where a lower quality dataset such as a rural road network generated
from a low resolution map needs to be conflated with a more accurate or precise dataset such as a urban centerline layer digitized
from accurate high resolution imagery. In this scenario, the higher quality data (typically representing an urban area a city core)
is buffered and cut, then stitched into the coarse resolution road layer using edge matching routines to create blend of the two
layers. To walk through a sample Horizontal Conflation use case see Section 1.14.2. Additional background on Cookie Cutter and
Horizontal conflation can also be found in the Hootenanny User Guide. When using this method the following settings are applied.

• The bounds of the Reference layer (cookie cut portion) are approximated using an alpha shape (e.g. cookie-cut) that is created by
generating a convex hull around the layer.
• The bounds of the Reference layer are buffered by 1km on each side of the convex hull (2 km distance in total). This improves
the chances of merging seams between the two layers. Note that this operation works better at the city scale then at a regional or
larger scale.
• The Secondary layer (dough portion) is cut by the alpha shape generated from the Reference layer and matched to road features
within the Secondary layer that fall within the buffered retion.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 23

Figure 30: Example of alpha shape generated with a 1km buffer around a "contrived" urban area (not an actual physical location).
The blue line represents the convex hull and the red the alpha shape with the applied -1 km buffer.

Note
In the user interface there is no way to tune or modify the generated generate-alpha-shape. You can however configure the alpha-
value from the command line (see generate-alpha-shape in User Guide). In either case, the generated generate-alpha-shape will
always approximate the bounds of the data regardless of shape of the urban area.

1.11.4 Advanced Conflation

Advanced Conflation allows users to customize a particular conflation job using a set of exposed advanced options. These are
intended for use cases where there is intimate familiarity with both the configuration parameters and the unique set of conditions
that warrant their use. For example, to modify any of the Cleaning or Rubber Sheeting options when conflating rivers, users can
simply expand the Cleaning Options and Waterway Options panels and modify accordingly. Note that caution should be exercised
when applying these as their use may produce unexpected results.
The advanced parameters are accessed by clicking on the triangle next the Type highlighted in the red box in Figure 31. Background
on each Advanced Conflation option can be found in Section 2.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 24

Figure 31: Advanced Conflation Options. To access the Advanced Conflation Options click on triangle highlighted in the red box
next to the Type.

1.12 Reviewing Conflicts in Hootenanny

When conflating data it is inevitable that conflicts may arise due to the ambiguous relationships between matched features. When
this occurs, reviewable items are flagged and presented to the user in the UI through an iterative review process where further user
is required. This occurance of getting reviews during a conflation is often the result of any of the following circumstances:

• Invalid Input

• Conflicting matches – In the core conflict refers to two matches that cannot be applied to the same map.
• Records that somewhat match, but aren’t clearly a match or miss.

From the UI perspective, the term "Conflict" is used synonymously with "Review" but not all reviews are conflicts. Each type of
data (POI, Buildings, Roads, etc.) when conflated introduce their own unique types of conflicts where the user is advised to take
some action of either merging two POIs together, editing a layer geometry to eliminate any potential conflict or resolve the item
as is to maintain as a separate feature. No single solution can be provided to address a particular conflation conflict but rather it is
up to the user to take the necessary steps based on the review text presented to reduce the likelihood that erroneous data will get
introduced during the conflation process.
During review mode, the user is presented with a pair of features where they must take an appropriate action in order to resolve
the review. Depending on the features involved, a user can decide either to maintain these as separate features (as is) by clicking
Resolved (H), merge them into a single feature (POI 2 POI only) by clicking Merge (E) then Resolved, or modify the feature
geometry manually (see Section 1.5.2). Note with each review there is an accompaning review note (B) that provides a short detail
on the reasons for reviewing the features in question but rarely does this provide enough information to take a specific action. In
depth knowledge of the datasets and coverage area by an appropriate data steward is typically required to provide the necessary
guidance to take an action for a review.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 25

Figure 32: Layout of Review Mode in Hootenanny: A: Overview with map-in-map results; B: Review note and counts; C: Share
Review; D: Hide/Show Table; E: Merge feature (POI only); F: Preview Review; G: Next Review; H: Resolve Review; I: Review
table (Red is Reference, Blue is Secondary); J: Attribute panel showing selected Reference POI tags; K: Highlighted Red/Blue
reviewed POIs. Latvia POI data (OSM and geonames) displayed on DigitalGlobe GBM.

Clicking on any of the highlighted fields in the review table (I) selects the feature (either red/blue) in question and display its attribute
in the left tag panel (item J in Figure 32). Users can toggle the review items table by clicking on the Hide/Show Table button located
in the conflict review bar at the bottom. In order to complete the review process, all reviews must be resolved either by stepping
through each individually or by clicking the Complete Review button to resolve all remaining reviews. After resolving reviews users
can either export the data to the desired output format or add another layer for additional conflation. Note that features displayed in
green represent those which have been merged prior to the review and other colors represent the original input layers.

1.12.1 Review Text

When features are flagged as needing review, a number of different review notes may appear to provide some guidance to the user.
The review notes are general and don’t provide the specific reasons why a pair of features are being reviewed against one another but
do provide some context for understanding why a review may have occurred. For example, the Review Note: The feature pair with
a review score of 0.375 met the review threshold of 0.25 provides the review score and the threshold value which could be compared
against other features with similar score and threshold values. Often when conflating POI data, review notes such as Somewhat
similar (200m) - very similar names and generic type, very close together, generic type to place match or Somewhat similar (26m)
- very close together, similar POI type will appear. Those provide an indication of the reasons for being flagged and the distance
between the POIs in the particular review. Any specific questions regarding the reviews and required action can be created as a issue
at www.github.com/ngageoint/hootenanny/issues.

1.12.2 Show Review Relations

When reviewing conflicts, a review is presented to the user with different options depending on the type of feature e.g. if POI they
can merge or resolve, if building/road they can resolve, etc. Reviews occur in a pairwise manner where feature a is reviewed against
feature b but because any member of a review pair can also be involved in reviews against other features, it is important to provide a
mechanism to display these relationships even if conflicts are only resolved between two features per review. In an effort to account
for these one to many relationships between reviewed features, users have the option to show review relations for a given reviewed

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 26

feature by clicking on the feature and then selecting the palette option, Show review relations for this feature (Shortcut: Shift+R). A
line will appear from the feature to all related features with a letter designation depending on the order of the review inside a green
circle. In cases where there are more than 26 related reviews for a given feature, the letter displayed will appear as AA, BB, etc.
Each letter circles can be dragged around using a mouse cursor and clicking on it will open the review associated with that feature
pair in the blue/red table.

Figure 33: The review relations of the selected Latvia Geonames Poi, Gutnebergs Hotel. Clicking on each letter will display the
associated review feature pair/table.

1.12.3 Toggle Conflated Layer with Inputs

When evaluating the conflated output in review mode, it may be useful to toggle between the input dataset view where only the
input layers are shown and the conflated dataset view where both input and merged features are displayed. For example if a user
was trying to make a decision about whether to edit, resolve, or merge a set of reviewed/conflated features, they would likely need
to know how the data looked prior to conflation. To provide some additional context of the pre/post conflation results during review
mode, click on the "Toggle Conflated Layer" icon (shortcut = T) as shown in Figure 34 when any feature has been selected. Note
that you will need to toggle back to the merged layer view before advancing to the next review.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 27

Figure 34: Toggling between the conflated layer (B) and input layer view (A) in review mode. DigitalGlobe GBM with Open-
StreetMap data from openstreetmap.org (orange), MGCP data (pink) from GEOINT New Zealand Data Service over Apia, Western
Samoa.

1.12.4 Map-in-Map

In Hootenanny, the concept of Map-in-Map is used here to describe an inset or overview map that contains additional spatial
information relating to the conflation i.e where reviews occur within the AOI. When a conflation job completes and reviews are
generated, users can display an overview map showing colored points representing the location (or centroid of the location) where
unresolved, merged, and currently reviewed features occur for the corresponding AOI. To view this map, press the / key when
reviewing features and the smaller overview map should display a set of points representing the review layer.
Depending on the density of data flagged for review, the features are represented in the following manner: yellow dots corresponding
to the location of unresolved reviews; a single red dot indicating the currently reviewed feature in the user’s session; and green dots
representing any resolved or merged features. This visual aid becomes useful particularly when multiple users are editing the same
layer simultaneously since it provides a map of the spatial distribution of reviews in real or near-real time.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 28

Figure 35: Hootenanny Review mode with Map-in-Map overview displaying unreviewed features (yellow dots), current reviewed
feature (red dots), and resolved features (green dots). In this example, a user is reviewing several POI review conflicts for a conflation
between OpenStreetMap POIs and Geoname POIs within Riga, Latvia (Imagery is DigitalGlobe GBM Basemap).

1.12.5 Multi-user Conflict Reviewing

Hootenanny supports the ability for multiple users to view the same layer containing unresolved reviews. Given the scenario of a
reference conflation between two POI layers resulting in 15K reviews, any user with access to the same Hootenanny instance can
load the merged layer containing the unresolved reviews and take any necessary action to resolve them. To mitigate any toe-stepping
that might occur due to multiple users accessing the same review pair simultaneously, reviews are presented in a randomized order
such that there is a fairly low probability of two users getting the same review at the same time (assuming that the review count is
high and the number of reviewers is low). For those instances where a review is presented to two users simultaneously, the user that
resolves their review first by clicking on the Resolved button will commit the change to the database.

1.12.6 Bookmark Review

When reviewing conflicts it is often useful to collaborate with others to determine the best coarse of action. To this end, users can
bookmark reviews so that they can be reviewed at a later time provided that the review is not resolved or the review layer is not
deleted. To bookmark a review, click on the associated button from the review items tool bar shown in Figure 36.
This will pop-up a dialog box allowing them to provide some details about the review. A second user can access this bookmarked
review from the Manage | Review Bookmarks page and take whatever action is needed.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 29

Figure 36: Bookmark Review. Clicking the Bookmark Review button pops up a dialog box where a user can enter a title, description,
note and email to associate with the review. The bookmark is then accessed in the Manage | Review Bookmarks page.

1.13 Conflating OSM API Database Data (MapEdit, etc.)

Important
This section describes conflating data sourced from an OSM API database. This feature is currently in the prototype phase
and is not recommended to be used with production OSM API databases where data loss/corruption would be a significant
detriment to the applications using the database. At this time, it is recommended to only use this feature with OSM API
test databases. At which time this feature is deemed stable enough to leave the prototype phase, this documentation will
be updated.

Hootenanny uses a custom OSM database schema which differs from the public OSM API database schema used by OpenStreetMap,
MapEdit, etc. Hootenanny’s OSM database schema differs in order to support its primary function, conflation, which has different
needs than the primary function of map editing supported by the public OSM database schema.
Hooteanny supports a conflation workflow where an OSM API database world dataset can be set as the conflation reference layer
and any other Hootenanny dataset can be conflated with that OSM API database data. The resulting conflated dataset can then be
exported out of Hootenanny and back into the OSM API database.
A pre-requisite for conflating OSM API database data is that Hootenanny has been properly configured with a valid OSM API
database connection. Hootenanny supports only a single OSM API database connection at one time. By default, Hootenanny is
configured only with an empty test OSM API database which has limited utility outside of application testing. For details on how
to configure Hootenanny to conflate your OSM API database data, have you system administrator follow the instructions in the
"Configuring OSM API Database Conflation" section of the Hootenanny Installation Guide. The documentation also describes how
to disable OSM API database conflation completely, if that is desired.
After Hootenanny has been configured with an OSM API database connection, follow these steps to conflate data from an OSM
API database:

• When an OSM API database is configured with Hootenanny, the first layer listed in the iD Editor layers list will always be named
"OSM_API_DB_<database-name>". Select this layer as the reference layer for your conflation job. You will not see the data
from the OSM API database displayed on the iD Editor map due to a limitation described later in this section.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 30

• Select any other layer stored within Hootenanny as the secondary layer for the conflation job. You should first verify that your
OSM API database contains data within the AOI of your selected secondary dataset, or no data conflation will actually occur.
• Conflate the two layers.
• Resolve all review conflicts.

When you are ready to export your conflated layer back into your OSM API database:

• Open the Hootenanny dataset export dialog either immediately after conflation completes from the left hand pane or by opening
it from the "Manage"-→"Datasets" tab.

• Select "OSM API Database" as the export file type. NOTE: The translation selection is ignored, since the output will be OSM
data.
• Click the "Export" button.

Hootenanny will export an OSM changeset to the target OSM API database with the geospatial bounds of the original conflation
job that is the difference between the data originally exported from the OSM API database for conflation and the resulting conflated
data.

Important
If any changeset with an overlapping geospatial bounds is written to the target OSM API database after the conflation job
began which created the conflated dataset stored in Hootenanny’s database, Hootenanny will detect this conflict and not
allow the changeset to be written back into the OSM API database.

When such a conflict occurs, the only recourse is to execute the conflation job again. Given this workflow, its best to find a "sweet
spot" between the size of the OSM API database AOI you are conflating and the editing activity within that AOI. This will help to
avoid conflicts.

Important
Hooteannny writes all OSM API database OSM changesets from a single user account configured as described in the
"Configuring OSM API Database Conflation" section of the Hootenanny Installation Guide, since no user authentication
exists in Hootenanny. Therefore, data edited in an OSM API database by Hootenanny will always show up as being edited
by a single user.

Hootenanny only allows dataset layers which were the result of a conflation job originally run with OSM API database reference
data to be exported back into an OSM API database. Datasets not meeting this qualification will be unavailable for export to an
OSM API database when using the iD Editor export feature.
There is no way to ingest data from an OSM API database into a Hootenanny data layer. OSM API database can only be streamed
into Hootenanny during a conflation job.
There is also no way to directly view OSM data from an OSM API database within Hootenanny, since the two systems use different
logic to display OSM data. Therefore, whenever an OSM API database layer is selected within iD Editor, Hootenanny will zoom to
an arbitrary location and display no OSM data.
There exists no mechanism in Hootenanny’s iD Editor to upload data directly into an OSM API database from a file. This can,
however, be done from the command line as explained in the "Hootenanny OSM API Database Conflation Testing Notes" section
of the Hootenanny Developer’s Guide.
For more detailed information on the workflow involved with conflating data sourced from an OSM API database, see: https://github.com/-
ngageoint/hootenanny/wiki/MapEdit-Enhanced-Conflation-Workflow--(aka-%22Holy-Grail%22)

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 31

1.14 Conflation Examples

The following conflation examples are provided as guidance to help users better understand potential conflation and review issues
that may arise keeping in mind that each scenario will vary tremendously from one to another depending on the characteristics of
the source input data.

1.14.1 Reference Conflation: Washington DC GIS Roads against Census Tiger data.

The following workflow describes a simple use case conflating DC GIS Roads data against Tiger Census data derived from the
source data below. In this example, the datasets DcGisRoads.osm and DcTigerRoads can be found in the %HOOT_HOME/test-
files/ directory where Hootenanny is installed (see Data Ingest).

• Tiger Roads Source data: ftp://ftp2.census.gov/geo/tiger/TIGER2012/ROADS/tl_2012_11001_roads.zip


• DC GIS Roads Source data: http://dcatlas.dcgis.dc.gov/catalog/download.asp?downloadID=88&downloadTYPE=ESRI

Once the DcGisRoads and DcTigerRoads datasets have been ingested and loaded into the map as the Reference and Secondary
Dataset respectively, click on the conflate button to expose the conflation options. Provide an output name, select type = Reference,
leave the remaining options as default and click the Conflate button. Conflating these two layers will typically produce anywhere
from 5-8 reviews.

Figure 37: Hootenanny Reference conflation using DcGisRoads (blue) and DcTigerRoads (yellow) displayed on DigitalGlobe
GBM.

After the automatically merged features have completed, a number of reviewed features will be presented along with a corresponding
review note and count e.g. Reviews remaining: 5 (Resolved: 0). Note that for road reviews, many of the actions required may not
be entirely intuitive and for this reason its best to work with a data steward with intimate knowledge of the source data using any
supplemental background provided in either the User/Algorithms guides.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 32

Figure 38: Reviewing Conflicts in Hootenanny using DcGisRoads and DcTigerRoads. DigitalGlobe GlobalBasemap (GBM).

When reviewing each conflict, users can either accept the conflict as is by clicking on the Resolved button (shortcut = r) or modify
the feature under review accordingly using the options described in previous sections covering editing feature geometry/tags. To
display the Reference (red) or Secondary (blue) review feature tags, click on either the red or blue review fields and note the tags
displayed on the left panel. Note that if any geometry or tag information is subsequently modified during the review process, users
will be need to click the save button to commit those changes to the database (clicking resolve will not commit any feature or tag
editing modifications). If no geometry/tag information is modified, clicking the resolve button is sufficient. Once all reviews have
been resolved, a message will pop-up in the upper right corner stating that there are no more available features to review and a
Complete Review button will appear under the merged layer name. Clicking on that will allow users to either export the data using
the provided layer export options or Add Another Dataset to continue with the conflation process.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 33

Figure 39: Completing the Review Process in Hootenanny. Users can choose to Export the data or Add another dataset to conflate.
The layer colors displayed on the map correspond to the Reference (blue for DcGisRoads) and Secondary (yellow for DcTigerRoads)
layers and green for any merged features.

1.14.2 Cookie Cutter and Horizontal Conflation: Conflating Boulder, CO City Streets against OpenStreetMap data.

The example describes a cookie cutter and horizontal conflation using a Street centerline data obtained from the City of Boulder
and a Highway dataset obtained from OSM. The figure below shows the two layers displayed on top OpenStreetMap data. The dark
gray lines represents the higher quality street centerline data and red lines represent the OSM highway layers for Boulder and the
surrounding area.

Figure 40: Boulder OSM map with with roads data overlayed. Boulder, CO; Boulder city street centerline (gray), OSM highways
(red); OSM Basemap.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 34

Zooming in with relevant imagery displayed in the background, we can see that Streets layer is better aligned with the background
imagery and provides better coverage in the city by including more streets and alleys whereas the OSM data provides wider coverage
for the surrounding area but is less detailed.

Figure 41: Verifying data on imagery. Boulder, CO; Boulder city street centerline (gray), OSM highways (red); DigitalGlobe
GlobalBasemap (GBM).

When using this conflation type, the first layer (cookie-cut) will contain the reference geometry and be used to perform the cookie-
cut operation. The second layer represents the dough from which the first layer is cut. The process is depicted below in Figure 42. In
the image labeled A, the input dough layer (Boulder OSM) is shown. In image B, an alpha shape is generated around the cookie-cut
region defined by Layer 1, the Boulder City Road data, with a -1 km buffer applied. The process continues with the OSM dough
layer "cut" using the alpha shape (image C). Finally the two layers are combined (image D).

Figure 42: Cookie Cutter and Horizontal conceptual workflow using Boulder, CO streets.

A further examination of the vector data after conflation shows that along the buffer area, the roads have been aligned and joined
with all duplicate features removed.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 35

Figure 43: Zoomed-in view of horizontal conflation matched roads.

Location: Boulder, CO; Vector: Conflated centerlines and OSM data; Map: OSM
Viewing the workflow within the Hootenanny UI, the Boulder Streets data is added as the Reference dataset and the OSM Boulder
Highway dataset as the Secondary data source. The user selects Cookie Cutter & Horizontal as the Conflation Type and picks a
layer to represent the Attribute Reference Layer then clicks Conflate.

Figure 44: Two Boulder, Colorado roads conflated using Cookie Cutter and Horizontal Conflation. Shown here are Boulder City
Street centerlines (pink) as the Reference layer and OSM highways (blue) as the Secondary layer with DigitalGlobe GlobalBasemap
(GBM). Note the use of OSM data is not an indication of the data quality but simply used here as an example of a larger dataset
covering the greater Boulder metropolitan region.

The final conflated layer represents the merger of the Boulder streets layer and the OSM highways data with all duplicates removed
and cookie-cut roads joined. Once the conflation process has completed, the resulting dataset can be exported as a shapefile, FGDB,
or WFS from the UI following the steps outlined here.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 36

Figure 45: Boulder cookie-cut and horizontal conflation output (green) displayed on DigitalGlobe GlobalBasemap (GBM).

1.14.3 POI to POI conflation: Washington, D.C.

Points of Interest (POI) to POI conflation is supported within Hootenanny by default when any two layers containing POIs are added
to the map. POIs are compared against one another and scored based on a variety of tag/conditions (see Algorithms/User Guide for
more background on Unifying conflation scoring).
Unlike linear and polygon features, the review process for POIs provides the capability to merge attribution and geometry when
reviewing conflicts. Merge combines the two POIs attribution into a single POI with the reference geometry and a combination of
non-reference/reference attribution. When determining an appropriate action, a user must first consider whether the points represent
two separate POIs, a single POI, or an invalid POI in which case the user might move or delete the POI(s) in question. In this
example, a DC POI dataset containing locations and attributes of Address Alias points composed of a variety of features as part
of the Master Address Repository (MAR) for the D.C. Office of the Chief Technology Officer (OCTO) and participating D.C.
government agencies is conflated against MapCruzin POI data derived from OSM. Conflating these two POI datasets produces 62
reviews with a range of conflict review notes to step through and take appropriate actions of either merging or accepting as two
separate POIs.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 37

Figure 46: Reviewing Washington, D.C. POI conflicts in Hootenanny using the DC POI and MapCruzin data. In this case the user
is determining whether the feature highlighted in blue, "Reed Elementary School", should be merged with the feature highlighted
in red, "MARIE REED ELEMENTARY SCHOOL". A red arrow appears when hovering over the merge button indicating the
proposed merge direction but this can be reversed by hitting the Ctrl key and merge button simultaneously.

Note
A POI merge can occur in either direction depending on the users preference. In most cases clicking merge will merge the
secondary dataset POI into the reference POI combining relevant attributes but this can be reversed by holding down the Ctrl key
when clicking the merge button. This will not work when using the merge m short-cut key.

1.14.4 Advanced Conflation Example: Generic River Conflation

One of the experimental options available for advanced conflation is the ability to conflate Waterways data using methods described
in the Developer Guide in the Generic River Conflation section. If users would like to explore this capability by conflating two
rivers datasets, make sure that the Waterways options have been enabled in the Advanced Conflation Options panel as shown in the
figure below. Note that no exact set of parameters may produce the desired results so experimentation maybe required. Background
on each options is provided in greater detail in the Developer Guide and listed in Section 2.7.

Figure 47: Waterway conflation options available from the Advanced Conflation Options panel.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 38

1.14.5 Export Conflated Data

After both conflation and reviews have been completed, users can export the conflated dataset using a selected translation schema
and output file format. Click on the Export Data button shown below to display the export configuration page.

Figure 48: Exporting Conflated Results button.

Figure 49: Export Options from Hootenanny.

Export Translation Schema

Users can select which translation schema (MGCP, LTDS 4.0, LTDS 6.1) they would like to export their data. This list will likely
expand as new schemas are added to the deployed build after subsequent software releases.

Export Format

There are currently four options for exporting data from Hootenanny: File Geodatabase (FGDB), Shapefile, OSM and Web Feature
Service (WFS). Note that FGDB, Shapefile, and OSM formats are exported as a zip file containing all of the relevant associated
files, while WFS is exported as WFS Get Capabilities service URL that can be added into an OGC-enabled third party application
(see WFS Export). There is an additional option when exporting TDS data as a FGDB to append to existing FGDB template if users
would like to utilize the MILSPEC symbology available from the ESRI ArcGIS Defense Mapping extension for ArcGIS 10.2.

Export File Output Name

This is the output name of the exported file.

1.15 Manage Hootenanny

The Manage capabilities within Hootenanny provide a set of administrative and dataset tools. For example, a user can use the
Translation Assistant to create a custom translation between two different tag schemas for generating agency standard products
used for foundation GEOINT content. Data can also be imported/exported from the Datasets settings to different file formats

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 39

supported by desktop GIS applications and translated to a specific data schema to evaluate compliance to standard specifications
using tools like the Geospatial Analysis Integrity Toolkit (GAIT).
This section presents an overview of the functionality in each settings page and provides a set of example workflows to showcase
how the tool can be implemented using real world datasets.
Click on the Manage link in the top right-hand side of the user interface.

Figure 50: Manage options. A. Settings pages, e.g. Datasets, Translation Assistant, etc. . . , that allow users to select different menu
options for each setting. B. The primary window for updating or interacting with elements associated with each setting. C. The
toggle to return to map/manage view.

1.15.1 Datasets

The Datasets settings page provides users with different options for managing data in Hootenanny including data ingest (shape-
file, osm, geonames, FGDB), data management and data export from Hootenanny into pre-defined output formats and translation
schemas. To access this feature click on Datasets from the Manage Settings page.

Data Ingest

When users click on Add Data, a dialog box displaying different options for importing datasets appears. For Import Type, users
can select a shapefile(s), filegeodatabase, .osm file, geonames text file, etc. or than can upload a .zip containing either a shapefile,
filegeodatabase or .osm dataset.

Important
File Geodatabase files, Shapefiles and .osm datasets are now supported in .zip. The GBD format refers to a folder
containing all of the relevant geodatabase layers. When uploading multiple files in a single zip, all features are merged
into a single layer. To avoid this behavior of merging datasets into a single layer you will need to separate the features e.g.
pois, roads, buildings, etc., first and then upload each layer separately.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 40

Figure 51: Importing data into Hootenanny.

Import Directory
When users want to add multiple datasets from the same directory, Hootenanny has a feature to import geospatial data from one
directory as separate datasets. After selecting Import Directory, the user is presented with a form with similar options to the Import
Single Dataset form. The main difference is the user will select multiple datasets from one directory with each being loaded as a
separate dataset. While the user can select multiple datasets in the Import Single Dataset, they will be combined into one dataset.
Each dataset will be loaded into the designated folder and with the selected translation schema. The user also has the option to apply
a custom suffix to each dataset to avoid naming conflicts or for data management. Currently, the import directory form supports the
following import types: Shapfile and OpenStreetMap (.osm or .pbf).
If there is a conflict with a dataset in the Import Files List, it will highlight as red. Hovering over the dataset will reveal the issue,
which can include a dataset already having the name or an unallowed character within the dataset name. The dataset name cannot
be changed in the form; the user can either change the name in the local folder or add a custom suffix.

Figure 52: Importing data into Hootenanny.

Bulk Import

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 41

Differing from importing datasets from one directory, users can use the Bulk Import tool to import datasets in separate transactions.
The user can add up to 10 rows as 10 different import jobs. The user can select a different translation and folder path for each row.
The bulk import form also allows a user to change the layer name. Currently, the bulk import supports the following import types:
Shapefile, OpenStreetmap, Geonames, and File Geodatabase.
If there is a conflict with a dataset name it will highlight as red. Hovering over the dataset will reveal the issue, which can include
a dataset already having the name or an unallowed character within the dataset name. The user can either change the Save As name
or apply a custom suffix to each dataset to avoid naming conflicts or for data management. The custom suffix will be applied to all
datasets being imported.
After starting Import, a log will appear by clicking Show More, which will provide the user with updates during the import process.

Figure 53: Bulk Import in Hootenanny. To access right-click on the Add Dataset button and populate each field. Note that larger
datasets will require more time to import.

Add Reference / Secondary Layer to Map

Once data has been ingested into Hootenanny, users can add it directly to the map from the Manage | Datasets settings page by
right-clicking on a dataset and selecting Add as Reference or Secondary Dataset.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 42

Figure 54: Adding data from dataset options page. Select either option from the right-click menu on highlighted dataset.

Note
Once a Reference or Secondary dataset has been added these options will no longer be listed in the right-click menu until either
have been removed from the main map.

Adding Folders

To add a new folder, click on the Add Folder button and enter the name of the folder they wish to create. Any sub folders can be
created by right-clicking on the folder and selecting Add Folder or selecting a new output folder name in the add dataset menu.
When deleting a folder, all data contained in the folder and any subfolders will be deleted.

Figure 55: Add folder. Click the Add folder button to open the relevant menu options.

Export Data

To export a dataset, right-mouse click on a dataset and select the Export Dataset option to open the Export dialog box shown in
Figure 49. The various export options are discussed in detail in Section 1.14.5.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 43

Figure 56: Export from dataset.

Note
Datasets must be selected (highlighted in yellow) to export. When selecting more than one dataset only delete and move are
available options.

Bulk Export
Similar to the Bulk Import tool, users can use the Bulk Export tool to export up to 10 datasets at once. The user can set translation
schema and export format to each independent job. The user will be prompted each time to Save the File as is the norm with
downloading files from the web. There is currently no option to package all files in one zipped folder.
Users can also chose to export all data in a single folder (up to 10 datasets). This will open the Bulk Export form populated with the
datasts found in the selected folder.

Other Dataset Options

Layers can be managed by right-clicking on selected datasets to expose different options. Note that the options presented will
depend on what is selected or highlighted. To select more than one dataset hold the ctrl key and select each dataset.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 44

Figure 57: Manage data options available from Right-click.

To delete, move or rename an existing dataset(s), right click over the highlighted layers and select the appropriate option.

Note
It is not possible to select more than one folder simultaneously.

Prepare for Validation


The Prepare for Validation option provides users with the capability of generating a 30% sample of validated POI features that can
be used to determine the degree to which it can be identified using the basemap imagery data source. When using DigitalGlobe
GBM/EGD data, the imagery metadata is appended to each POI indicating what image id was used to validate a given feature. To
prepare a POI layer for validation, right-click and select Prepare for Validation. A dialog box will appear prompting users to enter
a name for the layer.

Figure 58: Create new validation layer. Enter an output name and click run to generate the validation layer.

Once complete, users can load this newly generated validation layer and Hootenanny will popup a prompt to go into Validation
mode whereby three validation options are presented. Each presented option (either 1, 2, or 3) when selected will populate different
hoot:review:choices tags as well as any imagery source metadata if used.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 45

Figure 59: Validating a layer of Washington, D.C. Points of Interest in Hootenanny against the DigitalGlobe GBM/EGD basemap.

Note
Panning the map during Validation causes the highlighted POI to become unselected and removes the validation options. To
resume validation, click the Select button at the bottom.

1.15.2 Translation Assistant

The Translation Assistant was developed to facilitate the translation of "shoebox" (one-off or custom) datasets into Hootenanny’s
internal format of OSM xml. Users must map attribute names and values from the source dataset to a common schema so that
conflation operations can occur. The available target schemas in the current release include OSM and TDSv61. The choice of target
schema is dependent on the users fluency with said schema and how conversant they will be in defining an accurate mapping, as
well as technical factors noted below. All translations end up in the internal OSM schema when stored in the database and used
during conflation operations.

Note
Validation for some schemas, such as TDS, is more strict (does not support ad hoc tag key=values) and it only supports one
FCODE type per layer. Other schemas may produce lossy results in certain directions, such as translating from OSM to TDS
during export. For example, OSM will be a lossless translation target format, but if in the end, the conflated datasets will be
exported to TDS, then defining the translation mapping in TDS should guarantee that mapped fields remain lossless.

The Translation Assistant provides users with a UI driven tool to merge and translate datasets with varying schemas into common
data models using standard tag schemas (OSM, TDS, etc.). The output generated from the Translation Assistant is a custom
translation script that will be used to prepare data for the conflation feature matching process.
To access the Translation Assistant, click on the Manage button and then the Translation Assistant settings page to open, as shown
in the figure below.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 46

Figure 60: Translation Assistant

To begin the process, users select the tag schema they want to use to define the translation mapping in. The translation schema can
be changed at any time, but unexpected results may occur if more than one tag schema is used to define a single translation script.
Users must upload the dataset files for which they want to define a translation. If the Upload file(s) dialog is open, files chosen
can be one or more shapefiles, consisting of .shp, .shx, and .dbf components at a minimum; or a zip file containing one or more
shapefiles, or a folder that is a file geodatabase. If the Upload folder dialog is opened, the chosen folder can contain one or more
shapefiles or be a file geodatabase.

Note
If the uploaded dataset contains more than one Feature Class a drop-down will be added to the UI and translation mappings can
be defined per Feature Class. At minimum, an FCODE e.g. AL015 or feature type e.g. highway = road is required for each feature
class in order to save the translation file.

The translation mappings are defined at the attribute level and support one-to-one, one-to-many and many-to-one attribute-tag
associations. To better illustrate the utility of this tool, a walk through example is provided using the Washington, D.C. Street
Centerline data downloaded from DCGIS Open Data’s data catalog (http://opendata.dc.gov/). For this example we will be using a
downloaded shapefile from the site and mapping it to the OSM Tag Schema.
One to One Mappings
In its simplest form, a translation mapping takes a field name and maps it to a tag key. Field values become tag values with no
transformation. In this example the source dataset attribute, ST_NAME, is mapped to the OSM tag, name by typing/autofill name
in the field. The same process can be repeated for the attribute, REGISTERED, mapped to the OSM tag, alt_name.

Figure 61: One to One Tag Key Mapping. ST_NAME in the source data is mapped to the OSM tag, name.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 47

The next form involves mapping specific attribute field values to specific tag values, in addition to translating the field name to a tag
key. For this example (and many others), the process of mapping attributes may involve some additional research into the proper
definitions for road classifications. In some cases, attributes from source data may not have direct 1:1 relationship to OSM tags so
best match approaches are often taken at the discretion of the analyst performing the translation. Using the Highway Functional
Classification from the Department of Transportation, we can attempt to map the values to their OSM tag equivalents.

Figure 62: One to One Tag Key:Value Mapping. FUNCTIONAL is mapped to the OSM tag, highway, with each value set appropri-
ately.

One to Many Mappings


One to many mappings are supported by clicking on the plus button after each new tag association has been added for a given
attribute. The figure below shows a one to many mapping for the ROUNDABOUT field and maps to the OSM tags junction=
roundabout and implies oneway=true. Note that this field is not present in the DC Street Centerline data and is simply used
here as an example.

Figure 63: One to Many Mapping Example.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 48

Many to One Mappings


Many to one mappings are supported with the Translation Assistant UI based on the OSM semi-colon value separator. The purpose
of this is to allow the user to retain any fields in their shoebox dataset that would otherwise be dropped due to the lack of a
corresponding tag in the target schema. The special tag key used for this feature is extra_attributes. All attributes mapped
to this tag will be concatenated together. An example tag is extra_attributes=speed_mph=45;city=District of
Columbia;country=US.

Note
Support for this extra_attributes tag does not exist in some export schemas such as TDS. If an export schema does support the
concept of a catch-all field such as notes or other, Hootenanny can add support for it in the export translation capability.

TDS Schema
A key distinction when doing translations with OSM tag schemas versus the Topographic Data Store (TDS) schema is that the TDS
defines feature types based on FCODE values. To support this within the Translation Assistant, the user must select the appropriate
FCODE type using a drop-down menu of possible supported TDS feature types and proceed with the schema mapping. This FCODE
restricts the set of available tags and is assumed to apply to every feature in the layer.

Note
The TDS translation option only supports one feature type per translation layer.

1.15.3 Notional Custom Translation Example: Washington, D.C. Street Centerlines

To start a custom translation in the Translation Assistant select the appropriate tag schema, which in this case is OSM. Then click on
the Upload file(s) button select the Street_Centerlines_-_Light.shp, Street_Centerlines_-_Light.shx, and
Street_Centerlines_-_Light.dbf files. Once loaded, the Translation Assistant displays that this particular file contains
36 attributes and the user has the option of mapping all or a select number of them to their corresponding OSM tag. For each
attribute in the file, the user has the following options:

• Create an attribute mapping. Users add a new tag relationship by clicking on the plus sign and typing the name of the correspond-
ing tag to add in the field.
• Save the mapping. Users click Next to save a mapping and advance to the next attribute.
• Ignore the attribute. Users click the Ignore button to ignore that attribute in the translation.
• Skip the attribute. Users click on the backward or forward arrows next to each attribute name (e.g. < 2 of 36 > ), to skip past that
attribute.

Note
You must select either Ignore or Next to save a mapping for an attribute. Using the arrow icons to skip the attribute will cause any
unsaved mappings for that attribute to be lost.

The first attribute presented in this translation is DESCRIPTION which is a local functional street classification system. The closest
OSM tag for this ref:road:type which supports values such as avenue, boulevard, circle, etc. Proceeding the next
attribute, DIRECTIONALITY, this maps to the OSM key oneway whose values are oneway=yes/no. In this case you can simply
set any value with One Way to yes and Two way to no. The vast majority of the attributes are unique the DCGIS Open Data format
and can therefore be ignored by clicking the Ignore button. An X will now appear in the box next to each ignored field indicating
that it will be ignored in the translation file. Moving through the attributes, another field of interest is FUNCTIONAL, a feature class
code that denotes highway functional class of the road based on NHS standards. For this example, the user should type the OSM
tag highway and then expand the value options to set each FUNCTIONAL value to the appropriate highway tag by clicking on the

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 49

taxonomy icon next to the field. For each unique value you’ll need to create the appropriate mapping so for instance in this case,
Collector could map to tertiary, Interstate to primary, Local to unclassified Minor Arterial to secondary, Other
Freeway and Expressway to motorway and Principal Arterial to primary. Click Next to save the mapping.
Attributes such as OWNERSHIP, STNAME, SHAPE_LENGTH, and REGISTERED represent fields where you would want the
attribute value to correspond directly to the tag value, e.g. NAME=Main St.-> Geographic Name Information :Full
Name=Main.St.. These fields can be mapped to the OSM tags, ownership, name, length and alt_name, respectively.

Note
After entering name, the user can either press Tab or Enter to select the first option or click the desired option from the list. To
register a tag key not found in the lookup press Tab or Enter. To register a tag key that is a substring of a lookup key, use the
Backspace button to remove the auto-completed portion of the string and press Tab or Enter. To dismiss an incomplete tag key
press Escape. To remove a defined tag mapping click the X icon.

Once all attributes have been either mapped or ignored, a Save Translation button will appear at the bottom indicating that the
translation is populated with enough values to be functional (when mapping to TDS tag schema at minimum users must have at
least one feature type mapped to an F_CODE before they are prompted to save the translation). Users can review the expanded list
of tag mappings by clicking on each attribute name under the attribute number bar. A check will appear for all mapped attributes
and a X for all ignored.

Figure 64: The translation mapping can be saved once all attributes have been defined. X boxes indicate ignored attributes while
checked boxes are mapped.

When the user is satisfied that their translation is sufficiently populated with enough defined tag mappings, they can click on the
Save Translation button and a pop-up message will appear asking whether you would like to add it to the list of available internal
translations. Clicking OK will open the New Translation dialog box with the generated translation file in Javascript. Provide a name
and description then Save Edits to save the translation. This translation file will now be available to use for importing new data as
discussed in Section 1.15.1.

Figure 65: Adding the translation to list of internal Hootenanny translations.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 50

1.15.4 Translations

The Translation settings page contains all of the predefined translations (MGCP, OSM, TDSv40, TDSv61) in addition to any custom
translations that have been generated from the translation assistant. To add a new translation, click on the Add New Translation
button. Populate the Name and Description fields in this form and copy/paste your Translation Assistant generated Javascript.
There is also an option to drag-and-drop a Javascript file from your local disk to the text area to copy/paste an existing translation.
Note that the translation assistant adds the translation file to the list of available translations as part of the custom translation
workflow so users are not required to use the add new translation option and manually paste in their generated translation file. The
pre-defined translations are displayed as read-only and cannot be edited by users however any custom translation will be editable by
clicking on the folder icon and editing any Javascript as needed. Translation files can now be saved as a Javascript file and stored on
a local machine for sharing and storage.

Figure 66: Managing Translations. Clicking on the Translation page opens the list of available translation files that can be used for
importing new data. To modify a given translation file (only applicable for read/write capable custom translation files), click on the
folder icon and edit the javascript as needed. To delete click on the trash can icon.

1.15.5 WFS Exports

The WFS Export settings lists all of the available WFS Services that have been generated from previous conflation jobs. Click on
the up arrow icon to display the WFS Resource URL. Copy/Paste the URL into a third party application that supports WFS. Note
that the URL provided is the full GetCapabilities document describing the service.

Figure 67: WFS Exports tab. A list of all user generated WFS services will appear here.

Example Hootenanny generated WFS URL:

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 51

URL: http://localhost:8080/hoot-services/ogc/ex_f7e41fccf46343b6987d003c5a83c9a3?service=WFS& ←-
version=1.1.0&request=GetCapabilities

1.15.6 Manage Basemaps

Hootenanny provides users with the capability to generate their own custom basemap service using a georeferenced image. Currently
Hootenanny only supports GeoTIFF or png file types. To generate a new basemap that can be displayed in Hootenanny, click on the
Basemap settings and the New Basemap button. Use the file browser to upload your local georeferenced image (GeoTIFF or png
only).

Figure 68: Creating New Basemaps for Hootenanny. Click on the + New Basemap and select an appropriate georeferenced image.

When the file has finished processing, you will see a crossed through eye indicating that the basemap is available but disabled. To
enable, simply click on the eye icon and select it from the available background imagery layers. Note that larger imagery files will
take additional time to process on the server.

Figure 69: Managing Basemaps

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 52

Select the uploaded Basemap listed in the Background Settings button as shown below. Note you will be prompted to zoom to the
bounding box of the background image when selecting.

Figure 70: Viewing Basemap in Hootenanny. Rome, Italy; 2012 WorldView-2 DigitalGlobe image displayed in Natural Color.

Hoot Log

The Log settings provides both the Application and UI log for users to troubleshoot any issues that may occur during a user session.
There are two panels that are provided here; The Error log which provides core and service logging detail (i.e. tomcat catalina.out)
and the UI log which provides errors generated from the iD web client. The full log can be exported by clicking on the export
full log button. Note that any UI issues will also appear on the map map in the upper right corner in red highlight when they are
triggered. This messages are maintained in the UI log until the browser session is reloaded.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 53

Figure 71: Hootenanny Error and UI Log File.

Note
Those familiar with Chrome’s developer console (hitting F-12 key will open it in a separate tab or browser window) can use that for
additional debugging capability. This tool is used frequently by our developers for debugging client side code and greatly enhance
the ability to diagnose issues.

Review Bookmarks

The Review Bookmarks settings shown in Figure 72 stores all of the bookmarked reviews described in Section 1.12.6. Users can
open any review and add any pertinent notes or comments and then open . Each bookmarked review and associated comments will
persist as long as any layers associated with the review have not been deleted. Bookmarks can be sorted and filtered using any of
the displayed options such as Created By (asc/desc), Creator user, Layer name, etc.

Note
any comments added to a bookmarked review will appear as an anonymous user unless you click on the user icon for each
comment.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 54

Figure 72: Viewing Review Bookmarks.

To open a bookmarked review, click on the magnifying glass shown in Figure 73. Note that when an action has been taken on a
review to resolve it, users can no longer open the review.

Figure 73: Opening a review in the Review Bookmarks tab. Comments and notes can be added by clicking on the + symbol in the
right corner. To open the map to this review click on the magnifier glass in the top right corner and a pop-up message will provide
feedback for returning to review mode in the map.

1.16 About Hootenanny

This tab provides all of the version information for Hootenanny Core, Web Services and iD Editor versions and provides a link to
download the Hootenanny User Interface Guide.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 55

Figure 74: Hootenanny Version info

2 Appendix: Hootenanny Advanced Parameters

The following advanced configuration parameters are provided to the user via the Advanced Conflation option.

2.1 Cleaning Options

• Enabled: allows map cleaning operators to be applied during conflation.

• Remove Duplicate Way: Remove duplicate ways (lines) that are exact duplicates. If the lines partially overlap with exactly the
same geometry then only the partial overlap is removed from the more complex geometry.
• Duplicate Name Remover Case Sensitive: Removes duplicate names when their case also matches otherwise ignore case when
removing.
• Remove Superfluous Way: Remove all ways that contain no nodes or all the nodes are exactly the same.

• Remove Unlikely Intersections: Remove implied intersections that are likely incorrect. For example, a motorway overpass
intersecting a residential street at a 90° is considered unlikely and "unsnapped". The geometry location is not modified.
• DualWay Splitter: Split highway types that are marked as divided into two separate geometries marked as oneway roads. A
number of assumptions must be made to do this including assumptions about the direction of travel on roads (right or left hand
drivers).
• Implied Divided Marker: If two roads implicitly should be marked as divided based on the surrounding roads, mark it as such.
This is primarily caused by the FACC+ spec which does not allow bridges to be marked as divided.
• Small Way Merger: Merge any ludicrously small ways that have essentially the same attributes. Things like UUID are ignored.
See small.way.merger.threshold for setting the threshold value.

• Small Way Merger Threshold: If highways are smaller than threshold and the tags matched then they will be merged together
into a single way.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 56

• Remove Empty Areas: Remove all area elements that have a area of zero.
• Remove Duplicate Areas: Remove any area elements that are essentially the same.
• Remove No Information Element: Remove any elements that don’t have any tags with information. (E.g. only contains UUID
and source, but not FCODE equivalent or other informative tags).

2.2 Rubber Sheeting Options

• Enabled: Enables Rubber Sheeting options.


• Rubber Sheet Ref: Provides a rubber sheet transform for moving input 2 towards input 1. If not enabled, both inputs are moved
towards each other.
• Rubber Sheet Minimum Ties: Sets the minimum number of tie points that will be used when calculating a rubber sheeting
solution.

2.3 General Conflation Options

• Unify Optimizer Time Limit: The maximum amount of time in seconds to wait for the optimizer to complete. A value of -1
makes the time limit unlimited. If this value is set to something other than -1 your conflation results may change between multiple
runs. Especially if the machine Hoot is running on is under heavy load. If the "CM Score:" value is changing between runs and
GLPK isn’t finding an optimal solution then this is likely causing different output. Just because the output is changing doesn’t
mean it is wrong, but this can be problematic if you’re doing testing or expecting repeatable output for other
• OGR Split O2S: If the list of o2s tags is > 255 char, split it into into 254 char long pieces. If this is false, it will be exported as
one big string.
• OGR TDS Add FCSubtype: Add the ESRI specific FCSUBTYPE field to the output.
• OGR TDS Structure: Exports TDS data in Thematic Groups (TransportationGroundCrv, StructurePnt etc) instead of one FCODE
per file/layer (ROAD_L, BUILDING_P etc).

2.4 Road Options

• Engines
– Unify: Unify incorporates more recent conflation algorithms that process the routines into a single process flow and flag
reviewable items to the user. This is the default conflation engine.
– Disabled: Disables the road conflation engine altogether.
– Greedy: Uses Greedy optimization to determine a good set of matches based on conflation routine designs from 2012 (See
Hootenanny - Algorithms Guide for more background). This approach only deals with roads and does not flag questionable
situations as reviews. Conceptual it uses the following steps

Repeat (if Unify enabled):

• Search Radius Highway: The search radius to use when conflating highways. If two features are within the search radius then
they will be considered for conflation. If the value is -1 then the circular error will be used to calculate an appropriate search
radius.
• Highway Matcher Heading Delta: The distance around a point on a way to look when calculating the heading. A larger value
will smooth out the heading values on a line. A smaller value will make the heading values correspond directly to the heading on
the way at that point. This is primarily used in subline matching. Values are in meters.
• Highway Matcher Max Angle: Sets that maximum angle that is still considered a highway match. Units in degrees.
• Way Merger Min Split Size: The minimum size that a way should be split into for merging. Units in meters.

UNCLASSIFIED
Hootenanny - User Interface Guide UNCLASSIFIED 57

2.5 Building Options

• Enabled: Enables building conflation options.


• Search Radius Building: The search radius to use when conflating buildings. Currently not implemented.

2.6 POI Options

• Enabled: Enables POI conflation options.

• POI Options: POI conflation engine to be used.

– Unify: Conflates POIs with Unify algorithm routines into a single process flow and flag reviewable items to the user. See
Hootenanny - Algorithms Guide for more detail.
– Disabled: Disables the POI conflation options.

2.7 Waterway Options

The Waterway options have been pre-populated with default values based on generic river matching work discussed in the Hoo-
tenanny - Developer Guide. These can be modified if the user has deeper familiarity with the parameters. Waterway options are
disabled by default.

• Enabled: Enables waterway conflation options below.


• Waterway Angle Sample Distance: Distance used for sampling during angle histogram extraction with the SampledAngleHis-
togramExtractor. Values are in meters.
• Waterway Matcher Heading Delta: The distance around a point on a way to look when calculating the heading. A larger value
will smooth out the heading values on a line. A smaller value will make the heading values correspond directly to the heading on
the way at that point. This is primarily used in subline matching. Values are in meters.
• Waterway Auto Calc Search Radius: Auto calculates the search radius using the circular error.

• Search Radius Waterway: Search radius value to override the auto calculated radius. Waterway Auto Calc Search Radius must
be unchecked to enter value.
• Waterway Rubber Sheet Minimum Ties: Minimum tie points to use for rubber sheeting.
• Waterway Rubber Sheet Ref: Provides a rubber sheet transform for moving input 2 towards input 1. If not enabled, both inputs
are moved towards each other.

UNCLASSIFIED

S-ar putea să vă placă și