-
Notifications
You must be signed in to change notification settings - Fork 30
Open
Labels
CompactFor SHACL 1.2 Compact SyntaxFor SHACL 1.2 Compact Syntax
Milestone
Description
@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:
- Diagnostics (error hints)
- Hover tooltips (identifies entities in SHACL and shows "expected" symbols in the case of an error)
- Completion suggestions for standard SHACL QNames
With a dedicated SHACLC syntax, we can add even more features, eg
- more keywords and synonyms, eg
xor, xone, ><
all mean the same - regexp syntax check
Note to self: SPARQL LSP for Emacs: lsp-sparql.el
Stardog people: maybe it's better to move this issue to your project?
Metadata
Metadata
Assignees
Labels
CompactFor SHACL 1.2 Compact SyntaxFor SHACL 1.2 Compact Syntax