Specific GDSN targets, such as retailers or distributors, may require any subset of desired GDD attributes. Following this logic, brands with GDSN data pools that support all GDD attributes should be able to publish to any target easily.
This is technically true: GDSN data pools that support all GDD attributes — and that support sending key-value pairs for non-GDD attributes — technically can publish any transmittable content. However, brands have no way of knowing whether this publication will succeed.
Imagine a brand is interested in listing its products on the Kroger website. Its GDSN data pool must first answer the following questions:
- How many characters does Kroger allow in the product title?
- Which GDD attributes are required?
- Which key-value pairs are required for non-GDD attributes?
- Which values are required for GDD attributes with RDD?
If the GDSN data pool lacks answers to these questions, the brand will then face an extensive trial-and-error process for every product:
- Step 1: The brand publishes the product information to Kroger using the GDSN.
- Step 2: Kroger reviews and rejects the information with a hard-to-decipher automated message.
- Step 3: The brand responds to the rejection message.
- Step 4: The brand adjusts the product information and publishes it again.
- Step 5: Kroger reviews and rejects the information a second time. (This often happens when there is a primary and secondary reason for the rejection.)
- Step 6: The brand repeats this process.
GDSN data pools that support all GDD attributes can publish any GDSN-capable content in theory. But in practice, lack of target requirement transparency results in complicated approval processes. This is a significant gap in the GDSN standard, as every target should make machine-readable data requirements public to avoid these complications.
The lack of public requirements is a significant factor for the increase in regional GDSN data pools. For example, the GS1 Sweden GDSN data pools know the requirements for Swedish retailers, but the U.S.-based 1WorldSync data pool doesn’t.