Skip to main content

An anywidget for Microsoft Fabric notebooks that visually configures normalized schema JSON for Process Mining data import.

Project description

Normalized Schema Generator

An anywidget-based Jupyter widget for Microsoft Fabric notebooks that visually configures a normalized schema JSON config for Process Mining data import.

Replaces manual JSON authoring by providing dropdowns, toggles, and inline forms to select lakehouses, tables, columns, and FK/PK relationships, then auto-generates the dataSource section of the config.

Install

pip install normalized-schema-generator

Usage

In a Fabric notebook

from normalized_schema_generator import NormalizedSchemaWidget

w = NormalizedSchemaWidget()
w

The widget auto-detects the Fabric environment and populates lakehouses, tables, and columns using notebookutils and Spark.

After configuring your schema, retrieve the generated JSON:

print(w.config_json)

Local development

Outside Fabric, the widget uses mock data automatically — no notebookutils or Spark needed:

pip install normalized-schema-generator jupyterlab
jupyter lab

Features

  • Lakehouse selection from the current workspace
  • Data source toggle: Delta Tables or Files (CSV / Parquet)
  • Events table (required): column checklist with data type badges, include/exclude toggles
  • Cases table (optional): same column management, with required Events-to-Cases FK relationship
  • Reference management: add/edit/remove FK joins to lookup tables, with target column selection
  • Auto-generated JSON: full inputDataBinding config with dataSource, connection properties, and dataset definitions
  • Copy to clipboard for the generated JSON
  • Fluent 2 styling matching the Fabric design language

JSON output

The widget generates a complete normalized import config following the Process Mining Normalized Import specification:

  • dataSourceSchemaType: 1 (Normalized)
  • dataSourceType: 2 (OneLake)
  • Proper datasets[] with Kind 0 (Event), 1 (Case), 2 (Join)
  • FK columns excluded from Columns[] (exposed via Join[].ExportName)
  • No nested joins on lookup datasets

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

normalized_schema_generator-0.3.0.tar.gz (18.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

normalized_schema_generator-0.3.0-py3-none-any.whl (20.2 kB view details)

Uploaded Python 3

File details

Details for the file normalized_schema_generator-0.3.0.tar.gz.

File metadata

File hashes

Hashes for normalized_schema_generator-0.3.0.tar.gz
Algorithm Hash digest
SHA256 4f187c0d6b0c50e73a7781c50fd4aa0ec3a4ddfc9c78717f1d174617ce0720e6
MD5 b34c50cc11a8d53ea4dac3e0155d9c7a
BLAKE2b-256 e32d1410d1440e13ac1583a3de090447369c46a926f59c7d57d94bb7a3cb8b7d

See more details on using hashes here.

File details

Details for the file normalized_schema_generator-0.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for normalized_schema_generator-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fc02d06e2ab637111ee2ea5780c5b1698ec8461b8d35121bf0b039f478c65980
MD5 94ff66ad2896ee10ab31df46fd51a018
BLAKE2b-256 316e772ed5e0189c24a7edf07b619c182cb02a46fe99dd185cfa416212950990

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page