forked from nodeSolidServer/node-solid-server
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathparse.js
More file actions
85 lines (77 loc) · 2.32 KB
/
parse.js
File metadata and controls
85 lines (77 loc) · 2.32 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
// TODO: in the process of being deprecated
// exports.parseHandler = parseHandler
// exports.convertToTurtle = convertToTurtle
// var N3 = require('n3')
// var jsonld = require('jsonld')
// var debug = require('./debug').parse
// function parseHandler (req, res, next) {
// convertToTurtle(req.text, req, function (err, result) {
// if (!err) {
// req.convertedText = result
// } else {
// debug('Error parsing request: ' + err)
// }
// return next()
// })
// }
// function convertToTurtle (rawDocument, req, convertCallback) {
// if (req.is('application/ld+json') ||
// req.is('application/nquads') || req.is('application/n-quads')) {
// var contentType = req.get('content-type').split(';')[0].trim()
// parse(rawDocument, contentType, convertCallback)
// } else {
// convertCallback(null, rawDocument)
// }
// }
// function parse (rawDocument, contentType, convertCallback) {
// var n3Parser = N3.Parser()
// var n3Writer
// var triples = []
// var prefixes = {}
// if (contentType === 'application/ld+json') {
// var jsonDocument
// try {
// jsonDocument = JSON.parse(rawDocument)
// } catch (err) {
// convertCallback(err, null)
// }
// jsonld.toRDF(jsonDocument, {
// format: 'application/nquads'
// }, nquadCallback)
// } else if (contentType === 'application/nquads' ||
// contentType === 'application/n-quads') {
// nquadCallback(null, rawDocument)
// } else {
// convertCallback(new Error('Wrong content type'), null)
// }
// function nquadCallback (err, nquads) {
// if (err) {
// debug('Error parsing nquads: ' + err)
// convertCallback(err, null)
// }
// try {
// n3Parser.parse(nquads, tripleCallback, prefixCallback)
// } catch (err) {
// convertCallback(err, null)
// }
// }
// function tripleCallback (err, triple, prefixes) {
// if (err) {
// convertCallback(err, null)
// }
// if (triple) {
// triples.push(triple)
// } else {
// n3Writer = N3.Writer({
// prefixes: prefixes
// })
// for (var i = 0; i < triples.length; i++) {
// n3Writer.addTriple(triples[i])
// }
// n3Writer.end(convertCallback)
// }
// }
// function prefixCallback (prefix, iri) {
// prefixes[prefix] = iri
// }
// }