You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Post-History: https://forum.cardano.org/t/cip-nft-metadata-standard/45687 and https://www.reddit.com/r/CardanoDevelopers/comments/mkhlv8/nft_metadata_standard/
10
19
License: CC-BY-4.0
11
20
---
12
21
13
22
## Abstract
14
23
15
24
This proposal defines an Media Token Metadata Standard for Native Tokens.
16
25
17
-
## Motivation
26
+
## Motivation: why is this CIP necessary?
18
27
19
28
Tokens on Cardano are a part of the ledger. Unlike on Ethereum, where metadata can be attached to a token through a smart contract, this isn't possible on Cardano because tokens are native and Cardano uses a UTxO ledger, which makes it hard to directly attach metadata to a token.
20
29
So the link to the metadata needs to be established differently.
21
-
Cardano has the ability to send metadata in a transaction, that's the way we can create a link between a token and the metadata. To make the link unique, the metadata should be appended to the same transaction, where the token forge happens:
30
+
31
+
Cardano has the ability to send metadata in a transaction, allowing the creation of a link between a token and the metadata. To make the link unique, the metadata should be appended to the same transaction, where the token forge happens:
22
32
23
33
> Given a token in a EUTXOma ledger, we can ask “where did this token come from?” Since tokens
24
34
> are always created in specific forging operations, we can always trace them back through their
25
35
> transaction graph to their origin.
26
36
27
-
(Section 4 in the paper: https://iohk.io/en/research/library/papers/utxomautxo-with-multi-asset-support/)
28
-
29
-
## Considerations
37
+
—Section 4 in the paper [UTXOma:UTXO with Multi-Asset Support](https://iohk.io/en/research/library/papers/utxomautxo-with-multi-asset-support/)
30
38
31
39
That being said, we have unique metadata link to a token and can always prove that with 100% certainty. No one else can manipulate the link except if the policy allows it to ([update mechanism](#update-metadata-link-for-a-specific-token)).
32
40
@@ -135,9 +143,18 @@ Optional fields allow to save space in the blockchain. Consequently the minimal
135
143
}
136
144
```
137
145
146
+
### References
147
+
148
+
- Mime types: [RFC6838: Media Type Specifications and Registration Procedures](https://tools.ietf.org/html/rfc6838)
149
+
- CIP about reserved labels: [CIP-0010: Transaction Metadata Label Registry](https://github.com/cardano-foundation/CIPs/blob/master/CIP-0010)
## Rationale: how does this CIP achieve its goals?
154
+
138
155
### Retrieve valid metadata for a specific token
139
156
140
-
As mentioned above this metadata structure allows to have either one token or multiple tokens with also different policies in a single mint transaction. A third party tool can then fetch the token metadata seamlessly. It doesn't matter if the metadata includes just one token or multiple. The proceedure for the third party is always the same:
157
+
As mentioned above this metadata structure allows to have either one token or multiple tokens with also different policies in a single mint transaction. A third party tool can then fetch the token metadata seamlessly. It doesn't matter if the metadata includes just one token or multiple. The procedure for the third party is always the same:
141
158
142
159
1. Find the latest mint transaction with the label 721 in the metadata of the specific token that mints a positive amount of the token
143
160
2. Lookup the 721 key
@@ -151,17 +168,21 @@ Using the latest mint transaction with the label 721 as valid metadata for a tok
151
168
152
169
Since modern token policies or ledger rules should generally make burning of tokens permissionless, the metadata update is restricted to minting (as in positive amounts) transaction and excludes burning transactions explicitly.
153
170
154
-
## Backward Compatibility
171
+
###Backward Compatibility
155
172
156
173
To keep token metadata compatible with changes coming up in the future, we use the **`version`** property.
157
174
A future version will introduce [schema.org](https://schema.org).
158
175
159
-
## References
176
+
## Path to Active
177
+
178
+
### Acceptance Criteria
179
+
180
+
-[x] Support of this NFT definition in a commercially significant number and variety of NFT-related services and wallets.
181
+
-[x] Evolution of this document and standard beyond its early adoption and use cases (up through the point when alternative NFT standards have emerged).
182
+
183
+
### Implementation Plan
160
184
161
-
- Mime type: https://tools.ietf.org/html/rfc6838.
162
-
- CIP about reserved labels: https://github.com/cardano-foundation/CIPs/blob/master/CIP-0010
0 commit comments