Skip to content
This repository has been archived by the owner on Nov 16, 2022. It is now read-only.
/ oxigraph-wikibase Public archive

Oxigraph SPARQL server for Wikibase instances

Notifications You must be signed in to change notification settings

oxigraph/oxigraph-wikibase

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WARNING: This project is not developed anymore and is archived. Feel free to step up to maintain it.

Oxigraph Wikibase

Latest Version Crates.io Docker Image Version (latest semver) Docker Image Size (latest semver) Docker Pulls actions status Gitter

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.

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 use
  • mediawiki_base_url Base URL of MediaWiki pages like https://test.wikidata.org/wiki/ for test.wikidata.org or http://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

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.

About

Oxigraph SPARQL server for Wikibase instances

Resources

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

 

Packages

No packages published