#!/usr/bin/env node // Parse arguments var args = process.argv.slice(2); let strictMode = false; if (args.length > 1) { if (args[0] !== '--strict') { console.error('usage: sparql-to-json query.sparql'); return process.exit(1); } else { strictMode = true; // Shift arguments args.shift(); } } var fs = require('fs'), SparqlParser = require('../sparql').Parser; // Parse and display the query var query = '', source = args[0] ? fs.createReadStream(args[0]) : process.stdin; source.setEncoding('utf8'); source.on('data', function (data) { query += data; }); source.on('end', function () { var parseTree = new SparqlParser({ sparqlStar: !strictMode }).parse(query); process.stdout.write(JSON.stringify(parseTree, null, ' ') + '\n'); });