Skip to content

texttechnologylab/Unified-Dynamic-Annotation-Visualizer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

558 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Unified Dynamic Annotation Visualizer (UDAV)

A tool for generating dynamic and interactive annotation visualizations.


UDAV is designed to enable different disciplines to display their automatic pre-processing results in a schema-based and reproducible, dynamic and interactive way without the need to hard-code manual and user-defined visualizations for each new project.

Features

  • Dynamic and interactive charts
  • Visual editor
  • Different export options: svg, png, tex, csv, json
  • Widget pagination
  • LLM ChatBot

Widgets

UDAV currently contains the following widgets:

  • Text (static)
  • Image (static)
  • Video (static)
  • Inline Frame (static)
  • Table
  • Bar Chart
  • Pie Chart
  • Line Chart
  • Highlight Text
  • Simple Map
  • Network Graph
  • Voronoi Diagram
  • Medial Axis
  • Boundary Approximation

Getting Started

Tip

Please consult the documentation page for a more detailed and customizable setup documentation.

Requirements

Quick Start (Docker Compose)

  1. Clone the repository:

    git clone https://github.com/texttechnologylab/Unified-Dynamic-Annotation-Visualizer.git
    cd Unified-Dynamic-Annotation-Visualizer
  2. Create your .env file by copying the provided example:

    cp .env.example .env
  3. Start the application:

    docker compose up -d

    This starts PostgreSQL and the UDAV application. The web UI is available at http://localhost:8080 once the container is healthy (usually within ~30–60 seconds).

Note

If you're looking for a small demo without any setup, check our open demo.


Importing DUUI Annotation Data

To import XMI/GZ annotation files produced by DUUI pipelines, you need to configure the importer in your .env before starting the containers.

Important

DUUI_IMPORTER_PATH and DUUI_IMPORTER_TYPE_SYSTEM_PATH must be absolute paths on your host machine — Docker Compose mounts them into the container automatically.

1. Set the path to your annotation files:

DUUI_IMPORTER_PATH=/absolute/path/to/your/xmi/files

2. Set the file extension matching your corpus (.xmi for uncompressed, .gz for gzip-compressed):

DUUI_IMPORTER_FILE_ENDING=.xmi
# or
DUUI_IMPORTER_FILE_ENDING=.gz

3. (Optional) Set the path to an external TypeSystem XML if you want to use a custom type system instead of letting UDAV auto-detect it from the XMI files:

DUUI_IMPORTER_TYPE_SYSTEM_PATH=/absolute/path/to/your/typesystem

Note

If DUUI_IMPORTER_TYPE_SYSTEM_PATH is left empty, the type system is auto-detected from the XMI files. If you set it, point it to the folder containing your TypeSystem XML file.

4. Enable the importer and start:

DUUI_IMPORTER=true
docker compose up -d

The importer runs on startup and processes all matching files in the configured directory. Import progress is logged and visible via:

docker compose logs -f udav

Example .env for DUUI import

# Database
DB_USER=postgres
DB_PASS=postgres
POSTGRES_DB=udav

# DUUI Importer
DUUI_IMPORTER=true
DUUI_IMPORTER_PATH=/data/my-corpus/xmi-files
DUUI_IMPORTER_FILE_ENDING=.gz
DUUI_IMPORTER_WORKERS=4
DUUI_IMPORTER_CAS_POOL_SIZE=12
DUUI_IMPORTER_TYPE_SYSTEM_PATH=

# Java memory (adjust to your system)
JAVA_OPTS=-Xmx10G -Xms1024m

License

This project is published under the AGPL-3.0 license.

Cite

If you want to use the project please quote this as follows:

Thiemo Dahmann, Julian Schneider, Philipp Stephan, Giuseppe Abrami and Alexander Mehler. 2026. Towards the Generation and Application of Dynamic Web-Based Visualization of UIMA-based Annotations for Big-Data Corpora with the Help of Unified Dynamic Annotation Visualizer. Proceedings of the Fifteenth Language Resources and Evaluation Conference (LREC 2026), 6695–6705. [LINK] [PDF]

BibTeX

@inproceedings{Dahmann:et:al:2026,
  title = {Towards the Generation and Application of Dynamic Web-Based Visualization of UIMA-based Annotations for Big-Data Corpora with the Help of Unified Dynamic Annotation Visualizer},
  booktitle = {Proceedings of the Fifteenth Language Resources and Evaluation Conference (LREC 2026)},
  year      = {2026},
  pages = {6695--6705},
  author    = {Dahmann, Thiemo and Schneider, Julian and Stephan, Philipp and Abrami, Giuseppe
               and Mehler, Alexander},
  address = {Palma, Mallorca, Spain},
  publisher = {European Language Resources Association (ELRA)},
  editor = {Piperidis, Stelios and Bel, Núria and van den Heuvel, Henk and Ide, Nancy and Krek, Simon and Toral, Antonio},
  doi = {10.63317/5ce2aaity4yz},               
  keywords  = {NLP, UIMA, Annotations, dynamic visualization, uce},
  abstract = {The automatic and manual annotation of unstructured corpora is a routine task in many scientific fields and is supported by a variety of existing software solutions. Despite this variety, few solutions currently support annotation visualization, especially for dynamic generation and interaction. To bridge this gap and visualize annotated corpora based on user-, project-, or corpus-specific aspects, we developed Unified Dynamic Annotation Visualizer (UDAV). UDAV is a web-based solution that implements features not supported by comparable tools, enabling a customizable and extensible toolbox for interacting with annotations and allowing integration into existing big-data frameworks. We exemplify UDAV through a range of visualizations and also provide an evaluation of corpus import and processing performance.},
  pdf = {http://www.lrec-conf.org/proceedings/lrec2026/pdf/2026.lrec2026-1.533.pdf}
}

About

Tool for generating dynamic and interactive annotation visualizations.

Topics

Resources

License

Stars

Watchers

Forks

Contributors