JSPM

  • Created
  • Published
  • Downloads 122
  • Score
    100M100P100Q72430F
  • License MIT

SPARQL 1.1 formatter

Package Exports

  • sparql-formatter
  • sparql-formatter/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (sparql-formatter) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

SPARQL 1.1 formatter

Website: https://sparqling.github.io/sparql-formatter/

npm: https://www.npmjs.com/package/sparql-formatter

Docker: https://hub.docker.com/r/sparqling/sparql-formatter

Usage in web pages

Read the following file:

<script src='https://cdn.jsdelivr.net/gh/sparqling/sparql-formatter@main/dist/main.js'></script>

Use the following function:

spfmt(query, indentDepth = 2)

  • query: string
  • indentDepth: integer (>= 0)

Usage in Node.js

Example:

const spfmt = require('sparql-formatter');

console.log(spfmt('select * where {?s ?p ?o}'));

Output:

SELECT *
WHERE {
  ?s ?p ?o .
}

Command line interface

$ npm install -g sparql-formatter

A symbolic link to ./bin/sparql-formatter.js will be created as sparql-formatter in your path.

Example:

$ sparql-formatter sparql11-query/02.2.rq or $ cat sparql11-query/02.2.rq | sparql-formatter

Input:

$ cat sparql11-query/02.2.rq
PREFIX foaf:   <http://xmlns.com/foaf/0.1/>
PREFIX foaf:   <http://xmlns.com/foaf/0.1/>
SELECT ?name ?mbox
WHERE
  { ?x foaf:name ?name .
    ?x foaf:mbox ?mbox }

Output:

$ sparql-formatter sparql11-query/02.2.rq
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>

SELECT ?name ?mbox
WHERE {
  ?x foaf:name ?name .
  ?x foaf:mbox ?mbox .
}

Install from GitHub

$ git clone https://github.com/sparqling/sparql-formatter
$ cd sparql-formatter
$ npm ci

Now the CLI programs are under ./bin/.

Optional:

$ npm link

will make a symbolic link to ./bin/* as sparql-formatter and sparql-formatter-test in your path.

SPARQL 1.1 query examples

Test:

$ sparql-formatter-test sparql11-query/*.rq
true    sparql11-query/02.1.rq
true    sparql11-query/02.2.rq
...
true    sparql11-query/17.rq