w3c / shacl

SHACL Community Group (Post-REC activitities)
27 stars 4 forks source link

SHACLC LSP implementation #50

Open VladimirAlexiev opened 3 months ago

VladimirAlexiev commented 3 months ago

@jeswr @anneeb @kendall Once the SHACLC grammar is unified/finalized (see 4 inputs in https://github.com/VladimirAlexiev/shacl/tree/shaclc-grammars/shacl-compact-syntax/grammar), we'll want to implement Language Server Protocol (LSP) for it.

Stardog has made https://github.com/stardog-union/stardog-language-servers (and more in https://marketplace.visualstudio.com/items?itemName=stardog-union.vscode-stardog-languages)

It supports a bunch of semantic languages, including Turtle serialization of SHACL. LSP features currently supported include:

With a dedicated SHACLC syntax, we can add even more features, eg

Note to self: SPARQL LSP for Emacs: lsp-sparql.el

Stardog people: maybe it's better to move this issue to your project?

jeswr commented 3 months ago

I've got a very basic (to the point that it might just be easier to create a new one) SHACLC LSP started over at https://github.com/jeswr/shaclc-language-server

VladimirAlexiev commented 3 months ago

@jeswr Yours mentions these features, which nicely complement the Stardog LSP features:

So combining your start with their approach may bring the best results!