ENTITY machining_functions

(* SCHEMA integrated_cnc_schema; *)
ENTITY machining_functions
  SUBTYPE OF (action_method);
  WHERE
  WR1:  NOT (SELF.description = 'milling') OR
        ((verify_required_action_property       (SELF, 'coolant')) AND
         (verify_enumeration_action_property    (SELF, 'coolant',
           ['coolant on', 'coolant off'])) AND

         (verify_optional_action_property
           (SELF, 'coolant pressure')) AND
         (verify_pressure_measure_action_property
           (SELF, 'coolant pressure')) AND

         (verify_optional_action_property       (SELF, 'mist')) AND
         (verify_enumeration_action_property    (SELF, 'mist',
           ['mist on', 'mist off'])) AND

         (verify_optional_action_property
           (SELF, 'through spindle coolant')) AND
         (verify_enumeration_action_property
           (SELF, 'through spindle coolant',
           ['through spindle coolant on', 'through spindle coolant off'])) AND

         (verify_optional_action_property
           (SELF, 'through spindle pressure')) AND
         (verify_pressure_measure_action_property
           (SELF, 'through spindle pressure')) AND

         -- axis constraints property must contain zero or more ranges
         (0 = SIZEOF (QUERY (prop <* get_action_property
                (SELF, 'axis constraints') | NOT
                 ((0 < SIZEOF (QUERY (prep <* USEDIN (prop,
            'INTEGRATED_CNC_SCHEMA.ACTION_PROPERTY_REPRESENTATION.PROPERTY') |
              (0 <= SIZEOF (QUERY (it <* prep.representation.items |
                 ('INTEGRATED_CNC_SCHEMA.VALUE_RANGE' in TYPEOF(it)))))
                )))))))
        );

  WR2:  NOT (SELF.description = 'turning') OR
        ((verify_required_action_property       (SELF, 'coolant')) AND
         (verify_enumeration_action_property    (SELF, 'coolant',
           ['coolant on', 'coolant off'])) AND

         (verify_optional_action_property       (SELF, 'coolant type')) AND
         (verify_enumeration_action_property    (SELF, 'coolant type',
           ['flood', 'mist', 'through tool'])) AND

         (verify_optional_action_property
           (SELF, 'coolant pressure')) AND
         (verify_pressure_measure_action_property
           (SELF, 'coolant pressure')) AND

         (verify_optional_action_property       (SELF, 'tail stock')) AND
         (verify_enumeration_action_property    (SELF, 'tail stock',
           ['tail stock used', 'tail stock not used'])) AND

         (verify_optional_action_property       (SELF, 'steady rest')) AND
         (verify_enumeration_action_property    (SELF, 'steady rest',
           ['steady rest used', 'steady rest not used'])) AND

         (verify_optional_action_property       (SELF, 'follow rest')) AND
         (verify_enumeration_action_property    (SELF, 'follow rest',
           ['follow rest used', 'follow rest not used']))
        );

  WR3:  NOT (SELF.description IN ['milling', 'turning']) OR
        ((verify_optional_action_property       (SELF, 'axis clamping')) AND
         (0 = SIZEOF (QUERY (prop <*
           get_action_property (SELF, 'axis clamping') | NOT
           (0 < SIZEOF (QUERY (prep <* USEDIN (prop, 'INTEGRATED_CNC_SCHEMA.' +
              'ACTION_PROPERTY_REPRESENTATION.PROPERTY') |
             (1 = SIZEOF (QUERY (it <* prep.representation.items |
                (('INTEGRATED_CNC_SCHEMA.COMPOUND_REPRESENTATION_ITEM'
                   IN TYPEOF(it)) AND
                 ('INTEGRATED_CNC_SCHEMA.LIST_REPRESENTATION_ITEM'
                   IN TYPEOF(it.item_element)) AND
                 (0 = SIZEOF (QUERY (ie <* it.item_element | NOT
                   ('INTEGRATED_CNC_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM'
                    IN TYPEOF(ie)) )))
             ))))
           )))
         ))) AND

         (verify_optional_action_property     (SELF, 'chip removal')) AND
         (verify_enumeration_action_property  (SELF, 'chip removal',
           ['chip removal on', 'chip removal off'])) AND

         (verify_optional_action_property     (SELF, 'oriented spindle stop')) AND
         (verify_rep_item_for_action_property (SELF, 'oriented spindle stop',
           ['INTEGRATED_CNC_SCHEMA.DIRECTION'])) AND

         (verify_related_type_for_amr   (SELF,
          ['INTEGRATED_CNC_SCHEMA.MACHINING_PROCESS_MODEL_RELATIONSHIP'],
          ['INTEGRATED_CNC_SCHEMA.MACHINING_PROCESS_MODEL'])) AND

         (verify_optional_action_property (SELF, 'other functions')) AND
         (0 = SIZEOF (QUERY (prop <* get_action_property
                             (SELF, 'other functions') | NOT
           (0 < SIZEOF (QUERY (prep <* USEDIN (prop, 'INTEGRATED_CNC_SCHEMA.' +
              'ACTION_PROPERTY_REPRESENTATION.PROPERTY') |
             (1 = SIZEOF (QUERY (it <* prep.representation.items |
                (('INTEGRATED_CNC_SCHEMA.COMPOUND_REPRESENTATION_ITEM'
                   IN TYPEOF(it)) AND
                 ('INTEGRATED_CNC_SCHEMA.SET_REPRESENTATION_ITEM'
                   IN TYPEOF(it.item_element)))
             )))
           )))
         )))
        );
END_ENTITY; -- 10303-238: integrated_cnc_schema

Explicit Attributes

Entity machining_functions 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_functions inherits from the following supertypes:
  action_method

Subtypes

    No subtypes

Referenced By

Entity machining_functions 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
 get_count_of_relating_amr FUNCTION action_method
 get_count_of_relating_amr_with_name FUNCTION action_method
 get_relating_amr FUNCTION action_method
 supported_item SELECT action_method
 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