Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>SWLS – Turtle, TriG, SPARQL & JSON-LD Language ServerNew to Visual Studio Code? Get it now.
SWLS – Turtle, TriG, SPARQL & JSON-LD Language Server

SWLS – Turtle, TriG, SPARQL & JSON-LD Language Server

Arthur Vercruysse

|
731 installs
| (3) | Free
Semantic Web Language Server for Turtle, TriG, SPARQL and JSON-LD — autocompletion, diagnostics, formatting and more
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Semantic Web Language Server

Docs LICENSE Visual Studio Marketplace Last Updated

IDE support for Semantic Web languages — Turtle, TriG, JSON-LD, and SPARQL. Autocompletion, diagnostics, formatting, SHACL validation, and more.

Table of Contents

  • Features
  • Installation
    • VS Code
    • NeoVim
  • Configuration
  • Documentation
  • Screenshots

Features

Diagnostics

  • Syntax errors — immediate feedback on malformed documents
  • Undefined prefixes — flags uses of undeclared namespace prefixes
  • SHACL shape violations — validates data against loaded SHACL shapes

Completion

  • Prefix completion — typing foa expands to foaf: and inserts the prefix declaration
  • Property completion — suggests properties ordered by domain relevance
  • Class completion — when the predicate is a, suggests applicable classes

Hover

  • Shows labels, descriptions, and class information for IRIs

Rename

  • Rename terms local to the current file

Formatting

  • Format Turtle and JSON-LD documents

Semantic Highlighting

  • Full semantic token highlighting for all supported languages

Installation

VS Code

Install from the Visual Studio Marketplace or Open VSX Registry.

On startup the extension looks for a native swls binary in its own directory (set swls.command to use a custom path instead). If no binary is found it falls back to a bundled WASM worker so the LSP is available immediately without any extra setup.

In the background it checks GitHub releases for updates. When a newer version is available you will be prompted to install it; after the download completes a window reload switches to the native binary.

NeoVim

A NeoVim plugin is available at SemanticWebLanguageServer/swls.nvim.

Configuration

All settings live under the swls prefix.

Setting Type Default Description
swls.command string "" Path to the swls binary. If empty, the bundled binary in the extension directory is used
swls.turtle boolean true Enable Turtle language support
swls.trig boolean true Enable TriG language support
swls.jsonld boolean true Enable JSON-LD language support
swls.sparql boolean false Enable SPARQL language support (experimental)
swls.checkUpdate boolean true Check GitHub for new releases on startup
swls.automaticUpdate boolean false Install updates without prompting
swls.log string "debug" Log level: error, warn, info, debug, trace
swls.ontologies string[] [] Extra ontology URLs to load
swls.shapes string[] [] Extra SHACL shape URLs to load
swls.disabled string[] [] Features to disable (e.g. "shapes")
swls.prefixDisabled string[] [] Prefixes from prefix.cc to hide from completions
swls.completion.mode string "none" Property completion mode: none (server default), loose (all properties), strict (domain-matched only)
swls.completion.strict string[] [] Namespace prefixes that require a matching domain even in loose mode
swls.completion.except string[] [] Namespace prefixes always suggested regardless of domain, even in strict mode

Documentation

  • lsp-core
  • lang-turtle
  • lang-jsonld
  • lang-sparql
  • swls

Screenshots

Undefined prefix Shape violation
Undefined Prefixes Shape violations
Class completion Property completion
Complete Class Complete Property

Support

If SWLS helps your workflow, consider supporting development:

☕ https://ko-fi.com/ajuvercr

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft