Dokumentacja SolanaInstrukcje
Tworzy nowy schemat, który określa strukturę i reguły walidacji dla atestacji. Ta instrukcja umożliwia organom certyfikującym tworzenie schematów, które określają, jakie pola powinna zawierać atestacja i jak powinny być sformatowane.
Parametry
| Parametr | Typ | Opis |
|---|---|---|
payer | Signer | Konto, które opłaci transakcję |
authority | Signer | Organ uprawniony do zarządzania poświadczeniem |
credential | PublicKey | Pda | Konto poświadczenia, z którym zostanie powiązany ten schemat |
schema | PublicKey | Pda | Konto schematu do utworzenia |
systemProgram | PublicKey | Pda | Konto System Program (domyślnie '11111111111111111111111111111111') |
name | string | Nazwa schematu |
description | string | Szczegółowy opis przeznaczenia schematu |
layout | ReadonlyUint8Array | Definicja układu binarnego schematu |
fieldNames | string[] | Nazwy pól w schemacie |
Zwracana wartość
Zwraca TransactionBuilder, który może być użyty do zbudowania i wysłania
transakcji.
Przykład
import { getCreateSchemaInstruction } from "sas-lib";const transaction = getCreateSchemaInstruction({payer: payerSigner,authority: authoritySigner,credential: credentialPublicKey,schema: schemaPublicKey,systemProgram: systemProgramPublicKey,name: "Identity Verification",description: "Schema for verifying user identity information",layout: schemaLayoutBytes,fieldNames: ["fullName", "dateOfBirth", "nationality"]});// Send the transactionawait transaction.sendAndConfirm();
Ważne uwagi
- Płatnik musi być sygnatariuszem transakcji
- Organ uprawniony musi być sygnatariuszem transakcji i musi być organem zarządzającym poświadczeniem
- Konto schematu musi być zapisywalne
- Konto poświadczenia musi być odczytywalne
- Ta operacja wymaga System Program do obliczeń zwolnienia z rent
- Nazwa schematu powinna być opisowa i unikalna w ramach poświadczenia
- Opis powinien zawierać jasne informacje o przeznaczeniu i sposobie użycia schematu
- Układ musi być prawidłowym formatem binarnym definiującym strukturę danych atestacji
- Tablica fieldNames musi odpowiadać polom zdefiniowanym w układzie
- Schemat może zostać później wstrzymany, jeśli zajdzie taka potrzeba
- Schemat może być wersjonowany, aby wspierać ewolucję struktury danych
- Wszystkie atestacje utworzone w ramach tego schematu muszą być zgodne z jego strukturą
Is this page helpful?