A webservice to lookup SKOS concepts from an elasticsearch index.
- Start service.
- Upload a SKOS file.
- Perform autocompletion lookup over the SKOS Vocabular
- get back an URI for a particular SKOS Concept.
echo $JAVA_HOME //check if java 8 is configured
wget http://downloads.typesafe.com/typesafe-activator/1.3.2/typesafe-activator-1.3.2-minimal.zip
unzip typesafe-activator-1.3.2-minimal.zip
sudo mv activator-1.3.2-minimal /opt
cd /tmp
git clone https://github.com/hbz/skos-lookup
cd skos-lookup
# in order to support uploading larger skos files
export _JAVA_OPTIONS="-Xmx2g"
#now run in develop mode
/opt/activator-1.3.2-minimal/activator run
curl -i -X POST -H "Content-Type: multipart/form-data" localhost:9000/tools/skos-lookup/upload -F "data=@/tmp/skos-lookup/test/resources/agrovoc_2016-07-15_lod.nt.gz" -F"index=agrovoc_test" -F"format=NTRIPLES"
curl -XGET 'localhost:9000/tools/skos-lookup/autocomplete?lang=de&q=Erdnus&callback=mycallback&index=agrovoc_test'
Response
/**/mycallback([{"label":"Erdnuss","value":"http://aims.fao.org/aos/agrovoc/c_11368"},{"label":"Erdnussöl","value":"http://aims.fao.org/aos/agrovoc/c_25477"},{"label":"Erdnussbutter","value":"http://aims.fao.org/aos/agrovoc/c_5640"},{"label":"Erdnussmehl","value":"http://aims.fao.org/aos/agrovoc/c_35679"}])
firefox http://localhost:9000/tools/skos-lookup/example
Result
http://localhost:9000/tools/skos-lookup/search?q=http%3A%2F%2Faims.fao.org%2Faos%2Fagrovoc%2Fc_13551&lang=de&index=agrovoc
firefox http://localhost:9000/tools/skos-lookup/example
firefox http://localhost:9000/tools/skos-lookup/upload
cd /tmp/skos-lookup
/opt/activator-1.3.2-minimal/activator dist
cp target/universal/skos-lookup-1.0-SNAPSHOT.zip /tmp
cd /tmp
unzip skos-lookup-1.0-SNAPSHOT.zip
mv skos-lookup-1.0-SNAPSHOT /opt/skos-lookup
edit startscript
sudo cp /tmp/skos-lookup/install/skos-lookup.tmpl /etc/init.d/skos-lookup
sudo chmod u+x /etc/init.d/skos-lookup
sudo editor /etc/init.d/skos-lookup
set the following vars
JAVA_HOME=/opt/java
HOME="/opt/skos-lookup"
USER="user to run skos-lookup"
GROUP="user to run skos-lookup"
SECRET=`uuidgen` # generate a secret e.g. using uuidgen
PORT=9000
include into system start and shutdown
sudo update-rc.d skos-lookup defaults 99 20
start
sudo service skos-lookup start
rm -rf /tmp/skos-lookup
cd /tmp
git clone https://github.com/hbz/skos-lookup
cd /tmp/skos-lookup
/opt/activator-1.3.2-minimal/activator dist
cp target/universal/skos-lookup-1.0-SNAPSHOT.zip /tmp
cd /tmp
unzip skos-lookup-1.0-SNAPSHOT.zip
cp /opt/skos-lookup/conf/application.conf /tmp/skos-lookup-1.0-SNAPSHOT/conf
cp -r /opt/skos-lookup/data /tmp/skos-lookup-1.0-SNAPSHOT
sudo service skos-lookup stop
rm -rf /opt/skos-lookup/*
mv /tmp/skos-lookup-1.0-SNAPSHOT/* /opt/skos-lookup/
sudo service skos-lookup start
Reuses Jakobs JSKOS context: https://gbv.github.io/jskos/jskos.html#json-ld-context
Uses Jörgs elasticsearch plugin bundle: https://github.com/jprante/elasticsearch-plugin-bundle
GNU AFFERO GENERAL PUBLIC LICENSE Version 3, 19 November 2007