(* SCHEMA step_merged_ap_schema; *)
-- IN AP238 STEP-NC ENTITY machining_toolpath SUBTYPE OF (action_method); WHERE WR1: SELF.description IN [ 'feedstop', 'axis trajectory', 'cutter location trajectory', 'cutter contact trajectory', 'approach lift path angle', 'approach lift path tangent', 'connect security plane', 'connect direct' ]; WR2: verify_optional_action_property(SELF, 'priority') AND verify_enumeration_action_property(SELF, 'priority', [ 'required', 'suggested' ]); WR3: verify_optional_action_property(SELF, 'trajectory type') AND verify_enumeration_action_property(SELF, 'trajectory type', [ 'approach', 'lift', 'connect', 'non-contact', 'contact', 'trajectory path' ]); WR4: verify_optional_action_property(SELF, 'speed profile') AND (0 = SIZEOF(QUERY (prop <* get_action_property(SELF, 'speed profile')| NOT (0 < SIZEOF(QUERY (prep <* USEDIN(prop, 'STEP_MERGED_AP_SCHEMA.ACTION_PROPERTY_REPRESENTATION.PROPERTY')| ('STEP_MERGED_AP_SCHEMA.MACHINING_TOOLPATH_SPEED_PROFILE_REPRESENTATION' IN TYPEOF(prep.representation)))))))); WR5: verify_optional_relating_amr(SELF, [ 'STEP_MERGED_AP_SCHEMA.MACHINING_TECHNOLOGY_RELATIONSHIP' ]) AND verify_related_type_for_amr(SELF, [ 'STEP_MERGED_AP_SCHEMA.MACHINING_TECHNOLOGY_RELATIONSHIP' ], [ 'STEP_MERGED_AP_SCHEMA.MACHINING_TECHNOLOGY' ]); WR6: verify_optional_relating_amr(SELF, [ 'STEP_MERGED_AP_SCHEMA.MACHINING_FUNCTIONS_RELATIONSHIP' ]) AND verify_related_type_for_amr(SELF, [ 'STEP_MERGED_AP_SCHEMA.MACHINING_FUNCTIONS_RELATIONSHIP' ], [ 'STEP_MERGED_AP_SCHEMA.MACHINING_FUNCTIONS' ]); WR7: NOT (SELF.description IN [ 'axis trajectory', 'cutter location trajectory', 'cutter contact trajectory' ]) OR verify_optional_action_property(SELF, 'direction') AND verify_enumeration_action_property(SELF, 'direction', [ 'beginning to end', 'end to beginning' ]); WR8: NOT (SELF.description = 'connect security plane') OR ((verify_optional_action_property(SELF, 'up direction') AND verify_rep_item_for_action_property(SELF, 'up direction', [ 'STEP_MERGED_AP_SCHEMA.DIRECTION' ])) AND verify_optional_action_property(SELF, 'down direction')) AND verify_rep_item_for_action_property(SELF, 'down direction', [ 'STEP_MERGED_AP_SCHEMA.DIRECTION' ]); WR9: NOT (SELF.description = 'feedstop') OR verify_required_action_property(SELF, 'dwell') AND verify_time_measure_action_property(SELF, 'dwell'); WR10: NOT (SELF.description = 'axis trajectory') OR verify_required_action_property(SELF, 'axis commands') AND (0 = SIZEOF(QUERY (prop <* get_action_property(SELF, 'axis commands')| NOT (0 < SIZEOF(QUERY (prep <* USEDIN(prop, 'STEP_MERGED_AP_SCHEMA.ACTION_PROPERTY_REPRESENTATION.PROPERTY')| (1 <= SIZEOF(QUERY (it <* prep.representation.items| ('STEP_MERGED_AP_SCHEMA.BOUNDED_CURVE' IN TYPEOF(it))))))))))); WR11: NOT (SELF.description IN [ 'approach lift path angle', 'approach lift path tangent' ]) OR ((verify_required_action_property(SELF, 'fix point') AND verify_rep_item_for_action_property(SELF, 'fix point', [ 'STEP_MERGED_AP_SCHEMA.CARTESIAN_POINT' ])) AND verify_optional_action_property(SELF, 'fix point direction')) AND verify_rep_item_for_action_property(SELF, 'fix point direction', [ 'STEP_MERGED_AP_SCHEMA.DIRECTION' ]); WR12: NOT (SELF.description = 'approach lift path angle') OR ((verify_required_action_property(SELF, 'angle') AND verify_angle_measure_action_property(SELF, 'angle')) AND verify_required_action_property(SELF, 'bend distance')) AND verify_length_measure_action_property(SELF, 'bend distance'); WR13: NOT (SELF.description = 'approach lift path tangent') OR verify_required_action_property(SELF, 'radius') AND verify_length_measure_action_property(SELF, 'radius'); WR14: NOT (SELF.description = 'cutter location trajectory') OR ((((((((verify_required_action_property(SELF, 'basic curve') AND verify_rep_item_for_action_property(SELF, 'basic curve', [ 'STEP_MERGED_AP_SCHEMA.BOUNDED_CURVE' ])) AND verify_optional_action_property(SELF, 'surface normal')) AND verify_rep_item_for_action_property(SELF, 'surface normal', [ 'STEP_MERGED_AP_SCHEMA.BOUNDED_CURVE' ])) AND verify_optional_action_property(SELF, 'tool axis')) AND verify_rep_item_for_action_property(SELF, 'tool axis', [ 'STEP_MERGED_AP_SCHEMA.BOUNDED_CURVE' ])) AND verify_optional_action_property(SELF, 'path maximum deviation')) AND verify_length_measure_action_property(SELF, 'path maximum deviation')) AND verify_optional_action_property(SELF, 'tool axis maximum deviation')) AND verify_angle_measure_action_property(SELF, 'tool axis maximum deviation'); WR15: NOT (SELF.description = 'cutter contact trajectory') OR ((((((((verify_required_action_property(SELF, 'basic curve') AND verify_rep_item_for_action_property(SELF, 'basic curve', [ 'STEP_MERGED_AP_SCHEMA.BOUNDED_PCURVE' ]) OR ((verify_required_action_property(SELF, 'basic curve') AND verify_rep_item_for_action_property(SELF, 'basic curve', [ 'STEP_MERGED_AP_SCHEMA.BOUNDED_CURVE' ])) AND verify_required_action_property(SELF, 'surface normal')) AND verify_rep_item_for_action_property(SELF, 'surface normal', [ 'STEP_MERGED_AP_SCHEMA.BOUNDED_CURVE' ])) AND verify_optional_action_property(SELF, 'tool axis')) AND verify_rep_item_for_action_property(SELF, 'tool axis', [ 'STEP_MERGED_AP_SCHEMA.BOUNDED_CURVE' ])) AND verify_optional_action_property(SELF, 'contact type')) AND verify_enumeration_action_property(SELF, 'contact type', [ 'side', 'front' ])) AND verify_optional_action_property(SELF, 'path maximum deviation')) AND verify_length_measure_action_property(SELF, 'path maximum deviation')) AND verify_optional_action_property(SELF, 'tool axis maximum deviation')) AND verify_angle_measure_action_property(SELF, 'tool axis maximum deviation'); WR16: NOT (SELF.description IN [ 'axis trajectory', 'cutter location trajectory', 'cutter contact trajectory' ]) OR ((((verify_optional_action_property(SELF, 'material removal depth') AND (verify_length_measure_action_property(SELF, 'material removal depth') OR verify_rep_item_for_action_property(SELF, 'material removal depth', [ 'STEP_MERGED_AP_SCHEMA.BOUNDED_CURVE' ]))) AND verify_optional_action_property(SELF, 'material removal overcut')) AND (verify_length_measure_action_property(SELF, 'material removal overcut') OR verify_rep_item_for_action_property(SELF, 'material removal overcut', [ 'STEP_MERGED_AP_SCHEMA.BOUNDED_CURVE' ]))) AND verify_optional_action_property(SELF, 'material removal total volume')) AND verify_rep_item_for_action_property(SELF, 'material removal total volume', [ 'STEP_MERGED_AP_SCHEMA.MEASURE_REPRESENTATION_ITEM' ]); END_ENTITY;
|
Generated by STEP Tools® EXPRESS to HTML Converter
2024-09-06T14:00:32-04:00