Database
Database Extensibility: Extended Attributes
Each major business object in Tulip allows for Extended Attributes which are key-value pairs associated with a core object.
For example, the core business object, Products, has the following core fields with example values (we only show a few below):
{ "id": "1", "name": "T-Shirt", "subtitle": "Red and White", "description": "This is a t-shirt", "upc": "978020137962", }
However, a particular retailer may have specific fields associated with products that are unique to their brand. This retailer can use extended attributes to add these fields. For example, a retailer may want to add “material” and “manufacturer” as extra fields on a product. Then we can add to the attributeValues
array portion of a product as follows:
{ "id": "1", "name": "T-Shirt", "subtitle": "Red and White", "description": "This is a t-shirt", "upc": "978020137962", "attributeValues": \[ { "attributeId": "material", "attributeValue": "cotton" }, { "attributeId": "manufacturer", "attributeValue": "acme corp." } \] }
These attributes are indexed and can be made filterable. Using this model, a business analyst can, for example, set up Tulip so that a new attribute such as “material” is indicated as a field that is filterable, and then when products are rendered, a filter for “material” will appear in the catalog automatically.
Notes:
- These examples are simplified. To see the specific fields needed for a specific business object, and all necessary fields, see Tulip’s API documentation for details.
- These attributes are indexed and can be made filterable (but not searchable).