Overview
The first edition of AP242 is formally known as STEP Part 242: Application Protocol For Managed Model-based 3D Engineering. The standard was published in 2014 as ISO 10303-242:2014(E). It was intended to replace both AP203 and AP214 for mechanical CAD data.
This has since been replaced by a second edition in 2020 and a third edition in 2022.
Programming Notes
In addition to the many new entities, AP242 changed the type of attributes in product_definition_relationship. The Part 21 file representation of the data remains the same, which is important for upward compatibility, but programmatic access is slightly different. The related and relating attributes were changed from a product_definition to a select that can take several different types of entity.
There were other changes of this kind through the model, but this one is noteworthy because it affects every application that processes STEP assemblies. The following functions will simplify adjusting your code:
stix_get_related_pdef(rel) --> replaces rel->related_product_definition() stix_get_relating_pdef(rel) --> replaces rel->relating_product_definition() stix_put_related_pdef(rel, pd) --> replaces rel->related_product_definition(pd) stix_put_relating_pdef(rel, pd) --> replaces rel->relating_product_definition(pd)
A number of recommended practice documents are available on the CAx-IF site for things introduced in AP242.
New Entity Definitions
The 2014 first edition of AP242 contains about 533 new EXPRESS entities beyond AP214 and AP203 second edition. It also retires 53 entities from AP214, mostly in the kinematics model, that have been replaced with completely new definitions.
abrupt_change_of_surface_normal abstracted_expression_function actuated_kinematic_pair add_element agc_with_dimension all_around_shape_aspect angle_assembly_constraint_with_dimension angle_geometric_constraint application_defined_function area_with_outer_boundary array_placement_group assembly_bond_definition assembly_component assembly_geometric_constraint assembly_group_component assembly_group_component_definition_placement_link assembly_joint atom_based_literal b_spline_basis b_spline_curve_knot_locator b_spline_curve_segment b_spline_function b_spline_surface_knot_locator b_spline_surface_patch b_spline_surface_strip basic_sparse_matrix between_shape_aspect binary_assembly_constraint binary_literal boolean_result_2d bound_parameter_environment bound_variational_parameter boundary_curve_of_b_spline_or_rectangular_composite_surface cartesian_complex_number_region cdgc_with_dimension chain_based_geometric_item_specific_usage chain_based_item_identified_representation_usage change_composition_relationship change_element change_element_sequence change_group change_group_assignment characterized_chain_based_item_within_representation characterized_item_within_representation characterized_representation circular_area circular_path clgc_with_dimension closed_curve_style_parameters coaxial_assembly_constraint coaxial_geometric_constraint complex_area complex_number_literal complex_number_literal_polar complex_triangulated_face complex_triangulated_surface_set component_definition component_feature component_feature_joint component_feature_relationship component_mating_constraint_condition component_path_shape_aspect component_terminal composite_curve_transition_locator composite_group_shape_aspect composite_unit_shape_aspect connection_zone_based_assembly_joint connection_zone_interface_plane_relationship constant_function constrained_kinematic_motion_representation contacting_feature context_dependent_kinematic_link_representation continuous_shape_aspect convex_hexahedron coordinates_list csg_2d_shape_representation csg_primitive_solid_2d csg_solid_2d current_change_element_assignment curve_based_path curve_based_path_with_orientation curve_based_path_with_orientation_and_parameters curve_distance_geometric_constraint curve_length_geometric_constraint curve_segment_set curve_smoothness_geometric_constraint curve_style_parameters_representation curve_style_parameters_with_ends curve_with_excessive_segments curve_with_small_curvature_radius cyclide_segment_solid cylindrical_pair_with_range data_quality_assessment_measurement_association data_quality_assessment_specification data_quality_criteria_representation data_quality_criterion data_quality_criterion_assessment_association data_quality_criterion_measurement_association data_quality_definition data_quality_definition_relationship data_quality_definition_representation_relationship data_quality_inspection_criterion_report data_quality_inspection_criterion_report_item data_quality_inspection_instance_report data_quality_inspection_instance_report_item data_quality_inspection_report data_quality_inspection_result data_quality_inspection_result_representation data_quality_inspection_result_with_judgement data_quality_measurement_requirement data_quality_report_measurement_association data_quality_report_request datum_reference_compartment datum_reference_element datum_reference_modifier_with_value datum_system defined_constraint definite_integral_expression definite_integral_function delete_element detailed_report_request detailed_report_request_with_number_of_data dimensional_location_with_datum_feature dimensional_size_with_datum_feature disallowed_assembly_relationship_usage disconnected_face_set discontinuous_geometry eccentric_cone edge_with_excessive_segments elementary_function elementary_space ellipsoid elliptic_area entirely_narrow_face entirely_narrow_solid entirely_narrow_surface equal_parameter_constraint erroneous_b_spline_curve_definition erroneous_b_spline_surface_definition erroneous_data erroneous_geometry erroneous_manifold_solid_brep erroneous_topology erroneous_topology_and_geometry_relationship evaluated_characteristic_of_product_as_individual_test_result excessive_use_of_groups excessive_use_of_layers excessively_high_degree_curve excessively_high_degree_surface explicit_constraint explicit_geometric_constraint explicit_table_function expression_denoted_function expression_extension_numeric expression_extension_string expression_extension_to_select extended_tuple_space externally_conditioned_data_quality_criteria_representation externally_conditioned_data_quality_criterion externally_conditioned_data_quality_inspection_instance_report_item externally_conditioned_data_quality_inspection_result externally_conditioned_data_quality_inspection_result_representation externally_defined_item_with_multiple_references externally_defined_representation externally_listed_data extreme_instance extreme_patch_width_variation face_shape_representation_relationship face_surface_with_excessive_patches_in_one_direction faceted_primitive feature_definition_with_connection_area feature_for_datum_target_relationship finite_function finite_integer_interval finite_real_interval finite_space fixed_constituent_assembly_constraint fixed_element_geometric_constraint fixed_instance_attribute_set flat_face free_edge free_form_assignment free_form_constraint free_form_relation free_kinematic_motion_representation frozen_assignment function_application function_space g1_discontinuity_between_adjacent_faces g1_discontinuous_curve g1_discontinuous_surface g2_discontinuity_between_adjacent_faces g2_discontinuous_curve g2_discontinuous_surface gap_between_adjacent_edges_in_loop gap_between_edge_and_base_surface gap_between_faces_related_to_an_edge gap_between_pcurves_related_to_an_edge gap_between_vertex_and_base_surface gap_between_vertex_and_edge gear gear_pair_with_range general_datum_reference general_linear_function generated_finite_numeric_space generic_product_definition_reference geometric_contact geometric_gap_in_topology geometric_representation_context_with_parameter geometric_tolerance_with_defined_area_unit geometric_tolerance_with_maximum_tolerance geometric_tolerance_with_modifiers geometry_with_local_irregularity geometry_with_local_near_degeneracy half_space_2d high_degree_axi_symmetric_surface high_degree_conic high_degree_linear_curve high_degree_planar_surface high_order_kinematic_pair homogeneous_linear_function implicit_explicit_positioned_sketch_relationship implicit_intersection_curve implicit_model_intersection_curve implicit_planar_curve implicit_planar_intersection_point implicit_planar_projection_point implicit_point_on_plane implicit_projected_curve implicit_silhouette_curve imported_curve_function imported_point_function imported_surface_function imported_volume_function inappropriate_element_visibility inappropriate_use_of_layer inapt_data inapt_geometry inapt_manifold_solid_brep inapt_topology inapt_topology_and_geometry_relationship incidence_assembly_constraint incidence_geometric_constraint inconsistent_adjacent_face_normals inconsistent_curve_transition_code inconsistent_edge_and_curve_directions inconsistent_element_reference inconsistent_face_and_closed_shell_normals inconsistent_face_and_surface_normals inconsistent_surface_transition_code indistinct_curve_knots indistinct_surface_knots instance_attribute_reference instance_report_item_with_extreme_instances integer_interval_from_min integer_interval_to_max integer_tuple_literal interfaced_group_component interpolated_configuration_representation interpolated_configuration_segment intersecting_connected_face_sets intersecting_loops_in_face intersecting_shells_in_solid item_link_motion_relationship kinematic_loop kinematic_path_defined_by_curves kinematic_path_defined_by_nodes kinematic_path_segment kinematic_property_definition_representation kinematic_property_mechanism_representation kinematic_property_topology_representation kinematic_topology_directed_structure kinematic_topology_network_structure kinematic_topology_structure kinematic_topology_substructure kinematic_topology_tree_structure linear_array_component_definition_link linear_array_placement_group_component linear_flexible_and_pinion_pair linear_flexible_and_planar_curve_pair linear_flexible_link_representation linear_path linear_profile linearized_table_function link_motion_relationship link_motion_representation_along_path link_motion_transformation listed_data listed_product_space location_in_aggregate_representation_item low_order_kinematic_pair low_order_kinematic_pair_value low_order_kinematic_pair_with_motion_coupling low_order_kinematic_pair_with_range make_from_feature_relationship marking mated_part_relationship maths_enum_literal maths_function maths_space maths_tuple_literal maths_variable mechanism_representation mechanism_state_representation modify_element multi_level_reference_designator multiply_defined_cartesian_points multiply_defined_curves multiply_defined_directions multiply_defined_edges multiply_defined_faces multiply_defined_geometry multiply_defined_placements multiply_defined_solids multiply_defined_surfaces multiply_defined_vertices narrow_surface_patch near_point_relationship nearly_degenerate_geometry nearly_degenerate_surface_boundary nearly_degenerate_surface_patch neutral_sketch_representation non_agreed_accuracy_parameter_usage non_agreed_scale_usage non_agreed_unit_usage non_manifold_at_edge non_manifold_at_vertex non_referenced_coordinate_system non_smooth_geometry_transition_across_edge non_uniform_zone_definition open_closed_shell open_edge_loop oriented_joint outer_round outside_profile over_used_vertex overcomplex_geometry overcomplex_topology_and_geometry_relationship overlapping_geometry pair_representation_relationship parallel_assembly_constraint parallel_assembly_constraint_with_dimension parallel_composed_function parallel_geometric_constraint parallel_offset_geometric_constraint partial_derivative_expression partial_derivative_function partly_overlapping_curves partly_overlapping_edges partly_overlapping_faces partly_overlapping_solids partly_overlapping_surfaces path_area_with_parameters path_node path_parameter_representation path_parameter_representation_context pdgc_with_dimension perpendicular_assembly_constraint perpendicular_geometric_constraint pgc_with_dimension physical_component physical_component_feature physical_component_terminal planar_pair_with_range plane_angle_and_length_pair plane_angle_and_ratio_pair pogc_with_dimension point_distance_geometric_constraint point_on_edge_curve point_on_face_surface point_on_planar_curve_pair_with_range point_on_surface_pair_with_range point_to_point_path polar_complex_number_region polygonal_area pre_defined_character_glyph prescribed_path previous_change_element_assignment primitive_2d primitive_2d_with_inner_boundary prismatic_pair_with_range product_as_planned product_data_and_data_quality_relationship product_definition_kinematics product_definition_reference product_definition_reference_with_local_representation product_definition_relationship_kinematics product_design_to_individual product_design_version_to_individual product_planned_to_realized product_relationship profile_floor projected_zone_definition_with_offset protrusion quantifier_expression rack_and_pinion_pair_with_range radius_geometric_constraint rationalize_function real_interval_from_min real_interval_to_max real_tuple_literal rectangular_area rectangular_array_placement_group_component rectangular_composite_surface_transition_locator rectangular_pyramid reindexed_array_function removal_volume repackaging_function repositioned_neutral_sketch repositioned_tessellated_item representation_proxy_item representative_shape_representation restriction_function revolute_pair_with_range revolved_profile rgc_with_dimension rib_top rib_top_floor rigid_link_representation rigid_subsketch rounded_end screw_pair_with_range sdgc_with_dimension selector_function self_intersecting_curve self_intersecting_geometry self_intersecting_loop self_intersecting_shell self_intersecting_surface series_composed_function shape_aspect_relationship_representation_association shape_criteria_representation_with_accuracy shape_data_quality_assessment_by_logical_test shape_data_quality_assessment_by_numerical_test shape_data_quality_criteria_representation shape_data_quality_criterion shape_data_quality_criterion_and_accuracy_association shape_data_quality_inspected_shape_and_result_relationship shape_data_quality_inspection_criterion_report shape_data_quality_inspection_instance_report shape_data_quality_inspection_instance_report_item shape_data_quality_inspection_result shape_data_quality_inspection_result_representation shape_data_quality_lower_value_limit shape_data_quality_upper_value_limit shape_data_quality_value_limit shape_data_quality_value_range shape_inspection_result_accuracy_association shape_inspection_result_representation_with_accuracy shape_measurement_accuracy shape_summary_request_with_representative_value short_length_curve short_length_curve_segment short_length_edge simultaneous_constraint_group single_area_csg_2d_shape_representation single_boundary_csg_2d_shape_representation single_property_is_definition skew_line_distance_geometric_constraint small_area_face small_area_surface small_area_surface_patch small_volume_solid software_for_data_quality_check solid_with_excessive_number_of_voids solid_with_wrong_number_of_voids spherical_cap spherical_pair_with_pin spherical_pair_with_pin_and_range spherical_pair_with_range steep_angle_between_adjacent_edges steep_angle_between_adjacent_faces steep_geometry_transition_across_edge step su_parameters subsketch summary_report_request surface_distance_assembly_constraint_with_dimension surface_distance_geometric_constraint surface_pair_with_range surface_patch_set surface_smoothness_geometric_constraint surface_with_excessive_patches_in_one_direction surface_with_small_curvature_radius swept_curve_surface_geometric_constraint swept_point_curve_geometric_constraint symmetry_geometric_constraint tangent_assembly_constraint tangent_geometric_constraint tessellated_annotation_occurrence tessellated_connecting_edge tessellated_curve_set tessellated_edge tessellated_face tessellated_geometric_set tessellated_item tessellated_point_set tessellated_shape_representation tessellated_shell tessellated_solid tessellated_structured_item tessellated_surface_set tessellated_vertex tessellated_wire tetrahedron thermal_component thread_runout topology_related_to_multiply_defined_geometry topology_related_to_nearly_degenerate_geometry topology_related_to_overlapping_geometry topology_related_to_self_intersecting_geometry triangulated_face triangulated_surface_set turned_knurl unbound_parameter_environment unbound_variational_parameter unbound_variational_parameter_semantics unequally_disposed_geometric_tolerance uniform_product_space universal_pair_with_range unused_patches unused_shape_element value_format_type_qualifier variable_expression variational_current_representation_relationship variational_parameter variational_representation volume wrong_element_name wrongly_oriented_void wrongly_placed_loop wrongly_placed_void zero_surface_normal
The following definitions are no longer present in AP242 but have been retained in the class library for compatibility with older AP214 and AP203e2 data. Most of these definitions come from the AP214 kinematics model, which has been replaced with completely new definitions.
application_context_relationship approximation_tolerance approximation_tolerance_deviation approximation_tolerance_parameter composite_assembly_definition configuration_definition configuration_interpolation cylindrical_pair_range derived_unit_variable draughting_specification_reference element_delivery event_occurrence_context_assignment event_occurrence_context_role featured_shape founded_kinematic_path gear_pair_range initial_state kinematic_frame_background_representation kinematic_frame_background_representation_association kinematic_frame_based_transformation kinematic_ground_representation kinematic_link_representation_relation kinematic_property_definition kinematic_property_representation_relation kinematic_structure language_assignment mechanism mechanism_base_placement motion_link_relationship named_unit_variable pair_actuator percentage_laminate_definition percentage_ply_definition physically_modelled_product_definition planar_pair_range ply_laminate_definition point_on_planar_curve_pair_range point_on_surface_pair_range polar_complex_number_literal pre_defined_presentation_style prismatic_pair_range rack_and_pinion_pair_range revolute_pair_range rib scattering_parameter screw_pair_range seam_edge shape_aspect_transition simple_pair_range spherical_pair_range surface_pair_range thickness_laminate_definition universal_pair_range