ores.dq.core

Table of Contents

Diagram

ores.dq.core component diagram

Figure 1: ores.dq.core

Summary

ores.dq.core is the data-quality infrastructure library for ORE Studio. It provides the badge system (severity-tagged check results attached to datasets and artefacts), dataset and dataset-bundle management, change-management tracking, coding-scheme definitions, and the FSM / ORM base classes reused by all other domain components. Business logic is exposed as NATS message handlers; no other component in the system can own FSM transitions or ORM persistence without depending on ores.dq.

Inputs

  • NATS request messages from Qt clients and peer services (badge queries, dataset/bundle CRUD, change-management events).
  • PostgreSQL connections to ores_dq_* tables.
  • Domain-specific events from trading, refdata, assets, and other components that trigger DQ population handlers.

Outputs

  • Badge and dataset records persisted to the ores_dq schema.
  • NATS response messages for all DQ operations.
  • ORM base classes, entity mappers, and FSM utilities consumed by ores.trading.core, ores.refdata.core, ores.assets.core, etc.

Entry points

  • include/ores.dq.core/ores.dq.core.hpp — aggregate include.
  • include/ores.dq.core/messaging/registrar.hpp — registers all NATS handlers with the service host.
  • include/ores.dq.core/service/badge_service.hpp — badge management.
  • include/ores.dq.core/service/dataset_service.hpp — dataset lifecycle.

Dependencies

  • ores.dq.api — shared domain types and NATS protocol schemas.
  • ores.iam.core — identity and authorisation context.
  • rfl — JSON serialisation via reflection.
  • soci — SQL ORM for PostgreSQL persistence.
  • nats.c — NATS messaging client.

See also

Emacs 29.1 (Org mode 9.6.6)