commit 926107aed0e217b575aaf555c754cdc9adf9fd17
parent 4cde59c76bd97ad29fe27cb21c317a94311104df
Author: Lynn Foster <foster.j.lynn@gmail.com>
Date: Sat, 26 Jan 2019 15:53:20 -0600
Merge pull request #426 from elf-pavlik/rdfjs-converter
minimal replacement of lod-converter
Diffstat:
6 files changed, 67 insertions(+), 12 deletions(-)
diff --git a/.gitignore b/.gitignore
@@ -1,5 +1,6 @@
node_modules
npm-debug.log
+package-lock.json
.DS_Store
@@ -7,4 +8,4 @@ npm-debug.log
*~
yarn.lock
-_book-
\ No newline at end of file
+_book
diff --git a/.scripts/convert.js b/.scripts/convert.js
@@ -0,0 +1,48 @@
+const meow = require('meow')
+const ParserN3 = require('@rdfjs/parser-n3')
+const SerializerJsonld = require('@rdfjs/serializer-jsonld')
+const Readable = require('stream').Readable
+const fs = require('fs')
+const RdfStore = require('quadstore').RdfStore
+const memdown = require('memdown')
+const finished = require('stream').finished
+const promisify = require('util').promisify
+const done = promisify(finished)
+
+const cli = meow('', {
+ flags: {
+ source: {
+ type: 'string'
+ },
+ outDir: {
+ type: 'string'
+ }
+ }
+})
+
+const vfTurtle = fs.readFileSync(cli.flags.source, 'utf8')
+const store = new RdfStore(memdown())
+
+const parserN3 = new ParserN3()
+const inputTurtle = new Readable({
+ read: () => {
+ inputTurtle.push(vfTurtle)
+ inputTurtle.push(null)
+ }
+})
+const outputTurtle = parserN3.import(inputTurtle)
+
+const serializerJsonld = new SerializerJsonld()
+
+;(async () => {
+ await done(store.import(outputTurtle))
+ console.log('vocab imported to store')
+
+ const vf = store.match(null, null, null, null)
+
+ const outputJsonld = serializerJsonld.import(vf)
+ let vfJsonld
+ await done(outputJsonld.on('data', jsonld => vfJsonld = jsonld))
+ fs.writeFileSync(cli.flags.outDir + '/vf.jsonld', JSON.stringify(vfJsonld))
+ fs.writeFileSync(cli.flags.outDir + '/vf.ttl', vfTurtle)
+})()+
\ No newline at end of file
diff --git a/.scripts/deploy.sh b/.scripts/deploy.sh
@@ -6,11 +6,11 @@ TARGET_BRANCH="gh-pages"
function doCheck {
mkdir .out
- java -jar .scripts/lod-converter.jar release-doc-in-process/all_vf.TTL TTL vf https://valueflows.github.io/valueflows/vf.ttl
+ node .scripts/convert.js --source=release-doc-in-process/all_vf.TTL --outDir=.out
}
function doGenerate {
- java -jar .scripts/lod-converter.jar release-doc-in-process/all_vf.TTL TTL vf https://valueflows.github.io/valueflows/vf.ttl
+ node .scripts/convert.js --source=release-doc-in-process/all_vf.TTL --outDir=.out
}
# Pull requests and commits to other branches shouldn't try to deploy, just build to verify
@@ -35,12 +35,13 @@ cd ..
# Clean out existing contents
rm -fr .out/vf.* || exit 0
-rm -fr .out/index.html || exit 0
-rm -fr .out/vowl-vf.json || exit 0
+#rm -fr .out/index.html || exit 0
+#rm -fr .out/vowl-vf.json || exit 0
# Run generate script
doGenerate
-cp .out/vf.html .out/index.html
+ls .out
+# cp .out/vf.html .out/index.html
# config the cloned repo
cd .out
git config user.name "Travis CI"
diff --git a/.scripts/lod-converter.jar b/.scripts/lod-converter.jar
Binary files differ.
diff --git a/.travis.yml b/.travis.yml
@@ -1,7 +1,7 @@
-language: java
+language: node_js
-jdk:
- - oraclejdk8
+node_js:
+ - '10'
script: bash .scripts/deploy.sh
diff --git a/package.json b/package.json
@@ -9,6 +9,8 @@
"deploy": "npm run build && npm run deploy-remote && npm run deploy-push"
},
"dependencies": {
+ "@rdfjs/parser-n3": "^1.1.2",
+ "@rdfjs/serializer-jsonld": "^1.2.0",
"git-directory-deploy": "^1.3.0",
"mdast": "^2.1.0",
"mdast-autolink-headings": "^1.0.0",
@@ -18,8 +20,11 @@
},
"devDependencies": {
"gitbook-cli": "^2.3.2",
+ "gitbook-plugin-include-codeblock": "^3.2.2",
"gitbook-plugin-prism": "^2.4.0",
- "gitbook-plugin-include-codeblock": "^3.2.2"
-
+ "memdown": "^3.0.0",
+ "meow": "^5.0.0",
+ "quadstore": "^5.0.4",
+ "standard": "^12.0.1"
}
}