Mercurial > code > home > repos > streamed-graph
comparison src/json_ld_quads.ts @ 15:7ca4ff2088c3
managed to use a newer ts or something, so this includes a bunch of type fixes too
author | drewp@bigasterisk.com |
---|---|
date | Sun, 08 Dec 2019 23:32:12 -0800 |
parents | b9f451791f3a |
children | 9ec3cbc8791a |
comparison
equal
deleted
inserted
replaced
14:497d50f8fe5b | 15:7ca4ff2088c3 |
---|---|
10 const { rdf } = ns; | 10 const { rdf } = ns; |
11 | 11 |
12 function _emitQuad( | 12 function _emitQuad( |
13 onQuad: (q: Quad) => void, | 13 onQuad: (q: Quad) => void, |
14 subjNode: NamedNode, | 14 subjNode: NamedNode, |
15 pred: string | { '@id': string }, | 15 pred: string, |
16 subj: any, | 16 subj: any, |
17 graphNode: NamedNode) { | 17 graphNode: NamedNode) { |
18 let predNode: NamedNode; | 18 let predNode: NamedNode; |
19 if (pred === "@type") { | 19 if (pred === "@type") { |
20 predNode = namedNode(rdf.type); | 20 predNode = namedNode(rdf.type); |
21 } | 21 } |
22 else { | 22 else { |
23 predNode = namedNode(pred['@id']); | 23 predNode = namedNode(pred); |
24 } | 24 } |
25 subj[pred as string].forEach(function (obj: any) { | 25 subj[pred as string].forEach(function (obj: any) { |
26 const objNode = (obj['@id'] ? namedNode(obj['@id']) : | 26 const objNode = (obj['@id'] ? namedNode(obj['@id']) : |
27 literal(obj['@value'], | 27 literal(obj['@value'], |
28 obj['@language'] || obj['@type'])); | 28 obj['@language'] || obj['@type'])); |
39 reject(err); | 39 reject(err); |
40 } | 40 } |
41 (expanded as [object]).forEach(function (g) { | 41 (expanded as [object]).forEach(function (g) { |
42 var graph = g['@id']; | 42 var graph = g['@id']; |
43 var graphNode = namedNode(graph); | 43 var graphNode = namedNode(graph); |
44 g['@graph'].forEach(function (subj) { | 44 g['@graph'].forEach(function (subj: { [predOrId: string]: any; }) { |
45 console.log('process subj', subj) | |
45 const subjNode = namedNode(subj['@id']); | 46 const subjNode = namedNode(subj['@id']); |
46 for (let pred in subj) { | 47 for (let pred in subj) { |
47 if (pred === '@id') { | 48 if (pred === '@id') { |
48 continue; | 49 continue; |
49 } 2 | 50 } |
51 console.log('emit with', pred); | |
50 _emitQuad(onQuad, subjNode, pred, subj, graphNode); | 52 _emitQuad(onQuad, subjNode, pred, subj, graphNode); |
51 } | 53 } |
52 }); | 54 }); |
53 }); | 55 }); |
54 resolve(); | 56 resolve(); |