“Python is not recognized”
Python is not on your PATH. Reinstall and tick Add Python to PATH.
Desktop application
The Python edition, downloaded and run on your own machine. Upload RDF/XML, extract metadata and graph statistics, choose which properties to visualise, and query the graph through a built-in SPARQL endpoint.
A lightweight application for visualising and exploring RDF graphs. You upload an RDF file, it extracts metadata and statistics, you choose which properties to draw, and it renders an interactive network you can search, rearrange and query.
It runs on your own machine: a small Python program that starts a local web server and opens in your browser. Nothing is uploaded anywhere.
Two editions: this is the desktop edition. The web edition is a newer generation built on this one. Both are available: use this one to keep files on your own machine, the web one to work without installing anything.
The viewer includes features specifically for displaying ontoterminologies built in Tedi. That matters because those graphs are hard for general-purpose RDF viewers: they combine the RDF, RDFS, SKOS, OWL, OntoLex-Lemon and OTV vocabularies, and they use punning — treating classes as instances. That combination is what motivated writing this program rather than using an existing tool.
| Operating system | Windows 10 or later, macOS 10.15 or later, or Linux (Ubuntu/Debian recommended) |
|---|---|
| Python | 3.8 or later |
| RAM | 4 GB minimum; 8 GB for large graphs |
| Disk space | 2 GB for Python and its libraries |
| Browser | Any current Chrome, Firefox, Edge or Safari |
Windows: download the installer from python.org and tick Add Python to PATH before installing. That box is the single most common cause of the tool failing to start later.
macOS: brew install python, or download from python.org.
Linux: sudo apt update then
sudo apt install python3 python3-pip.
Check it worked with python --version (or python3 --version).
pip install flask rdflib pyvis
Or put those three names in a requirements.txt and run
pip install -r requirements.txt.
Save Talos_RDF_Viewer.py into a folder of its own, for example
Documents/TALOS/RDF_Viewer. The
source
archive is on the tool's own page.
From a terminal, change into the folder and run the program:
cd /path/to/TALOS/RDF_Viewer
python Talos_RDF_Viewer.py
On Windows you can also right-click the file and choose Open with → Python,
or make a .bat shortcut that does the cd and the
python call for you.
After a few seconds your browser opens at
http://127.0.0.1:5000. If it does not open by itself, paste that address in.
Replace Talos_RDF_Viewer.py with the newer file and refresh the
dependencies:
pip install --upgrade flask rdflib pyvis
.rdf, .xml,
.ttl or .jsonld file. The format is detected from the
extension.Choose properties first: View Graph draws every property at once and can be extremely slow. Selecting a handful before generating is almost always the right move.
Show Metadata reports three things about the loaded file.
| Graph statistics | Total triples, and counts of object properties (relations between URIs), data properties (relations to literals) and annotation properties (labels, comments) |
|---|---|
| Dublin Core | Read only from owl:Ontology declarations,
under the dc: namespace |
| Namespaces | Taken from the xmlns attributes on the
<rdf:RDF> element — declared namespaces only, never
inferred ones |
The distinction in that last row is worth noting: if a namespace was never declared in the header it will not appear, even if the graph uses it.
Properties are sorted automatically into three kinds, each with its own icon:
label or
comment in the URI; human-readable descriptions.Tick properties individually, or use Select All and Deselect All per category. The generate button sits at the foot of the page.
A worked example from the manual: displaying an ontoterminology of kraters, selecting
otv:isA alone gives the concept hierarchy; adding
otv:denotedByTerm brings in the terms denoting each concept. Two
properties, two very different readings of the same file.
Labels are chosen in order of preference: otv:shortConceptName first,
then rdfs:label, and failing both the final fragment of the URI. Anything
over 35 characters is truncated to the first 15, an ellipsis, and the last 15, so the
distinguishing end of a URI stays visible.
Hovering a node gives the full concept name, the complete URI, and the full literal value where there is one.
| Root | Appears as an object but never as a subject |
|---|---|
| Terminal | Appears as a subject but never as an object |
| Intermediate | Appears as both |
| Literal | A data value: string, number, date |
Edges take a unique colour per property type, are labelled with the final URI fragment, show the full property URI on hover, and carry arrows for direction.
Search runs over both the visible labels and the tooltip content, so a URI or concept
name will match even when it is not what is drawn on the node. * works as a
wildcard — concept* finds everything beginning with
“concept” — and matching is case-insensitive. Matches are highlighted
in yellow, selected, centred in the view, and counted.
The graph resizes with the browser window and works on mobile.
Python is not on your PATH. Reinstall and tick Add Python to PATH.
A library is missing. Run pip install [module_name] for each one
named, or pip install --upgrade flask rdflib pyvis.
Something else is on port 5000. Change the last line of the script to
app.run(port=NEW_PORT, debug=False) and open
http://127.0.0.1:NEW_PORT.
Too many properties, or too large a file. Select fewer properties before generating, and try a smaller graph.
Written by Prof. Christophe Roche, TALOS ERA Chair Holder, University of Crete, within the Horizon Europe project grant agreement 101087269.
Released under the PolyForm Noncommercial 1.0.0. You may use, modify and share it for any purpose that is not primarily intended for commercial advantage or monetary compensation: research, teaching and personal use all qualify. Copies and modified versions must carry the licence and the notices that came with them. The software is provided as is, without warranty.
PolyForm Noncommercial is a source-available licence rather than an open source one: the noncommercial restriction is not permitted under the Open Source Definition.
Roche, C. (2025). RDF Viewer (1.0).
TALOS AI4SSH Laboratory, University of Crete.
http://talos-ai4ssh.eu/RDF_Viewer.
TALOS Laboratory
Start typing to search the content of this page.