Skip to content

GordianDziwis/RDF-Diagram-Framework

Repository files navigation

RDF Diagram Framework

A comprehensive toolkit for creating, editing, and converting visual RDF graph representations. An RDF-Diagram can express all concepts of RDF 1.1 (except RDF Datasets).

This is an RDF-Diagram created with Draw.io:

image

and it directly translates to turtle:

# Prefixes ommitted

<http://example.org/bob#me> a foaf:Person;
  foaf:topic_interest wd:Q12418;
  schema:birthDate "1990-07-04"^^xsd:date;
  foaf:knows <http://example.org/alice#me>.

<http://data.europeana.eu/item/04802/243FA8618938F4117025F17A8B813C5F9AA4D619>
  dcterms:subject wd:Q12418.

wd:Q12418
  dcterms:creator dbp:Leonardo_da_Vinci;
  dcterms:title "Mona Lisa".

Overview

The RDF-Diagram-Framework provides a standardized visual language for RDF graphs, making them more accessible and easier to understand. It offers a complete ecosystem of tools for working with RDF diagrams, from visual editing to programmatic manipulation.

Key Components

  • Visual RDF graph creation and editing
  • Real-time syntax and RDF-Diagram validation
  • Auto-completion for RDF terms
  • Integrated shape library
  • Live RDF preview
  • Export to Turtle
  • Convert from Draw.io RDF-Diagrams to RDF serializations (Turtle and N-Triples)
  • Support for multiple RDF formats
  • Batch processing capabilities
  • Available for Rust and JavaScript
  • RDF conversion utilities
  • Comprehensive visual language definition
  • Covers RDF 1.1 (except RDF Datasets)
  • Syntax is equivalent to Turtle 1.1
  • Semantic mappings of diagram elements to RDF
  • Best practices and examples

Usage

Using the Draw.io Plugin

  1. Visit Draw.io with RDF-D Plugin
  2. Use the RDF shapes from the library panel
  3. Create your RDF diagrams
  4. Access the RDF preview via the RDF Panel button

Installing the CLI

git clone git@gitlab.com:infai/rdf-diagram-framework.git
cd rdf-diagram-framework
cargo install --path=rdf-diagram-cli

Using the Library

cargo install rdf-diagram-lib
use rdf_diagram_lib::{drawio_to_turtle, Result};

let xml = include_str!("diagram.drawio");
let turtle = drawio_to_turtle(&xml)?;

About

a framework for transforming diagrams into RDF data

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •