Skip to main content

Sources and Adapters

Overview

The Knowledge Graph Manager (KGM) integrates business knowledge from many different systems.

To support this in a consistent and scalable way, it distinguishes between two core concepts:

  • Sources — the systems where knowledge originates
  • Source Adapters — the components that translate this knowledge into a format KGM can understand

This section explains what sources are, why adapters exist, and how KGM interacts with both.

What is a Source?

A source is any system in your organization that provides business concepts, definitions, or relationships.

Examples include:

  • a business glossary in a data catalog
  • spreadsheets or CSV files maintained by governance teams
  • wiki pages describing taxonomies
  • ontology servers used by enterprise architecture
  • compliance or risk metadata repositories
  • internal applications that expose conceptual entities

Sources may provide data in many different forms: APIs, files, exports, or query interfaces.

KGM does not require sources to follow any specific structure. Instead, each source must be connected through a Source Adapter that standardizes the content.

Why Source Adapters

Upstream systems represent knowledge differently.

Some output JSON, others produce CSV, some expose SPARQL, and others return proprietary data structures.

To avoid embedding system-specific logic inside KGM, each source is accessed through a Source Adapter.

A Source Adapter is responsible for:

  1. Extracting knowledge from a specific source
  2. Converting it into JSON-LD, a JSON format used to express RDF data
  3. Representing each fact as an RDF triple
  4. Assigning IRIs (Internationalized Resource Identifiers) to uniquely identify concepts
  5. Exposing a simple HTTP interface for KGM to retrieve or query this knowledge

This design allows KGM to remain clean, maintainable, and source-agnostic.

Types of Adapters

Source Adapters operate in one of two modes. Some adapters support both.

Ingestion Adapters

In ingestion mode, the adapter exports the entire conceptual content of the source as a JSON-LD file.
KGM periodically ingests the JSON-LD and converts it into RDF triples stored in its internal knowledge graph.

Examples of ingestion sources:

  • a glossary in a catalog
  • a CSV taxonomy
  • a wiki-based hierarchy
  • a compliance dictionary

Passthrough Adapters

In passthrough mode, KGM does not ingest or store any knowledge from the source.
Instead, the adapter forwards search or SPARQL requests directly to the upstream system and returns the live results.

Passthrough is used when:

  • the source already provides a graph query API
  • knowledge must always be retrieved in real time
  • the organization prefers not to replicate the data

Hybrid Adapters

Some adapters provide both:

  • JSON-LD export for ingestion, and
  • query delegation for passthrough

This allows an organization to ingest certain knowledge while querying other aspects live.

Configuring Sources in KGM

Sources are defined in the application configuration and loaded at startup.

Each source configuration includes:

  • a unique identifier
  • the adapter url
  • enabled modes (ingestion, passthrough, or both)
  • for ingestion: the synchronization schedule
  • optional security settings such as mTLS

What makes a good Adapter

A reliable Source Adapter should:

  • assign stable IRIs to concepts
  • produce valid JSON-LD
  • represent relationships and attributes faithfully
  • expose HTTP endpoints that follow consistent conventions
  • handle updates from the source without breaking identifier stability
  • follow organizational guidelines for naming and vocabulary

Adapters do not need to impose any particular ontology.

KGM accepts any RDF vocabularies, including SKOS, RDFS, OWL, and custom terms.

tip

Learn more about sources and adapters in: How to develop and register Source Adapters