LNP-BP / LNPBPs

LNP/BP standards for bitcoin layer 2 & 3 protocols
https://standards.lnp-bp.org
202 stars 39 forks source link

decide future of current RGB21 implementation #159

Closed zoedberg closed 1 year ago

zoedberg commented 1 year ago

From https://github.com/RGB-WG/rgb-schemata/pull/3 I understood that currently we can support only one non-fractionable NFT. But in LNPBP 21 it's still documented that multiple tokens and assetOwner could be present. So I'm wondering if the current interface, which is not strictly implementing LNPBP 21, is final or not. IMO if the intention is to use this interface in mainnet we should write a dedicated LNPBP for it.

dr-orlovsky commented 1 year ago

An interface defines API and what is possible. Schemata provides implementation under the rules of the interface. Multiple schemata (and multiple implementations) of the same interface can exist.

RGB21 is the interface standard. It defines that NFT can have multiple tokens - but does not require the presence of a collection and not a single token. It also allows fractional tokens - but does not require each NFT to be fractional.

So there is nothing to decide: if somebody needs fractional NFT he needs to write a corresponding contract (i.e. schema) providing fractionality and implement RGB21 - no changes to RGB21 are needed. Also, nothing is required to be changed in the existing schema and its implementation, since it is the schema for singular non-fractionable NFTs, which is also needed for some cases.

Finally, this issue is nohow related to the standards. For the implementing fractional NFTs or collections a pull request to the rgb-schemata - or a separate independent repository has to be created (or an issue there to do that one day).