timbuctoo
timbuctoo copied to clipboard
an RDF datastore that gives researchers control over the sharing of data between datasets
= Timbuctoo
Bridge to networked research data
== Getting Started
//tag::gettingstarted[]
=== Prerequisites The following prerequisites need to be installed on the machine before running the Timbuctoo program:
* https://java.com/en/download/[Java]
* https://maven.apache.org/download.cgi[Maven]
* https://git-scm.com/downloads[Git]
* https://www.docker.com/[Docker]
* http://xmlsoft.org/downloads.html[libxml2-utils]
=== Start Timbuctoo without Docker ==== Installation After the above requirements are fulfilled you can follow the following instructions to install Timbuctoo:
* Clone the https://github.com/HuygensING/timbuctoo.git[Timbuctoo Github repository] into a local directory using the command:
git clone https://github.com/HuygensING/timbuctoo.git
==== Starting Timbuctoo - On the Timbuctoo root directory run the Maven build command:
mvn clean package
- On the "/devtools/debugrun" directory within your Timbuctoo repository, run:
./timbuctoo_only.sh
=== Start Timbuctoo with Docker To start Timbuctoo only:
$ (sudo) docker run -p8080:80 huygensing/timbuctoo
To start Timbuctoo with Timbuctoo GUI:
$ (sudo) docker-compose up
=== Uploading data - You can run a curl command of the following format to upload data into Timbuctoo:
curl -v -F "file=@/<complete_path_to_file>/<filename>;type=<filetype>" -F "encoding=UTF-8" -H "Authorization: fake" http://localhost:8080/u33707283d426f900d4d33707283d426f900d4d0d/mydataset/upload/rdf?forceCreation=true
`u33707283d426f900d4d33707283d426f900d4d0d` the user id of the user when no security is used.
`mydataset` will be the name of the dataset
- You can use the provided *_bia_clusius.ttl_* data as a example dataset. The <filetype> for this is "text/turtle". It is available in the following folder:
"/<complete path to timbuctoo>/src/test/resources/nl/knaw/huygens/timbuctoo/bia_clusius.ttl"
- Note that the above method forces a creation at upload time. Creating a dataset before doing the upload can be done at path:
"<host>/dataSets/{userId}/{dataSetId}/create"
=== Querying data and Applying Mutations
- With Timbuctoo running, you can access the https://github.com/graphql/graphiql[GraphIQL in-browser IDE] by pointing your web-browser to the following address:
http://localhost:8080/static/graphiql
- You can then refer to https://github.com/HuygensING/timbuctoo/blob/master/documentation/timbuctoo-graphql-api-guide.adoc[this Timbuctoo GraphQL API guide] for querying and mutation instructions with examples.
//end::gettingstarted[]
== FAQs/Q&A
//tag::faqs[]
I can't access my data from the GraphiQL and I get the error "SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data" on the right pane when I try to query for data.
It is likely that the filepath given while using the curl command to load the dataset was incorrect. Please note that the filepath to the dataset should be given in full (i.e. complete path from root) with a '@' symbol preceding it. //end::faqs[]
== License
Timbuctoo is licensed under the link:./LICENSE.txt[GPL license]
== Contributing
See the link:./CONTRIBUTING.adoc[contribution guidelines]
== Documentation
Read about compiling, installing/running and using/developing timbuctoo in the link:./documentation[documentation] folder.
== Acknowledgements
Timbuctoo is and has been funded by
- The Huygens Institute
- Golden Agents (until 2022)
- CLARIAH.nl (until 2018)
- NDE (funding ends december 2016)
'''
This repository is available online at https://github.com/HuygensING/timbuctoo