---
- entityDefinitions:
  - IDC_Product: '{6297bb7d-f3c8-4d65-86c2-20cda758b8f6}'

  - IDR_Product__has__Manufacturer: '{e9ec83b5-20a4-4a80-aa5b-af3a4f8331da}'
  - IDR_Manufacturer__for__Product: '{aef41fa9-e67c-4735-9456-3d20adab40e7}'

  - IDR_Product__has__Product_Style: '{360329d8-cce2-480a-8932-f4ffaf7fb6a3}'
  - IDR_Product_Style__for__Product: '{b198ce79-f679-4e62-a4f5-26a7b5310fab}'

  - IDR_Product__has__Product_Color: '{a21640dc-5b71-4abe-afbc-72172a6b8d97}'
  - IDR_Product_Color__for__Product: '{f359211c-1b67-499c-ac3e-00d21d5e577f}'

  - IDR_Product__has__Brand: '{e531991e-41c2-4bbc-885f-efc6cf406597}'
  - IDR_Brand__for__Product: '{63ea17ec-3915-4b38-a6df-41302af0c886}'

  - IDA_ProductCode: '{f8152daf-490b-4ecb-9cc9-c0ddae967d73}'
  - IDA_AdditionalDetails: '{1186a251-9d27-4a9f-908e-084355622a14}'
  
- library: '&IDL_MochaBaseSystem;'
  instances:
  - class: '&IDC_Product;'
    name: 'Product'
    index: 22001
    customTagName: 'product'
    instancesLabeledByRAMB: '&IDMB_Product__get__Calculated_Description;'
    attributes:
    - instance: '&IDA_ProductCode;'
      customTagName: 'productCode'
    - instance: '&IDA_AdditionalDetails;'
      customTagName: 'additionalDetails'
    relationships:
    - instance: '&IDR_Product__has__Manufacturer;'
      customTagName: 'manufacturerId'
    - instance: '&IDR_Product__has__Product_Color;'
      customTagName: 'productColorId'
    - instance: '&IDR_Product__has__Product_Style;'
      customTagName: 'productStyleId'
    - instance: '&IDR_Product__has__Product_Type;'
      customTagName: 'productTypeId'
    - instance: '&IDR_Product__has__Brand;'
      customTagName: 'brandId'

    defaultTask: '&IDI_Task_Product_View;'
    relatedTasks:
    - instance: '&IDI_Task_Product_View;'
    - instance: '&IDI_Task_Product_Edit;'

  - textAttribute: '&IDA_ProductCode;'
    name: 'Product Code'

  - textAttribute: '&IDA_AdditionalDetails;'
    name: 'Additional Details'

  - relationship: '&IDR_Product__has__Manufacturer;'
    sourceClassId: '&IDC_Product;'
    type: 'has'
    destinationClassId: '&IDC_Manufacturer;'
    siblingRelationshipId: '&IDR_Manufacturer__for__Product;'
    singular: yes

  - relationship: '&IDR_Manufacturer__for__Product;'
    sourceClassId: '&IDC_Manufacturer;'
    type: 'for'
    destinationClassId: '&IDC_Product;'
    siblingRelationshipId: '&IDR_Product__has__Manufacturer;'
    singular: no

  - relationship: '&IDR_Product__has__Product_Color;'
    sourceClassId: '&IDC_Product;'
    type: 'has'
    destinationClassId: '&IDC_ProductColor;'
    siblingRelationshipId: '&IDR_Product_Color__for__Product;'
    singular: yes

  - relationship: '&IDR_Product_Color__for__Product;'
    sourceClassId: '&IDC_ProductColor;'
    type: 'for'
    destinationClassId: '&IDC_Product;'
    siblingRelationshipId: '&IDR_Product__has__Product_Color;'
    singular: no

  - relationship: '&IDR_Product__has__Product_Style;'
    sourceClassId: '&IDC_Product;'
    type: 'has'
    destinationClassId: '&IDC_ProductStyle;'
    siblingRelationshipId: '&IDR_Product_Style__for__Product;'
    singular: no

  - relationship: '&IDR_Product_Style__for__Product;'
    sourceClassId: '&IDC_ProductStyle;'
    type: 'for'
    destinationClassId: '&IDC_Product;'
    siblingRelationshipId: '&IDR_Product__has__Product_Style;'
    singular: no

  - relationship: '&IDR_Product__has__Brand;'
    sourceClassId: '&IDC_Product;'
    type: 'has'
    destinationClassId: '&IDC_Brand;'
    siblingRelationshipId: '&IDR_Brand__for__Product;'
    singular: no

  - relationship: '&IDR_Brand__for__Product;'
    sourceClassId: '&IDC_Brand;'
    type: 'for'
    destinationClassId: '&IDC_Product;'
    siblingRelationshipId: '&IDR_Product__has__Brand;'
    singular: no

  - product: '{0cffcdde-8aec-4ecb-9cee-a010bcf5dff1}'
    manufacturerId: '&IDI_Manufacturer_PaperMate;'
    productCode: '9510131'
    brandId: '&IDI_Brand_FlexGripUltra;'
    productColorId: '&IDI_ProductColor_Blue;'
    productStyleId: '&IDI_ProductStyle_Retractable;'
    productTypeId: '&IDI_ProductType_BallpointPen;'
    additionalDetails: '1.0mm Medium Point'
    
  - product: '{99d716f3-46fe-43a5-a573-40f9b8bca303}'
    name: 'Paper Mate Flexgrip Ultra Ballpoint Pen 1.0mm Medium Point 9620131'
    manufacturerId: '&IDI_Manufacturer_PaperMate;'
    productCode: '9520131'
    brandId: '&IDI_Brand_FlexGripUltra;'
    productColorId: '&IDI_ProductColor_Red;'
    productStyleId: '&IDI_ProductStyle_Retractable;'
    productTypeId: '&IDI_ProductType_BallpointPen;'

  - product: '{6900e1f6-8deb-46b6-932a-927a5ec84f73}'
    name: 'Paper Mate Flexgrip Ultra Ballpoint Pen 1.0mm Medium Point 9630131'
    manufacturerId: '&IDI_Manufacturer_PaperMate;'
    productCode: '9530131'
    brandId: '&IDI_Brand_FlexGripUltra;'
    productColorId: '&IDI_ProductColor_Black;'
    productStyleId: '&IDI_ProductStyle_Retractable;'
    productTypeId: '&IDI_ProductType_BallpointPen;'

  - product: '{3a2832ed-13c3-4fda-b96d-df35ede19801}'
    name: 'Paper Mate Flexgrip Ultra Ballpoint Pen 1.0mm Medium Point 9630131'
    manufacturerId: '&IDI_Manufacturer_PaperMate;'
    productCode: '9610131'
    brandId: '&IDI_Brand_FlexGripUltra;'
    productColorId: '&IDI_ProductColor_Blue;'
    productStyleId: '&IDI_ProductStyle_Capped;'
    productTypeId: '&IDI_ProductType_BallpointPen;'

  - product: '{44f1d5df-f262-4e1d-9e2b-e367390962fc}'
    name: 'Paper Mate Flexgrip Ultra Ballpoint Pen 1.0mm Medium Point 9620131'
    manufacturerId: '&IDI_Manufacturer_PaperMate;'
    productCode: '9620131'
    brandId: '&IDI_Brand_FlexGripUltra;'
    productColorId: '&IDI_ProductColor_Red;'
    productStyleId: '&IDI_ProductStyle_Capped;'
    productTypeId: '&IDI_ProductType_BallpointPen;'

  - product: '{28a9725f-8ec5-4b0f-8947-e4a1da2c08d0}'
    name: 'Paper Mate Flexgrip Ultra Ballpoint Pen 1.0mm Medium Point 9630131'
    manufacturerId: '&IDI_Manufacturer_PaperMate;'
    productCode: '9630131'
    brandId: '&IDI_Brand_FlexGripUltra;'
    productColorId: '&IDI_ProductColor_Black;'
    productStyleId: '&IDI_ProductStyle_Capped;'
    productTypeId: '&IDI_ProductType_BallpointPen;'