Skip to content

UFFeScience/UTK-PROV

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

UTK-PROV

UTK-PROV is a provenance-aware extension of the Urban Toolkit (UTK) that captures, stores, queries, and analyzes the evolution of grammar-based urban visualizations. The system records user operations performed during visualization construction and represents them using the W3C PROV model, enabling workflow reconstruction, auditing, reproducibility analysis, and exploration-pattern discovery.


Overview

Urban visualizations are commonly developed through iterative workflows involving the addition, removal, and modification of visualization components. Traditional visualization systems typically preserve only the final specification, making it difficult to understand how a visualization evolved over time.

UTK-PROV addresses this limitation by automatically recording visualization-development activities and transforming them into provenance records. These records can then be queried to recover information about:

  • Contributors involved in a project
  • Evolution of visualization specifications
  • User interaction histories
  • Workflow strategies
  • Temporal development patterns
  • Unique exploration behaviors

The system integrates provenance capture directly into the visualization-construction process and stores provenance information in a relational database for efficient querying and analysis.


Features

  • W3C PROV-compliant provenance model
  • Automatic capture of visualization operations
  • Tracking of additions, removals, and modifications
  • Provenance graph generation
  • Workflow reconstruction
  • User activity analysis
  • Temporal workflow analysis
  • Exploration-pattern identification
  • SQL-based provenance querying
  • Support for grammar-based urban visualizations

Provenance Model

UTK-PROV represents visualization workflows using the three core PROV concepts:

Agents

Users responsible for creating or modifying visualization specifications.

Activities

Operations performed during visualization construction, including:

  • Add
  • Remove
  • Modify

Entities

Artifacts generated or modified during visualization development, such as:

  • Visualization specifications
  • Layers
  • Knots
  • Maps
  • Plots

The provenance graph captures relationships including:

  • wasGeneratedBy
  • used
  • wasAssociatedWith
  • wasDerivedFrom

Architecture

User
 │
 ▼
UTK Interface
 │
 ▼
Visualization Specification
 │
 ▼
Change Detection
 │
 ▼
Provenance Capture Layer
 │
 ▼
PROV Representation
 │
 ▼
Database Storage
 │
 ▼
Query Engine
 │
 ▼
Workflow Analysis

Software Requirements

UTK-PROV relies on the following Python packages:

pysolar==0.*
geopy==2.*
osmium==3.*
overpass==0.7.*
numpy==1.*
pandas==2.*
scipy==1.*
geopandas==0.13.*
tqdm==4.*
mapbox_earcut==1.0.1
shapely==1.8.*
pyproj==3.*
pytz==2023.*
timezonefinder==6.*
pythonnet==3.*
pygeos==0.14.*
ipywidgets==8.*
geojson==3.*
flask==2.3.*
vedo==2023.*
netCDF4==1.6.*
requests==2.*
psutil==5.9.*
watchdog==3.0.*

Install the dependencies using:

pip install -r requirements.txt

Installation

Clone the repository:

git clone https://github.com/UFFeScience/UTK-PROV.git
cd UTK-PROV

Create a virtual environment:

python -m venv venv

Activate the environment:

Linux/macOS

source venv/bin/activate

Windows

venv\Scripts\activate

Install dependencies:

pip install -r requirements.txt

License

See the LICENSE file for licensing information.


Acknowledgments

UTK-PROV was developed as part of research on provenance-aware urban visualization systems and extends the Urban Toolkit ecosystem with provenance capture, storage, and analysis capabilities.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors