Skip to main content
BDL - Barsa Definition Language
Official BDL Documentation

Define Barsa systems faster, safer, and with AI.

BDL - Barsa Definition Language - is a structured JSON-based language for describing complete Barsa systems, from entities and forms to reports, workflows, validation, and runtime-aware capabilities.

BDL Knowledge Baseline5.2.2
task-management.bdl.json
{
  "schema": "barsa.definition.v1",
  "project": {
    "code": "TaskManagement",
    "caption": "Task Management",
    "version": "1.0.0"
  },
  "artifacts": [
    {
      "kind": "Entity",
      "code": "Task"
    }
  ]
}
StructuredAI-readableRuntime-aware
Why BDL

One language for system definition and governed AI authoring.

BDL

Define complete systems

Model entities, fields, forms, reports, workflows, rules, permissions, and system behavior in one structured language.

BDL

Built for AI authoring

BDL gives AI a governed, machine-readable way to design Barsa systems without guessing unsupported capabilities.

BDL

Runtime-aware by design

Documentation separates Native Barsa, Runtime Support, BDL Expressibility, and Authoring Availability.

BDL

Validated and traceable

Use capability gates, diagnostics, known gaps, version metadata, and evidence-backed references.

BDL AUTHORING SURFACE

Everything You Can Define

Model the major building blocks of a Barsa system through one governed, machine-readable language.

01

Entities & Fields

Data models, field kinds, relations, calculations, defaults and settings.

02

Forms & Layouts

Views, field states, semantic rows, tabs, groups, sections and layouts.

03

Reports

Tabular, statistical, print, tree, matrix, calendar, Gantt and dashboard reports.

04

Workflows

Processes, activities, variables, actors, form bindings and visual layouts.

05

Rules & Commands

Business rules and governed commands attached to supported host artifacts.

06

Permissions & Navigation

Permissions, menus, pages and groups across the available authoring surface.

07

Notifications & Data

Notifications, seed data and governed entity data exchange capabilities.

08

System Code

Governed business logic and Windows client code slots with validation controls.

Availability is version-aware. Runtime support, BDL expressibility and authoring availability are documented separately.

QUICK EXAMPLE

Start with the smallest valid BDL project

A BDL definition begins with an explicit schema, project metadata, references and an artifact collection.

Explore the language reference →
minimal.bdl.jsonJSON
{
  "schema": "barsa.definition.v1",
  "project": {
    "code": "SAMPLE",
    "caption": "Sample",
    "systemId": "${RESOLVE_SYSTEM_ID}",
    "version": "1.0.0"
  },
  "references": {},
  "artifacts": []
}
Explicit schemaVersioned projectArtifact-based

Know exactly what Barsa accepts, runs, expresses, and allows.

BDL documentation does not collapse every capability into a single "supported" flag. Each feature is tracked independently across Native Barsa, Runtime Support, BDL Expressibility, and BDL Authoring Availability.

Explore capability layers →
Capability layerWhat it answers
Native BarsaDoes Barsa support it?
Runtime SupportCan the runtime execute it?
BDL ExpressibilityCan BDL describe it?
BDL Authoring AvailabilityMay authors generate it?

From your first BDL document to complete Barsa subsystems.

Learn the document model, artifact structure, validation rules, patterns, diagnostics, known gaps, and AI authoring guidance.