Skip to main content

Khronos Blog

Enabling Consistent and Powerful Asset Product Metadata for 3D Commerce

As the number of 3D assets used in e-commerce rapidly increases, the need to embed semantic information describing virtual products within real-time 3D formats such as glTF™ becomes ever more urgent. 3D asset files that contain descriptive and administrative metadata such as product descriptions, details on intellectual property rights, creation and modification dates and other detailed authoring history - all in multiple languages - will enable the management of 3D virtual product catalogs, and the sharing of assets between vendors, retailers and end user platforms at industrial scale.

The core glTF 2.0 3D format specification defines how the JSON within a glTF file holds structural metadata to provide 3D engines and viewers the necessary information to properly render the model - but not the additional metadata needed by 3D Commerce businesses. To address this need, the Khronos 3D Commerce™ Working Group has created a subgroup to define what e-commerce information should be embedded in a virtual product, and how a glTF file should carry that information.

Independently, the glTF Working Group within Khronos had begun preliminary work on bringing metadata to glTF. Adobe proposed the glTF KHR_xmp extension in February 2019. This extension leveraged the Extensible Metadata Platform (XMP) ISO standard that is well-supported by major tool vendors for use with image file formats such as JPEG, PNG, and WebP for example. The design of XMP includes extensibility that enables the definition of additional schema, and it is strongly typed with excellent support for internationalization through its Language Alternative system.

Meanwhile, JSON-LD was developing the concept of ‘Linked Data’ to enable networks of standards-based machine interpretable data across different documents and Websites, enabling an application to start at one piece of data, and follow embedded links to other pieces of data that are hosted on different sites across the Web. This powerful concept is perfect for 3D Commerce, and complements the XMP metadata standard.

Khronos Releases a New Metadata Extension

And so, today, Khronos is announcing the release of the provisional KHR_xmp_json_ld glTF extension to add full compliance to JSON-LD, replacing the original KHR_xmp extension. Support for JSON-LD serialization significantly increases the power and flexibility of the extension, making it a perfect vessel to carry information about products within the 3D commerce ecosystem. You can use the KHR_xmp_json_ld extension today, and Khronos is seeking community feedback on the provisional specification before finalization.

Tools to Accelerate Community Adoption

To accelerate community adoption, tools are already supporting both writing and reading metadata as defined by KHR_xmp_json_ld. The Babylon.js sandbox can view top level metadata within glTF files, and Khronos has published, and is actively developing, an open source Metadata CLI tool that can be used within tooling pipelines or via a command-line.

Next Steps - Metadata Recommendations and XMP Schema

As a next step, the 3D Commerce Metadata subgroup will publish 3D Commerce Metadata Recommendations, describing which fields within the Dublin Core Metadata Initiative and other Core XMP schemas can be used to solve common commercial needs, including rights management. This will help to align the e-commerce industry as a whole for efficient and effective sharing of 3D models between vendors and sellers. We expect this documentation to grow over time, for example we are exploring ways to support annotations for specific product features; so, if you see a gap please let us know!

Khronos will also soon publish a new XMP schema for dealing with specific 3D model needs, including the definition of the model3d namespace that contains a spdxLicense field to store the SDPX License, a machine-readable identification of free and open source licenses involved with the model, such as CC-BY-4.0, and a preferredSurfaces field to provide a hint as to what type of surface the model is meant to be anchored on in a XR setting, such as a vertical or horizontal plane.

Give Us Your Feedback!

The provisional KHR_xmp_json_ld extension, and it’s associated tools, schema and recommendations are a significant step towards making consistent virtual product metadata a vital building block in helping 3D Commerce to reach its full potential. But we need your feedback and suggestions to help us meet your business needs! Please reach out to us on our GitHub or email us at [email protected] talk - we look forward to hearing from you. And, as always, if you would like to join Khronos to be directly involved in evolving 3D Commerce, glTF, and any other Khronos standard, you will be very welcome!