Finally, a Knowledge Graph Management System
March 4, 2020
As the industry is building and researching Knowledge Graphs now more than ever, we are excited to introduce you to LinkedDataHub - AtomGraph's open-source Knowledge Graph management system. It is as easy to use for graph data as WordPress is for web content. On the inside however, it is the first management system that takes advantage of the web-nativeness of the RDF data model.
LinkedDataHub displaying a chart generated from a SPARQL query result from Wikidata
The Missing Pieces of the Knowledge Graph Technology Landscape
What today is being released as LinkedDataHub started around 2010 as a Linked Data framework called Graphity. Back then Linked Data seemed as a sound architecture with great potential, yet there were many missing pieces. Linked Data publishing tools were primitive, for example, there was no read-write data management. The end-user experience was also far from great and administrative features like access control were totally missing.
At the same time, the mainstream web application architecture was relying on technologies invented back in the 1970s, in the pre-web era. Object-oriented layer mirrored the rigid relational database schema in code, making the codebases rigid as well.
Our intuition led us to believe that a general and data-driven software architecture should exist, however it was impossible with these legacy technologies. It felt like it could be possible with RDF.
The number of web APIs continues to grow. We were determined to develop a single uniform web API.
Connecting the Dots
The solution wasn't obvious from the outset. We implemented a number of Linked Data projects in different domains looking for common patterns.
We were aiming to fully exploit the web-nativeness of RDF in our code. Designing software for RDF and not the way around simplified our architectural stack dramatically by making it data-driven.
Through increasing complexity the code itself gradually showed the way to the final outcome. Read/write interactions boiled down to a generic model while the domain-specific logic moved from the source code to RDF data and declarative technologies such as SPARQL and XSLT.
All the above led to a generic, domain-agnostic framework which became the core of LinkedDataHub.
LinkedDataHub: Data-Driven Architecture Instead of Rigid Codebases
After a number of years of research and development, we have finally productized our technology. We call it LinkedDataHub and we believe it is the first Knowledge Graph management system, based on RDF. We decided to release it as open-source as a contribution to the Knowledge Graph and RDF communities.
Linked Data Templates architecture
The main logical unit in LinkedDataHub is a dataspace. The dataspace stores data in an RDF triplestore, handles CRUD requests and renders UI. Each dataspace in LinkedDataHub enables end-users to:
- Create and edit RDF data and HTML content
- Control the application behavior:
- Control access to application's resources
- Manage model ontologies to reflect your domain
- Change sitemap ontologies to customize CRUD logic
- Customize all or parts of the default UI layout
- Visualise data as charts, graphs, tables
- Import CSV data
- Deploy using Docker-based infrastructure
The LinkedDataHub architecture is completely data-driven, powered by declarative technologies such as SPARQL and XSLT. We have developed our own Linked Data Templates specification which translates read-write Linked Data into SPARQL commands.
LinkedDataHub features a uniform, user-friendly interface, providing the users with a familiar experience across all features and dataspaces.
|Content Management System||Web framework||LinkedDataHub|
|Change domain model||Write code||Write code||Use UI or CLI|
|Change UI layout||✔||✔||✔|
|Change API logic||Write code||Write code||Single generic API|
|Edit documents||✔||Write code||✔|
|Edit metadata||✘||Write code||✔|
What's Next: Building Killer Apps on LinkedDataHub
The Semantic Web reincarnated first as Linked Data, and most recently as Knowledge Graph technologies. With the releases of SPARQL 1.1 and RDF 1.1 the stack is finally stable and is the only currently standardized graph and NoSQL technology stack.
The best way to demonstrate the potential of these technologies is to build applications with features such as set-based navigation, which would be impossible to implement with mainstream web technologies. We feel confident that the architecture of LinkedDataHub is ready to serve as a framework for the development of such killer apps. Moreover, while not our primary focus at this point, such data-driven architecture is also well-suited for the implementation of decentralized web.
We believe that we're still in a very early stage when it comes to consuming Knowledge Graph data through end-user applications and UI. Just picture creating an application within minutes by dragging and dropping predefined data components! We can only make this vision come true with the help of an active community.
Join us at LinkedDataHub! We are here to stay.