OptionalentitySchemaName: stringPrimary Key
Direct child alternate base views on the same entity that derive from this view via ParentID.
Human-friendly label for UI surfaces: returns DisplayName when set, falling back to Name.
Effective database schema name for this alternate base view: uses SchemaName
when explicitly populated, falling back to the parent entity's SchemaName.
True when CachePolicy === 'Bypass' on this view or any ancestor in its ParentView
chain, instructing ProviderBase to skip local/server result caching for reads through
this alternate base view (used when the view reads the clock or joins other tables whose
updates do not fire BaseEntity events on this entity).
True when this view (or any ancestor in its ParentView chain) has
Status === 'Deprecated'. Deprecated alternate base views remain usable at runtime
so existing views and queries do not break, but emit a deprecation warning.
True when this alternate base view (and every ancestor in its ParentView chain)
has Status equal to 'Active' or 'Deprecated'. Disabled views (or views derived
from a disabled or missing ancestor) return false.
The metadata provider that built this Info object, when known.
Info getters that resolve sibling metadata (an entity's IS-A children, a permission's RLS
filter, a query's fields, an authorization's roles, …) must read from the SAME provider the
object came from. In a multi-provider process — several GraphQLDataProvider instances with
separateConnection, or a server servicing several connections — the global
Metadata.Provider is a different provider or not set at all. Providers pass themselves to
every Info constructor (new m.class(row, provider)), and container Info objects hand it to
the child Info objects they construct.
undefined for an Info object built outside a provider (tests, ad-hoc construction). Callers
then fall back to the global provider, which is exactly the pre-existing behavior.
The parent alternate base view on the same entity when ParentID is set,
or undefined for a top-level alternate base view.
ProtectedcopyCopies initialization data from a plain object to the class instance. Only copies properties that already exist on the class to prevent creating new fields. Special handling for DefaultValue fields to extract actual values from SQL Server syntax.
The initialization data object
OptionalskipKeys: ReadonlySet<string>Optional set of property keys handled directly by the subclass constructor
Records the provider that owns this Info object. A null/undefined provider is ignored, so passing an optional constructor argument straight through is always safe.
the provider whose metadata this object belongs to
Default JSON serialization for BaseInfo subclasses.
Emits all non-underscored direct field declarations. For _-prefixed private backing fields
(the MJ pattern for collection storage — e.g. _Fields, _RelatedEntities, _OrganicKeys),
emits the value of the corresponding same-named public getter instead. Purely computed getters
without a backing field (display-name formatters, derived flags) are intentionally skipped —
they can throw when source fields are null and don't belong on the wire anyway.
A _-backed getter that throws is omitted from the output rather than aborting the whole
serialization. That omission is safe ONLY because such getters are recomputable: the backing
field is a lazy cache over other serialized state (e.g. QueryInfo.CategoryPath over CategoryID),
so the value is rebuilt on the next access after a warm boot. Do not add a _-backed getter
whose value cannot be recomputed from the serialized fields — a throw would silently drop it.
Nested BaseInfo instances and arrays of them unwrap automatically via JSON.stringify's native toJSON() protocol.
Subclasses may override to emit a filtered subset or custom shape (see EntityFieldValueInfo).
StaticLinkLinks ParentView and ChildViews references across the alternate base views belonging
to a single entity and stamps the owning entity's SchemaName fallback.
OptionalentitySchemaName: string
Metadata describing a governed alternate SQL view on an entity that maintains 100% column parity with the entity's canonical
BaseViewwhile applying a curated canonical filter or join (for example,Activemembers orOpenorders).Alternate base views can form a same-entity derivation hierarchy via ParentID (for example,
ActiveAutoRenewselecting fromvwActiveMembers).Maps to the
MJ: Entity Alternate Base Viewsmetadata entity.