9 releases
0.2.5 | Jul 11, 2021 |
---|---|
0.2.4 | Apr 28, 2021 |
0.2.2 | Mar 18, 2021 |
0.2.1 | Jan 16, 2021 |
0.1.1 | Aug 14, 2020 |
#8 in #oxigraph
28 downloads per month
700KB
15K
SLoC
Oxigraph Wikibase
Oxigraph Wikibase is a SPARQL web server able to synchronize with a Wikibase instance. It is based on Oxigraph.
Oxigraph and Oxigraph Wikibase are in heavy development and not been optimized yet.
Installation
You need to have a recent stable version of Rust and Cargo installed. You also need clang to build RocksDB.
To download, build and install the latest released version run cargo install oxigraph_wikibase
.
There is no need to clone the git repository.
To compile the server from source, clone this git repository, and execute cargo build --release
in the wikibase
directory to compile the full server after having downloaded its dependencies.
It will create a fat binary in target/release/oxigraph_wikibase
.
Usage
To start a server that is synchronized with test.wikidata.org you should run:
./oxigraph_wikibase --mediawiki-api https://test.wikidata.org/w/api.php --mediawiki-base-url https://test.wikidata.org/wiki/ --namespaces 0,120 --file test.wikidata
It creates a SPARQL endpoint listening to localhost:7878/query
that could be queried just like Blazegraph.
The configuration parameters are:
mediawiki_api
URL of the MediaWiki API to usemediawiki_base_url
Base URL of MediaWiki pages likehttps://test.wikidata.org/wiki/
for test.wikidata.org orhttp://localhost/w/index.php?title=
for "vanilla" installations.namespaces
The ids of the Wikibase namespaces to synchronize with, separated by,
.file
Path of where Oxigraph should store its data.
You can then access it from your machine on port 7878
. No GUI is provided.
# Make a query
curl -X POST -H 'Accept: application/sparql-results+json' -H 'Content-Type: application/sparql-query' --data 'SELECT * WHERE { ?s ?p ?o } LIMIT 10' http://localhost:7878/query
Using a Docker image
Display the help menu
docker run --rm oxigraph/oxigraph-wikibase --help
Run the Web server
Expose the server on port 7878
of the host machine, and save data on the local ./data
folder
docker run --init --rm -v $PWD/wikibase_data:/wikibase_data -p 7878:7878 oxigraph/oxigraph-wikibase -b 0.0.0.0:7878 -f /wikibase_data --mediawiki-api http://some.wikibase.instance/w/api.php --mediawiki-base-url http://some.wikibase.instance/wiki/
Warning: the Wikibase instance needs to be accessible from within the container.
The clean way to do that could be to have both your wikibase and oxigraph_wikibase in the same docker-compose.yml
.
You could easily build your own Docker image by running docker build -t oxigraph-wikibase -f wikibase/Dockerfile .
from the root directory.
License
This project is licensed under either of
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in Futures by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Dependencies
~58MB
~1M SLoC