Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

EIP-721 Metadata JSON schema provides insufficient detail #1742

Closed
Fang- opened this issue Feb 8, 2019 · 4 comments
Closed

EIP-721 Metadata JSON schema provides insufficient detail #1742

Fang- opened this issue Feb 8, 2019 · 4 comments

Comments

@Fang-
Copy link
Contributor

Fang- commented Feb 8, 2019

As seen here a previous version of EIP-721 contained detailed descriptions on the format of the data supplied by the JSON file as linked to in EIP-721's metadata extension.

Old metadata specification Standard sub-paths:
  • name (required) - The name sub-path MUST contain the UTF-8 encoded name of the specific NFT (i.e. distinct from the name of the collection, as returned by the contract's name method). A name SHOULD be 50 characters or less, and unique amongst all NFTs tracked by this contract. A name MAY contain white space characters, but MUST NOT include new-line or carriage-return characters. A name MAY include a numeric component to differentiate from similar NFTs in the same contract. For example: "Happy Token Dynamic gas pricing for opcodes (miner decided opcode pricing) #157".

  • image (optional) - If the image sub-path exists, it MUST contain a PNG, JPEG, or SVG image with at least 300 pixels of detail in each dimension. The image aspect ratio SHOULD be between 16:9 (landscape mode) and 2:3 (portrait mode). The image SHOULD be structured with a "safe zone" such that cropping the image to a maximal, central square doesn't remove any critical information. (The easiest way to meet this requirement is simply to use a 1:1 image aspect ratio.)

  • description (optional) - If the description sub-path exists, it MUST contain a UTF-8 encoded textual description of the asset. This description MAY contain multiple lines and SHOULD use a single new-line character to delimit explicit line-breaks, and two new-line characters to delimit paragraphs. The description MAY include CommonMark-compatible Markdown annotations for styling. The description SHOULD be 1500 characters or less.

  • other metadata (optional) - A contract MAY choose to include any number of additional subpaths, where they are deemed useful. There may be future formal and informal standards for additional metadata fields independent of this standard.

 

The current version of EIP-721 makes no mention of these requirements, and leaves implementers in the dark as to what are reasonable values for name and description. Is there a reason why the metadata spec is so minimal, or should an addendum be considered?

@corollari
Copy link
Contributor

corollari commented Feb 10, 2019

While we are at it, title and type are not properly specified either. Some questions that come up:
Are they supposed to be modifiable?
What should type be used for?
Is there a set of possible values for type?

@fulldecent
Copy link
Contributor

This is not in scope for the EIPs repository. Please open this as a question on StackOverflow. And you are welcome to ping me there.

@Fang-
Copy link
Contributor Author

Fang- commented Mar 5, 2019

@fulldecent Thanks for your response! Would you mind elaborating on why this is not in scope of the EIP/repository? Surely if the EIP includes data fields, with the idea that clients can make use of that data, then it should tell the clients what kind of contents they can expect?

@fulldecent
Copy link
Contributor

The 721 standard is in final status, so the specification will not be changed. (Except for errata.)

Questions such as yours are common and this repo is not a medium to contact people for implementation questions on EIPs. Stack Overflow is one such medium for that. The answer to your question is simple and I'll be happy to address it on the proper medium.

@Arachnid Arachnid closed this as completed Mar 5, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants
@Arachnid @fulldecent @Fang- @corollari and others