Skip to Content

CASSIOPEIA - NGSI-LD COMPLAINT DATA TRANSFORMATION ENGINE


CONVERTS CSV/JSON/GEOJSON/GBFS/GTFS, AND OTHER FORMATS INTO CONSISTENT NGSI-LD COMPLIANT ENTITIES, WITH REPEATABLE MAPPINGS, PREDICTABLE ID, OPTIONALLY VALIDATING THEM AGAINST FIWARE SMART DATA MODELS, AND WRITING RESULTS EITHER TO FILES OR DIRECTLY TO A NGSI-LD CONTEXT BROKER. based on Cassiopeia results, platforms can integrate data without per-dataset 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



WHY IT EXISTS 

Real-world IoT and city/industry datasets arrive in “whatever format the provider chose” (CSV exports, custom JSON, GeoJSON layers, transit feeds, bike sharing feeds). Cassiopeia exists to turn that messy reality into consistent NGSI-LD entities - with repeatable mappings, predictable IDs, and optional schema validation - so platforms can integrate data without per-dataset custom code.   

WHAT IT DOES
  • 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.
WHAT IT DOES NOT DO
  • 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. 
HOW IT WORKS
  • 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.
ARCHITECTURE POSITION 

Cassiopeia sits between “raw data sources” and your NGSI-LD runtime:

  • Upstream: files, APIs, feeds, exports (CSV/JSON/GeoJSON/GTFS/GBFS).
  • Cassiopeia: mapping configs + optional validation against Smart Data Models.
  • Downstream: file outputs (for pipelines/tests) or a NGSI-LD Context Broker (for live platforms).
TECHNOLOGY STACK
  • 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

DEPLOYMENT OPTIONS
  • standalone/self-hosted
  • embedded in FIWAREBox
  • managed as part of FIWAREBox (NGSI-LD Data Backbone)
LICENCE

TBD

WHO THIS IS FOR

IT personas: architects, data engineers, integrators, pilots/research  

RELATED MODULES

Auriga, Lynx, Libra