Title
LinkedDataHub 6 overview

LinkedDataHub is a Knowledge Graph application platform by AtomGraph that fully exploits the federated features of RDF and SPARQL. It can also be used as an RDF-native content management platform.

LinkedDataHub is an open source project that has its roots in Linked Data publishing. Over time the focus has shifted to Linked Data consumption — publishing is a largely solved problem, while user-friendly consumption tools remain in short supply.

A single LinkedDataHub instance hosts multiple dataspaces, each identified by its own (sub)domain: an end-user dataspace serves the domain data, and an administration dataspace on the matching admin. subdomain controls its model and access.

Low-code application platform

LinkedDataHub is also a low-code platform for serving RDF Knowledge Graph dataspaces and building applications on top of them. It provides development and management features:

  • rich UI component library that can be customized without writing code
  • SPARQL-based templates for instance creation and editing forms (constructors)
  • SPIN and SHACL constraints for validation of incoming data
  • authentication using WebID and OpenID Connect (Google and ORCID)
  • access control using WAC authorizations
  • declarative packages that plug vocabulary support and custom UI into a dataspace with a single triple
  • Git-backed document versioning with the standard Memento protocol for accessing the history
  • the ldh command line interface that drives the same HTTP API as the UI

Knowledge management and collaboration

As an RDF-native CMS, LinkedDataHub provides these end-user features:

Architecture

Architecturally, LinkedDataHub is a read-write RDF Graph Store combined with a rich Linked Data/SPARQL client. LinkedDataHub does not persist RDF data itself but rather serves it from, and stores it in, a backing triplestore, which by default is Apache Jena Fuseki.

Every document in a LinkedDataHub dataspace is also a named graph in the Graph Store and has both RDF and HTML representations.

The client is implemented using XSLT 3.0, a standard, declarative data transformation language. The same stylesheets run in two environments: on the server (Saxon-HE) to produce the initial HTML response, and in the browser (Saxon-JS 3 with Interactive XSLT) to render the layout and drive all subsequent navigation without full page reloads. The client can connect to any Linked Data resource or SPARQL 1.1 endpoint.

LinkedDataHub no longer uses Linked Data Templates (support was removed in version 3.0.3). However, they can still be used to publish Linked Data from SPARQL endpoints using Processor.

See the CHANGELOG for release notes.

Follow the tutorial to build your first app, then see the application building guide for the customization and extension options.