---
- entityDefinitions:
  - IDR_Calculate_Numeric_Method__returns__Numeric_Attribute: '{9f9a9341-f2d6-4152-8879-e91f574ca309}'
  - IDR_Numeric_Attribute__returned_by__Calculate_Numeric_Method: '{03275ef5-c9cf-4816-a4f5-4f3aaf0f9479}'
    
- library: '&IDL_MochaBaseSystem;'
  instances:
  - class:      '&IDC_CalculateNumericMethod;'
    inherits:  '&IDC_Method;'
    name:      CN - Calculate Numeric Method
    index:     35
    customTagName: calculateNumericMethod
    instancesLabeledByRAMB: '&IDMB_Method__get__Fully_Qualified_Name_CN;'
    superclasses:
    - instance: '&IDC_Method;'
    - instance: '&IDC_ExecutableReturningAttribute;'
    - instance: '&IDC_ArithmeticCalculation;'
  #  relatedTasks:
  #  - instance: '&IDI_Task_ViewCalculateDateMethod;'
  #  - instance: '&IDI_Task_EditCalculateDateMethod;'
    attributes:
    - instance: '&IDA_Verb;'
      customTagName: 'verb'
    - instance: '&IDA_Name;'
      customTagName: 'name'
    - instance: '&IDA_Static;'
      customTagName: 'static'
    - instance: '&IDA_Final;'
      customTagName: 'final'
    relationships:
    - instance: '&IDR_Method__for__Class;'
      customTagName: 'forClassId'
    - instance: '&IDR_Metadata_With_Access_Modifier__has__Access_Modifier;'
      customTagName: 'accessModifierId'
    - instance: '&IDR_Instance__for__Module;'
      customTagName: 'moduleId'
    # - instance: '&IDR_Assign_Attribute_Method__uses__Executable_returning_Attribute;'
    #   customTagName: 'usesExecutableReturningAttribute'
    # - instance: '&IDR_Assign_Attribute_Method__assigns__Attribute;'
    #   customTagName: 'assignsAttribute'

    # hmm... what's this?
    # 3$9824 Assignment Method.assigns attribute or relationship from Executable returning Instance Set 
    # 3$9825 Executable returning Instance Set.returns assign attribute or relationship for Assignment Method 

  - relationship: '&IDR_Calculate_Numeric_Method__returns__Numeric_Attribute;'
    index: 66
    sourceClassId: '&IDC_CalculateNumericMethod;'
    type: 'returns'
    destinationClassId: '&IDC_NumericAttribute;'
    siblingRelationshipId: '&IDR_Numeric_Attribute__returned_by__Calculate_Numeric_Method;'
    singular: yes

  - relationship: '&IDR_Numeric_Attribute__returned_by__Calculate_Numeric_Method;'
    index: 67
    sourceClassId: '&IDC_NumericAttribute;'
    type: 'returned by'
    destinationClassId: '&IDC_CalculateNumericMethod;'
    siblingRelationshipId: '&IDR_Calculate_Numeric_Method__returns__Numeric_Attribute;'
    singular: no

  # - relationship: '&IDR_Assign_Attribute_Method__assigns__Attribute;'
  #   index: 141
  #   sourceClassId: '&IDC_AssignAttributeMethod;'
  #   type: 'assigns'
  #   destinationClassId: '&IDC_Attribute;'
  #   siblingRelationshipId: '&IDR_Attribute__assigned_by__Assign_Attribute_Method;'
  #   singular: no

  # - relationship: '&IDR_Attribute__assigned_by__Assign_Attribute_Method;'
  #   index: 142
  #   sourceClassId: '&IDC_Attribute;'
  #   type: 'assigned by'
  #   destinationClassId: '&IDC_AssignAttributeMethod;'
  #   siblingRelationshipId: '&IDR_Assign_Attribute_Method__assigns__Attribute;'
  #   singular: no
