API and web interface of LOTUS, award-winning full-text index to the LOD Laundromat, and the largest available LOD index today.
LOTUS was developed at VU University Amsterdam, as a collaboration between CLTL and the Knowledge Representation & Reasoning departments.
See http://lotus.lodlaundromat.org/docs for detailed description of the API parameters.
Also, try our web interface at http://lotus.lodlaundromat.org/ or http://lodsearch.org. Note: While the visual appearance of LOTUS has been changed since it has been presented at ESWC 2016, its functionality has been kept unchanged. The ESWC 2016 interface of LOTUS is still functional and can be accessed at http://lodsearch.org/eswc.
Video from ESWC 2016's presentation on LOTUS http://videolectures.net/eswc2016_ilievski_linked_data/
Research paper from ESWC 2016 https://link.springer.com/chapter/10.1007/978-3-319-34129-3_29
Slides from ESWC 2016's presentation on LOTUS http://www.slideshare.net/FilipIlievski1/lotus-adaptive-text-search-for-big-linked-data
Workshop paper from the ISWC 2015 COLD Workshop http://ceur-ws.org/Vol-1426/paper-06.pdf
The LOTUS Semantic Search engine was awarded the 2nd place in the European Linked Open Data Competition 2016 (http://2016.semantics.cc/eldc).
You are welcome to set up your own LOTUS engine. Please note that setting a local copy of LOTUS requires both: to index a set of statements (see the LOTUS Indexer github[https://github.com/filipdbrsk/LOTUS_Indexer] for the indexing procedure used in the official LOTUS) and to set up a search API (using the code from this project).
Provided that you have already prepared your LOTUS index with statements in ElasticSearch, you can easily set up this code to query that data with the same functionality as in the central LOTUS system. Steps:
- Make sure that your version of Node.js is not too old (this code has been tested on v4.2 and v8.6.0.)
- Run
npm install
ornpm install -g
to install all dependencies:express
,lodash/uniqBy
andrequest
. - To start the LOTUS API server, simply run
node server.js
. Make sure thequery_url
variable in this script points to your own Elastic endpoint (currently, we use a protected endpoint whose authentication details we read from the fileconfig.json
- but settingisCentralLOTUS
to false and setting your ownquery_url
will do the trick for your own endpoint with your own configuration). Also, the port 8181 should be available, or you should change this setting in the final lines of theserver.js
script to another port that you are sure is free.
Filip Ilievski ([email protected])