Feature / Attribute Rules

Data quality rules that can be used specific for feature / attribute relational checks of products, variants and items stored in Product 360.

Check_DataTypes

General description

Check that the data type of an attribute is the same as the one of the assigned feature if the feature is not set to "character string" (e.g. The data type for the attribute "size" has to be set the same as for the assigned feature if the feature is not set to "Character String")

Sub-Entity type for Input

Attributes

Input ports

inObjectID

Identifier of the parent object. (Object_ID)

inAttributeName

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)

inDataType

Data type defined for the attribute. (ArticleAttribute.Datatype)

Output ports

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)

Status_Code

Returns the overall Status Code after the rule execution (OK or Failed). (QualityStatusEntry.Status)

Status_Message

Returns the overall Status Message after the rule execution. (QualityStatusEntry.Message)

Meta data and reference tables

Error_messages_by_Language

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.

Example usage

Check for all attributes of an item (that are assigned to a feature of a structure system mentioned in "Structure_checks_inclusion") whether their data type is the same as the data type of the assigned feature if the feature isn't set to "Character String".

Example output

Status_Code

Failed

Status_Message

Pattern: [Structure system], [Structure group], Feature '[Feature name]': The data type ([Attribute data type]) of attribute '[Attribute name]' does not match the assigned feature data type ([Feature data type]). [line break; optional]

Sample Data Consumer Electronics, HDTV Series, Feature 'USB 2.0':The data type (Character string) of attribute 'USB 2.0' does not match the assigned feature data type (Integer).

Check_MandatoryValues

General description

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

Attributes

Input ports

inObjectID

Identifier of the parent object. (Object_ID)

inAttributeName

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)

Output ports

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)

Status_Code

Returns the overall Status Code after the rule execution (OK or Failed). (QualityStatusEntry.Status)

Status_Message

Returns the overall Status Message after the rule execution. (QualityStatusEntry.Message)

Meta data and reference tables

Error_messages_by_Language

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.

Example usage

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.

Example output

Status_Code

Failed

Status_Message

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.

Check_PresetValues

General description

Check that the value of an attribute is conform to the preset values defined for the assigned feature (e.g. The value for the attribute "Size" may only be "S", "M", "L" or "XL" according to the preset values given by the assigned feature)

Sub-Entity type for Input

Attributes

Input ports

inObjectID

Identifier of the parent object. (Object_ID)

inAttributeName

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

Optional different value for the attribute. (ArticleAttributeStructureGroupAttributeMap.DomainValue)

Output ports

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)

Status_Code

Returns the overall Status Code after the rule execution (OK or Failed). (QualityStatusEntry.Status)

Status_Message

Returns the overall Status Message after the rule execution. (QualityStatusEntry.Message)

Meta data and reference tables

Error_messages_by_Language

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.

Example usage

Check for all attributes of an item (that are assigned to a feature of a structure system mentioned in "Structure_checks_inclusion") whether their preset value is similar to one of the values from the list of the assigned feature.

Example output

Status_Code

Failed

Status_Message

Pattern: [Structure system], [Structure group], Feature '[Feature name]: The value '[Attribute value]' ([Language], [Identifier of the value]) of attribute '[Attribute name]' doesn’t conform to the preset values. [line break; optional]

Sample Data Consumer Electronics, HDTV Series, Feature 'USB 2.0': The value 'enabled' (English, DEFAULT) of attribute 'USB 2.0' doesn’t conform to the preset values.

Check_MissingAttributes

General description

Checks that an item has attributes for all features defined by the structure group it is assigned to (e.g. a T-Shirt needs to have an attribute for "Size" if this is a feature in the "T-Shirt" structure group)

Sub-Entity type for Input

Structure assignments

Input ports

inObjectID

Identifier of the parent object. (Object_ID)

Structure

Identifier of the assigned Structure. (ArticleStructureMap:structureId)

StructureGroup

Structure group the object is assigned to. (ArticleStructureMap.StructureGroup)

Output ports

Object_id

Returns the identifier of the parent object. (needed to aggregate status messages from multiple structure assignment checks to a single parent object status message)

Status_Code

Returns the overall Status Code after the rule execution (OK or Failed). (QualityStatusEntry.Status)

Status_Message

Returns the overall Status Message after the rule execution. (QualityStatusEntry.Message)

Meta data and reference tables

Error_messages_by_Language

Contains a 4 digit error code plus a language to indicate the preferred error message to be output.

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_StructureIdentifierLookup

Java transformation that synchronizes the database internal and external identifier (that is visible through the UI) of a structure system during rule execution.

java_missing_attributes_check

Java Transformation that contains all the logic to gather the required values of the assignment to identify missing attributes.

Example usage

Check for all items (that have an assignment to a structure system mentioned in "Structure_checks_inclusion") whether they have a corresponding attribute for each of the features of their assigned structure group.

Example output

Status_Code

Failed

Status_Message

Pattern: [Structuresystem], [Structuregroup], Feature '[Feature name]: There is no attribute assigned. [line break; optional]

Sample Data Home Improvement, Tool boxes, Feature 'Version': There is no attribute assigned.
Sample Data Home Improvement, Tool boxes, Feature 'Weight': There is no attribute assigned.