VisITMeta is an *experimental* IF-MAP 2.2 compliant MAP client written in Java that visualizes metadata stored on a MAP server. It supports features like showing a history of all metadata stored on a MAPS, using filter and search techniques to navigate the metadata as well as some visualization techniques like animations, highlighting and so on.…
Java Other
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
common
dataservice
src/license
visitmeta-distribution
visualization
.gitignore
CHANGELOG.txt
LICENSE.txt
NOTICE.txt
README.md
pom.xml

README.md

VisITMeta logo

VisITMeta

VisITMeta is an experimental IF-MAP 2.2 compliant MAP client written in Java that visualizes metadata stored on a MAP server. It supports features like showing a history of all metadata stored on a MAPS, using filter and search techniques to navigate the metadata as well as some visualization techniques like animations, highlighting and so on. Development was done by Hochschule Hannover (University of Applied Sciences and Arts, Hanover) within the VisITMeta research project, (support code 17PNT032) which is funded by the german BMBF (Federal Ministry of Education and Research).

Features

The VisITMeta software consists of two main components:

  • dataservice: The dataservice component is responsible for collecting metadata from a MAP server. Currently works with one subscription, and so records all data it can get with that subscription. Metadata is stored via a neo4j database, with timestamps attached to save the information, when this metadata was created, changed and deleted.

The dataservice component is the only component in VisITMeta, that is talking IF-MAP with a MAP server. Every other component, like the visualization component, connects via a REST-like interface to get the current MAP graph, the graph at a specific timestamp or the changes between two timestamps, as well as a list of all timestamps with the number of changes (separated into updates and deletes). This allows arbitrary clients work with the history of metadata collected by the dataservice.

  • visualization: The visualization component is a GUI that displays the information gathered by the dataservice. Metadata is rendered a graph, with different colors for different publisher IDs and highlighting changes in the graph. It supports navigating through the metadata via panning and zooming, as well as navigating through all timestamps of the metadata.

The list of visualization features is going to change over the duration of the project.

Building

This section describes, how to build VisITMeta from scratch.

Prerequisites

In order to build VisITMeta with Maven you need to install Maven 3 manually or via the package manager of your operating system.

Build VisITMeta

Now you can build VisITMeta, simply execute:

$ mvn package

in the root directory of the VisITMeta project (the directory containing this README file). Maven should download all further needed dependencies for you. After a successful build you should find a zip-archive called visitmeta-distribution-<version>-bundle.zip in visitmeta-distribution/target.

Configuration

This section describes the configuration needed to get VisITMeta working.

MAP server configuration

To use VisITMeta you need to have a MAP server running. Make sure that a basic-authentication user exists in the corresponding configuration file of your MAP server. On irond, it would be basicauthusers.properties.

If not present, add the line

visitmeta:visitmeta

at the end of the file.

VisITMeta configuration

VisITMeta itself has to be configured, too. Inside the config directory, you find all needed configuration files.

Most settings will work just fine in your environment (or when using our irondemo environment), but you maybe have to adjust at least the following entries:

  • dataservice_connections.yml

    • default.url = The default URL of your MAP server (default: http://localhost:8443)
    • default.identifierType = The default type of the start identifier for VisITMeta (default: device)
    • default.identifier = The default value of the start identifier for VisITMeta (default: pdp)

Running

  1. Start a MAP server, e.g. irond (Download section at [Trust@HsH website] 12 or via [Github] 6

  2. Change your working directory to the root directory of the VisITMeta project.

  3. Start VisITMeta:

First, you must start the dataservice-component via

$ sh start-dataservice.sh

Afterwards, you can start the visualization-component (or at any later time, as the dataservice is already recording and providing the complete history). Start the GUI via

$ sh start-visualization.sh
  1. Publish some data:

Within the scripts directory, you will find some Shell scripts that work with our ifmapcli-tools and will publish and delete some metadata, so that you can test the history-feature of VisITMeta.

Feedback

If you have any questions, problems or comments, please contact trust@f4-i.fh-hannover.de

License

VisITMeta is licensed under the Apache License, Version 2.0. The visualization component uses the Java Swing Range Slider source code from Ernie You (Github). The corresponding license is provided with the file LICENSE-swingRangeSlider.txt in the root-directory of visitmeta-distribution.