Skip to content
/ de Public

CLI tool for creating, querying and inspecting RDF data in HDT format. Enables efficient semantic workflows using SPARQL and supports a variety of RDF and result serialization formats.

License

Notifications You must be signed in to change notification settings

DeciSym/de

Repository files navigation

Latest Version Lint Build Documentation

DeciSym Engine

DeciSym Engine (de) is a command-line tool for creating, querying, and inspecting RDF data in the HDT (Header, Dictionary, Triples) format. It enables efficient semantic data workflows using SPARQL and supports a variety of RDF and result serialization formats.

Features

  • Convert RDF data into compact, indexed .hdt files
  • Query RDF and HDT files using SPARQL
  • View metadata and statistics for HDT files
  • Supports multiple output formats including CSV, JSON, Turtle, and more
  • Simple CLI interface with verbosity control

Installation

  1. Download the latest release version and install the .deb
apt install de_${VERSION}_amd64.deb -y
  1. Run with Docker:
docker run --rm decisym/de:latest --help
  1. Build from source (requires Rust and Cargo):
git clone https://github.com/DeciSym/de.git
cd de
cargo build --release
  1. COMING SOON Install the CLI with cargo install
cargo install de

Usage Overview

Available commands:

  • create – Convert RDF data into an HDT file
  • query – Execute SPARQL queries on HDT/RDF data
  • view – View metadata and statistics for an HDT file
  • help – Show command-specific help

Commands

create

Convert RDF data into a .hdt file.

de create --output-name data.hdt --data example.ttl
Options:
  • -o, --output-name <OUTPUT_NAME>: Name of the output HDT file (should end in .hdt) [required]
  • -d, --data <DATA>: One or more RDF source files (e.g., .ttl, .nt) to include in the HDT
  • -v, --verbose: Increase verbosity
  • -q, --quiet: Suppress output
  • -h, --help: Show help

query

Execute a SPARQL query over RDF and/or HDT files.

de query --data data.hdt --sparql query.rq --output json
Options:
Example execution:
de create --output-name apple.hdt --data apple.ttl
de query --data apple.hdt --sparql query-color.rq
fruit,color
http://example.org/Apple,Red

ex apple.ttl:

@prefix ex: <http://example.org/>.
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.

ex:Apple rdf:type ex:Fruit;
  rdfs:label "Apple";
  ex:variety "Red Delicious";
  ex:hasColor "Red";
  ex:weight "150 grams";
  ex:origin "United States";
  ex:isOrganic true.

ex:Fruit rdf:type rdfs:Class;
  rdfs:label "Fruit".

ex query-color.rq:

PREFIX ex: <http://example.org/>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>

SELECT ?fruit ?color
WHERE {
  ?fruit ex:hasColor ?color 
}

ORDER BY DESC(?fruit)

view

Print metadata and statistics about an HDT file.

de view --data data.hdt
Options:
  • -d, --data <DATA>: One or more HDT files
  • -v, --verbose: Increase verbosity
  • -q, --quiet: Suppress output
  • -h, --help: Show help

License

This project is licensed under the BSD 3-Clause License - see the LICENSE file for details.

About

CLI tool for creating, querying and inspecting RDF data in HDT format. Enables efficient semantic workflows using SPARQL and supports a variety of RDF and result serialization formats.

Topics

Resources

License

Stars

Watchers

Forks

Contributors 2

  •  
  •  

Languages