interface SchemaRegistryEntry {
    isEntity: boolean;
    name: string;
    path: string;
    resolvedSchema: JSONSchema7;
    stubSchema: JSONSchema7;
    typeIRI?: string;
}

Properties

isEntity: boolean

True when this definition represents a named entity (has

directly or via allOf)

name: string

Definition name (e.g. "Category")

path: string

JSON pointer path (e.g. "#/definitions/Category" or "#/$defs/Category")

resolvedSchema: JSONSchema7

Resolved schema for this entry.

  • $refs pointing to entity definitions are preserved as-is (no inlining). Use registry.byPath.get(ref) to follow them.
  • $refs pointing to value-object (non-entity) definitions are inlined. No JavaScript circular references are created.
stubSchema: JSONSchema7

Stub schema for partial validation and form rendering. Contains only primitive properties +

/ @type. Has additionalProperties: true and required: [].

This fixes common validation noise:

  • "__label not allowed" (runtime-injected fields)
  • "@type is missing" (partially-loaded relation objects carrying only @id)
typeIRI?: string

Type IRI extracted from @type.const, if present