Specification and ecosystem

  1. Semcom is a specification

  2. We built a reference implementation of an SDK and repository

  3. Repositories contains metadata, but do not host code

  4. The SDK can be used by an app to query and render components

  5. Code can be downloaded from a host; like a cdn


Semantic Components, code and metadata

  1. Component consists of code and metadata

  2. Code can be executed at runtime to render data

  3. Metadata describes the nature of a component

  4. Metadata can include inputs, outputs, purposes, runtime, license, version


Repositories and hosts

  1. Repositories must expose metadata from one or all components through http get requests.

  2. Repositories must expose metadata of multiple components though Sparql requests.

  3. Repositories may return metadata in multiple RDF-serialization formats, but they must support JSON-LD.

  4. Repositories may download metadata from other (trusted) repositories.


  1. Apps render a user’s data

  2. Data is retrieved from the user’s Solid pod

  3. The app queries the Semcom repository for components

  4. The app decides which component to use, and fetches the component’s code

  5. The app initializes the component and renders the data