JSPM

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

SPARQL 1.1 formatter

Package Exports

  • sparql-formatter
  • sparql-formatter/src/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://sparql-formatter.dbcls.jp/

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

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

Usage in web pages

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

Use spfmt functions:

spfmt.format(query)
spfmt.format(query, 'compact')
spfmt.format(query, 'jsonld')
spfmt.format(query, 'turtle', 4)
  • query: string
  • formattingMode: string (default, compact, turtle, jsonld), optional (default: default)
  • indentDepth: integer (>= 0), optional (default: 2)
  • return value: string

Usage in Node.js

Example:

import { spfmt } from 'sparql-formatter';

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

Output:

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

Command line interface

$ npm install -g sparql-formatter

Examples:

$ sparql-formatter sparql11-query/02.2.rq

or

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

or use Docker

$ cat sparql11-query/02.2.rq | docker run -i --rm sparqling/sparql-formatter

or

$ docker run --rm -v $(pwd):/work sparqling/sparql-formatter sparql11-query/02.2.rq

Input:

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:

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
  • Commands are in sparql-formatter/bin/*.

Optional: $ npm link

  • Symbolic links to sparql-formatter/bin/* are created (as sparql-formatter and sparql-formatter-test in your path).

SPARQL 1.1 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
  • The sparql-formatter output for *.rq is compared with *.txt.