Linked Data Fragments: a uniform view on all Linked Data interfaces
Today’s Web offers three common ways to access Linked Data:
- A data dump contains all triples in an entire dataset (example).
- A subject page contains triples about a specific subject in a dataset (example).
- A SPARQL result contains triples that correspond to a SPARQL CONSTRUCT query (example).
Linked Data Fragments is a conceptual framework that provides a uniform view on all possible interfaces to RDF,
by observing that each interface partitions a dataset into its own specific kind of fragments.
A Linked Data Fragment (LDF) is characterized by a specific selector (subject URI, SPARQL query, …), metadata (variable names, counts, …), and controls (links or URIs to other fragments).
While the above options are the most common ways to offer datasets,
we could think of many others.
Our goal is to explore those other ways, in order to optimize the balance between server and client effort.
The axis of Linked Data Fragments types
The Linked Data Fragments vision allows us to visualize different HTTP interfaces for Linked Data together.
SPARQL endpoints are easy for clients, as they allow highly specific fragment selection. However, they also have the highest server cost which makes it expensive to host them with decent availability. If you don’t want to depend on such an endpoint, you download a data dump, but then you’re querying a local source instead of the Web. With subject pages, servers do minimal effort, but clients need to work hard to solve simple queries.
Can we minimize server resource usage
while still enabling clients to query data sources efficiently?
Such solutions can be found along the above axis by defining new Linked Data Fragment types.
New fragment types enable high-availability querying at low cost
We develop fragment types that require minimal server effort and enable efficient client-side querying. One such type is called a Triple Pattern Fragment (or basic Linked Data Fragment). It consists of:
- data that corresponds to a triple pattern (example).
- metadata that consists of the (approximate) total triple count (example).
- controls that lead to all other fragments of the same dataset (example).
Servers that offer such fragments are called
Triple Pattern Fragments servers.
Triple Pattern Fragments clients can solve many SPARQL queries efficiently.