Digital Asset Standard — Request for Comments #593
Replies: 13 comments 28 replies
-
Dynamic HTML Content and App deep-links as Digital Assets are interesting. It's in the Digital Asset Standard. What is the use case? |
Beta Was this translation helpful? Give feedback.
-
Can metadata be stored on-chain? Or at least mostly used parts of metadata such as name (we have this already but not all projects are using it correctly because its redundant since offchain JSON contains name as well), logo uri and symbol Currently, we have to fetch an external JSON just to retrieve an image url. Since Solana tokenlist is deprecated and everything is moving to Metaplex Fungible tokens for tokens metadata, in order to fetch 100 tokens for a wallet, we need to fetch 100 metaplex accounts (which can be done in just a single getMultipleAccounts), and after that we need to fetch 100 externally hosted JSON files in order to display those 100 tokens with their name, ticker (symbol) and logo. |
Beta Was this translation helpful? Give feedback.
-
Thanks for sharing all these resources! I haven't read through all the docs fully, but my preliminary feedback is that I'd like to see more exposition about what problems this new standard solves. For the most part, the docs seem very focused on presenting a (rather complex) solution, but do not really explain the motivating factors behind the solution |
Beta Was this translation helpful? Give feedback.
-
First of all this sounds amazing and big step forward. I think unentangling from spl-token is a tough but necessary pill to swallow. I understand this is still at proposal phase, but is it too early to have an idea of timelines? Are we talking 2023? I ask because anyone stating to build a solana program today will be dealing with a moving target and there is a need to balance delivering features on the current protocol vs planning and for the new. Also wanted to ask about Stealth NFTs. This is mentioned under the list of encryption providers. Is there any chance it will be included in the new protocol? |
Beta Was this translation helpful? Give feedback.
-
Is this the best place to provide feedback? Digital Asset Standard
|
Beta Was this translation helpful? Give feedback.
-
This is an excellent proposal. Our team is working on a product for dynamic NFTs based on on-chain state, and have to rely on centralized metadata URIs to do so. Excited to see that this proposal can open up many more possibilities with digital assets. 🚀 |
Beta Was this translation helpful? Give feedback.
-
First off I want to say that this is a great start and there are some fantastic ideas here. What follows is relatively raw, subjective feedback from my perspective as a developer with a background in streaming, audio, and other forms of media. Thank you for being receptive to feedback, especially in the early days of this project. JSON Schemas The duplication of file format metadata in the JSON schema is concerning. Examples include ID3 tag data from an MP3 file or EXIF data from a RAW file. Having this exposed has many uses, but mismatches between the metadata stored in the file and the metadata stored in the JSON are inevitable. Can the extracting of file metadata and rendering of that data in the JSON schema be automated or validated in any way? This could be another opportunity for tooling to address a need. The inclusion of the concept of asset quality in the schema overlaps with other ways to manage quality that are specific to certain media types. For streaming media like video and audio for example, HLS and DASH both have robust support for multiple renditions in one asset manifest. This is broadly supported across native OS media APIs and popular AV player clients. In the scenario of a native app, the developer can pass an HLS URL to the iOS media player and get all the benefits of adaptive bitrate streaming from the OS. In the current concept of quality in the schema approach, it seems like the developer would need to implement their own approach to adaptive quality based on detecting bandwidth capacity, connection quality, display resolution, or other heuristics. Likewise with the example of how images would work with context values, especially with respect to Lastly, using the existing JSON-LD and Schema.org standards seems highly advisable, as well as drawing inspiration from other things like OpenGraph. Using existing standards should be strongly encouraged. Core Module Primitives Compression Interfaces SPL Token Compatibility Additional General Thoughts More architecture diagrams would be helpful, as well as a more formal writing style and format that is closer to that of RFCs from W3C, IETF, etc, especially if this documentation is intended to be used by developers to implement against. Having this available on GitHub where changes can be tracked and the community can contribute would be helpful, even if there’s an automated process controlled by Metaplex that publishes the latest to a standalone documentation site. This is a lot of general feedback to put in a GitHub comment; consider alternate forms of group communication where details can be discussed. I have more thoughts that are more conversation topics than concrete feedback but this thread doesn’t feel like the best venue for that. If you made it here, thank you for taking the time to read all of this! 🙌 |
Beta Was this translation helpful? Give feedback.
-
Regarding the read API -- is the point to have it run as a validator plugin, exposing all NFTs (tokenkey, token-22, compressed, digital-asset) under a common interface? If so does there not also need to be some write interface? Or is it expected that the read respones will just have a type and wallets / dApps will just need to know how to support these types? Wondering if this can be built generically to actually expose a common NFT interfaces that anyone can add new implementations of Re extensions -- The spec mentions either on-chain CPI post-action, or basically giving the right to run lifecycle events to another contract. While these are definitely opening up a large surface area for "attack", I believe that this level of flexibility is important for composability and extensibility in the future. The main issue being that solana program extensibility can become challenging but this decoupling would allow extensions to evolve on top of the existing spec. I don't see this as being a huge attack vector if either the NFT owner or creator is approving the extensions to be added because its not different than them giving up update authority of the token for example. I'm envisioning an extension app-store so-to-speak where extensions can have reviews people will know which one they are interacting with or adding to the NFT and anyone can build new extensions that do specific things with the lifecycle events and allow creators to register those. To me the CPI to extension programs portion of the doc is critical for this to work |
Beta Was this translation helpful? Give feedback.
-
Thanks for the transparent process for feedback. A few notes specific to music:
|
Beta Was this translation helpful? Give feedback.
-
Are there plans to create support for the same type of system that WaX chain offers, in which you can collect specific NFTs and then "turn them in" in exchange for a new NFT. An example could be you collect a rock nft and a stick nft, and combine them to make an axe nft. |
Beta Was this translation helpful? Give feedback.
-
Finally got a chance to read through this more thoroughly, leaving my feedback/questions/thoughts below (for context, I work on Formfunction) General questions/feedback
Technical Deep Dive SectionLifecycle
Data
Core Module PrimitivesI’m a bit confused about the module interface example. I think it would help if the pseudo-code was more fleshed out, I really don’t have a good idea about what is going on. Interfaces
Extensibility
|
Beta Was this translation helpful? Give feedback.
-
|
Beta Was this translation helpful? Give feedback.
-
NFT is really plenty. After all, you can still earn on the created nft. If anyone is looking for additional information on creating nft, I recommend this post |
Beta Was this translation helpful? Give feedback.
-
Introduction
Reflecting on the 15+ million NFTs minted on the Solana blockchain, the Metaplex Foundation is excited to share a new standard for Digital Assets that accounts for describing Fungible Tokens (FT), and representing Non-Fungible Tokens (NFT) and Semi-Fungible Tokens (SFT).
The current Metaplex Protocol, while being only a year old at the time of writing, has served as the foundation for a decentralized ownership community of over 2 million users and 15 million NFTs minted. The trends of self-custody, digital trading, and decentralized infrastructure have created a market for typical digital asset systems to move into new ventures where they can prove ownership, distribute rights, limitations, and licensing in more transparent ways.
The existing Metaplex NFT Protocol is focused on visual art, namely bitmap images, with some nascent support for 3D assets and other multimedia. In order to serve the needs of the shifting market into decentralizing traditional digital assets, the proposed protocol will add first-class support for more than images.
What's included in the new Digital Asset Standard
The proposed Digital Asset Standard (DAS) is a way of representing ownership on the Solana blockchain while adding native support for various multimedia types.
The proposed standard contains the two following components:
We want your feedback
This living document is a "Request for Comments" where Metaplex hopes to accomplish the following goals:
What's included in this document
💡 Reminder This document is a "Request for Comments", which means that the contents presented here may evolve based on community comments before the new Digital Asset Standard is built. We plan to share updates on this proposal as we collect more feedback. Please leave your comments and feedback below
Beta Was this translation helpful? Give feedback.
All reactions