Developer(s) | TerminusDB |
---|---|
Initial release | 2019; 2 years ago |
Stable release | |
Repository | |
Written in | Rust, Prolog[2] |
Type | Graph database |
License | |
Website | terminusdb.com |
A terminal; GitHub Desktop; I don't know; Download GitHub Desktop. GitHub Desktop is a great way to use Git and GitHub on macOS and Windows. Download GitHub Desktop; Clone the repository. Go to the folder where you want to store your project, and clone the new repository: $. Terminus (TTF) for Powerline GitHub Instantly share code, notes, and snippets.
TerminusDB is an open-sourcegraph database. It is designed for collaboratively building and curating knowledge graphs. It is a nativerevision control database that is architecturally similar to Git and other distributed version control systems. TerminusDB's is also a document store and a RDF store (as listed on DB-Engines[3]).
Data collaboration is facilitated through TerminusHub, which is a freemiumSaaS that allows users to manage access to databases and collaboratively work on shared resources.
TerminusDB is available under the permissiveApache 2.0 license.[4] The development team claim that it will be 'open source now and forever'.[5] TerminusDB is implemented in Prolog and Rust and accessible using a transactional HTTP endpoint. TerminusDB uses JSON-LD as a lightweight, language-independent data interchange format.
History[edit]
DataChemist[edit]
TerminusDB, previously known as DataChemist,[6][7][8] was founded in Dublin, Ireland. It was launched by Irish TánaisteSimon Coveney in August 2018.[9] TerminusDB opened a research and development hub in Utrecht, Netherlands in 2019.[10]
ALIGNED Project[edit]
Starting in Trinity College Dublin,[11] the development team behind TerminusDB ran the Horizon 2020 project ALIGNED that worked from February 2015 to January 2018.[12][13][14] An open-accesse-book entitled Engineering Agile Big-Data Systems was published on completion of the ALIGNED project[15]
Seshat[edit]
Seshat is an international scientific research project of the nonprofitEvolution Institute which uses TerminusDB as data infrastructure.[16] Seshat has been working with the development team from the ALIGNED project onward.[17] This work has been reported in several major newspapers.[18][19] TerminusDB is also the database behind the associated Institute for Economics and Peace and Oxford Universityhistorical peace index project.[20]
The results of some aspects of this research, focused on the relationship between complex societies and moralizing gods, appeared in Nature,[21] the prestigious scientific journal. Kevin Feeney, one of the founders of TerminusDB, is an author of the paper and sits on the Board of directors of Seshat.[22]
Open source[edit]

Version 1.0 was released in October 2019.[23] TerminusDB was first released under the GPLv3 licence with the client libraries are released with the Apache 2 licence. TerminusDB 1.1, with the newly integrated terminus-store, was released in January 2020.[24] Version 2.0 of the database was released in June 2020[25] and 3.0 was released in July 2020.[26] Version 4.0 was released in December 2020[27] under the Apache 2.0 license. The shift was discussed extensively.[28]
Name[edit]
TerminusDB is named after the Roman God of Boundaries, Terminus. It is also named after the home planet of the Foundation in the series of science-fiction novel by Issac Asimov.[29] TerminusDB uses a CowDuck mascot - the motif finds its origins in the examples used by core engineer Matthijs van Otterdijk when first demonstrating the append only immutable data store[30]
Main features[edit]
TerminusDB is a full featured in-memory graph database management system with a rich query language. The design of the underlying data structure, which is implemented in a Rust library, uses a succinct data structures and delta encoding approach drawing inspiration from software source control systems like Git.[31] This allows all of the Git semantics to be used in TerminusDB.
Terminus Ssh
The TerminusDB infrastructure is based on the RDF standard. This standard specifies finite labelled directed graphs which are parameteric in some universe of datatypes. The names for nodes and labels are drawn from a set of IRIs (Internationalized Resource Identifiers). TerminusDB uses the XSD datatypes as its universe of concrete values. For schema design, TerminusDB uses the OWL language with two modifications to make it suitable as a schema language; it dispenses with the open world interpretation and insist on the unique name assumption.[32] This provides a rich modelling language which enables constraints on the allowable shapes in the graph. TerminusDB supports a subset of OWL that provides for the following schematic control features:

- Classes and sub-classes for modelling taxonomies and inheritance hierarchies, with special classes for modelling complex relationships and entities
- Typed properties for modelling the attributes of things
- Datatypes for modelling the different types of data
- Scopings for modelling things that change with time, space and confidence
- Constraints for applying logic and rules to things[33]
TerminusDB has a promise based client for the browser and node.js it is available through the npm registry, or can be directly included in web-sites.[34] It also has a Python client for the TerminusDB RESTfulAPI and the pythonic version of the web object query language, WOQLpy.[35]
Query language[edit]
WOQL (web object query language) is a datalog-based query language. It allows TerminusDB to treat the database as a document store or a graph interchangeably, and provides query features to make relationship traversals easy. WOQL's primary syntax and interchange format is in JSON-LD. This gives a relatively straightforward human-readable format which can be easily stored in TerminusDB itself.
Example[edit]
This demonstrates a simple query which creates a document in the database, along with labels and cardinality constraints.[36]
See also[edit]

References[edit]
- ^'RELEASE_NOTES'.
- ^'TerminusDB Repository'.
- ^'TerminusDB System Properties'. db-engines.com. Retrieved 2020-12-09.
- ^'We Love GPLv3, but are Switching License to Apache 2.0: TerminusDB'. Graph Database Blog - News and Tutorials from TerminusDB. Retrieved 2020-12-09.
- ^Feeney, Luke (2019-10-07). 'Today we release TerminusDB — the database for data people'. Medium. Retrieved 2020-12-09.
- ^'DataChemist wants to make sense of big-picture intelligence in the data analytics 'arms race''. Fora.ie. Retrieved 2020-05-06.
- ^'Startup Scout: Companies to watch in 2020'. Fora.ie. Retrieved 2020-05-06.
- ^'Innovadores | Cómo lograr la paz en el mundo con ayuda del big data'. Innovadores (in Spanish). Retrieved 2020-05-06.
- ^'If data is the new oil, DataChemist is the refinery'. 2018-08-27.Cite journal requires
|journal=
(help) - ^Earley, Kelly (2019-11-20). 'Dublin's DataChemist announces expansion into the Netherlands'. Silicon Republic. Retrieved 2020-05-06.
- ^'Show HN: TerminusDB – An open source in-memory graph database | Hacker News'. news.ycombinator.com. Retrieved 2020-05-06.
- ^'CORDIS EU Research Results'.
- ^'Project ID: 644055; Aligned, Quality-centric Software and Data Engineering'.
- ^'ALIGNED Project Website'.
- ^Feeney, Kevin; Davies, Jim; Welch, James; Hellmann, Sebastian; Dirschl, Christian; Koller, Andreas; Francois, Pieter; Marciniak, Arkadiusz (2018-10-30). Engineering Agile Big-Data Systems. River Publishers. ISBN978-87-7022-016-3.
- ^'Who We Are'. Seshat: Global History Databank. Retrieved 2020-05-06.
- ^Kevin, Feeney; Jim, Davies; Sebastian, Hellmann (2018-11-05). Engineering Agile Big-Data Systems. River Publishers. ISBN978-87-7022-016-3.
- ^Thursday; December 21; Am, 2017-11:20 (2017-12-21). 'Trinity data behind new research which suggests common path governed evolution of societies'. www.irishexaminer.com. Retrieved 2019-12-06.CS1 maint: numeric names: authors list (link)
- ^Ahlstrom, Dick. 'Trinity big data researchers to lead €4m quality control effort'. The Irish Times. Retrieved 2019-12-06.
- ^Gleeson, Colin. 'Dublin start-up chosen to work on global peace initiative'. The Irish Times. Retrieved 2019-12-06.
- ^Whitehouse, Harvey; François, Pieter; Savage, Patrick E.; Currie, Thomas E.; Feeney, Kevin C.; Cioni, Enrico; Purcell, Rosalind; Ross, Robert M.; Larson, Jennifer; Baines, John; ter Haar, Barend (2019-03-20). 'Complex societies precede moralizing gods throughout world history'. Nature. 568 (7751): 226–229. Bibcode:2019Natur.568..226W. doi:10.1038/s41586-019-1043-4. hdl:10871/36936. ISSN0028-0836. PMID30894750. S2CID84186554.
- ^'Who We Are'. Retrieved 2020-07-22.
- ^Feeney, Luke (2019-10-07). 'Today we release TerminusDB — the database for data people'. Medium. Retrieved 2019-12-06.
- ^Feeney, Luke (2020-01-28). 'TerminusDB 1.1 — The Big Babushka'. Medium. Retrieved 2020-05-06.
- ^'TerminusDB 2.0 Alpha Release'. TerminusDB. 2020-06-04. Retrieved 2020-07-22.
- ^'RELEASE NOTES'. 2020-11-22.
- ^'terminusdb/terminusdb'. GitHub. Retrieved 2020-12-09.
- ^'We Love GPLv3, but Are Switching License to Apache 2.0 | Hacker News'. news.ycombinator.com. Retrieved 2020-12-09.
- ^Feeney, Luke (2019-10-01). 'TerminusDB — what's in a name?'. Medium. Retrieved 2019-12-06.
- ^terminusdb/terminus-store, TerminusDB, 2020-05-06, retrieved 2020-05-06
- ^'Succinct Data Structures and Delta Encoding for Modern Databases'(PDF).
- ^Brennan, Rob (2018). 'Linked data schemata: fixing unsound foundations'. Semantic Web. 9 (1): 53–75 – via DORAS.
- ^'TerminusDB Documentation - the database for data people'. terminusdb.com. Retrieved 2020-05-06.
- ^terminusdb/terminus-client, TerminusDB, 2020-04-29, retrieved 2020-05-06
- ^terminusdb/terminus-client-python, TerminusDB, 2020-05-06, retrieved 2020-05-06
- ^'Taking TerminusDB to The Bank (Part I)'. Graph Database Blog - News and Tutorials from TerminusDB. Retrieved 2020-12-09.
External links[edit]
- Official website
Terminus Github
This wiki introduces how to use Wio Terminal to access to HTTPS server, which means you could use Wio Terminal to grab live data from the internet! Here, Wio Terminal is connected to a Wi-Fi and obtain data from the Github.
With this, you can implement the Demo to others api such as grabbing Weather information, Youtube Stats and etc.
Part List¶
Terminus Alpha Github
Features¶
Connects to a https server
Grab repo stats from Github
Can change to any Github Repositories
Arduino libraries needed¶
Install the LCD screen Library
Seeed_Arduino_LCD
, please visit Wio Terminal LCD for more information.Visit the ArduinoJson repositories and download the entire repo to your local drive.
- Now, the ArduinoJson library can be installed to the Arduino IDE. Open the Arduino IDE, and click
sketch
->Include Library
->Add .ZIP Library
, and choose theArduinoJson
file that you've have just downloaded.
- Now, the ArduinoJson library can be installed to the Arduino IDE. Open the Arduino IDE, and click
For more information about Https connection, please visit here.
Arduino Instructions¶

Download the
Free_Fonts.h
header file so that can use abbreviations for the free fonts included in the LCD library. Please make sure to put this header file in the same location as the Arduino Sketch.Download the Complete code here or copy the following.
Upload the code.
Complete Code¶
Note: Change the ssid
and password
to your Network Wi-Fi.
