Protected Optional_Optional provider override; falls back to Metadata.Provider when not set.
Protected Static__Resolved placeholders by cache key, in least-recently-used-first order.
Static ReadonlyMaxThe most resolved placeholders kept at once. Every record version adds entries (the key includes a hash of the record values), so the least recently used entry is evicted once the cache is full.
Allows setting or reading an explicit provider override for testing or isolated execution
ProtectedProviderReturns the active provider — explicit override if set, otherwise the global default.
StaticCachedThe number of resolved placeholders currently cached.
ProtectedevalEvaluates a single placeholder argument: either a function call like Relationship(...) or a field/path reference like Name or __Parent.Title.
Parses an entity document template and replaces values within ${} placeholders with actual values from the entity record. If template uses Nunjucks {{ }} syntax, it is pre-rendered with the MJ TemplateEngine first.
the document template to parse
the ID of the entity
the values for the entity record (may contain __Parent context)
the current user
the evaluated value of the template incorporating fields, nested contexts, and function call(s)
ProtectedRelationshipResolves related records for an entity and recursively renders a child Entity Document over each.
ID of the parent entity
Data of the parent entity record
Current user info
Name of the related entity / relationship
Maximum number of related rows to load
Name of the child Entity Document to render over each related row
Concatenated rendered output for all related rows, or raw JSON data if no document specified
Resolves the template text from an Entity Document. Priority:
ProtectedwithoutThe related rows without the values that must stay out of a derived document. The rendered text is built once and read by many users (an Entity Record Document, autotag content, an inference's context), so two sets of fields are dropped:
The join field (by name and by code name) is kept against the second rule: its value is the parent record's own key. The rows are copied where a value is dropped and never modified.
StaticClearStaticCreateBuilds the key a resolved placeholder is cached under. Placeholders such as Relationship() load
rows under the caller's permissions, so the key includes the user. It also includes a hash of the
record values the placeholder was resolved from: a caller that strips restricted fields from a
record must not be served a value resolved earlier from the full record, and a record whose values
changed must not be served the old value. Returns null when there is no user ID, in which case the
placeholder is resolved without caching.
a hash of the record values, from HashRecordValues
StaticCreateConvenience factory method to get an instance via ClassFactory, allowing registered subclass overrides
Protected StaticgetReturns a cached placeholder value and marks it most recently used, or undefined on a miss.
StaticHashA hash of a record's values (nested objects such as __Parent included), independent of key order,
so two records with the same values hash alike however they were built.
Protected StaticsetCaches a placeholder value, evicting the least recently used entries beyond MaxCachedPlaceholders.
First-level subclass of EntityDocumentTemplateParserBase used to parse entity document templates with variables, dotted context paths (__Parent), and functions such as Relationship().