Tezos 上的 NFT 在钱包和市场里显示得格外规整——图片、缩略图、创作者列表、动画文件一应俱全,这得益于一条常被忽略的元数据提案:TZIP-21。它不是 NFT 的转账标准(转账归 TZIP-12/FA2 管),而是”元数据字段该长什么样”的词汇表。本文按使用场景拆解这套字段清单,以及它与其他链元数据的层级差异。
先放位置。Tezos 的 NFT 通常是 FA2(TZIP-12)合约的一种配置:单资产(每个 token_id 数量唯一)或非转移配置。合约自身要挂一份 TZIP-16 格式的元数据(name、description、homepage、icons、interfaces、源文件地址等),而描述每一枚具体藏品的字段,则按 TZIP-21 的结构写在 token 级 metadata 里,或在合约级元数据的 assets 数组下登记。TZIP-21 官方定名”Rich Metadata”,状态为 Final(2020 年定稿),字段命名大量借鉴都柏林核心元数据标准,这个出身解释了它为什么比多数链的字段表更”图书馆学”。
字段清单按官方推荐分三层。基础层对所有代币:decimals 是唯一必填(NFT 通常填 0),name 与 symbol 建议至少有一个。非同质化推荐层在基础之上增加七个关键项:artifactUri 指向”作品本体文件”,displayUri 是展示用图(官方注明可以是低分辨率预览,本体留在 artifactUri),thumbnailUri 给列表页小图,description 是文字简介,minter 记录铸造该资产的 tz 地址,creators 是负责作品知识内容的地址数组(要求数组内元素唯一),contributors 列主要贡献者。还有一个容易被忽视的 isBooleanAmount 开关:设为 true 时余额语义变成布尔(要么持有要么没有),官方建议 NFT 使用,因为它消除了”一枚 NFT 数量可以是 2”这类怪相。多媒体 NFT 再追加 formats(列出作品可用的多种文件:不同分辨率、格式及其 MIME 类型与文件大小)和 tags 关键词数组。
这些字段在实操中的读法值得单列。artifacts 与 displayUri 的分工意味着:一件 4K 视频作品的 artifactUri 可以指向 800MB 的原始文件,而市场列表只加载 displayUri 的预览图——钱包渲染时取哪个字段有默认优先级,用户抱怨”图糊”时先检查是不是前端只加载了 displayUri。creators 用 tz 地址而不是自由文本署名,理论上允许索引器把同一创作者的所有作品聚合到主页,这是 Tezos 生态创作者档案功能的底层原因。多资产数组则服务于一个合约批量发很多件作品的场景,合约元数据顶层的 assets 键逐个列出每件资产,避免污染顶层命名空间。
与以太坊的 ERC-721 元数据对比能凸显设计差异。以太坊的 tokenURI 默认返回单个 JSON,字段表事实上由市场约定俗成(image、name、description、attributes 那一套),扩展性靠各家自觉;Tezos 把”作品文件/展示图”拆成两个正式字段、把”创作者”变成可解析的地址数组、把”多格式”写进 schema——更结构化,代价是发布工具链门槛略高。属性稀有度方面,Tezos 的 attributes 字段允许自定义键值,但没有像以太坊那样形成统一的 trait_type 生态,索引方式因市场而异。
还有一处对索引与聚合很重要的细节:合约级元数据里的 interfaces 数组允许合约声明自己实现的标准接口(例如 FA2 与非转移扩展的接口标识),钱包与市场据此决定开放哪些按钮——一份声明了非转移接口的合约,合规前端应该隐藏其转账入口。这类”接口自报家门”的做法与以太坊的 ERC-165 支持查询思路相近,但走的是元数据通道而不是合约函数通道,两种设计各有适配成本,也提醒用户:前端显示的功能集合只是合约声明的转译,最终以合约实际接受的操作为准。
使用与核验要点:查询某枚藏品的元数据,可以从合约的 metadata 视图入口拿到外层 URI,沿 ipfs 或 HTTPS 引用解析到 JSON;判断一个 Tezos 项目是否”正规挂元数据”,看市场是否能在不依赖项目方私有接口的情况下渲染出 displayUri 与 creators,即是 TZIP-21 被正确采用的直观证据。最后提醒:元数据字段回答”作品是什么、由谁创作、文件在哪”,不回答”作品版权归谁、持币人有什么权利”——后者在 Tezos 与在以太坊一样,取决于作品页写明的许可条款,而不是 schema 字段。
本文为机制说明,不构成任何投资建议。字段语义请以 TZIP 官方文档当前版本为准。
发表评论
还没有评论,来说两句吧。
评论区为展示样式,提交不会被处理。