Skip to content

Ontology Viewer is a simple Streamlit-based application designed to visualize and interact with ontology graphs. It provides functionalities to explore namespaces, classes, properties, and visualize hierarchical relationships within the ontology.

Notifications You must be signed in to change notification settings

hypotenuse345/StreamlitOntoViewer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ontology Viewer

Overview

Ontology Viewer is a simple Streamlit-based application designed to visualize and interact with ontology graphs. It provides functionalities to explore namespaces, classes, properties, and visualize hierarchical relationships within the ontology.

Streamlit

Features

  • Graph Status Page: Visualize namespaces, classes, and properties.
  • Class Hierarchy: Display class inheritance relationships.
  • Property Hierarchy: Display property inheritance relationships.
  • Metadata Display: Show detailed metadata for selected nodes.
  • Ontology Export: Export the ontology graph to a file.

Installation

  1. Clone the repository:

    git clone <repository-url>
    cd OntoViewer
  2. Install the required dependencies:

    pip install -r requirements.txt

Usage

  1. Run the application:

    streamlit run app.py
  2. Upload an ontology file (TTL, RDF, OWL) to start visualizing the ontology graph.

File Structure

  • app.py: Main entry point for the Streamlit application.
  • onto_viewer/: Contains the core modules for the application.
    • apps/: Application-specific modules.
      • viewer.py: Main application logic for the Ontology Viewer.
    • utils/: Utility modules for various functionalities.
      • echarts.py: Utility functions for Echarts visualizations.
      • graph_algo.py: Utility functions for graph algorithms.
    • namespaces.py: Namespace definitions and utilities.
  • resources/ontologies/: Directory containing ontology files.
    • DUL.owl.ttl: Example ontology file.

Results

Entry: Entry

Main: Main1

Main2

Main3

Namespace: Namespaces

Classes: Class_Detail

Properties: Property_Detail

Instances: Instance_Detail

Contributing

Contributions are welcome! Please fork the repository and submit pull requests.

License

This project is licensed under the MIT License.

Dependencies

The project requires the following dependencies:

  • numpy==2.2.3
  • pandas==2.2.3
  • pydantic==2.10.6
  • rdflib==7.1.3
  • streamlit==1.42.0
  • streamlit_echarts==0.4.0
  • streamlit_extras==0.5.5

To Do List

  • Add support for SKOS-based semantics.
  • Add SPARQL query functionality.
  • Add functionality to create new classes.
  • Add functionality to create new properties.
  • Add functionality to display and set domain and range for properties.

About

Ontology Viewer is a simple Streamlit-based application designed to visualize and interact with ontology graphs. It provides functionalities to explore namespaces, classes, properties, and visualize hierarchical relationships within the ontology.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages