Welcome to the SETLr (Semantic Extract, Transform and Load-er) documentation!
- Quick Start
- Installation
- Tutorial
- JSLDT Template Language
- Python API
- Advanced Features
- Examples
- CLI Reference
SETLr is a powerful tool for generating RDF graphs from tabular data sources. It uses declarative SETL (Semantic Extract, Transform, Load) scripts to:
- Extract data from CSV, Excel, JSON, XML, and RDF sources
- Transform data using JSON-LD templates with Jinja2 templating
- Load results to files or SPARQL endpoints
- π Multiple Data Formats: CSV, Excel, JSON, XML, RDF, SAS files
- π Powerful Transformations: JSON-LD templates with @if, @for, @with control structures
- π Python Integration: Call from Python code or use custom Python functions
- β‘ Streaming: Efficient XML parsing for large files with XPath filtering
- β Validation: Built-in SHACL validation support
- π― SPARQL: Execute SPARQL queries and load to endpoints
from rdflib import Graph
import setlr
# Load your SETL script
setl_graph = Graph()
setl_graph.parse("my_script.setl.ttl", format="turtle")
# Execute the ETL pipeline
resources = setlr.run_setl(setl_graph)
# Access generated RDF
output_graph = resources[URIRef('http://example.com/output')]- New to SETLr? Start with the Quick Start Guide
- Want to learn the basics? Follow the Tutorial
- Need to write transforms? Check the JSLDT Template Language
- Using Python? See the Python API Documentation