Validation

Schema Definition Validation

Pure validation logic for _schema.yml / _schema.json files.

Validates syntax, structure, and semantic correctness of extension schema definition files. Returns an array of findings with severity levels.

Interfaces

Type Aliases

Functions

Schema-Derived Constants

Derives validation constants and completion metadata from the

JSON Schema meta-schema (extension-schema.json).

All derivation runs once at module load time.

Variables

validateSchemaDefinition

TypeScript
function validateSchemaDefinition(content, format): SchemaDefinitionFinding[];

Defined in: packages/schema/src/validation/schema-definition.ts:57

Validate a schema definition file and return all findings.

Parameters

Parameter Type Description
content string Raw file content (YAML or JSON string).
format "json" | "yaml" File format: “yaml” or “json”.

Returns

SchemaDefinitionFinding[]

Array of validation findings.

validateSchemaDefinitionStructure

TypeScript
function validateSchemaDefinitionStructure(parsed): SchemaDefinitionFinding[];

Defined in: packages/schema/src/validation/schema-definition.ts:113

Validate the structure and semantics of a parsed schema definition.

Parameters

Parameter Type Description
parsed unknown The parsed YAML/JSON object.

Returns

SchemaDefinitionFinding[]

Array of validation findings.

validateSchemaDefinitionSyntax

TypeScript
function validateSchemaDefinitionSyntax(content, format):
  | {
  error: SchemaDefinitionFinding[];
}
  | {
  error: null;
  parsed: unknown;
};

Defined in: packages/schema/src/validation/schema-definition.ts:72

Validate syntax of a schema definition file.

Parameters

Parameter Type Description
content string Raw file content.
format "json" | "yaml" File format.

Returns

| { error: SchemaDefinitionFinding[]; } | { error: null; parsed: unknown; }

Either an error array or the parsed object.

SchemaDefinitionFinding

Defined in: packages/schema/src/validation/schema-definition.ts:27

A single validation finding from schema definition analysis.

Properties

Property Type Description Defined in
code string Machine-readable code identifying the check. packages/schema/src/validation/schema-definition.ts:33
column? number Zero-based column number (when available from syntax errors). packages/schema/src/validation/schema-definition.ts:37
keyPath? string Dot-separated key path to the problematic location. packages/schema/src/validation/schema-definition.ts:39
line? number Zero-based line number (when available from syntax errors). packages/schema/src/validation/schema-definition.ts:35
message string Human-readable description of the issue. packages/schema/src/validation/schema-definition.ts:29
severity SchemaDefinitionSeverity Severity level. packages/schema/src/validation/schema-definition.ts:31

SchemaDefinitionSeverity

TypeScript
type SchemaDefinitionSeverity = "error" | "warning" | "information";

Defined in: packages/schema/src/validation/schema-definition.ts:22

Severity level for a schema definition finding.

ALLOWED_FIELD_PROPERTIES

TypeScript
const ALLOWED_FIELD_PROPERTIES: Set<string>;

Defined in: packages/schema/src/validation/schema-derived.ts:50

Allowed properties on a field descriptor (both camelCase and kebab-case).

ALLOWED_SHORTCODE_KEYS

TypeScript
const ALLOWED_SHORTCODE_KEYS: Set<string>;

Defined in: packages/schema/src/validation/schema-derived.ts:56

Allowed top-level keys inside a shortcode entry.

ALLOWED_TOP_LEVEL_KEYS

TypeScript
const ALLOWED_TOP_LEVEL_KEYS: Set<string>;

Defined in: packages/schema/src/validation/schema-derived.ts:47

Allowed top-level keys in a schema definition file.

ALLOWED_TYPES

TypeScript
const ALLOWED_TYPES: Set<string>;

Defined in: packages/schema/src/validation/schema-derived.ts:53

Allowed type values for a field descriptor.

fieldDescriptorMetadata

TypeScript
const fieldDescriptorMetadata: object;

Defined in: packages/schema/src/validation/schema-derived.ts:121

Type Declaration

booleanProperties

TypeScript
booleanProperties: Set<string>;

nestedProperties

TypeScript
nestedProperties: Set<string>;

propertyDocs

TypeScript
propertyDocs: Record<string, string>;

shortcodeArgumentOnly

TypeScript
shortcodeArgumentOnly: Set<string>;

snippetOverrides

TypeScript
snippetOverrides: Record<string, string>;

valueTriggerProperties

TypeScript
valueTriggerProperties: Set<string>;

yamlHidden

TypeScript
yamlHidden: Set<string>;

rootKeyMetadata

TypeScript
const rootKeyMetadata: object;

Defined in: packages/schema/src/validation/schema-derived.ts:173

Type Declaration

propertyDocs

TypeScript
propertyDocs: Record<string, string>;

yamlHidden

TypeScript
yamlHidden: Set<string>;

SCHEMA_META_SCHEMA

TypeScript
const SCHEMA_META_SCHEMA: Record<string, unknown> = metaSchema;

Defined in: packages/schema/src/validation/schema-derived.ts:40

shortcodeEntryMetadata

TypeScript
const shortcodeEntryMetadata: object;

Defined in: packages/schema/src/validation/schema-derived.ts:149

Type Declaration

nestedProperties

TypeScript
nestedProperties: Set<string>;

propertyDocs

TypeScript
propertyDocs: Record<string, string>;

snippetOverrides

TypeScript
snippetOverrides: Record<string, string>;
Back to top

Reuse

MIT