Skip to content

Velluscinum Jason

Nilson Lazarin edited this page Sep 11, 2024 · 9 revisions
Velluscinum for Jason Wiki

Velluscinum for Jason

Velluscinum for Jason is a middlware that allows cognitive agents to manipulate the BigchainDB, the blockchain database.

How to import?

Incluide the latest velluscinum.jar into the lib folder of your Jason Project.

The Internal Actions provided by the Velluscinum

Internal Action Description
buildWallet Generates a digital wallet and returns a belief.
loadWallet Loads (or creates if not exists) the agent's key pair into the project folder, that represents a digital wallet, and returns a belief.
storeWallet Persists a belief that represents the agent's digital wallet as a key pair into the project folder.
deployNFT Registers an asset and returns a belief.
.velluscinum.transferNFT(S,P,Q,A,R,M,b) Transfer an asset and returns +b(T);
.velluscinum.deployToken(S,P,Q,I,V,b) Creates V units from an asset, returns +b(C);
.velluscinum.transferToken(S,P,Q,C,R,V,b) Transfer V units of C and returns +b(T);
.velluscinum.stampTransaction(S,P,Q,T) Stamps a transaction (T);
.velluscinum.tokenBalance(S,P,Q,C,q) Check the wallet Q and return +q(C,V).

Where:

  • b is a belief that represents a result of an operation in DLT;
  • w is a belief that represents an agent's wallet;
  • q is a belief that represents the balance of C in the agent's wallet.
  • A is a literal that represents a indivisible asset;
  • C is a literal that represents a divisible asset;
  • P e Q are literals that represent the agent's key pair;
  • R is a literal that represents the public key of a recipient agent;
  • S is a literal that represents the address of a DLT node;
  • T is a literal that represents a transaction performed in the DTL;
  • V is a literal that represents the number of parts of a C;
  • I is a key-value array that represents the immutable data of an asset;
  • M is a key-value array representing asset or transaction metadata;

EXAMPLES