Skip to main content

JSON Validation

RDT provides JSON Schema validation for three categories of configuration files: per-environment deploy configs (rdt.json), business-service definitions, and Dynamic App configurations.

Overview

rdt.json Validation

The rdt.json schema is automatically registered — no setup required. Any file matching **/project/environments/*/rdt.json gets full validation.

What You Get

  • Property autocompletion — press Ctrl+Space to see all valid fields
  • Enum value suggestions — e.g., driverName suggests "oracle" and "postgresql"
  • Unknown property detection — typos and invalid fields are flagged immediately (additionalProperties: false)
  • Hover documentation — hover over any property to see its description

GIF needed

Rdt.json validation — autocomplete, enum suggestions, unknown property error

Example

Valid:

{
"helmChartVersion": "0.1.1",
"driverName": "postgresql"
}

Invalid (unknown property):

{
"helmChartVersion": "0.1.1",
"driverName": "postgresql",
"unknownField": true
}

The unknownField property will show a red squiggle: "Property unknownField is not allowed".

See Per-Environment Config for the full schema reference.


Business Service Validation

After running the Business IntelliSense setup (via the Copilot status bar menu), five schemas validate your business-service configuration files:

File PatternSchemaWhat It Validates
**/business-service/entities/**/*.jsonentities_schema.jsonEntity model definitions
**/business-service/services/**/*.jsonservices_schema.jsonService operation definitions
**/business-service/messages/**/*.jsonmessages_schema.jsonMessage format definitions
**/business-service/tenants/**/*.jsontenant_schema.jsonMulti-tenant configuration
**/business-service/connectors/**/*.jsonconnectors_schema.jsonExternal system connectors

Setup

These schemas are configured through the Copilot status bar menu:

  1. Click the Copilot status bar
  2. Select IntelliSense Config Setup/Update
  3. Schemas are copied and .vscode/settings.json is configured

What You Get

  • Property autocompletion for entity fields, service operations, message formats
  • Type validation — ensures values match expected types
  • Required field checking — flags missing mandatory properties
  • Enum validation — restricts values to valid options

GIF needed

Business service JSON validation — autocomplete for entity properties, required field warning


DynApp Configuration Validation

Dynamic App schemas are versioned and downloaded from the npm registry. Set them up via the Copilot status bar menu → Setup DynApp Schemas.

How It Works

  1. You select a DynApp schema version (e.g., 9.24.3)
  2. RDT downloads the vscode-dynamic-app npm package
  3. JSON schemas are extracted and stored in VS Code's global storage
  4. Schema associations are added to .vscode/settings.json

Version Management

You can install multiple schema versions simultaneously for different branches or projects.

What You Get

  • Full IntelliSense for DynApp-specific configuration files
  • Validation against the exact schema version used by your project
  • Error detection for breaking changes between DynApp versions

GIF needed

DynApp JSON validation with version-specific schema


Troubleshooting

ProblemSolution
No validation on rdt.jsonEnsure the file is at **/project/environments/*/rdt.json — the pattern must match
No validation on business-service filesRun the IntelliSense setup from the Copilot menu
Stale DynApp schemasRe-download the version from the DynApp Schema Manager
Schema conflictsCheck .vscode/settings.json for duplicate entries in json.schemas
Validation not updating after schema changeReload the VS Code window (Ctrl+Shift+P → "Developer: Reload Window")