انتقل إلى المحتوى الرئيسي

Variable: SetupFrameworkDocument

const SetupFrameworkDocument: TUnion<[TObject<{ governingAuthority: TObject<{ contact: TWith<TString, { description: "The authority's address: a role mailbox such as `trust-office@`, never a person's."; }>; name: TWith<TString, { description: "The institution that governs the framework."; }>; }>; name: TWith<TString, { description: "The framework's title."; }>; roles: TArray<TObject<{ admissionCriteria: TArray<TObject<{ enforcedBy: TWith<..., ...>; id: TWith<..., ...>; statement: TWith<..., ...>; }>>; code: TWith<TString, { description: "The role as the platform names it, such as `TRUST_ANCHOR_ADMIN`. An identifier, never prose."; }>; name: TWith<TString, { description: "The role as a person reads it."; }>; }>>; version: TInteger; }>, TObject<{ name: TWith<TString, { description: "The framework's title."; }>; primaryDocument: TObject<{ administeringAuthority: TOptional<TObject<{ contact: TWith<TString, { description: ...; }>; delegatedRole: TWith<TString, { description: ...; }>; did: TOptional<TWith<..., ...>>; jurisdiction: TWith<TString, { description: ...; }>; legalName: TWith<TString, { description: ...; }>; lei: TOptional<TWith<..., ...>>; name: TWith<TString, { description: ...; }>; website: TOptional<TWith<..., ...>>; }>>; controlledDocuments: TArray<TObject<{ category: TWith<TUnsafe<...>, { description: ...; }>; description: TOptional<TString>; digest: TWith<TString, { description: ...; }>; id: TWith<TString, { description: ...; }>; language: TWith<TString, { description: ...; }>; title: TWith<TString, { description: ...; }>; uri: TWith<TString, { description: ...; }>; version: TInteger; }>>; extensions: TUnion<[TObject<{ allowed: TLiteral<...>; paragraphs: TOptional<...>; }>, TObject<{ activation: TWith<..., ...>; allowed: TLiteral<...>; approval: TWith<..., ...>; deactivation: TWith<..., ...>; notification: TWith<..., ...>; paragraphs: TOptional<...>; registration: TWith<..., ...>; }>]>; generalRequirements: TArray<TObject<{ id: TWith<TString, { description: ...; }>; statement: TWith<TString, { description: ...; }>; topic: TUnsafe<... | ... | ... | ...>; }>>; governingAuthority: TObject<{ contact: TWith<TString, { description: "Its address: a role mailbox such as `trust-office@`, never a person's."; }>; jurisdiction: TWith<TString, { description: "Where it is constituted: ISO 3166-1 alpha-2, with an optional subdivision."; }>; legalName: TWith<TString, { description: "Its full legal name, as registered in its jurisdiction."; }>; lei: TOptional<TWith<TString, { description: ...; }>>; name: TWith<TString, { description: "The institution, as a reader names it."; }>; website: TOptional<TWith<TString, { description: ...; }>>; }>; introduction: TObject<{ acknowledgements: TOptional<TArray<TString>>; metamodelVersion: TWith<TUnsafe<"1.0">, { description: "The ToIP Governance Metamodel version the document follows. Only `1.0` exists."; }>; paragraphs: TWith<TArray<TString>, { description: "The background: why the framework exists and where it sits in the ToIP stack."; }>; references: TOptional<TArray<TObject<...>>>; }>; localization: TObject<{ languages: TArray<TString>; translationPolicy: TOptional<TArray<TString>>; translations: TOptional<TArray<TObject<...>>>; }>; objectives: TArray<TObject<{ id: TWith<TString, { description: ...; }>; statement: TString; }>>; principles: TArray<TObject<{ id: TWith<TString, { description: ...; }>; statement: TString; }>>; purpose: TWith<TString, { description: "Section 1.6: what the framework is for, in one paragraph."; }>; revisions: TObject<{ procedure: TWith<TArray<TString>, { description: "How a revision is drafted, reviewed and approved, and how each version gets its DID URL. A published version is never edited; a change is the next version."; }>; publicReviewDays: TOptional<TInteger>; }>; scope: TObject<{ governedArtifacts: TOptional<TArray<TString>>; interactions: TOptional<TArray<TString>>; outOfScope: TOptional<TArray<TString>>; stakeholders: TOptional<TArray<TString>>; }>; terminology: TObject<{ glossaryDocuments: TArray<TString>; paragraphs: TOptional<TArray<TString>>; requirementKeywords: TWith<TLiteral<"bcp14">, { description: "The keyword convention: BCP 14 (RFC 2119 with RFC 8174), so a keyword is one only when capitalised. A constant, because the schema enforces it on every requirement; the field is what makes the document say so."; }>; toipGlossary: TWith<TString, { description: "The ToIP Governance Requirements Glossary the framework adopts."; }>; }>; }>; roles: TArray<TObject<{ admissionCriteria: TArray<TObject<{ enforcedBy: TUnsafe<...>; id: TWith<..., ...>; statement: TWith<..., ...>; }>>; code: TWith<TString, { description: "The role as the platform names it, such as `TRUST_ANCHOR_ADMIN`. An identifier, never prose."; }>; name: TWith<TString, { description: "The role as a person reads it."; }>; }>>; schemaVersion: TWith<TLiteral<2>, { description: "Which shape of the framework this is: `2`. Not the document's version, which is `version`. A version 1 document has no such field."; }>; version: TInteger; }>]>

Defined in: packages/contracts/src/setup-answers.ts:210

The authored part of the governance framework, of either schema version: what anchor.frameworkDocument holds inline, and what a framework file beside the answer file contains. Exactly one branch accepts a given document, because version 1's shape refuses schemaVersion and version 2's requires it.