Skip to Content

CASSIOPEIA NO-CODE DATA TRANSFORMATION ENGINE


Any data source. Any format. One NGSI-LD output. No custom code.


MODULE TYPE: Data mapper + transformer (CLI + server mode; writer to files or Context Broker)

PRIMARY USE: Standardize heterogeneous data sources into interoperable NGSI-LD entities for smart city and IoT platforms

MATURITY: Beta/Production

LICENSE: TBD



THE PROBLEM IT SOLVES ​

Every sensor vendor, every city department, every data feed speaks a different format. CSV, JSON, GeoJSON, GTFS, GBFS - all incompatible. Without CASSIOPEIA, every new data source means weeks of custom integration code. 


CASSIOPEIA maps any source to NGSI-LD Smart Data Models - once. No code. Repeatable. Validated.

SEE TECHNICAL DETAILS
  • Transforms multiple input formats: CSV, JSON, GeoJSON, GBFS, GTFS, and others.
  • Outputs NGSI-LD entities in different representation modes (normalized/concise/simplified).
  • Advanced mapping configuration: templates, conditional logic, nested objects, relationships, list relationships.
  • Synthetic entities: create referenced entities on-the-fly when source data only contains partial references.
  • Smart Data Model integration: download/search/list schemas and validate outputs when schemas exist.
  • Flexible writers: write to files (default) or push directly to a Context Broker via HTTP.
  • Standard feed shortcuts: pre-built configurations for common GTFS and GBFS entity types.
  • Not a Context Broker - it generates/publishes entities to one. 
  • Not a data catalog / data space - it’s a transformation/mapping component in a larger stack. 
  • Not a full ETL orchestration platform - it focuses on mapping + validation + output (scheduling/orchestration belongs elsewhere). 
  • Not an analytics/ML module - no mention of modeling or KPI logic, just transformation. 
  • Not a UI-first product - usage is documented mainly via CLI + config files. 
  • Inputs
    • Source files or feeds: CSV / JSON / GeoJSON / GBFS / GTFS.
    • Mapping config files: JSON5 (recommended) or JSON.
  • Processing
    • Applies mapping rules using Tera templates with support for conditionals, filters, and nested navigation.
    • Generates entity IDs using dataModel + entityName + optional URN parts (site/service/group).
    • Performs type transformations (string/int/float/bool/datetime/geo types).
    • Optionally validates against Smart Data Model schemas (downloaded via Cassiopeia download).
  • Outputs
    • NGSI-LD entities written as files, or pushed to a Context Broker (--writer-type context-broker --broker-url ...).
    • Output representation modes: normalized, concise (default), simplified.
    • Null handling: include or skip null values.

Cassiopeia provides five interfaces for different stages of the data integration workflow:

  • CLI - Command line -  Batch jobs, CI/CD, one-off conversions
  • Server -   REST + WebSocket -  Centralized hub, live data streams
  • Explorer -  Terminal (TUI) -  Schema discovery, model inspection
  • Wizard -  Terminal (TUI) -  Interactive mapping creation
  • Configurator -   Web browser -  Same as Wizard, graphical UI 
  • Language: Rust
  • Config format: JSON5/JSON mapping configs
  • Templating: Tera template engine
  • Interfaces: CLI (cassiopeia ...) + server mode (cassiopeia server)
  • Outputs: File writer or Context Broker writer (HTTP)
  • Validation dependencies: Smart Data Model schemas downloaded by tool command
SCREENSHOTS / UI


FIWAREBox Cassiopeia -  Data Model Selection

  

FIWAREBox Cassiopeia - Attribute Mapping

GET STARTED

Available standalone, embedded in FIWAREBox, or fully managed as part of Context DataHub. 

Built for data engineers, system integrators, and platform architects who need to stop writing custom mappers. Works with: Libra (API gateway), Auriga, Lynx.

FIWAREBOX · ANY FORMAT IN, NGSI-LD OUT · EU OPEN STANDARDS · YOUR INFRASTRUCTURE, YOUR RULES