---
- entityDefinitions:
  - IDA_ThemeName: '{8cfc012c-52fd-4a66-8b2f-1b9b5e4af474}'
  - IDC_RotarySwitchLayout: '{ea52446a-6332-49f7-baa9-4c78bea4faab}'
  - IDC_RotarySwitchLayoutOption: '{cdd9a157-3896-471a-91e2-c69c9e1ea9a9}'

  - IDR_Rotary_Switch_Layout__has__Rotary_Switch_Layout_Option: '{ae716c95-1e26-48f4-9013-001d1a1854aa}'
  - IDR_Rotary_Switch_Layout_Option__for__Rotary_Switch_Layout: '{fed5fe08-db78-4c29-860a-a5be1a15caa0}'

- library: '&IDL_MochaBaseSystem;'
  instances:
  - textAttribute: '&IDA_ThemeName;'
    name: 'Theme Name'

  - class: '&IDC_RotarySwitchLayout;'
    name: 'Rotary Switch Layout'
    customTagName: 'rotarySwitchLayout'
    superclasses:
    - instance: '&IDC_Layout;'
    attributes:
    - instance: '&IDA_ThemeName;'
      customTagName: 'theme'
    relationships:
    - instance: '&IDR_Rotary_Switch_Layout__has__Rotary_Switch_Layout_Option;'
      customTagName: 'options'
      customTagNameCreatesInstanceOf: '&IDC_RotarySwitchLayoutOption;'
    
  - class: '&IDC_RotarySwitchLayoutOption;'
    name: 'Rotary Switch Layout Option'
    registerForTemplate: yes
    attributes:
    - instance: '&IDA_Value;'
      customTagName: 'value'

  - relationship: '&IDR_Rotary_Switch_Layout__has__Rotary_Switch_Layout_Option;'
    sourceClassId: '&IDC_RotarySwitchLayout;'
    type: 'has'
    destinationClassId: '&IDC_RotarySwitchLayoutOption;'
    siblingRelationshipId: '&IDR_Rotary_Switch_Layout_Option__for__Rotary_Switch_Layout;'
    singular: no

  - relationship: '&IDR_Rotary_Switch_Layout_Option__for__Rotary_Switch_Layout;'
    sourceClassId: '&IDC_RotarySwitchLayoutOption;'
    type: 'for'
    destinationClassId: '&IDC_RotarySwitchLayout;'
    siblingRelationshipId: '&IDR_Rotary_Switch_Layout__has__Rotary_Switch_Layout_Option;'
    singular: no
