ENTITY machining_process_executable

(* SCHEMA integrated_cnc_schema; *)
ENTITY machining_process_executable
  SUBTYPE OF (action_method);
  WHERE
  WR1:  NOT (0 = SIZEOF (TYPEOF (SELF) *
            ['INTEGRATED_CNC_SCHEMA.MACHINING_FEATURE_PROCESS',
             'INTEGRATED_CNC_SCHEMA.MACHINING_NC_FUNCTION',
             'INTEGRATED_CNC_SCHEMA.MACHINING_RAPID_MOVEMENT',
             'INTEGRATED_CNC_SCHEMA.MACHINING_TOUCH_PROBING',
             'INTEGRATED_CNC_SCHEMA.MACHINING_WORKINGSTEP',
             'INTEGRATED_CNC_SCHEMA.MACHINING_WORKPLAN']
        )) OR
        (SELF.description IN ['assignment', 'if statement',
                'non-sequential', 'parallel', 'selective',
                'while statement', 'setup instructions']);

  WR2:  NOT (SELF.description = 'assignment') OR
        ((verify_required_action_property       (SELF, 'lvalue')) AND
         (verify_rep_item_for_action_property   (SELF, 'lvalue',
          ['INTEGRATED_CNC_SCHEMA.EXPRESSION_REPRESENTATION_ITEM',
           'INTEGRATED_CNC_SCHEMA.NUMERIC_VARIABLE'])) AND

         (verify_required_action_property       (SELF, 'rvalue')) AND
         (verify_rep_item_for_action_property   (SELF, 'rvalue',
          ['INTEGRATED_CNC_SCHEMA.EXPRESSION_REPRESENTATION_ITEM'])));

  WR3:  NOT (SELF.description = 'if statement') OR
        ((verify_required_action_property       (SELF, 'condition')) AND
         (verify_rep_item_for_action_property   (SELF, 'condition',
          ['INTEGRATED_CNC_SCHEMA.EXPRESSION_REPRESENTATION_ITEM',
           'INTEGRATED_CNC_SCHEMA.BOOLEAN_EXPRESSION'])) AND

         (verify_required_relating_amr_with_name  (SELF, 'true branch',
          ['INTEGRATED_CNC_SCHEMA.MACHINING_PROCESS_BRANCH_RELATIONSHIP'])) AND
         (verify_related_type_for_amr_with_name   (SELF, 'true branch',
          ['INTEGRATED_CNC_SCHEMA.MACHINING_PROCESS_BRANCH_RELATIONSHIP'],
          ['INTEGRATED_CNC_SCHEMA.MACHINING_PROCESS_EXECUTABLE'])) AND

         (verify_optional_relating_amr_with_name  (SELF, 'false branch',
          ['INTEGRATED_CNC_SCHEMA.MACHINING_PROCESS_BRANCH_RELATIONSHIP'])) AND
         (verify_related_type_for_amr_with_name   (SELF, 'false branch',
          ['INTEGRATED_CNC_SCHEMA.MACHINING_PROCESS_BRANCH_RELATIONSHIP'],
          ['INTEGRATED_CNC_SCHEMA.MACHINING_PROCESS_EXECUTABLE']))
        );

  WR4:  NOT (SELF.description = 'while statement') OR
        ((verify_required_action_property       (SELF, 'condition')) AND
         (verify_rep_item_for_action_property   (SELF, 'condition',
          ['INTEGRATED_CNC_SCHEMA.EXPRESSION_REPRESENTATION_ITEM',
           'INTEGRATED_CNC_SCHEMA.BOOLEAN_EXPRESSION'])) AND

         (verify_required_relating_amr  (SELF,
          ['INTEGRATED_CNC_SCHEMA.MACHINING_PROCESS_BODY_RELATIONSHIP'])) AND
         (verify_related_type_for_amr   (SELF,
          ['INTEGRATED_CNC_SCHEMA.MACHINING_PROCESS_BODY_RELATIONSHIP'],
          ['INTEGRATED_CNC_SCHEMA.MACHINING_PROCESS_EXECUTABLE']))
        );

  WR5:  NOT (SELF.description = 'parallel') OR
        ((2 <= get_count_of_relating_amr (SELF,
          ['INTEGRATED_CNC_SCHEMA.MACHINING_PROCESS_CONCURRENT_RELATIONSHIP']))
        AND
         (verify_related_type_for_amr   (SELF,
          ['INTEGRATED_CNC_SCHEMA.MACHINING_PROCESS_CONCURRENT_RELATIONSHIP'],
          ['INTEGRATED_CNC_SCHEMA.MACHINING_PROCESS_EXECUTABLE']))
        );

  WR6:  NOT (SELF.description = 'non-sequential') OR
        ((2 <= get_count_of_relating_amr (SELF,
          ['INTEGRATED_CNC_SCHEMA.MACHINING_PROCESS_BODY_RELATIONSHIP'])) AND
         (verify_related_type_for_amr   (SELF,
          ['INTEGRATED_CNC_SCHEMA.MACHINING_PROCESS_BODY_RELATIONSHIP'],
          ['INTEGRATED_CNC_SCHEMA.MACHINING_PROCESS_EXECUTABLE']))
        );

  WR7:  NOT (SELF.description = 'selective') OR
        ((2 <= get_count_of_relating_amr (SELF,
          ['INTEGRATED_CNC_SCHEMA.MACHINING_PROCESS_BRANCH_RELATIONSHIP'])) AND
         (verify_related_type_for_amr   (SELF,
          ['INTEGRATED_CNC_SCHEMA.MACHINING_PROCESS_BRANCH_RELATIONSHIP'],
          ['INTEGRATED_CNC_SCHEMA.MACHINING_PROCESS_EXECUTABLE']))
        );

  WR8:  NOT (SELF.description = 'setup instructions') OR
        ((verify_related_type_for_amr   (SELF,
          ['INTEGRATED_CNC_SCHEMA.MACHINING_OPERATOR_INSTRUCTION_RELATIONSHIP'],
          ['INTEGRATED_CNC_SCHEMA.MACHINING_OPERATOR_INSTRUCTION']))
        );
END_ENTITY; -- 10303-238: integrated_cnc_schema

Explicit Attributes

Entity machining_process_executable has the following local and inherited explicit attributes:
AttributeTypeDefined By
 namelabel (STRING)action_method
 descriptiontext (STRING)action_method
 consequencetext (STRING)action_method
 purposetext (STRING)action_method

Derived Attributes

    No derived attributes

Inverse Attributes

    No Inverse Attributes

Supertypes

Entity machining_process_executable inherits from the following supertypes:
  action_method

Subtypes

Entity machining_process_executable has the following subtypes:
    machining_feature_process*
    machining_nc_function*
    machining_rapid_movement*
    machining_touch_probing*
    machining_workingstep*
    machining_workplan*
* - Immediate Subtypes

Referenced By

Entity machining_process_executable and its supertypes are referenced by the following definitions:
DefinitionTypeReferenced Entity
 action ENTITY action_method
 action_method_relationship ENTITY action_method
 characterized_action_definition SELECT action_method
 date_and_time_item SELECT machining_process_executable
 get_count_of_relating_amr FUNCTION action_method
 get_count_of_relating_amr_with_name FUNCTION action_method
 get_relating_amr FUNCTION action_method
 security_classification_item SELECT machining_process_executable
 supported_item SELECT action_method
 verify_optional_in_process_geometry FUNCTION machining_process_executable
 verify_optional_relating_amr FUNCTION action_method
 verify_optional_relating_amr_with_name FUNCTION action_method
 verify_related_type_for_amr FUNCTION action_method
 verify_related_type_for_amr_with_name FUNCTION action_method
 verify_required_relating_amr FUNCTION action_method
 verify_required_relating_amr_with_name FUNCTION action_method


[Top Level Definitions]

Generated by STEP ToolsTM EXPRESS to HTML Converter
on 2010-01-12T10:42:21-02:00