Federated Catalog Architecture¶
The Federated Catalog enables discovery of data offerings across all participants in the dataspace.
Overview¶
flowchart LR
linkStyle default curvature:0;
subgraph Participant_Ecosystem[Participant Ecosystem]
direction TB
ParticipantCP[Control Plane]
ParticipantIH[Identity Hub]
ParticipantDP[Data Plane]
ParticipantVault["(Vault)"]
ParticipantDB["(Database)"]
end
subgraph DSE_Services[DSE Federated Services]
direction TB
FedCatalog[Federated Catalog]
ParticipantReg[Participant Registry]
AuthIH[Authority Identity Hub]
end
subgraph VC_Issuers[VC Issuers]
direction TB
VcIssuerDID[DID Document]
end
FedCatalog --> ParticipantReg
FedCatalog --> ParticipantIH
FedCatalog --> ParticipantCP
ParticipantCP --> AuthIH
ParticipantCP --> VcIssuerDID Components¶
Participant Registry¶
Maintains the list of all participants in the dataspace:
- Stores participant DIDs
- Provides participant discovery
- Enables per-participant catalog crawling
Federated Catalog Crawler¶
Fetches catalogs from all registered participants:
- Queries Participant Registry for DIDs
- Resolves Control Plane URLs via Identity Hub
- Periodic crawling based on configuration
- In-memory caching of datasets
Catalog Filter Service¶
Provides VC-based filtering of catalog entries:
@Extension("VC-based Catalogue Filter Extension")
public class VcCatalogFilterExtension implements ServiceExtension {
@Inject
private PolicyEngine policyEngine;
@Inject
private IdentityService identityService;
@Setting(description = "Authority did", key = "dse.authority.did", required = true)
public String authorityDid;
}
Catalog Crawling Flow¶
Configuration¶
# Federated Catalog Crawler Configuration (from Terraform)
crawler:
cache:
executionPeriodSeconds: 10 # Crawl interval
executionDelaySeconds: 10 # Initial delay before first crawl
VC-Based Filtering¶
The Federated Catalog Filter uses Verifiable Credentials for access control:
Filter Types¶
- VC-based: Filter based on Verifiable Credentials in participant's token
- Policy-based: Evaluate ODRL policies via PolicyEngine
- Participant-based: Match datasets by participant DID
See Also¶
- System Overview — High-level architecture diagram showing how the Federated Catalog relates to all other components
- Control Plane Architecture — Consumers discover data via Control Plane catalog queries, which may route through the Federated Catalog
- Identity Hub Architecture — The Federated Catalog uses DIDs and VCs during catalog crawling and VC-based filtering
- Control Plane API Reference — The catalog query endpoint that consumers use to discover data offerings
- API Reference Overview — End-to-end API workflow showing how catalog discovery fits into the full data exchange flow