we have solved with a Custom Data Quality.
Here is the doc we ship with the rule package just for possible traces back to this thread in the future
Check that the attribute has a value if assigned to a feature that is defined as mandatory (e.g. a T-Shirt item needs to have a value for the attribute "Size" if this is a mandatory feature in the "T-Shirt" structure group)
Sub-Entity type for Input
Identifier of the parent object. (Object_ID)
Name of the attribute in the key language of the system. (ArticleAttribute:name)
inLanguage Language of the specific attribute value. (ArticleAttributeLang:language) inStructure Structure system of the feature the attribute is assigned to. (ArticleAttributeStructureGroupAttributeMap:structure) inStructureGroup Structure group of the feature the attribute is assigned to. (ArticleAttributeStructureGroupAttributeMap:structure) inStructureFeature Feature the attribute is assigned to. (ArticleAttributeStructureGroupAttributeMap.StructureAttribute) inAttributeValue Attribute value in its specific language. (ArticleAttributeValue.Value) inValueIdentifier Identifier of the attribute value. (ArticleAttributeValue:identifier) inStructurePresetValue Preset values defined by the feature the attribute is assigned to. (ArticleAttributeStructureGroupAttributeMap.DomainValue)
Object_id Returns the identifier of the parent object. (needed to aggregate status messages from multiple attribute checks to a single parent object status message)
Returns the overall Status Code after the rule execution (OK or Failed). (QualityStatusEntry.Status)
Returns the overall Status Message after the rule execution. (QualityStatusEntry.Message)
Meta data and reference tables
Contains a 4 digit error code plus a language to indicate the preferred error message to be output.
Language_Inclusion References all "languages" considered for the attribute value checks. The languages need to be written like their UI label text in the global standard language of the repository. (e.g. "English" and/or "German" if system language is set to "en" for English). Structure_checks_inclusion References the "identifier" values for each Structure System of Product 360 considered by the Rule. System_Language
References the global standard language of the Product 360 repository (e.g. "en" for English) using a single line. Language needs to be value recognized by Product 360.
java_structure_name_lookup Java transformation that synchronizes the database internal and external identifier (that is visible through the UI) of a structure system during rule execution. java_CheckAttribute Java Transformation that contains all the logic to gather the required values of the feature each attribute is assigned to.
Check for all attributes of an item (that are assigned to a feature of a structure system mentioned in "Structure_checks_inclusion") whether they have a value (in the languages mentioned in "Language_Inclusion") if the assigned feature is defined as mandatory.
Pattern: [Structure system], [Structure group], Feature '[Feature name]': The mandatory value [Language] of attribute '[Attribute name]' is missing. [line break; optional]
Sample Data Consumer Electronics, MultyVision ISIO, Feature 'Color': The mandatory value (French) of attribute 'Color' is missing.