# Glossary

# SPTs

Syscoin provides a token platform. SPT stands for "Syscoin Platform Token", a token created and used on Syscoin. The word "Token" here means a representation of a certain asset (usually a digital one). SPTs function as representations of objects. Those digital representations are more convenient to transact than the actual objects themselves.

Example: Imagine you are a customer of an Arcade. The tokens are arcade game credits. It is easier for both you and the arcade owner to exchange one-play-tokens (arcade credits). Easier for you because you don't need to lug around a pile of tokens in your pockets. Easier for the arcade owner because they don't have the overhead of dealing with physical coins. Plus, both you and the owner benefit from decentralized security and infrastructure in various ways.

SPTs have properties that are relevant to developers. These are the main ones:

  • amount
  • symbol
  • description
  • precision
  • max_supply

# Precision

How many decimals your token can be divided by. If precision = 0 then the token can only be counted by whole numbers (integers). If precision = 1, then fractions are allowed at one decimal of precision; 1.3, 0.8 ... and so on. Precision can only go up to 8 decimals.

# max_supply

The maximum number of tokens that can ever be in circulation.

# Note:

Precision and max_supply are correlated when creating a token. Since max_supply is a 64-bit integer, the lower the precision the higher the max_supply ceiling (the highest max supply you can set) available to you when creating a token. If precision is 8, then the highest max_supply you can set is 9,999,999,999.99999999. Here is a table for reference:

Precision Max Supply Ceiling
8 9,999,999,999.99999999
7 99,999,999,999.9999999
6 999,999,999,999.999999
5 9,999,999,999,999.99999
4 99,999,999,999,999.9999
3 999,999,999,999,999.999
2 9,999,999,999,999,999.99
1 99,999,999,999,999,999.9
0 999,999,999,999,999,999

# Asset_GUID

A number (usually stored as a 'string' in this API) that uniquely identifies your asset. This number is deterministic (set automatically by Syscoin Core). Suppose you created a token entitled "Coffee". There may be many tokens named "Coffee" but there will be only one for each asset_guid. The actual name or 'ticker' of the token (e.g. "Coffee") can be declared as its symbol.

# NFTs

In this specific context, the quick and simple definition of an NFT is an SPT which has precision = 0 and max_supply = 1.0. It should be clear that this gives a single unique token that cannot be subdivided into smaller tokens.

# Child NFT

Syscoin Core also provides a way to mint multiple distinct and seperate NFTs (Child NFTs) from a single Parent SPT. This method has benefits like reducing NFT creation fees significantly when minting many. Child NFTs inherit certain characteristics from the Parent's token spec, and those characteristics and all others are immutable.

Child NFTs have some special properties covered below:

# BaseAssetID

To prevent fungibility, after a Child NFT is minted from its Parent token, it gains its own uniqueasset_guid but also has a reference to its Parent's asset_guid. Such reference is tagged as baseAssetID which is equal to the Parent's asset_guid.

# NFTID

Creators can also provide their own local identifier when issuing each child NFT by specifying NFTID, a 32-bit unsigned integer. The max value of NFTID is 4294967295. As you can tell, Syscoin Core provides some special NFT capabilities!