All Projects → TREEcg → specification

TREEcg / specification

Licence: other
RDF vocabulary and specification

Programming Languages

Bikeshed
17 projects

Projects that are alternatives of or similar to specification

mobi
Mobi is a decentralized, federated, and distributed graph data platform for teams and communities to publish and discover data, data models, and analytics that are instantly consumable.
Stars: ✭ 41 (+95.24%)
Mutual labels:  rdf, vocabulary, ontology
semantic-web
Storing ontologies/vocabularies from the web. Wish anybody can translate some of them.
Stars: ✭ 114 (+442.86%)
Mutual labels:  rdf, vocabulary, ontology
ont-api
ONT-API (OWL-API over Apache Jena)
Stars: ✭ 20 (-4.76%)
Mutual labels:  rdf, ontology
rdf-ldp
A suite of LDP software and middleware for RDF.rb & Rack
Stars: ✭ 14 (-33.33%)
Mutual labels:  rdf, ldp
link-redux
Linked Data Rendering for humans with React
Stars: ✭ 28 (+33.33%)
Mutual labels:  rdf, hypermedia
ontology-visualization
A simple ontology and RDF visualization tool.
Stars: ✭ 102 (+385.71%)
Mutual labels:  rdf, ontology
Processor
Ontology-driven Linked Data processor and server for SPARQL backends. Apache License.
Stars: ✭ 54 (+157.14%)
Mutual labels:  rdf, hypermedia
knowledge-graph-change-language
Tools for working with KGCL
Stars: ✭ 14 (-33.33%)
Mutual labels:  rdf, ontology
mobivoc
A vocabulary for future-oriented mobility solutions and value-added services supporting them.
Stars: ✭ 27 (+28.57%)
Mutual labels:  vocabulary, ontology
Community Server
Community Solid Server: an open and modular implementation of the Solid specifications
Stars: ✭ 117 (+457.14%)
Mutual labels:  solid, rdf
fibo
The Financial Industry Business Ontology (FIBO) defines the sets of things that are of interest in financial business applications and the ways that those things can relate to one another. In this way, FIBO can give meaning to any data (e.g., spreadsheets, relational databases, XML documents) that describe the business of finance.
Stars: ✭ 204 (+871.43%)
Mutual labels:  rdf, ontology
mayktso
🌌 mayktso: encounters at an endpoint
Stars: ✭ 19 (-9.52%)
Mutual labels:  rdf, ldp
semantic-python-overview
(subjective) overview of projects which are related both to python and semantic technologies (RDF, OWL, Reasoning, ...)
Stars: ✭ 406 (+1833.33%)
Mutual labels:  rdf, ontology
solr-ontology-tagger
Automatic tagging and analysis of documents in an Apache Solr index for faceted search by RDF(S) Ontologies & SKOS thesauri
Stars: ✭ 36 (+71.43%)
Mutual labels:  rdf, ontology
Dokieli
💡 dokieli is a clientside editor for decentralised article publishing, annotations and social interactions
Stars: ✭ 582 (+2671.43%)
Mutual labels:  solid, rdf
OLGA
an Ontology SDK
Stars: ✭ 36 (+71.43%)
Mutual labels:  rdf, ontology
ontobio
python library for working with ontologies and ontology associations
Stars: ✭ 104 (+395.24%)
Mutual labels:  rdf, ontology
solid-ui-react
React SDK using @inrupt/solid-client
Stars: ✭ 82 (+290.48%)
Mutual labels:  solid
solid-client-js
Library for accessing data and managing permissions on data stored in a Solid Pod
Stars: ✭ 201 (+857.14%)
Mutual labels:  solid
bioportal web ui
A Rails application for biological ontologies
Stars: ✭ 20 (-4.76%)
Mutual labels:  rdf

TREE logo

Exposing your Linked Datasets in hypermedia collections

ᴛʀᴇᴇ enables you to describe relations between a specific value and all members a page linked from this current page. Using this specific relation, a script or autonomous query client (such as Comunica and Planner.js) can understand whether following the link will be useful or not.

Build the spec using bikeshed:

bikeshed watch spec.bs

The spec will be built automatically when pushing to master.

The Vocabulary

Base URI to be used: https://w3id.org/tree#.

Preferred prefix: tree:.

All newly introduced terms are explained in the RDF vocabulary.

Most important concepts:

  • a tree:Node is a page that may contain members of a tree:Collection
  • a node has tree:relation entities with links to other nodes. This relation is typed (e.g., tree:GeospatiallyContainsRelation or a tree:PrefixRelation),
  • the relation has a tree:value and a tree:path. The former is a literal value on which the search term can be compared. The tree:path explains to which property of the members of the collection this relation applies.

The specification

Available at https://treecg.github.io/specification

Mind that a server exposing data with ᴛʀᴇᴇ must set the CORS headers to allow any host.

Questions and Answers

Why publish a hypermedia structure?

When a document grows too large for 1 HTTP response, we need to fragment it. The way we fragment it will immediatly decide what queries will be fast and which queries will be slow. Hypermedia can be used to hit the sweet spot between data dumps and querying APIs (such as GraphQL or SPARQL). It is particularly a sweet spot for Open Data publishers that need a cost-efficient way of publishing their data, while allowing third parties to create serverless applications to reuse the data.

dump ᴛʀᴇᴇ fragments query
processing client shared server
server cost low okay high
client cost high okay low
caching low high low
query execution control high high low

Why hypermedia?

When you write a client for one server, you can get away with hard-coding the way the API is built based on the API specification. When building a client for the entire Web, we need to make very general specifications that still allow our client to understand what it can do next. The latter are called the hypermedia controls.

What are triples? JSON-LD? RDF? URIs? Linked Data?

Same idea as hypermedia, only for understanding the elements in the pages itself. See these intro slides, or read this chapter.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].