Service - Product Attributes

From Izara Wiki
Jump to navigation Jump to search

Overview

Manages Product Attributes and ProductAttributeLinks. Product Attributes can be shared by many Products, ProductAttributeLinks are used to create an attribute tree for one Product.

Repository

https://bitbucket.org/izara-market-products/izara-market-products-product-attributes/src/master/

DynamoDB tables

Standard Config Table Per Service

Configuration tags

..

LogicalResults

Stores results for any requests to perform logical searches on media links

{
	resultId: xxx // eg: filterMainId for a single logical element
	dataId: xxx // one productAttributeLinkId
}
  • partition key: resultId
  • sort key: dataId

Graph database

Service - Products Graph

Nodes

{
	nodeLabel: "{ProductAttributesLib.PRODUCT_ATTRIBUTE_GRAPH_NODE_LABEL}Label",
}
{
	nodeLabel: "{ProductAttributesLib.PRODUCT_ATTRIBUTE_GRAPH_NODE_LABEL}",
}
{
	nodeLabel: "{ProductAttributesLib.PRODUCT_ATTRIBUTE_GRAPH_NODE_LABEL}Link",
}
{
	nodeLabel: "{ProductAttributesLib.PRODUCT_ATTRIBUTE_GRAPH_NODE_LABEL}PropertyLabel",
}
{
	nodeLabel: "{ProductAttributesLib.PRODUCT_ATTRIBUTE_GRAPH_NODE_LABEL}Property",
}

Relationships

{
	relationshipType: "has_{ProductAttributesLib.PRODUCT_ATTRIBUTE_GRAPH_NODE_LABEL}Link",
}
{
	relationshipType: "disabled_{ProductAttributesLib.PRODUCT_ATTRIBUTE_GRAPH_NODE_LABEL}Link",
}
{
	relationshipType: "is_{ProductAttributesLib.PRODUCT_ATTRIBUTE_GRAPH_NODE_LABEL}",
}
{
	relationshipType: "is_{ProductAttributesLib.PRODUCT_ATTRIBUTE_GRAPH_NODE_LABEL}Label",
}
{
	relationshipType: "has_{ProductAttributesLib.PRODUCT_ATTRIBUTE_GRAPH_NODE_LABEL}Property",
}
{
	relationshipType: "disabled_{ProductAttributesLib.PRODUCT_ATTRIBUTE_GRAPH_NODE_LABEL}Property",
}
{
	relationshipType: "is_{ProductAttributesLib.PRODUCT_ATTRIBUTE_GRAPH_NODE_LABEL}PropertyLabel",
}

Basic node schemas

Schema comes from BasicNodeSchemaLib

  1. {ProductAttributesLib.PRODUCT_ATTRIBUTE_GRAPH_NODE_LABEL}Label
  2. {ProductAttributesLib.PRODUCT_ATTRIBUTE_GRAPH_NODE_LABEL}
  3. {ProductAttributesLib.PRODUCT_ATTRIBUTE_GRAPH_NODE_LABEL}PropertyLabel
  4. {ProductAttributesLib.PRODUCT_ATTRIBUTE_GRAPH_NODE_LABEL}Property

Working documents

Product Attributes