QLever Skill
Master QLever, the high-performance open-source RDF graph database developed by Hannah Bast's team at the University of Freiburg. QLever handles hundreds of billions of triples on commodity hardware, implements full SPARQL 1.1, and offers unique features for text search, GeoSPARQL, and context-sensitive autocompletion.
Core Philosophy (Cagle's Perspective)
"QLever represents the next generation of knowledge graph infrastructure—where SPARQL meets scale without compromise."
Why QLever Matters:
- Scale without sacrifice: Handle Wikidata's 18+ billion triples on a single machine with sub-second query times
- SPARQL 1.1 complete: Full standard compliance including federated queries, named graphs, and SPARQL Update
- Beyond plain SPARQL: Integrated text search (
ql:contains-word, ql:contains-entity) and GeoSPARQL support
- Developer experience: Context-sensitive autocompletion makes query writing accessible to non-experts
- Open source excellence: Apache 2.0 licensed, active development, strong academic foundation
Guide Router
Load only ONE guide per request. Match user intent to the most specific keywords:
| User Intent |
Load Guide |
Content |
| Installation, CLI, Qleverfile setup |
02-INSTALLATION-CLI.md |
pip install, docker, configuration |
| Basic SPARQL queries, SELECT, CONSTRUCT |
03-QUERY-PATTERNS.md |
Query forms, patterns, examples |
| Text search, ql:contains-word, full-text |
04-TEXT-SEARCH.md |
SPARQL+Text predicates |
| GeoSPARQL, spatial queries, OSM data |
05-GEOSPARQL.md |
ogc:sfContains, sfIntersects |
| Federated queries, SERVICE, Wikidata |
06-FEDERATION.md |
Multi-endpoint queries |
| Public endpoints, demos, datasets |
07-PUBLIC-ENDPOINTS.md |
Wikidata, OSM, UniProt |
| Performance, optimization, benchmarks |
08-PERFORMANCE.md |
Tuning, comparisons |
| HTTP API, JSON results, curl |
09-HTTP-API.md |
REST endpoints, formats |
| SPARQL Update, INSERT, DELETE |
10-UPDATES.md |
Data modification |
Default behavior: If intent is unclear, start with this entry point's quick reference.
QLever Quick Reference
What is QLever?
QLever (pronounced "clever") is:
- Graph database: Implements RDF and SPARQL standards
- High-performance: 5-10x faster than Blazegraph/Virtuoso on most queries
- Scalable: Handles 100+ billion triples, tested to 1 trillion
- Feature-rich: Text search, GeoSPARQL, autocompletion, live query analysis
- Open source: Apache 2.0 license, active development
Key Capabilities
| Feature |
Description |
| SPARQL 1.1 |
Full compliance including UPDATE, federated queries, named graphs |
| Text Search |
ql:contains-word, ql:contains-entity for combined semantic+text queries |
| GeoSPARQL |
ogc:sfContains, ogc:sfIntersects, distance calculations |
| Autocompletion |
Context-sensitive suggestions for entities, predicates, objects |
| Visualization |
Map rendering of millions of geometric objects |
| Query Analysis |
Live execution plans and performance insights |
Installation
Quick Start with pip
# Install qlever CLI (recommended: use pipx or uv)
pip install qlever
# or
pipx install qlever
# or
uv tool install qlever
# Get a preconfigured dataset
qlever setup-config olympics
qlever get-data
qlever index
qlever start
# Test with a query
qlever query "SELECT * WHERE { ?s ?p ?o } LIMIT 10"
# Launch the web UI
qlever ui
Available Configurations
# List available preconfigured datasets
qlever setup-config --list
# Popular options:
qlever setup-config wikidata # Complete Wikidata (18B+ triples)
qlever setup-config osm-planet # OpenStreetMap (40B+ triples)
qlever setup-config olympics # Small demo (2M triples)
qlever setup-config dblp # Computer science bibliography
qlever setup-config uniprot # Protein database
The Qleverfile
All QLever operations are controlled by a single configuration file called Qleverfile:
# Example Qleverfile for custom dataset
[data]
NAME = my-knowledge-graph
GET_DATA_CMD = curl -L -o data.ttl https://example.org/data.ttl
FORMAT = turtle
[index]
INPUT_FILES = data.ttl
SETTINGS_JSON = {"prefixes": {"": "http://example.org/"}}
[server]
PORT = 7001
MEMORY_FOR_QUERIES = 10G
CACHE_MAX_SIZE = 5G
[ui]
UI_PORT = 7000
CLI Commands
| Command |
Description |
qlever setup-config <name> |
Fetch preconfigured Qleverfile |
qlever get-data |
Download dataset |
qlever index |
Build index structures |
qlever start |
Start SPARQL server |
qlever stop |
Stop server |
qlever query "<sparql>" |
Execute query |
qlever ui |
Launch web interface |
qlever status |
Show server status |
qlever log |
View server logs |
qlever --show |
Preview command without executing |
SPARQL Query Examples
Basic Queries
# Find all types of entities
SELECT ?type (COUNT(?s) AS ?count)
WHERE { ?s a ?type }
GROUP BY ?type
ORDER BY DESC(?count)
LIMIT 20
# Get entity with all properties
SELECT ?predicate ?object
WHERE { <http://example.org/entity1> ?predicate ?object }
# Find entities by label
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
SELECT ?entity ?label
WHERE {
?entity rdfs:label ?label .
FILTER (CONTAINS(LCASE(STR(?label)), "example"))
}
LIMIT 100
QLever Text Search
# Find entities mentioned with specific words
PREFIX ql: <http://qlever.cs.uni-freiburg.de/builtin/>
SELECT ?entity ?text (COUNT(?text) AS ?mentions)
WHERE {
?text ql:contains-entity ?entity .
?text ql:contains-word "artificial intelligence" .
}
GROUP BY ?entity ?text
ORDER BY DESC(?mentions)
LIMIT 20
# Wildcard text search
SELECT ?entity ?text
WHERE {
?text ql:contains-entity ?entity .
?text ql:contains-word "machine learn*" . # Matches learning, learns, etc.
}
GeoSPARQL Queries
# Find all elements within a geographic region (e.g., France)
PREFIX ogc: <http://www.opengis.net/rdf#>
PREFIX osmrel: <https://www.openstreetmap.org/relation/>
PREFIX osmkey: <https://www.openstreetmap.org/wiki/Key:>
SELECT ?element ?name
WHERE {
osmrel:2202162 ogc:sfContains ?element . # France relation ID
?element osmkey:railway "station" ;
osmkey:name ?name .
}
LIMIT 100
# Calculate distance between points
PREFIX geof: <http://www.opengis.net/def/function/geosparql/>
SELECT ?place1 ?place2 ?distance
WHERE {
?place1 geo:hasGeometry/geo:asWKT ?geom1 .
?place2 geo:hasGeometry/geo:asWKT ?geom2 .
BIND(geof:distance(?geom1, ?geom2, <http://www.opengis.net/def/uom/OGC/1.0/kilometre>) AS ?distance)
FILTER(?distance < 10)
}
HTTP API
Query Endpoint
# Basic query (TSV output)
curl -s "https://qlever.dev/api/wikidata" \
-H "Accept: text/tab-separated-values" \
-H "Content-Type: application/sparql-query" \
--data "SELECT * WHERE { ?s ?p ?o } LIMIT 10"
# JSON output (SPARQL Results JSON)
curl -s "https://qlever.dev/api/wikidata" \
-H "Accept: application/sparql-results+json" \
-H "Content-Type: application/sparql-query" \
--data "SELECT ?s ?p ?o WHERE { ?s ?p ?o } LIMIT 10"
# QLever custom JSON format
curl -s "https://qlever.dev/api/wikidata" \
-H "Accept: application/qlever-results+json" \
-H "Content-Type: application/sparql-query" \
--data "SELECT ?s ?p ?o WHERE { ?s ?p ?o } LIMIT 10"
Supported Media Types
| Accept Header |
Format |
text/csv |
CSV |
text/tab-separated-values |
TSV |
application/sparql-results+json |
W3C SPARQL JSON |
application/qlever-results+json |
QLever custom JSON |
application/sparql-results+xml |
SPARQL XML |
Public Endpoints
QLever Demo Instances
Accessing Demo UI
Visit https://qlever.dev/ for interactive query interfaces with:
- Context-sensitive autocompletion
- Example queries (70+ per dataset)
- Map visualization for geographic data
- Result download (CSV/TSV)
Performance Benchmarks
QLever vs Other Engines (DBLP Dataset, 390M Triples)
| Engine |
Index Time |
Index Size |
Avg Query Time |
| QLever |
231s |
8 GB |
0.7s |
| Virtuoso |
561s |
13 GB |
2.2s |
| GraphDB |
1,066s |
28 GB |
16s |
| Blazegraph |
6,326s |
67 GB |
4.3s |
| Apache Jena |
2,392s |
42 GB |
varies |
Wikidata Benchmark (298 queries)
| Metric |
QLever |
Official WDQS |
Virtuoso |
| Success Rate |
98% |
79% |
89% |
| Queries <1s |
78% |
36% |
54% |
| Avg Time |
1.38s |
6.98s |
4.11s |
| Median Time |
0.24s |
2.47s |
0.74s |
QLeverize (Enterprise)
QLeverize provides commercial support from the QLever team:
| Tier |
Features |
| Community |
Free, open source, GitHub Issues support |
| Standard |
Priority support, private issue tracking, QA binaries |
| Enterprise |
24/7 support, SLAs, priority features, managed hosting |
Services include:
- Enterprise consulting and query optimization
- Managed cloud deployments (Azure/AWS)
- Embedded/edge solutions for automotive, medical, IoT
- Pre-loaded datasets (Wikidata, UniProt, PubChem, OSM)
Common Patterns
Wikidata Query
PREFIX wd: <http://www.wikidata.org/entity/>
PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
# Find all universities with founding date
SELECT ?university ?name ?founded
WHERE {
?university wdt:P31 wd:Q3918 ; # instance of university
rdfs:label ?name ;
wdt:P571 ?founded . # inception date
FILTER (LANG(?name) = "en")
}
ORDER BY ?founded
LIMIT 100
OpenStreetMap Query
PREFIX osmkey: <https://www.openstreetmap.org/wiki/Key:>
PREFIX osm2rdf: <https://osm2rdf.cs.uni-freiburg.de/rdf#>
PREFIX geo: <http://www.opengis.net/ont/geosparql#>
# Find all cafes with their locations
SELECT ?cafe ?name ?geometry
WHERE {
?cafe osmkey:amenity "cafe" ;
osmkey:name ?name ;
geo:hasGeometry/geo:asWKT ?geometry .
}
LIMIT 100
Federated Query
PREFIX wdt: <http://www.wikidata.org/prop/direct/>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
SELECT ?item ?itemLabel ?osmElement
WHERE {
# Local OSM data
?osmElement osmkey:wikidata ?wikidataId .
# Federated query to Wikidata
SERVICE <https://query.wikidata.org/sparql> {
?item wdt:P31 wd:Q515 ; # instance of city
rdfs:label ?itemLabel .
FILTER (LANG(?itemLabel) = "en")
}
FILTER (STR(?item) = ?wikidataId)
}
LIMIT 50
Troubleshooting
Common Issues
| Issue |
Solution |
| Index fails |
Check disk space, increase memory in Qleverfile |
| Query timeout |
Add LIMIT, simplify patterns, check index |
| Port in use |
Change PORT in Qleverfile or qlever stop first |
| Docker permission denied |
Run with sudo or add user to docker group |
Debugging
# Show what command would execute
qlever index --show
# Check server status
qlever status
# View logs
qlever log
# Test with simple query
qlever query "SELECT (COUNT(*) AS ?count) WHERE { ?s ?p ?o }"
Resources
Official
Academic
Community
Kurt Cagle's Work
1---2name: qlever3description: Query, configure, and optimize QLever—the high-performance open-source RDF triplestore. Covers SPARQL queries, GeoSPARQL, text search, CLI operations, and public endpoints. Informed by Kurt Cagle's semantic web expertise.4---56# QLever Skill78Master QLever, the high-performance open-source RDF graph database developed by Hannah Bast's team at the University of Freiburg. QLever handles hundreds of billions of triples on commodity hardware, implements full SPARQL 1.1, and offers unique features for text search, GeoSPARQL, and context-sensitive autocompletion.910---1112## Core Philosophy (Cagle's Perspective)1314> "QLever represents the next generation of knowledge graph infrastructure—where SPARQL meets scale without compromise."1516**Why QLever Matters:**17181. **Scale without sacrifice**: Handle Wikidata's 18+ billion triples on a single machine with sub-second query times192. **SPARQL 1.1 complete**: Full standard compliance including federated queries, named graphs, and SPARQL Update203. **Beyond plain SPARQL**: Integrated text search (`ql:contains-word`, `ql:contains-entity`) and GeoSPARQL support214. **Developer experience**: Context-sensitive autocompletion makes query writing accessible to non-experts225. **Open source excellence**: Apache 2.0 licensed, active development, strong academic foundation2324---2526## Guide Router2728Load **only ONE guide** per request. Match user intent to the most specific keywords:2930| User Intent | Load Guide | Content |31|-------------|------------|---------|32| Installation, CLI, Qleverfile setup | 02-INSTALLATION-CLI.md | pip install, docker, configuration |33| Basic SPARQL queries, SELECT, CONSTRUCT | 03-QUERY-PATTERNS.md | Query forms, patterns, examples |34| Text search, ql:contains-word, full-text | 04-TEXT-SEARCH.md | SPARQL+Text predicates |35| GeoSPARQL, spatial queries, OSM data | 05-GEOSPARQL.md | ogc:sfContains, sfIntersects |36| Federated queries, SERVICE, Wikidata | 06-FEDERATION.md | Multi-endpoint queries |37| Public endpoints, demos, datasets | 07-PUBLIC-ENDPOINTS.md | Wikidata, OSM, UniProt |38| Performance, optimization, benchmarks | 08-PERFORMANCE.md | Tuning, comparisons |39| HTTP API, JSON results, curl | 09-HTTP-API.md | REST endpoints, formats |40| SPARQL Update, INSERT, DELETE | 10-UPDATES.md | Data modification |4142**Default behavior**: If intent is unclear, start with this entry point's quick reference.4344---4546## QLever Quick Reference4748### What is QLever?4950QLever (pronounced "clever") is:5152- **Graph database**: Implements RDF and SPARQL standards53- **High-performance**: 5-10x faster than Blazegraph/Virtuoso on most queries54- **Scalable**: Handles 100+ billion triples, tested to 1 trillion55- **Feature-rich**: Text search, GeoSPARQL, autocompletion, live query analysis56- **Open source**: Apache 2.0 license, active development5758### Key Capabilities5960| Feature | Description |61|---------|-------------|62| SPARQL 1.1 | Full compliance including UPDATE, federated queries, named graphs |63| Text Search | `ql:contains-word`, `ql:contains-entity` for combined semantic+text queries |64| GeoSPARQL | `ogc:sfContains`, `ogc:sfIntersects`, distance calculations |65| Autocompletion | Context-sensitive suggestions for entities, predicates, objects |66| Visualization | Map rendering of millions of geometric objects |67| Query Analysis | Live execution plans and performance insights |6869---7071## Installation7273### Quick Start with pip7475```bash76# Install qlever CLI (recommended: use pipx or uv)77pip install qlever78# or79pipx install qlever80# or81uv tool install qlever8283# Get a preconfigured dataset84qlever setup-config olympics85qlever get-data86qlever index87qlever start8889# Test with a query90qlever query "SELECT * WHERE { ?s ?p ?o } LIMIT 10"9192# Launch the web UI93qlever ui94```9596### Available Configurations9798```bash99# List available preconfigured datasets100qlever setup-config --list101102# Popular options:103qlever setup-config wikidata # Complete Wikidata (18B+ triples)104qlever setup-config osm-planet # OpenStreetMap (40B+ triples)105qlever setup-config olympics # Small demo (2M triples)106qlever setup-config dblp # Computer science bibliography107qlever setup-config uniprot # Protein database108```109110---111112## The Qleverfile113114All QLever operations are controlled by a single configuration file called `Qleverfile`:115116```ini117# Example Qleverfile for custom dataset118[data]119NAME = my-knowledge-graph120GET_DATA_CMD = curl -L -o data.ttl https://example.org/data.ttl121FORMAT = turtle122123[index]124INPUT_FILES = data.ttl125SETTINGS_JSON = {"prefixes": {"": "http://example.org/"}}126127[server]128PORT = 7001129MEMORY_FOR_QUERIES = 10G130CACHE_MAX_SIZE = 5G131132[ui]133UI_PORT = 7000134```135136### CLI Commands137138| Command | Description |139|---------|-------------|140| `qlever setup-config <name>` | Fetch preconfigured Qleverfile |141| `qlever get-data` | Download dataset |142| `qlever index` | Build index structures |143| `qlever start` | Start SPARQL server |144| `qlever stop` | Stop server |145| `qlever query "<sparql>"` | Execute query |146| `qlever ui` | Launch web interface |147| `qlever status` | Show server status |148| `qlever log` | View server logs |149| `qlever --show` | Preview command without executing |150151---152153## SPARQL Query Examples154155### Basic Queries156157```sparql158# Find all types of entities159SELECT ?type (COUNT(?s) AS ?count)160WHERE { ?s a ?type }161GROUP BY ?type162ORDER BY DESC(?count)163LIMIT 20164165# Get entity with all properties166SELECT ?predicate ?object167WHERE { <http://example.org/entity1> ?predicate ?object }168169# Find entities by label170PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>171SELECT ?entity ?label172WHERE {173 ?entity rdfs:label ?label .174 FILTER (CONTAINS(LCASE(STR(?label)), "example"))175}176LIMIT 100177```178179### QLever Text Search180181```sparql182# Find entities mentioned with specific words183PREFIX ql: <http://qlever.cs.uni-freiburg.de/builtin/>184185SELECT ?entity ?text (COUNT(?text) AS ?mentions)186WHERE {187 ?text ql:contains-entity ?entity .188 ?text ql:contains-word "artificial intelligence" .189}190GROUP BY ?entity ?text191ORDER BY DESC(?mentions)192LIMIT 20193194# Wildcard text search195SELECT ?entity ?text196WHERE {197 ?text ql:contains-entity ?entity .198 ?text ql:contains-word "machine learn*" . # Matches learning, learns, etc.199}200```201202### GeoSPARQL Queries203204```sparql205# Find all elements within a geographic region (e.g., France)206PREFIX ogc: <http://www.opengis.net/rdf#>207PREFIX osmrel: <https://www.openstreetmap.org/relation/>208PREFIX osmkey: <https://www.openstreetmap.org/wiki/Key:>209210SELECT ?element ?name211WHERE {212 osmrel:2202162 ogc:sfContains ?element . # France relation ID213 ?element osmkey:railway "station" ;214 osmkey:name ?name .215}216LIMIT 100217218# Calculate distance between points219PREFIX geof: <http://www.opengis.net/def/function/geosparql/>220221SELECT ?place1 ?place2 ?distance222WHERE {223 ?place1 geo:hasGeometry/geo:asWKT ?geom1 .224 ?place2 geo:hasGeometry/geo:asWKT ?geom2 .225 BIND(geof:distance(?geom1, ?geom2, <http://www.opengis.net/def/uom/OGC/1.0/kilometre>) AS ?distance)226 FILTER(?distance < 10)227}228```229230---231232## HTTP API233234### Query Endpoint235236```bash237# Basic query (TSV output)238curl -s "https://qlever.dev/api/wikidata" \239 -H "Accept: text/tab-separated-values" \240 -H "Content-Type: application/sparql-query" \241 --data "SELECT * WHERE { ?s ?p ?o } LIMIT 10"242243# JSON output (SPARQL Results JSON)244curl -s "https://qlever.dev/api/wikidata" \245 -H "Accept: application/sparql-results+json" \246 -H "Content-Type: application/sparql-query" \247 --data "SELECT ?s ?p ?o WHERE { ?s ?p ?o } LIMIT 10"248249# QLever custom JSON format250curl -s "https://qlever.dev/api/wikidata" \251 -H "Accept: application/qlever-results+json" \252 -H "Content-Type: application/sparql-query" \253 --data "SELECT ?s ?p ?o WHERE { ?s ?p ?o } LIMIT 10"254```255256### Supported Media Types257258| Accept Header | Format |259|---------------|--------|260| `text/csv` | CSV |261| `text/tab-separated-values` | TSV |262| `application/sparql-results+json` | W3C SPARQL JSON |263| `application/qlever-results+json` | QLever custom JSON |264| `application/sparql-results+xml` | SPARQL XML |265266---267268## Public Endpoints269270### QLever Demo Instances271272| Dataset | Endpoint | Triples |273|---------|----------|---------|274| Wikidata | https://qlever.dev/api/wikidata | 18B+ |275| OpenStreetMap | https://qlever.dev/api/osm-planet | 40B+ |276| UniProt | https://qlever.dev/api/uniprot | 100B+ |277| PubChem | https://qlever.dev/api/pubchem | 150B+ |278| DBLP | https://sparql.dblp.org/sparql | 390M |279| DBpedia | https://qlever.dev/api/dbpedia | 1B+ |280| Freebase | https://qlever.dev/api/freebase | 3B+ |281282### Accessing Demo UI283284Visit https://qlever.dev/ for interactive query interfaces with:285- Context-sensitive autocompletion286- Example queries (70+ per dataset)287- Map visualization for geographic data288- Result download (CSV/TSV)289290---291292## Performance Benchmarks293294### QLever vs Other Engines (DBLP Dataset, 390M Triples)295296| Engine | Index Time | Index Size | Avg Query Time |297|--------|------------|------------|----------------|298| **QLever** | 231s | 8 GB | **0.7s** |299| Virtuoso | 561s | 13 GB | 2.2s |300| GraphDB | 1,066s | 28 GB | 16s |301| Blazegraph | 6,326s | 67 GB | 4.3s |302| Apache Jena | 2,392s | 42 GB | varies |303304### Wikidata Benchmark (298 queries)305306| Metric | QLever | Official WDQS | Virtuoso |307|--------|--------|---------------|----------|308| Success Rate | **98%** | 79% | 89% |309| Queries <1s | **78%** | 36% | 54% |310| Avg Time | **1.38s** | 6.98s | 4.11s |311| Median Time | **0.24s** | 2.47s | 0.74s |312313---314315## QLeverize (Enterprise)316317[QLeverize](https://www.qleverize.com/) provides commercial support from the QLever team:318319| Tier | Features |320|------|----------|321| **Community** | Free, open source, GitHub Issues support |322| **Standard** | Priority support, private issue tracking, QA binaries |323| **Enterprise** | 24/7 support, SLAs, priority features, managed hosting |324325Services include:326- Enterprise consulting and query optimization327- Managed cloud deployments (Azure/AWS)328- Embedded/edge solutions for automotive, medical, IoT329- Pre-loaded datasets (Wikidata, UniProt, PubChem, OSM)330331---332333## Common Patterns334335### Wikidata Query336337```sparql338PREFIX wd: <http://www.wikidata.org/entity/>339PREFIX wdt: <http://www.wikidata.org/prop/direct/>340PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>341342# Find all universities with founding date343SELECT ?university ?name ?founded344WHERE {345 ?university wdt:P31 wd:Q3918 ; # instance of university346 rdfs:label ?name ;347 wdt:P571 ?founded . # inception date348 FILTER (LANG(?name) = "en")349}350ORDER BY ?founded351LIMIT 100352```353354### OpenStreetMap Query355356```sparql357PREFIX osmkey: <https://www.openstreetmap.org/wiki/Key:>358PREFIX osm2rdf: <https://osm2rdf.cs.uni-freiburg.de/rdf#>359PREFIX geo: <http://www.opengis.net/ont/geosparql#>360361# Find all cafes with their locations362SELECT ?cafe ?name ?geometry363WHERE {364 ?cafe osmkey:amenity "cafe" ;365 osmkey:name ?name ;366 geo:hasGeometry/geo:asWKT ?geometry .367}368LIMIT 100369```370371### Federated Query372373```sparql374PREFIX wdt: <http://www.wikidata.org/prop/direct/>375PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>376377SELECT ?item ?itemLabel ?osmElement378WHERE {379 # Local OSM data380 ?osmElement osmkey:wikidata ?wikidataId .381382 # Federated query to Wikidata383 SERVICE <https://query.wikidata.org/sparql> {384 ?item wdt:P31 wd:Q515 ; # instance of city385 rdfs:label ?itemLabel .386 FILTER (LANG(?itemLabel) = "en")387 }388 FILTER (STR(?item) = ?wikidataId)389}390LIMIT 50391```392393---394395## Troubleshooting396397### Common Issues398399| Issue | Solution |400|-------|----------|401| Index fails | Check disk space, increase memory in Qleverfile |402| Query timeout | Add LIMIT, simplify patterns, check index |403| Port in use | Change PORT in Qleverfile or `qlever stop` first |404| Docker permission denied | Run with `sudo` or add user to docker group |405406### Debugging407408```bash409# Show what command would execute410qlever index --show411412# Check server status413qlever status414415# View logs416qlever log417418# Test with simple query419qlever query "SELECT (COUNT(*) AS ?count) WHERE { ?s ?p ?o }"420```421422---423424## Resources425426### Official427428- **Documentation**: https://docs.qlever.dev/429- **GitHub**: https://github.com/ad-freiburg/qlever430- **Public Demos**: https://qlever.dev/431- **PyPI**: https://pypi.org/project/qlever/432- **QLeverize**: https://www.qleverize.com/433434### Academic435436- [QLever: A Query Engine for Efficient SPARQL+Text Search](https://dl.acm.org/doi/10.1145/3132847.3132921) (CIKM 2017)437- [Efficient SPARQL Autocompletion via SPARQL](https://arxiv.org/abs/2104.14595) (CIKM 2022)438- [Sparqloscope Benchmark](https://link.springer.com/chapter/10.1007/978-3-032-09530-5_2) (ISWC 2025)439440### Community441442- [Hannah Bast's Research Group](https://ad.informatik.uni-freiburg.de/staff/bast)443- [QLever Wiki (OpenStreetMap)](https://wiki.openstreetmap.org/wiki/QLever)444- [DBLP SPARQL Service](https://blog.dblp.org/2024/09/09/introducing-our-public-sparql-query-service/)445446### Kurt Cagle's Work447448- [The Ontologist](https://ontologist.substack.com/) - Substack newsletter449- [The Cagle Report](https://thecaglereport.com/) - Enterprise data and AI450- [Why SPARQL Is Poised To Set the World on Fire](https://www.linkedin.com/pulse/why-sparql-poised-set-world-fire-kurt-cagle) - LinkedIn