CIP extended 721

I would also like to propose a way to reduce data on chain using extended 721

NFT 0
{
  "721": {
          "<POLICY_ID>": {
                "<NFT_NAME_B16>": {
                "name":"nft0"
                "traits":{"apple":"2", "pear":"1"    } // random data
                "references": {
                 "ext": ["0"]
                   }
          },
          "payload": { // this data is only stored in one tx
                  "0" : {
                                "project": "<PROJECT>", // data that will be duplicated for each nft
                                "website": "<WEBSITE>",  
                                "adahandle": "<handle>",
                                "discord": "discord",
                                "telegram": "<WEBSITE>",
                  }
                  },
          "version": "2.0"
          }
     }
}
NFT N
NFT 0
{
  "721": {
          "<POLICY_ID>": {
                "<NFT_NAME_B16>": {
                "name":"nft0"
                "traits":{"apple":"2", "pear":"1"    } // random data
                "references": {
                 "ext": ["0"] // references instead of duplicating data saving space on chain
                   }
          },
          "version": "2.0"
          }
     }
}

This implementation would save space on chain with nfts that duplicate a lot of data. Once such example is ada handle which contains duplicate data in every minted nft. If the reference tag is short enough for example “ext”:[0] instead of “references”:{“ext”:[0]} you could start to have a massive impact on reducing data on chain.

A rough saving calc could be determined as such:

100bytes for this data in each nft using standard 721
core:{"og":0,"termsofuse":"https://adahandle.com/tou","handleEncoding":"utf-",prefix:"$",version:0}

9 bytes if we use
"ext":[0]

saving 91 bytes per nft (probably around ~80 if we use the… refences:ext:0 option)

currently there are 108849 ada handles meaning this new CIP could have saved
9.905259 megabytes of data duplicate from being stored on chain.

2 Likes