SCHEMA step_merged_cad_schema; (* Constructed by merging: * - AP242 (wg12n8324_ap242dis.exp) * - AP214 (wg3n2628_ap214e3.exp) * - AP203e2 (wg3n2635_ap203e2.exp) * - Deprecated AP203e1 (ap203e1_types.exp) * - AP242 DIS Fixes (ap242_fixes.exp) *) CONSTANT deprecated_constructed_data_types : SET [0:?] OF STRING := [ 'approved_item', 'certified_item', 'change_request_item', 'contracted_item', 'cc_classified_item', 'date_time_item', 'cc_person_organization_item', 'cc_specified_item', 'start_request_item', 'work_item' ]; deprecated_entity_data_types : SET [0:?] OF STRING := [ 'cc_design_approval', 'cc_design_certification', 'cc_design_contract', 'cc_design_date_and_time_assignment', 'cc_design_person_and_organization_assignment', 'cc_design_security_classification', 'cc_design_specification_reference', 'change', 'change_request', 'design_context', 'design_make_from_relationship', 'mechanical_context', 'product_category_relationship', 'start_request', 'start_work', 'supplied_part_relationship' ]; deprecated_interfaced_data_types : SET [0:?] OF STRING := [ 'document_with_class', 'ordinal_date', 'product_definition_formation_with_specified_source', 'week_of_year_and_day_date' ]; dummy_gri : geometric_representation_item := representation_item('') || geometric_representation_item(); dummy_tri : topological_representation_item := representation_item('') || topological_representation_item(); pre_defined_picture_representation_types : SET [0:?] OF STRING := [ 'JPEG', 'PNG', 'TIFF', 'BMP', 'GIF' ]; schema_date_stamp : STRING := 'Feb 19 18:28:57 2013'; schema_prefix : STRING := 'STEP_MERGED_CAD_SCHEMA.'; the_binarys : elementary_space := make_elementary_space(es_binarys); the_booleans : elementary_space := make_elementary_space(es_booleans); the_complex_numbers : elementary_space := make_elementary_space(es_complex_numbers); the_complex_tuples : extended_tuple_space := make_extended_tuple_space(the_zero_tuple_space, the_complex_numbers); the_empty_maths_tuple : maths_tuple := []; the_empty_space : finite_space := make_finite_space([]); the_generics : elementary_space := make_elementary_space(es_generics); the_integer_tuples : extended_tuple_space := make_extended_tuple_space(the_zero_tuple_space, the_integers); the_integers : elementary_space := make_elementary_space(es_integers); the_logicals : elementary_space := make_elementary_space(es_logicals); the_maths_spaces : elementary_space := make_elementary_space(es_maths_spaces); the_neg1_one_interval : finite_real_interval := make_finite_real_interval(-1, closed, 1, closed); the_neghalfpi_halfpi_interval : finite_real_interval := make_finite_real_interval(-0.500000 * 3.14159, closed, 0.500000 * 3.14159, closed); the_negpi_pi_interval : finite_real_interval := make_finite_real_interval(-3.14159, open, 3.14159, closed); the_nonnegative_reals : real_interval_from_min := make_real_interval_from_min(0, closed); the_numbers : elementary_space := make_elementary_space(es_numbers); the_real_tuples : extended_tuple_space := make_extended_tuple_space(the_zero_tuple_space, the_reals); the_reals : elementary_space := make_elementary_space(es_reals); the_strings : elementary_space := make_elementary_space(es_strings); the_tuples : extended_tuple_space := make_extended_tuple_space(the_zero_tuple_space, the_generics); the_zero_pi_interval : finite_real_interval := make_finite_real_interval(0, closed, 3.14159, closed); the_zero_tuple_space : listed_product_space := make_listed_product_space([]); END_CONSTANT; -- IN AP203e2/AP242 TYPE absorbed_dose_measure = REAL; END_TYPE; -- IN AP203e2/AP242 TYPE acceleration_measure = REAL; END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 TYPE action_item = SELECT (action, -- AP214/AP242 action_directive, -- Common action_method, -- AP214/AP242 action_property, -- AP214/AP242 action_relationship, -- AP214/AP242 action_request_solution, -- AP214/AP242 alternate_product_relationship, -- AP214/AP242 applied_action_assignment, -- AP214/AP242 applied_classification_assignment, -- AP214/AP242 applied_person_and_organization_assignment, -- AP214/AP242 approval_status, -- AP214/AP242 assembly_component_usage_substitute, -- AP214/AP242 certification, -- AP214/AP242 certification_item, -- AP203e2/AP242 characterized_object, -- AP203e2/AP242 class, -- AP214/AP242 class_system, -- AP214/AP242 classification_item, -- AP203e2/AP242 configuration_design, -- AP214/AP242 configuration_effectivity, -- Common configuration_item, -- AP214/AP242 configured_effectivity_assignment, -- AP214/AP242 contract, -- AP214/AP242 document_file, -- AP214/AP242 document_reference_item, -- AP203e2/AP242 draughting_model, -- AP214/AP242 drawing_revision, -- AP214/AP242 evaluated_characteristic, -- AP242 executed_action, -- AP214/AP242 general_property, -- AP214/AP242 identification_item, -- AP203e2/AP242 material_designation, -- AP214/AP242 mechanical_design_geometric_presentation_representation, -- AP214/AP242 organization, -- AP203e2/AP242 organization_relationship, -- AP214/AP242 organizational_project, -- AP214/AP242 person_and_organization, -- Common presentation_area, -- AP214/AP242 product, -- AP214/AP242 product_concept, -- AP214/AP242 product_concept_feature, -- AP214/AP242 product_concept_feature_association, -- AP214/AP242 product_concept_feature_category, -- AP214/AP242 product_concept_feature_category_usage, -- AP214/AP242 product_definition, -- Common product_definition_formation, -- Common product_definition_formation_relationship, -- Common product_definition_relationship, -- Common product_definition_substitute, -- AP214/AP242 property_definition, -- AP214/AP242 requirement_assigned_item, -- AP203e2/AP242 requirement_for_action_resource, -- AP214/AP242 resource_property, -- AP214/AP242 security_classification, -- AP214/AP242 security_classification_level, -- AP214/AP242 shape_aspect, -- AP214/AP242 shape_representation, -- AP214/AP242 versioned_action_request); -- AP214/AP242 END_TYPE; -- DIFF IN AP203e2 -- IN AP203e2/AP242 TYPE action_method_items = SELECT (action, -- AP242 action_method, -- AP242 action_property, -- AP242 applied_action_assignment, -- AP242 configuration_design, -- AP242 contract, -- AP242 document_file, -- AP242 event_occurrence, -- AP242 organization, -- AP242 organizational_project, -- AP242 person, -- AP242 person_and_organization, -- AP242 product, -- Common product_concept, -- AP242 product_definition, -- AP242 product_definition_formation, -- Common product_definition_formation_relationship, -- AP242 product_definition_relationship, -- AP242 property_definition); -- AP242 END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 TYPE action_request_item = SELECT (action, -- AP214/AP242 action_method, -- AP214/AP242 action_property, -- AP214/AP242 action_relationship, -- AP214/AP242 alternate_product_relationship, -- AP214/AP242 assembly_component_usage_substitute, -- AP214/AP242 configuration_design, -- AP214/AP242 configuration_effectivity, -- AP214/AP242 configuration_item, -- AP214/AP242 configured_effectivity_assignment, -- AP214/AP242 document_file, -- AP214/AP242 draughting_model, -- AP214/AP242 drawing_revision, -- AP214/AP242 general_property, -- AP214/AP242 material_designation, -- AP214/AP242 mechanical_design_geometric_presentation_representation, -- AP214/AP242 organizational_project, -- AP214/AP242 presentation_area, -- AP214/AP242 product, -- AP214/AP242 product_concept, -- AP214/AP242 product_concept_feature, -- AP214/AP242 product_concept_feature_association, -- AP214/AP242 product_concept_feature_category, -- AP214/AP242 product_concept_feature_category_usage, -- AP214/AP242 product_definition, -- Common product_definition_formation, -- Common product_definition_formation_relationship, -- AP203e2/AP242 product_definition_relationship, -- Common product_definition_substitute, -- AP214/AP242 property_definition, -- Common resource_property, -- AP214/AP242 shape_aspect, -- AP214/AP242 shape_representation, -- AP214/AP242 versioned_action_request); -- AP203e2/AP242 END_TYPE; -- IN AP242 TYPE actuated_direction = ENUMERATION OF (bidirectional, positive_only, negative_only, not_actuated); END_TYPE; TYPE ahead_or_behind = ENUMERATION OF (ahead, exact, behind); END_TYPE; TYPE amount_of_substance_measure = REAL; END_TYPE; -- IN AP203e2/AP242 TYPE angle_direction_reference_select = SELECT (direction, curve, point_path); END_TYPE; -- IN AP203e2/AP242 TYPE angle_direction_reference_with_a2p3d_select = SELECT (angle_direction_reference_select, axis2_placement_3d); END_TYPE; TYPE angle_relator = ENUMERATION OF (equal, large, small); END_TYPE; TYPE annotation_plane_element = SELECT (draughting_callout, styled_item); END_TYPE; -- DIFF IN AP203e2 -- IN AP203e2/AP242 TYPE annotation_representation_select = SELECT (draughting_model, -- AP242 presentation_area, -- Common presentation_view, -- Common symbol_representation); -- Common END_TYPE; TYPE annotation_symbol_occurrence_item = SELECT (annotation_symbol, defined_symbol); END_TYPE; -- DIFF IN AP203e2 TYPE annotation_text_occurrence_item = SELECT (annotation_text, -- Common annotation_text_character, -- Common composite_text, -- Common defined_character_glyph, -- AP214/AP242 text_literal); -- Common END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 -- DIFF IN Deprecated AP203e1 TYPE approval_item = SELECT (action, -- AP203e2/AP214/AP242 action_directive, -- AP203e2/AP214/AP242 action_property, -- AP214/AP242 action_request_solution, -- AP214/AP242 alternate_product_relationship, -- AP203e2/AP214/AP242 applied_action_assignment, -- AP203e2/AP214/AP242 applied_classification_assignment, -- AP214/AP242 applied_usage_right, -- AP203e2/AP242 assembly_component_usage_substitute, -- AP203e2/AP214/AP242 certification, -- Common change, -- Deprecated AP203e1 change_request, -- Deprecated AP203e1 class, -- AP214/AP242 class_system, -- AP214/AP242 configuration_design, -- AP214/AP242 configuration_effectivity, -- Common configuration_item, -- AP203e2/AP242/Deprecated AP203e1 configured_effectivity_assignment, -- AP214/AP242 contract, -- Common date, -- AP203e2/AP242 directed_action, -- AP203e2/AP242 document, -- AP203e2/AP242 document_file, -- AP203e2/AP214/AP242 draughting_model, -- AP214/AP242 drawing_revision, -- AP214/AP242 effectivity, -- AP203e2/AP242 executed_action, -- AP203e2/AP214/AP242 frozen_assignment, -- AP242 general_property, -- AP214/AP242 general_property_relationship, -- AP203e2/AP242 group, -- AP203e2/AP242 group_relationship, -- AP203e2/AP242 information_usage_right, -- AP203e2/AP242 material_designation, -- AP214/AP242 mechanical_design_geometric_presentation_representation, -- AP214/AP242 organizational_project, -- AP214/AP242 presentation_area, -- AP214/AP242 product, -- Common product_concept, -- AP214/AP242 product_concept_feature, -- AP214/AP242 product_concept_feature_association, -- AP214/AP242 product_concept_feature_category, -- AP214/AP242 product_concept_feature_category_usage, -- AP214/AP242 product_definition, -- AP203e2/AP214/AP242 product_definition_formation, -- AP203e2/AP214/AP242 product_definition_formation_relationship, -- AP203e2/AP242 product_definition_relationship, -- AP203e2/AP214/AP242 product_definition_substitute, -- AP214/AP242 property_definition, -- AP214/AP242 representation, -- AP203e2/AP242 requirement_assignment, -- AP203e2/AP242 resource_property, -- AP214/AP242 security_classification, -- AP203e2/AP242/Deprecated AP203e1 shape_aspect_relationship, -- AP203e2/AP242 shape_representation, -- AP214/AP242 start_request, -- Deprecated AP203e1 start_work, -- Deprecated AP203e1 versioned_action_request); -- AP203e2/AP214/AP242 END_TYPE; -- IN AP214 TYPE approximation_method = ENUMERATION OF (chordal_deviation, chordal_length); END_TYPE; TYPE area_measure = REAL; END_TYPE; TYPE area_or_view = SELECT (presentation_area, presentation_view); END_TYPE; -- IN AP242 TYPE area_unit_type = ENUMERATION OF (circular, rectangular, square); END_TYPE; -- IN AP242 TYPE atom_based_tuple = LIST [0:?] OF atom_based_value; END_TYPE; -- IN AP242 TYPE atom_based_value = SELECT (maths_atom, atom_based_tuple); END_TYPE; -- IN AP203e2/AP242 TYPE attribute_classification_item = SELECT (action_directive, action_method, action_property, action_property_representation, action_relationship, action_request_solution, action_request_status, alternate_product_relationship, applied_action_assignment, applied_action_request_assignment, applied_approval_assignment, applied_certification_assignment, applied_document_reference, applied_document_usage_constraint_assignment, applied_effectivity_assignment, applied_event_occurrence_assignment, applied_external_identification_assignment, applied_identification_assignment, applied_organization_assignment, applied_organizational_project_assignment, applied_person_and_organization_assignment, approval, approval_person_organization, approval_relationship, approval_status, certification, context_dependent_unit, contract, date_and_time_assignment, date_assignment, derived_unit, descriptive_representation_item, document_file, document_relationship, effectivity, event_occurrence_relationship, executed_action, general_property, general_property_relationship, group, group_relationship, information_right, information_usage_right, language, measure_representation_item, measure_with_unit, named_unit, organization_relationship, organizational_address, organizational_project_relationship, person_and_organization, person_and_organization_address, product, product_category, product_concept, product_concept_context, product_definition, product_definition_context, product_definition_formation, product_definition_formation_relationship, product_definition_relationship, property_definition, property_definition_relationship, property_definition_representation, representation, representation_context, representation_item, security_classification, time_interval_relationship, uncertainty_measure_with_unit, usage_association, versioned_action_request); END_TYPE; -- IN AP242 TYPE attribute_identifier = identifier; WHERE WR1: validate_attribute_id(SELF); END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 TYPE attribute_language_item = SELECT (action, -- AP214/AP242 action_directive, -- AP214 action_method, -- AP214 action_property, -- AP214 action_relationship, -- AP214 actuated_kinematic_pair, -- AP242 alternate_product_relationship, -- Common application_context, -- Common applied_certification_assignment, -- AP203e2/AP242 applied_document_reference, -- AP203e2/AP242 applied_document_usage_constraint_assignment, -- AP203e2/AP242 applied_external_identification_assignment, -- AP203e2/AP242 applied_identification_assignment, -- AP203e2/AP242 applied_organizational_project_assignment, -- AP203e2/AP242 applied_security_classification_assignment, -- AP203e2/AP242 approval, -- AP203e2/AP242 approval_relationship, -- Common approval_status, -- AP203e2/AP242 assembly_component_usage_substitute, -- Common attribute_value_assignment, -- Common certification, -- Common certification_type, -- AP203e2/AP242 configuration_design, -- Common configuration_item, -- Common contract, -- Common data_environment, -- AP214/AP242 date_role, -- Common date_time_role, -- Common descriptive_representation_item, -- Common document_relationship, -- Common document_usage_role, -- AP203e2/AP242 draughting_title, -- AP214/AP242 effectivity, -- Common effectivity_relationship, -- Common event_occurrence, -- Common external_source, -- Common general_property, -- Common general_property_relationship, -- Common geometric_representation_item, -- Common geometric_tolerance, -- Common group, -- AP214/AP242 group_relationship, -- AP214/AP242 identification_role, -- Common information_right, -- AP203e2/AP242 information_usage_right, -- AP203e2/AP242 kinematic_pair, -- AP214/AP242 make_from_usage_option, -- AP203e2/AP242 mapped_item, -- Common multi_language_attribute_assignment, -- AP203e2/AP242 name_assignment, -- AP214/AP242 object_role, -- AP203e2/AP242 organization_relationship, -- Common organization_role, -- Common organizational_project, -- Common organizational_project_relationship, -- Common organizational_project_role, -- AP203e2/AP242 pair_actuator, -- AP214 person_and_organization, -- AP203e2/AP242 person_and_organization_role, -- Common presentation_layer_assignment, -- AP214/AP242 process_product_association, -- AP214/AP242 product, -- Common product_concept, -- Common product_concept_feature, -- AP214/AP242 product_concept_feature_association, -- AP214/AP242 product_concept_relationship, -- Common product_definition, -- Common product_definition_context, -- AP203e2/AP242 product_definition_formation, -- Common product_definition_formation_relationship, -- Common product_definition_relationship, -- Common product_definition_shape, -- AP203e2/AP242 product_definition_substitute, -- AP214/AP242 product_related_product_category, -- Common property_definition, -- Common property_definition_relationship, -- AP214/AP242 representation, -- Common representation_relationship, -- AP214/AP242 requirement_for_action_resource, -- AP214/AP242 resource_property, -- AP214/AP242 resource_requirement_type, -- AP214/AP242 security_classification, -- Common security_classification_assignment, -- AP203e2/AP242 shape_aspect, -- Common shape_aspect_relationship, -- Common shape_representation, -- AP203e2/AP242 styled_item, -- AP214/AP242 time_interval_role, -- Common topological_representation_item, -- Common uncertainty_measure_with_unit, -- Common uncertainty_qualifier, -- Common usage_association, -- AP203e2/AP242 versioned_action_request, -- AP214/AP242 versioned_action_request_relationship); -- AP214/AP242 END_TYPE; TYPE attribute_type = SELECT (label, text); END_TYPE; -- IN AP242 TYPE axial_geometry_constraint_element = SELECT (point, line, circle, plane, cylindrical_surface, conical_surface, spherical_surface, toroidal_surface, surface_of_revolution, sphere, right_circular_cone, right_circular_cylinder, torus, revolved_face_solid, revolved_area_solid); END_TYPE; TYPE axis2_placement = SELECT (axis2_placement_2d, axis2_placement_3d); END_TYPE; TYPE b_spline_curve_form = ENUMERATION OF (polyline_form, circular_arc, elliptic_arc, parabolic_arc, hyperbolic_arc, unspecified); END_TYPE; -- IN AP242 TYPE b_spline_or_composite_curve_select = SELECT (b_spline_curve, composite_curve); END_TYPE; -- IN AP242 TYPE b_spline_or_rectangular_composite_surface_select = SELECT (b_spline_surface, rectangular_composite_surface); END_TYPE; TYPE b_spline_surface_form = ENUMERATION OF (plane_surf, cylindrical_surf, conical_surf, spherical_surf, toroidal_surf, surf_of_revolution, ruled_surf, generalised_cone, quadric_surf, surf_of_linear_extrusion, unspecified); END_TYPE; -- IN AP203e2/AP242 TYPE base_solid_select = SELECT (solid_model, csg_primitive, boolean_result); WHERE WR1: NOT ('STEP_MERGED_CAD_SCHEMA.PRIMITIVE_2D' IN TYPEOF(SELF)); END_TYPE; -- IN AP203e2/AP242 TYPE blend_end_condition_select = SELECT (point_on_curve, edge_curve, vertex); END_TYPE; -- IN AP203e2/AP242 TYPE blend_radius_variation_type = ENUMERATION OF (linear_blend, cubic_blend, unspecified_blend); END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 TYPE boolean_operand = SELECT (boolean_result, -- Common csg_primitive, -- Common half_space_2d, -- AP242 half_space_solid, -- Common solid_model); -- Common END_TYPE; -- IN AP242 TYPE boolean_operand_2d = SELECT (bounded_primitive_2d, boolean_result_2d); END_TYPE; TYPE boolean_operator = ENUMERATION OF (union, intersection, difference); END_TYPE; -- IN AP242 TYPE boolean_value = BOOLEAN; END_TYPE; -- IN AP242 TYPE bounded_primitive_2d = SELECT (area_with_outer_boundary, circular_area, elliptic_area, path_area_with_parameters, polygonal_area, rectangular_area); END_TYPE; TYPE box_characteristic_select = SELECT (box_height, box_width, box_slant_angle, box_rotate_angle); END_TYPE; TYPE box_height = positive_ratio_measure; END_TYPE; TYPE box_rotate_angle = plane_angle_measure; END_TYPE; TYPE box_slant_angle = plane_angle_measure; END_TYPE; TYPE box_width = positive_ratio_measure; END_TYPE; -- IN AP203e2/AP242 TYPE camera_model_d3_multi_clipping_interection_select = SELECT (camera_model_d3_multi_clipping_union, plane); END_TYPE; -- IN AP203e2/AP242 TYPE camera_model_d3_multi_clipping_union_select = SELECT (camera_model_d3_multi_clipping_intersection, plane); END_TYPE; -- IN AP203e2/AP242 TYPE capacitance_measure = REAL; END_TYPE; TYPE category_usage_item = SELECT (product_class); END_TYPE; TYPE celsius_temperature_measure = REAL; END_TYPE; TYPE central_or_parallel = ENUMERATION OF (central, parallel); END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 -- DIFF IN Deprecated AP203e1 TYPE certification_item = SELECT (alternate_product_relationship, -- AP203e2/AP242 make_from_usage_option, -- AP203e2/AP242 product_definition, -- AP214/AP242 product_definition_formation, -- AP203e2/AP214/AP242 product_definition_formation_relationship, -- AP203e2/AP214/AP242 product_definition_relationship, -- AP214/AP242 supplied_part_relationship); -- Deprecated AP203e1 END_TYPE; -- IN AP242 TYPE chained_representation_link = SELECT (mapped_item, representation_context, representation_relationship); END_TYPE; -- IN AP242 TYPE change_management_object = SELECT (action, action_item, action_relationship, class, event_occurrence, project_item); END_TYPE; -- IN AP242 TYPE change_relationship_select = SELECT (action_relationship, product_definition_formation_relationship, product_definition_relationship, shape_aspect_relationship); END_TYPE; -- IN AP203e2/AP242 TYPE change_request_item = SELECT (product_definition_formation); END_TYPE; TYPE character_spacing_select = SELECT (length_measure, ratio_measure, measure_with_unit, descriptive_measure); END_TYPE; -- DIFF IN AP214 TYPE character_style_select = SELECT (character_glyph_style_outline, -- AP203e2/AP242 character_glyph_style_stroke, -- AP203e2/AP242 text_style_for_defined_font); -- Common END_TYPE; TYPE characterized_action_definition = SELECT (action, action_method, action_method_relationship, action_relationship); END_TYPE; TYPE characterized_definition = SELECT (characterized_object, characterized_product_definition, shape_definition); END_TYPE; -- DIFF IN AP214 TYPE characterized_material_property = SELECT (material_property_representation, -- Common product_material_composition_relationship); -- AP203e2/AP242 END_TYPE; -- IN AP203e2/AP242 TYPE characterized_product_composition_value = SELECT (measure_with_unit); END_TYPE; TYPE characterized_product_definition = SELECT (product_definition, product_definition_relationship); END_TYPE; -- IN AP214/AP242 TYPE characterized_resource_definition = SELECT (action_resource, action_resource_requirement); END_TYPE; TYPE class_usage_effectivity_context_item = SELECT (product_definition); END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 TYPE classification_item = SELECT (action, -- Common action_directive, -- Common action_method, -- Common action_property, -- Common action_relationship, -- Common action_request_solution, -- AP203e2/AP242 action_request_status, -- AP203e2/AP242 address, -- AP203e2/AP242 alternate_product_relationship, -- AP203e2/AP242 applied_action_assignment, -- AP203e2/AP242 applied_action_request_assignment, -- AP203e2/AP242 applied_approval_assignment, -- AP203e2/AP242 applied_certification_assignment, -- AP203e2/AP242 applied_contract_assignment, -- AP203e2/AP242 applied_date_and_time_assignment, -- AP203e2/AP242 applied_date_assignment, -- AP203e2/AP242 applied_document_reference, -- AP203e2/AP242 applied_document_usage_constraint_assignment, -- AP203e2/AP242 applied_effectivity_assignment, -- AP203e2/AP242 applied_event_occurrence_assignment, -- AP203e2/AP242 applied_external_identification_assignment, -- AP203e2/AP242 applied_identification_assignment, -- AP203e2/AP242 applied_organization_assignment, -- AP203e2/AP242 applied_organizational_project_assignment, -- AP203e2/AP242 applied_person_and_organization_assignment, -- AP203e2/AP242 applied_security_classification_assignment, -- AP203e2/AP242 approval, -- AP203e2/AP242 approval_person_organization, -- AP203e2/AP242 approval_relationship, -- AP203e2/AP242 approval_status, -- Common assembly_component_usage_substitute, -- AP203e2/AP242 calendar_date, -- AP203e2/AP242 certification, -- AP203e2/AP242 characterized_class, -- AP203e2/AP242 characterized_object, -- AP203e2/AP242 class, -- Common classified_item, -- AP203e2/AP242 configuration_item, -- Common context_dependent_unit, -- AP203e2/AP242 contract, -- Common conversion_based_unit, -- AP203e2/AP242 date_and_time, -- AP203e2/AP242 date_and_time_assignment, -- AP203e2/AP242 date_assignment, -- AP203e2/AP242 derived_unit, -- AP203e2/AP242 descriptive_representation_item, -- Common directed_action, -- AP203e2/AP242 document_file, -- Common document_relationship, -- AP203e2/AP242 document_type, -- AP214/AP242 effectivity, -- Common event_occurrence, -- AP203e2/AP242 executed_action, -- Common feature_definition, -- AP214/AP242 general_feature, -- AP214/AP242 general_property, -- Common general_property_relationship, -- AP203e2/AP242 group, -- AP203e2/AP242 identification_assignment, -- AP203e2/AP242 information_right, -- AP203e2/AP242 information_usage_right, -- AP203e2/AP242 language, -- AP203e2/AP242 material_designation, -- AP214/AP242 measure_representation_item, -- AP203e2/AP242 measure_with_unit, -- AP203e2/AP242 multi_language_attribute_assignment, -- AP203e2/AP242 named_unit, -- AP203e2/AP242 organization, -- AP203e2/AP242 organization_relationship, -- AP203e2/AP242 organizational_address, -- AP203e2/AP242 organizational_project, -- Common organizational_project_relationship, -- AP203e2/AP242 person, -- AP203e2/AP242 person_and_organization_address, -- AP203e2/AP242 plus_minus_tolerance, -- AP214/AP242 process_operation, -- AP214/AP242 product, -- Common product_concept, -- Common product_concept_feature, -- AP214/AP242 product_concept_feature_category, -- AP214/AP242 product_definition, -- Common product_definition_context, -- AP203e2/AP242 product_definition_formation, -- Common product_definition_formation_relationship, -- AP203e2/AP242 product_definition_relationship, -- Common property_definition, -- Common property_definition_representation, -- AP203e2/AP242 representation, -- AP203e2/AP242 representation_context, -- AP203e2/AP242 representation_item, -- AP203e2/AP242 resource_property, -- AP214/AP242 security_classification, -- AP203e2/AP242 security_classification_level, -- AP214/AP242 shape_aspect, -- AP214/AP242 uncertainty_measure_with_unit, -- AP203e2/AP242 usage_association, -- AP203e2/AP242 versioned_action_request); -- Common END_TYPE; -- IN AP203e2/AP242 TYPE classified_item = SELECT (product, product_definition, product_definition_formation); END_TYPE; -- IN AP242 TYPE closed_or_open_shell_select = SELECT (closed_shell, open_shell); END_TYPE; -- IN AP242 TYPE common_datum_list = LIST [2:?] OF datum_reference_element; WHERE WR1: SIZEOF(QUERY (dre <* SELF| (dre\shape_aspect.of_shape <> SELF[1]\shape_aspect.of_shape))) = 0; END_TYPE; -- IN AP242 TYPE compound_inner_area_boundary = SELECT (set_inner_area_boundary); END_TYPE; TYPE compound_item_definition = SELECT (list_representation_item, set_representation_item); END_TYPE; -- IN AP203e2/AP242 TYPE conductance_measure = REAL; END_TYPE; TYPE configuration_design_item = SELECT (product_definition, product_definition_formation); END_TYPE; TYPE configured_effectivity_context_item = SELECT (product_concept_feature_association); END_TYPE; -- DIFF IN AP203e2 TYPE configured_effectivity_item = SELECT (action_relationship, -- AP214/AP242 process_plan, -- AP214/AP242 product_definition, -- Common product_process_plan); -- AP214/AP242 END_TYPE; -- IN AP242 TYPE constraint_group_member = SELECT (explicit_constraint, simultaneous_constraint_group); END_TYPE; -- IN AP203e2/AP242 TYPE constructive_geometry_representation_or_shape_represenation = SELECT (constructive_geometry_representation, shape_representation); END_TYPE; TYPE context_dependent_measure = REAL; END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 -- DIFF IN Deprecated AP203e1 TYPE contract_item = SELECT (action_directive, -- AP203e2/AP242 alternate_product_relationship, -- AP203e2/AP242 directed_action, -- AP203e2/AP242 drawing_revision, -- AP214/AP242 executed_action, -- AP203e2/AP214/AP242 information_usage_right, -- AP203e2/AP242 organization, -- AP203e2/AP242 person_and_organization, -- AP203e2/AP242 product, -- AP203e2/AP242 product_definition_formation); -- Common END_TYPE; TYPE count_measure = NUMBER; END_TYPE; -- IN AP242 TYPE csg_2d_area_select = SELECT (axis2_placement_2d, csg_primitive_solid_2d); END_TYPE; -- IN AP242 TYPE csg_2d_shape_select = SELECT (mapped_item, axis2_placement_2d, csg_solid_2d); END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 TYPE csg_primitive = SELECT (block, -- Common bounded_primitive_2d, -- AP242 right_angular_wedge, -- Common right_circular_cone, -- Common right_circular_cylinder, -- Common sphere, -- Common torus); -- Common END_TYPE; TYPE csg_select = SELECT (boolean_result, csg_primitive); END_TYPE; -- IN AP242 TYPE csg_select_2d = SELECT (bounded_primitive_2d, boolean_result_2d); END_TYPE; -- IN AP242 TYPE current_element_assignment_select = SELECT (modify_element, add_element); END_TYPE; -- DIFF IN AP214 TYPE curve_font_or_scaled_curve_font_select = SELECT (curve_style_font_and_scaling, -- AP203e2/AP242 curve_style_font_select); -- Common END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 TYPE curve_on_surface = SELECT (composite_curve_on_surface, pcurve, surface_curve); END_TYPE; -- IN AP203e2/AP242 TYPE curve_or_annotation_curve_occurrence = SELECT (curve, annotation_curve_occurrence); END_TYPE; -- IN AP242 TYPE curve_or_curve_set = SELECT (curve, geometric_curve_set); END_TYPE; TYPE curve_or_render = SELECT (curve_style, curve_style_rendering); END_TYPE; -- IN AP242 TYPE curve_or_surface_constraint_element = SELECT (curve, surface); END_TYPE; TYPE curve_style_font_select = SELECT (curve_style_font, pre_defined_curve_font, externally_defined_curve_font); END_TYPE; -- IN AP214 TYPE curve_tolerance_deviation = positive_length_measure; END_TYPE; -- IN AP214 TYPE curve_tolerance_parameter = REAL; END_TYPE; -- IN AP242 TYPE curves_or_area = ENUMERATION OF (curves, area); END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 -- DIFF IN Deprecated AP203e1 TYPE date_and_time_item = SELECT (action, -- AP203e2/AP214/AP242 action_directive, -- AP203e2/AP214/AP242 action_method, -- AP214/AP242 action_property, -- AP214/AP242 action_relationship, -- AP214/AP242 action_request_solution, -- AP214/AP242 alternate_product_relationship, -- AP214/AP242 applied_action_assignment, -- AP203e2/AP214/AP242 applied_classification_assignment, -- AP214/AP242 applied_organization_assignment, -- AP203e2/AP214/AP242 applied_person_and_organization_assignment, -- AP203e2/AP214/AP242 applied_security_classification_assignment, -- AP203e2/AP242 approval_person_organization, -- Common approval_status, -- AP214/AP242 assembly_component_usage_substitute, -- AP214/AP242 certification, -- Common change, -- Deprecated AP203e1 change_request, -- Deprecated AP203e1 class, -- AP214/AP242 class_system, -- AP214/AP242 configuration_design, -- AP214/AP242 configuration_item, -- AP214/AP242 configured_effectivity_assignment, -- AP214/AP242 contract, -- Common data_quality_definition, -- AP242 directed_action, -- AP203e2/AP242 document, -- AP203e2/AP242 document_file, -- AP203e2/AP214/AP242 draughting_model, -- AP214/AP242 drawing_revision, -- AP214/AP242 effectivity, -- AP214/AP242 event_occurrence, -- AP203e2/AP214/AP242 executed_action, -- AP203e2/AP214/AP242 general_property, -- AP214/AP242 information_usage_right, -- AP203e2/AP242 material_designation, -- AP214/AP242 mechanical_design_geometric_presentation_representation, -- AP214/AP242 organization_relationship, -- AP214/AP242 organizational_project, -- AP203e2/AP214/AP242 person_and_organization, -- AP214/AP242 presentation_area, -- AP214/AP242 product, -- AP214/AP242 product_concept, -- AP214/AP242 product_concept_feature, -- AP214/AP242 product_concept_feature_association, -- AP214/AP242 product_concept_feature_category, -- AP214/AP242 product_concept_feature_category_usage, -- AP214/AP242 product_definition, -- Common product_definition_formation, -- AP203e2/AP214/AP242 product_definition_formation_relationship, -- AP214/AP242 product_definition_relationship, -- AP203e2/AP214/AP242 product_definition_substitute, -- AP214/AP242 property_definition, -- AP214/AP242 requirement_for_action_resource, -- AP214/AP242 resource_property, -- AP214/AP242 rule_action, -- AP203e2/AP242 security_classification, -- Common security_classification_level, -- AP214/AP242 shape_representation, -- AP214/AP242 start_request, -- Deprecated AP203e1 start_work, -- Deprecated AP203e1 versioned_action_request); -- AP203e2/AP214/AP242 END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 TYPE date_item = SELECT (action, -- Common action_directive, -- Common action_method, -- AP214/AP242 action_property, -- AP214/AP242 action_relationship, -- AP214/AP242 action_request_solution, -- AP214/AP242 alternate_product_relationship, -- AP214/AP242 applied_action_assignment, -- Common applied_classification_assignment, -- AP214/AP242 applied_organization_assignment, -- Common applied_person_and_organization_assignment, -- Common applied_security_classification_assignment, -- AP203e2/AP242 approval_person_organization, -- Common approval_status, -- AP214/AP242 assembly_component_usage_substitute, -- AP214/AP242 certification, -- Common class, -- AP214/AP242 class_system, -- AP214/AP242 configuration_design, -- AP214/AP242 configuration_item, -- AP214/AP242 configured_effectivity_assignment, -- AP214/AP242 contract, -- Common data_quality_definition, -- AP242 directed_action, -- AP203e2/AP242 document, -- AP203e2/AP242 document_file, -- Common draughting_model, -- AP214/AP242 drawing_revision, -- AP214/AP242 effectivity, -- AP214/AP242 event_occurrence, -- Common executed_action, -- Common general_property, -- AP214/AP242 information_usage_right, -- AP203e2/AP242 material_designation, -- AP214/AP242 mechanical_design_geometric_presentation_representation, -- AP214/AP242 organization_relationship, -- AP214/AP242 organizational_project, -- Common person_and_organization, -- AP214/AP242 presentation_area, -- AP214/AP242 product, -- AP214/AP242 product_concept, -- AP214/AP242 product_concept_feature, -- AP214/AP242 product_concept_feature_association, -- AP214/AP242 product_concept_feature_category, -- AP214/AP242 product_concept_feature_category_usage, -- AP214/AP242 product_definition, -- Common product_definition_formation, -- Common product_definition_formation_relationship, -- AP214/AP242 product_definition_relationship, -- Common product_definition_substitute, -- AP214/AP242 property_definition, -- AP214/AP242 requirement_for_action_resource, -- AP214/AP242 resource_property, -- AP214/AP242 security_classification, -- Common security_classification_level, -- AP214/AP242 shape_representation, -- AP214/AP242 versioned_action_request); -- Common END_TYPE; TYPE date_time_or_event_occurrence = SELECT (date_time_select, event_occurrence); END_TYPE; TYPE date_time_select = SELECT (date, date_and_time, local_time); END_TYPE; -- IN AP242 TYPE datum_or_common_datum = SELECT (common_datum_list, datum); END_TYPE; -- IN AP242 TYPE datum_reference_modifier = SELECT (datum_reference_modifier_with_value, simple_datum_reference_modifier); END_TYPE; -- IN AP242 TYPE datum_reference_modifier_type = ENUMERATION OF (circular_or_cylindrical, distance, projected, spherical); END_TYPE; -- IN AP242 TYPE datum_system_or_reference = SELECT (datum_reference, datum_system); END_TYPE; TYPE day_in_month_number = INTEGER; WHERE WR1: (1 <= SELF) AND (SELF <= 31); END_TYPE; -- IN AP203e2/AP242 TYPE day_in_week_number = INTEGER; WHERE WR1: (1 <= SELF) AND (SELF <= 7); END_TYPE; -- IN AP203e2/AP242 TYPE day_in_year_number = INTEGER; WHERE WR1: (1 <= SELF) AND (SELF <= 366); END_TYPE; -- DIFF IN AP214 -- IN AP214/AP242 TYPE defined_glyph_select = SELECT (externally_defined_character_glyph, -- Common pre_defined_character_glyph); -- AP242 END_TYPE; TYPE defined_symbol_select = SELECT (pre_defined_symbol, externally_defined_symbol); END_TYPE; -- DIFF IN AP203e2 TYPE derived_property_select = SELECT (action_property, -- Common property_definition, -- Common resource_property); -- AP214/AP242 END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 TYPE description_attribute_select = SELECT (action_request_solution, -- Common application_context, -- Common approval_role, -- Common configuration_design, -- Common context_dependent_shape_representation, -- Common date_role, -- Common date_time_role, -- Common effectivity, -- Common external_source, -- Common organization_role, -- Common organizational_project, -- AP242 person_and_organization, -- Common person_and_organization_role, -- Common property_definition_representation, -- Common representation); -- Common END_TYPE; TYPE descriptive_measure = STRING; END_TYPE; -- IN AP242 TYPE detailed_report_type = ENUMERATION OF (measured_element, inferior_quality_element); END_TYPE; TYPE dimension_count = INTEGER; WHERE WR1: SELF > 0; END_TYPE; TYPE dimension_extent_usage = ENUMERATION OF (origin, target); END_TYPE; TYPE dimensional_characteristic = SELECT (dimensional_location, dimensional_size); END_TYPE; TYPE direction_count_select = SELECT (u_direction_count, v_direction_count); END_TYPE; -- IN AP203e2/AP242 TYPE document_identifier_assigned_item = SELECT (document); END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 -- DIFF IN Deprecated AP203e1 TYPE document_reference_item = SELECT (action_directive, -- AP214/AP242 action_method, -- AP203e2/AP214/AP242 action_relationship, -- AP214/AP242 applied_action_assignment, -- AP214/AP242 applied_external_identification_assignment, -- AP203e2/AP242 approval, -- AP214/AP242 assembly_component_usage, -- AP203e2/AP242 certification, -- AP214/AP242 characterized_class, -- AP203e2/AP242 characterized_object, -- AP203e2/AP242 class, -- AP214/AP242 class_system, -- AP214/AP242 configuration_design, -- AP214/AP242 configuration_item, -- AP203e2/AP214/AP242 contract, -- AP214/AP242 descriptive_representation_item, -- AP203e2/AP214/AP242 dimensional_size, -- AP203e2/AP242 executed_action, -- AP203e2/AP214/AP242 externally_conditioned_data_quality_criterion, -- AP242 externally_defined_dimension_definition, -- AP203e2/AP214/AP242 externally_defined_item, -- AP203e2/AP242 feature_definition, -- AP214/AP242 general_property, -- AP214/AP242 group, -- AP203e2/AP242 group_relationship, -- AP203e2/AP242 information_right, -- AP203e2/AP242 information_usage_right, -- AP203e2/AP242 material_designation, -- AP203e2/AP214/AP242 measure_representation_item, -- AP203e2/AP242 organization, -- AP214/AP242 organizational_project, -- AP214/AP242 person, -- AP214/AP242 presentation_area, -- AP214/AP242 process_plan, -- AP214/AP242 product, -- AP203e2/AP214/AP242 product_category, -- AP203e2/AP242 product_concept, -- AP214/AP242 product_concept_feature, -- AP214/AP242 product_concept_feature_category, -- AP214/AP242 product_definition, -- Common product_definition_context, -- AP242 product_definition_formation, -- AP203e2/AP214/AP242 product_definition_formation_relationship, -- AP203e2/AP214/AP242 product_definition_process, -- AP214/AP242 product_definition_relationship, -- AP203e2/AP214/AP242 product_definition_substitute, -- AP214/AP242 product_related_product_category, -- AP214/AP242 property_definition, -- AP203e2/AP214/AP242 representation, -- AP203e2/AP214/AP242 representation_item, -- AP203e2/AP242 resource_requirement_type, -- AP214/AP242 retention, -- AP214/AP242 rule_set, -- AP203e2/AP242 security_classification, -- AP214/AP242 shape_aspect, -- Common shape_aspect_relationship, -- AP203e2/AP214/AP242 usage_association, -- AP203e2/AP242 versioned_action_request); -- AP203e2/AP214/AP242 END_TYPE; -- IN AP203e2/AP242 TYPE dose_equivalent_measure = REAL; END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 TYPE draughting_callout_element = SELECT (annotation_curve_occurrence, -- Common annotation_fill_area_occurrence, -- AP242 annotation_symbol_occurrence, -- Common annotation_text_occurrence, -- Common tessellated_annotation_occurrence); -- AP242 END_TYPE; TYPE draughting_model_item_association_select = SELECT (annotation_occurrence, draughting_callout); END_TYPE; -- IN AP242 TYPE draughting_model_item_definition = SELECT (applied_action_assignment, applied_action_method_assignment, applied_action_request_assignment, applied_approval_assignment, applied_certification_assignment, applied_classification_assignment, applied_contract_assignment, applied_date_and_time_assignment, applied_date_assignment, applied_document_reference, applied_document_usage_constraint_assignment, applied_effectivity_assignment, applied_event_occurrence_assignment, applied_external_identification_assignment, applied_group_assignment, applied_identification_assignment, applied_ineffectivity_assignment, applied_name_assignment, applied_organization_assignment, applied_organizational_project_assignment, applied_person_and_organization_assignment, applied_security_classification_assignment, applied_time_interval_assignment, applied_usage_right, dimensional_size, geometric_tolerance, product_definition_relationship, product_definition_shape, property_definition, shape_aspect, shape_aspect_relationship); END_TYPE; -- IN AP203e2/AP242 TYPE draughting_model_item_select = SELECT (mapped_item, styled_item, axis2_placement, camera_model, draughting_callout); END_TYPE; -- IN AP242 TYPE draughting_subfigure_representation_item = SELECT (annotation_occurrence, draughting_callout, axis2_placement); END_TYPE; -- IN AP242 TYPE draughting_symbol_representation_item = SELECT (annotation_curve_occurrence, annotation_symbol_occurrence, annotation_fill_area_occurrence, annotation_text_occurrence, axis2_placement); END_TYPE; TYPE draughting_titled_item = SELECT (drawing_revision, drawing_sheet_revision); END_TYPE; -- IN AP242 TYPE edge_or_curve = SELECT (curve, edge); END_TYPE; -- DIFF IN AP203e2 TYPE effectivity_item = SELECT (action, -- AP214/AP242 action_method, -- AP214/AP242 action_method_relationship, -- AP214/AP242 action_property, -- AP214/AP242 action_relationship, -- AP214/AP242 assembly_component_usage_substitute, -- Common class, -- AP214/AP242 class_system, -- AP214/AP242 configuration_design, -- AP214/AP242 configuration_item, -- AP214/AP242 configured_effectivity_assignment, -- AP214/AP242 document_file, -- AP214/AP242 draughting_model, -- AP214/AP242 drawing_revision, -- AP214/AP242 general_property, -- AP214/AP242 material_designation, -- AP214/AP242 mechanical_design_geometric_presentation_representation, -- AP214/AP242 presentation_area, -- AP214/AP242 product, -- Common product_concept, -- AP214/AP242 product_concept_feature, -- AP214/AP242 product_concept_feature_association, -- AP214/AP242 product_concept_feature_category, -- AP214/AP242 product_concept_feature_category_usage, -- AP214/AP242 product_definition, -- Common product_definition_formation, -- Common product_definition_formation_relationship, -- AP214/AP242 product_definition_relationship, -- Common product_definition_substitute, -- Common property_definition, -- AP214/AP242 requirement_for_action_resource, -- AP214/AP242 resource_property, -- AP214/AP242 security_classification, -- AP214/AP242 shape_aspect, -- AP214/AP242 shape_representation); -- AP214/AP242 END_TYPE; -- IN AP203e2/AP242 TYPE electric_charge_measure = REAL; END_TYPE; TYPE electric_current_measure = REAL; END_TYPE; -- IN AP203e2/AP242 TYPE electric_potential_measure = REAL; END_TYPE; -- IN AP242 TYPE elementary_function_enumerators = ENUMERATION OF (ef_and, ef_or, ef_not, ef_xor, ef_negate_i, ef_add_i, ef_subtract_i, ef_multiply_i, ef_divide_i, ef_mod_i, ef_exponentiate_i, ef_eq_i, ef_ne_i, ef_gt_i, ef_lt_i, ef_ge_i, ef_le_i, ef_abs_i, ef_max_i, ef_min_i, ef_if_i, ef_negate_r, ef_reciprocal_r, ef_add_r, ef_subtract_r, ef_multiply_r, ef_divide_r, ef_mod_r, ef_exponentiate_r, ef_exponentiate_ri, ef_eq_r, ef_ne_r, ef_gt_r, ef_lt_r, ef_ge_r, ef_le_r, ef_abs_r, ef_max_r, ef_min_r, ef_acos_r, ef_asin_r, ef_atan2_r, ef_cos_r, ef_exp_r, ef_ln_r, ef_log2_r, ef_log10_r, ef_sin_r, ef_sqrt_r, ef_tan_r, ef_if_r, ef_form_c, ef_rpart_c, ef_ipart_c, ef_negate_c, ef_reciprocal_c, ef_add_c, ef_subtract_c, ef_multiply_c, ef_divide_c, ef_exponentiate_c, ef_exponentiate_ci, ef_eq_c, ef_ne_c, ef_conjugate_c, ef_abs_c, ef_arg_c, ef_cos_c, ef_exp_c, ef_ln_c, ef_sin_c, ef_sqrt_c, ef_tan_c, ef_if_c, ef_subscript_s, ef_eq_s, ef_ne_s, ef_gt_s, ef_lt_s, ef_ge_s, ef_le_s, ef_subsequence_s, ef_concat_s, ef_size_s, ef_format, ef_value, ef_like, ef_if_s, ef_subscript_b, ef_eq_b, ef_ne_b, ef_gt_b, ef_lt_b, ef_ge_b, ef_le_b, ef_subsequence_b, ef_concat_b, ef_size_b, ef_if_b, ef_subscript_t, ef_eq_t, ef_ne_t, ef_concat_t, ef_size_t, ef_entuple, ef_detuple, ef_insert, ef_remove, ef_if_t, ef_sum_it, ef_product_it, ef_add_it, ef_subtract_it, ef_scalar_mult_it, ef_dot_prod_it, ef_sum_rt, ef_product_rt, ef_add_rt, ef_subtract_rt, ef_scalar_mult_rt, ef_dot_prod_rt, ef_norm_rt, ef_sum_ct, ef_product_ct, ef_add_ct, ef_subtract_ct, ef_scalar_mult_ct, ef_dot_prod_ct, ef_norm_ct, ef_if, ef_ensemble, ef_member_of); END_TYPE; -- IN AP242 TYPE elementary_space_enumerators = ENUMERATION OF (es_numbers, es_complex_numbers, es_reals, es_integers, es_logicals, es_booleans, es_strings, es_binarys, es_maths_spaces, es_maths_functions, es_generics); END_TYPE; -- IN AP203e2/AP242 TYPE energy_measure = REAL; END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 TYPE event_occurrence_item = SELECT (action, -- AP214/AP242 action_directive, -- AP214/AP242 action_method, -- AP214/AP242 action_property, -- AP214/AP242 action_relationship, -- AP214 action_request_solution, -- AP214/AP242 alternate_product_relationship, -- AP214/AP242 applied_action_assignment, -- AP214/AP242 applied_classification_assignment, -- AP214/AP242 applied_person_and_organization_assignment, -- AP214 approval_status, -- AP214 assembly_component_usage_substitute, -- AP214/AP242 certification, -- AP214/AP242 class, -- AP214/AP242 class_system, -- AP214/AP242 configuration_design, -- AP214/AP242 configuration_effectivity, -- AP214/AP242 configuration_item, -- AP214/AP242 configured_effectivity_assignment, -- AP214/AP242 contract, -- AP214/AP242 document_file, -- AP214 draughting_model, -- AP214/AP242 drawing_revision, -- AP214/AP242 executed_action, -- AP214/AP242 general_property, -- AP214/AP242 material_designation, -- AP214/AP242 mechanical_design_geometric_presentation_representation, -- AP214/AP242 organization_relationship, -- AP214/AP242 organizational_project, -- Common person_and_organization, -- AP214/AP242 presentation_area, -- AP214/AP242 product, -- AP214/AP242 product_concept, -- AP214/AP242 product_concept_feature, -- AP214/AP242 product_concept_feature_association, -- AP214/AP242 product_concept_feature_category, -- AP214/AP242 product_concept_feature_category_usage, -- AP214/AP242 product_definition, -- AP214 product_definition_formation, -- AP214/AP242 product_definition_formation_relationship, -- AP214/AP242 product_definition_relationship, -- AP214/AP242 product_definition_substitute, -- AP214/AP242 property_definition, -- AP214/AP242 requirement_for_action_resource, -- AP214/AP242 resource_property, -- AP214/AP242 security_classification, -- AP214 security_classification_level, -- AP214/AP242 shape_representation, -- AP214/AP242 versioned_action_request); -- AP214 END_TYPE; -- IN AP242 TYPE expression_extension_select = SELECT (expression_extension_string, expression_extension_numeric); END_TYPE; -- IN AP242 TYPE extension_options = ENUMERATION OF (eo_none, eo_cont, eo_cont_right, eo_cont_left); END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 TYPE external_identification_item = SELECT (action_relationship, -- AP203e2/AP242 action_request_status, -- AP203e2/AP242 applied_organization_assignment, -- AP203e2/AP242 applied_person_and_organization_assignment, -- AP203e2/AP242 approval, -- AP203e2/AP242 approval_status, -- AP203e2/AP242 assembly_bond_definition, -- AP242 date_and_time_assignment, -- AP203e2/AP242 date_assignment, -- AP203e2/AP242 document_file, -- Common external_source, -- AP203e2/AP242 externally_defined_class, -- Common externally_defined_context_dependent_unit, -- AP203e2/AP242 externally_defined_conversion_based_unit, -- AP203e2/AP242 externally_defined_general_property, -- Common externally_defined_picture_representation_item, -- AP203e2/AP242 externally_defined_representation_item, -- AP203e2/AP242 generic_product_definition_reference, -- AP242 organizational_address, -- AP203e2/AP242 product_definition, -- Common security_classification, -- AP203e2/AP242 trimmed_curve, -- AP203e2/AP242 versioned_action_request); -- AP203e2/AP242 END_TYPE; -- IN AP242 TYPE face_or_surface = SELECT (face, surface); END_TYPE; -- DIFF IN AP214 TYPE fill_area_style_tile_shape_select = SELECT (externally_defined_tile, -- AP203e2/AP242 fill_area_style_tile_coloured_region, -- AP203e2/AP242 fill_area_style_tile_curve_with_style, -- AP203e2/AP242 fill_area_style_tile_symbol_with_style, -- Common pre_defined_tile); -- AP203e2/AP242 END_TYPE; TYPE fill_style_select = SELECT (fill_area_style_colour, externally_defined_tile_style, fill_area_style_tiles, externally_defined_hatch_style, fill_area_style_hatching); END_TYPE; -- DIFF IN AP214 TYPE font_select = SELECT (externally_defined_text_font, -- Common pre_defined_text_font, -- Common text_font); -- AP203e2/AP242 END_TYPE; -- IN AP203e2/AP242 TYPE force_measure = REAL; END_TYPE; TYPE founded_item_select = SELECT (founded_item, representation_item); END_TYPE; -- IN AP203e2/AP242 TYPE frequency_measure = REAL; END_TYPE; -- IN AP203e2/AP242 TYPE generalized_surface_select = SELECT (surface, face_surface, surfaced_open_shell); END_TYPE; -- IN AP242 TYPE geometric_constraint_element = SELECT (point, curve, surface, vector, direction); END_TYPE; -- IN AP203e2/AP242 TYPE geometric_item_specific_usage_select = SELECT (shape_aspect, shape_aspect_relationship); END_TYPE; -- IN AP242 TYPE geometric_model_item = SELECT (connected_face_set, edge_loop, geometric_representation_item); END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 TYPE geometric_set_select = SELECT (curve, point, surface); END_TYPE; -- IN AP242 TYPE geometric_tolerance_modifier = ENUMERATION OF (any_cross_section, common_zone, each_radial_element, free_state, least_material_requirement, line_element, major_diameter, maximum_material_requirement, minor_diameter, not_convex, pitch_diameter, reciprocity_requirement, separate_requirement, statistical_tolerance, tangent_plane); END_TYPE; -- IN AP242 TYPE geometric_tolerance_target = SELECT (dimensional_location, dimensional_size, product_definition_shape, shape_aspect); END_TYPE; -- IN AP214 TYPE group_item = SELECT (geometric_representation_item, mapped_item, product_concept_feature, shape_aspect, styled_item, topological_representation_item); END_TYPE; -- DIFF IN AP203e2 -- IN AP203e2/AP242 TYPE groupable_item = SELECT (applied_identification_assignment, applied_name_assignment, component_feature, geometric_representation_item, group_relationship, mapped_item, package_product_concept_feature, product_concept_feature, product_definition, product_definition_formation, property_definition_representation, representation, representation_item, representation_relationship_with_transformation, shape_aspect, shape_aspect_relationship, shape_representation_relationship, styled_item, topological_representation_item); WHERE WR1: NOT ('STEP_MERGED_CAD_SCHEMA.GROUP' IN TYPEOF(SELF)); END_TYPE; TYPE hour_in_day = INTEGER; WHERE WR1: (0 <= SELF) AND (SELF < 24); END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 TYPE id_attribute_select = SELECT (action, -- Common address, -- Common application_context, -- Common dimensional_size, -- AP242 geometric_tolerance, -- AP242 group, -- Common organizational_project, -- Common product_category, -- Common property_definition, -- Common representation, -- Common shape_aspect, -- Common shape_aspect_relationship); -- Common END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 TYPE identification_item = SELECT (action, -- AP214/AP242 action_directive, -- AP214/AP242 action_method, -- AP214/AP242 action_property, -- AP214/AP242 applied_identification_assignment, -- AP214/AP242 approval_status, -- Common characterized_class, -- AP203e2/AP242 class, -- Common class_system, -- AP214/AP242 configuration_item, -- Common contract, -- AP203e2/AP242 dimensional_size, -- Common document_file, -- Common document_type, -- AP214/AP242 draughting_model, -- AP214/AP242 effectivity, -- AP214/AP242 general_property, -- Common group, -- AP203e2/AP242 group_relationship, -- AP203e2/AP242 information_right, -- AP203e2/AP242 information_usage_right, -- AP203e2/AP242 material_designation, -- AP203e2/AP242 measure_representation_item, -- AP214/AP242 mechanical_design_geometric_presentation_representation, -- AP214/AP242 organization, -- Common organizational_project, -- AP214/AP242 person_and_organization, -- Common presentation_area, -- AP214/AP242 product, -- Common product_category, -- AP203e2/AP242 product_class, -- AP203e2/AP242 product_concept, -- Common product_concept_feature, -- Common product_concept_feature_category, -- AP214/AP242 product_definition, -- Common product_definition_formation, -- Common product_definition_relationship, -- AP214/AP242 product_identification, -- AP203e2/AP242 property_definition, -- AP214/AP242 property_definition_relationship, -- AP214/AP242 representation, -- AP203e2/AP242 rule_set, -- AP203e2/AP242 security_classification, -- AP203e2/AP242 security_classification_level, -- Common shape_aspect_relationship, -- Common shape_representation, -- Common usage_association, -- AP203e2/AP242 versioned_action_request); -- AP214/AP242 END_TYPE; TYPE identifier = STRING; END_TYPE; -- IN AP203e2/AP242 TYPE illuminance_measure = REAL; END_TYPE; -- IN AP203e2/AP242 TYPE inductance_measure = REAL; END_TYPE; -- IN AP242 TYPE input_selector = positive_integer; END_TYPE; -- IN AP242 TYPE inspected_ecdq_element_select = inspected_element_select; END_TYPE; -- IN AP242 TYPE inspected_element_select = SELECT (assembly_component_usage, axis2_placement_3d, b_spline_or_composite_curve_select, b_spline_or_rectangular_composite_surface_select, cartesian_transformation_operator_3d, closed_or_open_shell_select, connected_face_set, curve, direction, edge_curve, edge_loop, face_surface, global_uncertainty_assigned_context, global_unit_assigned_context, group, manifold_solid_brep, placement, point, presentation_layer_assignment, representation_item, styled_item, surface, vertex_point); END_TYPE; -- IN AP242 TYPE inspected_shape_element_select = inspected_element_select; END_TYPE; -- IN AP203e2/AP242 TYPE instance_usage_context_select = SELECT (product_definition_relationship, product_definition_usage); END_TYPE; -- IN AP242 TYPE internal_or_reflected_shape_aspect = SELECT (shape_aspect, identifier); END_TYPE; -- DIFF IN AP214 -- IN AP214/AP242 TYPE interpolation_type = ENUMERATION OF (undefined_interpolation_type, discontinuous_interpolation_type, synchronous_interpolation_type, linear_interpolation_type); END_TYPE; -- DIFF IN AP214 TYPE invisibility_context = SELECT (draughting_model, -- AP203e2/AP242 presentation_representation, -- Common presentation_set); -- Common END_TYPE; TYPE invisible_item = SELECT (draughting_callout, presentation_layer_assignment, representation, styled_item); END_TYPE; -- IN AP203e2/AP242 TYPE ir_usage_item = action_item; END_TYPE; -- IN AP242 TYPE item_identified_representation_usage_definition = SELECT (applied_action_assignment, applied_action_method_assignment, applied_action_request_assignment, applied_approval_assignment, applied_certification_assignment, applied_classification_assignment, applied_contract_assignment, applied_date_and_time_assignment, applied_date_assignment, applied_document_reference, applied_document_usage_constraint_assignment, applied_effectivity_assignment, applied_event_occurrence_assignment, applied_external_identification_assignment, applied_group_assignment, applied_identification_assignment, applied_ineffectivity_assignment, applied_name_assignment, applied_organization_assignment, applied_organizational_project_assignment, applied_person_and_organization_assignment, applied_security_classification_assignment, applied_time_interval_assignment, applied_usage_right, dimensional_size, geometric_tolerance, product_definition_relationship, property_definition, represented_definition); END_TYPE; -- IN AP242 TYPE item_identified_representation_usage_select = SELECT (representation_item, list_representation_item, set_representation_item); END_TYPE; -- DIFF IN AP214 -- IN AP214/AP242 TYPE kinematic_analysis_definition = SELECT (interpolated_configuration_sequence, -- Common prescribed_path); -- AP242 END_TYPE; -- IN AP214 TYPE kinematic_frame_background = SELECT (point, curve, surface); END_TYPE; -- IN AP242 TYPE kinematic_link_representation_items = SELECT (curve, point, rigid_placement, surface); END_TYPE; -- IN AP214/AP242 TYPE kinematic_result = SELECT (interpolated_configuration_sequence, resulting_path); END_TYPE; -- IN AP242 TYPE kinematic_topology_representation_select = SELECT (kinematic_topology_structure, kinematic_topology_directed_structure, kinematic_topology_network_structure); END_TYPE; TYPE knot_type = ENUMERATION OF (uniform_knots, quasi_uniform_knots, piecewise_bezier_knots, unspecified); END_TYPE; TYPE label = STRING; END_TYPE; -- IN AP214 TYPE language_item = SELECT (representation); END_TYPE; TYPE layered_item = SELECT (presentation_representation, representation_item); END_TYPE; TYPE length_measure = REAL; END_TYPE; TYPE limit_condition = ENUMERATION OF (maximum_material_condition, least_material_condition, regardless_of_feature_size); END_TYPE; -- IN AP242 TYPE linear_geometry_constraint_element = SELECT (line, plane, direction, vector); END_TYPE; -- IN AP242 TYPE link_or_shape_representation = SELECT (kinematic_link_representation, shape_representation); END_TYPE; -- DIFF IN AP214 TYPE list_of_reversible_topology_item = LIST [0:?] OF reversible_topology_item; END_TYPE; TYPE list_representation_item = LIST [1:?] OF representation_item; END_TYPE; -- IN AP242 TYPE location_in_aggregate_item = LIST [1:?] OF integer_representation_item; END_TYPE; -- IN AP242 TYPE location_of_extreme_value_select = SELECT (inspected_shape_element_select, b_spline_surface_knot_locator, b_spline_curve_knot_locator, b_spline_curve_segment, b_spline_surface_strip, b_spline_surface_patch, composite_curve_transition_locator, rectangular_composite_surface_transition_locator, boundary_curve_of_b_spline_or_rectangular_composite_surface, oriented_edge, face_bound, point_on_edge_curve, point_on_face_surface, subedge, subface); END_TYPE; -- IN AP203e2/AP242 TYPE luminous_flux_measure = REAL; END_TYPE; TYPE luminous_intensity_measure = REAL; END_TYPE; -- IN AP203e2/AP242 TYPE magnetic_flux_density_measure = REAL; END_TYPE; -- IN AP203e2/AP242 TYPE magnetic_flux_measure = REAL; END_TYPE; TYPE marker_select = SELECT (marker_type, pre_defined_marker); END_TYPE; TYPE marker_type = ENUMERATION OF (dot, x, plus, asterisk, ring, square, triangle); END_TYPE; TYPE mass_measure = REAL; END_TYPE; -- IN AP242 TYPE maths_atom = SELECT (maths_simple_atom, maths_enum_atom); END_TYPE; -- IN AP242 TYPE maths_binary = BINARY; END_TYPE; -- IN AP242 TYPE maths_boolean = BOOLEAN; END_TYPE; -- IN AP242 TYPE maths_enum_atom = SELECT (elementary_space_enumerators, ordering_type, elementary_function_enumerators, open_closed, space_constraint_type, repackage_options, extension_options); END_TYPE; -- IN AP242 TYPE maths_expression = SELECT (atom_based_value, maths_tuple, generic_expression); END_TYPE; -- IN AP242 TYPE maths_function_select = SELECT (maths_function, elementary_function_enumerators); END_TYPE; -- IN AP242 TYPE maths_integer = INTEGER; END_TYPE; -- IN AP242 TYPE maths_logical = LOGICAL; END_TYPE; -- IN AP242 TYPE maths_number = NUMBER; END_TYPE; -- IN AP242 TYPE maths_real = REAL; END_TYPE; -- IN AP242 TYPE maths_simple_atom = SELECT (maths_number, maths_real, maths_integer, maths_logical, maths_boolean, maths_string, maths_binary); END_TYPE; -- IN AP242 TYPE maths_space_or_function = SELECT (maths_space, maths_function); END_TYPE; -- IN AP242 TYPE maths_string = STRING; END_TYPE; -- IN AP242 TYPE maths_tuple = LIST [0:?] OF maths_value; END_TYPE; -- IN AP242 TYPE maths_value = SELECT (atom_based_value, maths_tuple, generic_expression); WHERE constancy: NOT ('GENERIC_EXPRESSION' IN stripped_typeof(SELF)) OR expression_is_constant(SELF); END_TYPE; -- DIFF IN AP214 TYPE measure_value = SELECT (absorbed_dose_measure, -- AP203e2/AP242 acceleration_measure, -- AP203e2/AP242 amount_of_substance_measure, -- Common area_measure, -- Common capacitance_measure, -- AP203e2/AP242 celsius_temperature_measure, -- Common conductance_measure, -- AP203e2/AP242 context_dependent_measure, -- Common count_measure, -- Common descriptive_measure, -- Common dose_equivalent_measure, -- AP203e2/AP242 electric_charge_measure, -- AP203e2/AP242 electric_current_measure, -- Common electric_potential_measure, -- AP203e2/AP242 energy_measure, -- AP203e2/AP242 force_measure, -- AP203e2/AP242 frequency_measure, -- AP203e2/AP242 illuminance_measure, -- AP203e2/AP242 inductance_measure, -- AP203e2/AP242 length_measure, -- Common luminous_flux_measure, -- AP203e2/AP242 luminous_intensity_measure, -- Common magnetic_flux_density_measure, -- AP203e2/AP242 magnetic_flux_measure, -- AP203e2/AP242 mass_measure, -- Common non_negative_length_measure, -- Common numeric_measure, -- Common parameter_value, -- Common plane_angle_measure, -- Common positive_length_measure, -- Common positive_plane_angle_measure, -- Common positive_ratio_measure, -- Common power_measure, -- AP203e2/AP242 pressure_measure, -- AP203e2/AP242 radioactivity_measure, -- AP203e2/AP242 ratio_measure, -- Common resistance_measure, -- AP203e2/AP242 solid_angle_measure, -- Common thermodynamic_temperature_measure, -- Common time_measure, -- Common velocity_measure, -- AP203e2/AP242 volume_measure); -- Common END_TYPE; -- IN AP242 TYPE measured_value_select = SELECT (boolean_value, measure_value, plane_angle_and_ratio_pair, plane_angle_and_length_pair); END_TYPE; -- IN AP203e2/AP242 TYPE mechanical_design_and_draughting_relationship_select = SELECT (draughting_model, mechanical_design_geometric_presentation_representation, mechanical_design_presentation_representation_with_draughting, mechanical_design_shaded_presentation_representation, shape_representation); END_TYPE; -- IN AP203e2/AP242 TYPE mechanical_design_geometric_presentation_area_items = SELECT (axis2_placement, mapped_item); END_TYPE; -- IN AP203e2/AP242 TYPE mechanical_design_geometric_presentation_representation_items = SELECT (axis2_placement, camera_model_d3, mapped_item, styled_item); END_TYPE; -- IN AP242 TYPE mechanical_design_shaded_presentation_area_items = SELECT (axis2_placement, mapped_item); END_TYPE; -- IN AP242 TYPE mechanical_design_shaded_presentation_representation_items = SELECT (axis2_placement, camera_model_d3, mapped_item, styled_item); END_TYPE; -- IN AP203e2/AP242 TYPE message = STRING; END_TYPE; TYPE minute_in_hour = INTEGER; WHERE WR1: (0 <= SELF) AND (SELF <= 59); END_TYPE; TYPE month_in_year_number = INTEGER; WHERE WR1: (1 <= SELF) AND (SELF <= 12); END_TYPE; -- IN AP214 TYPE motion_parameter_measure = SELECT (parameter_value, measure_with_unit); END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 TYPE multi_language_attribute_item = SELECT (action, -- AP214/AP242 action_directive, -- AP214/AP242 action_method, -- AP214/AP242 action_property, -- AP214/AP242 action_relationship, -- AP214/AP242 actuated_kinematic_pair, -- AP242 alternate_product_relationship, -- Common application_context, -- Common applied_certification_assignment, -- AP203e2/AP242 applied_document_reference, -- AP203e2/AP242 applied_document_usage_constraint_assignment, -- AP203e2/AP242 applied_external_identification_assignment, -- AP203e2/AP242 applied_identification_assignment, -- AP203e2/AP242 applied_organizational_project_assignment, -- AP203e2/AP242 approval, -- AP203e2/AP242 approval_relationship, -- Common approval_status, -- AP203e2/AP242 assembly_component_usage_substitute, -- Common attribute_value_assignment, -- AP203e2/AP242 certification, -- Common certification_type, -- AP203e2/AP242 colour, -- AP203e2/AP242 configuration_design, -- Common configuration_item, -- Common contract, -- Common data_environment, -- AP214/AP242 date_role, -- Common date_time_role, -- Common descriptive_representation_item, -- Common document_relationship, -- Common document_usage_role, -- AP203e2/AP242 draughting_title, -- AP214/AP242 effectivity, -- Common effectivity_relationship, -- Common event_occurrence, -- Common external_source, -- Common general_property, -- Common general_property_relationship, -- Common geometric_representation_item, -- Common geometric_tolerance, -- Common group, -- AP214/AP242 group_relationship, -- AP214/AP242 identification_role, -- Common information_right, -- AP203e2/AP242 information_usage_right, -- AP203e2/AP242 kinematic_pair, -- AP214/AP242 make_from_usage_option, -- AP203e2/AP242 mapped_item, -- Common name_assignment, -- AP214/AP242 object_role, -- AP203e2/AP242 organization_relationship, -- Common organization_role, -- Common organizational_project, -- Common organizational_project_relationship, -- Common organizational_project_role, -- AP203e2/AP242 pair_actuator, -- AP214 person_and_organization, -- AP203e2/AP242 person_and_organization_role, -- Common presentation_layer_assignment, -- AP214/AP242 process_product_association, -- AP214/AP242 product, -- Common product_concept, -- Common product_concept_feature, -- AP214/AP242 product_concept_feature_association, -- AP214/AP242 product_concept_relationship, -- Common product_definition, -- Common product_definition_context, -- AP203e2/AP242 product_definition_formation, -- Common product_definition_formation_relationship, -- Common product_definition_relationship, -- Common product_definition_shape, -- AP203e2/AP242 product_definition_substitute, -- AP214/AP242 product_related_product_category, -- Common property_definition, -- Common property_definition_relationship, -- AP214/AP242 representation, -- Common representation_relationship, -- Common requirement_for_action_resource, -- AP214/AP242 resource_property, -- AP214/AP242 resource_requirement_type, -- AP214/AP242 security_classification, -- Common security_classification_assignment, -- AP203e2/AP242 shape_aspect, -- Common shape_aspect_relationship, -- Common shape_representation, -- AP203e2/AP242 styled_item, -- AP214/AP242 time_interval_role, -- Common topological_representation_item, -- Common uncertainty_measure_with_unit, -- Common uncertainty_qualifier, -- AP214/AP242 usage_association, -- AP203e2/AP242 versioned_action_request, -- AP214/AP242 versioned_action_request_relationship); -- AP214/AP242 END_TYPE; -- IN AP242 TYPE multi_or_next_assembly_usage_occurrence = SELECT (multi_level_reference_designator, next_assembly_usage_occurrence); END_TYPE; TYPE name_attribute_select = SELECT (action_request_solution, address, configuration_design, context_dependent_shape_representation, derived_unit, effectivity, person_and_organization, product_definition, product_definition_substitute, property_definition_representation); END_TYPE; -- DIFF IN AP214 TYPE name_item = SELECT (assembly_component_usage, -- AP203e2/AP242 external_class_library, -- AP203e2/AP242 group, -- AP203e2/AP242 group_relationship, -- AP203e2/AP242 kinematic_joint, -- AP214 kinematic_link, -- AP214 kinematic_structure, -- AP214 product, -- AP203e2/AP242 product_definition); -- AP203e2/AP242 END_TYPE; TYPE non_negative_length_measure = length_measure; WHERE WR1: SELF >= 0.0; END_TYPE; -- IN AP203e2/AP242 TYPE nonnegative_integer = INTEGER; WHERE nonnegativity: SELF >= 0; END_TYPE; TYPE null_style = ENUMERATION OF (null); END_TYPE; TYPE numeric_measure = NUMBER; END_TYPE; -- IN AP242 TYPE one_or_two = positive_integer; WHERE in_range: (SELF = 1) OR (SELF = 2); END_TYPE; -- IN AP242 TYPE open_closed = ENUMERATION OF (open, closed); END_TYPE; -- IN AP242 TYPE ordering_type = ENUMERATION OF (by_rows, by_columns); END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 TYPE organization_item = SELECT (action, -- Common action_directive, -- Common action_method, -- AP214/AP242 action_property, -- AP214/AP242 action_relationship, -- AP214/AP242 action_request_solution, -- AP214/AP242 alternate_product_relationship, -- Common applied_action_assignment, -- Common applied_classification_assignment, -- Common applied_identification_assignment, -- Common applied_organization_assignment, -- AP214/AP242 applied_person_and_organization_assignment, -- AP214/AP242 applied_security_classification_assignment, -- AP203e2/AP242 approval, -- Common approval_status, -- AP214/AP242 assembly_component_usage_substitute, -- Common certification, -- Common class, -- Common class_system, -- AP214/AP242 configuration_design, -- AP214/AP242 configuration_effectivity, -- AP214/AP242 configuration_item, -- Common configured_effectivity_assignment, -- AP214/AP242 contract, -- Common data_quality_definition, -- AP242 document_file, -- Common document_type, -- AP214/AP242 draughting_model, -- AP214/AP242 drawing_revision, -- AP214/AP242 effectivity, -- AP214/AP242 event_occurrence, -- AP214/AP242 executed_action, -- Common general_property, -- Common information_usage_right, -- AP203e2/AP242 material_designation, -- AP214/AP242 mechanical_design_geometric_presentation_representation, -- AP214/AP242 organization, -- AP214/AP242 organization_relationship, -- AP214/AP242 organizational_project, -- Common person_and_organization, -- AP214/AP242 presentation_area, -- AP214/AP242 product, -- Common product_concept, -- AP214/AP242 product_concept_feature, -- AP214/AP242 product_concept_feature_association, -- AP214/AP242 product_concept_feature_category, -- AP214/AP242 product_concept_feature_category_usage, -- AP214/AP242 product_definition, -- Common product_definition_formation, -- Common product_definition_formation_relationship, -- Common product_definition_relationship, -- AP214/AP242 product_definition_substitute, -- AP214/AP242 property_definition, -- Common requirement_for_action_resource, -- AP214/AP242 resource_property, -- AP214/AP242 rule_action, -- AP203e2/AP242 security_classification, -- Common security_classification_level, -- AP214/AP242 shape_representation, -- Common versioned_action_request); -- Common END_TYPE; -- IN AP203e2/AP242 TYPE orientation_basis_select = SELECT (axis2_placement_3d, min_and_major_ply_orientation_basis); END_TYPE; -- IN AP242 TYPE parallel_offset_type = ENUMERATION OF (curve_2d_offset, curve_3d_offset, surface_offset); END_TYPE; TYPE parameter_value = REAL; END_TYPE; -- IN AP242 TYPE path_or_composite_curve = SELECT (composite_curve, path); END_TYPE; TYPE pcurve_or_surface = SELECT (pcurve, surface); END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 -- DIFF IN Deprecated AP203e1 TYPE person_and_organization_item = SELECT (action, -- AP203e2/AP214/AP242 action_directive, -- AP203e2/AP214/AP242 action_method, -- AP214/AP242 action_property, -- AP214/AP242 action_relationship, -- AP214/AP242 action_request_solution, -- AP214/AP242 alternate_product_relationship, -- AP203e2/AP214/AP242 applied_action_assignment, -- AP203e2/AP214/AP242 applied_classification_assignment, -- AP203e2/AP214/AP242 applied_identification_assignment, -- AP203e2/AP242 applied_organization_assignment, -- AP214/AP242 applied_person_and_organization_assignment, -- AP214/AP242 applied_security_classification_assignment, -- AP203e2/AP242 approval, -- AP203e2/AP242 approval_status, -- AP214/AP242 assembly_component_usage_substitute, -- AP203e2/AP214/AP242 certification, -- AP203e2/AP214/AP242 change, -- Deprecated AP203e1 change_request, -- Deprecated AP203e1 class, -- AP214/AP242 class_system, -- AP214/AP242 configuration_design, -- AP214/AP242 configuration_effectivity, -- AP214/AP242 configuration_item, -- Common configured_effectivity_assignment, -- AP214/AP242 contract, -- Common data_quality_definition, -- AP242 document_file, -- AP203e2/AP214/AP242 document_type, -- AP214/AP242 draughting_model, -- AP214/AP242 drawing_revision, -- AP214/AP242 event_occurrence, -- AP214/AP242 executed_action, -- AP203e2/AP214/AP242 general_property, -- AP203e2/AP214/AP242 information_usage_right, -- AP203e2/AP242 material_designation, -- AP214/AP242 mechanical_design_geometric_presentation_representation, -- AP214/AP242 organization, -- AP214/AP242 organization_relationship, -- AP214/AP242 organizational_project, -- AP203e2/AP214/AP242 person_and_organization, -- AP203e2/AP214/AP242 presentation_area, -- AP214/AP242 product, -- Common product_concept, -- AP214/AP242 product_concept_feature, -- AP214/AP242 product_concept_feature_association, -- AP214/AP242 product_concept_feature_category, -- AP214/AP242 product_concept_feature_category_usage, -- AP214/AP242 product_definition, -- Common product_definition_formation, -- Common product_definition_formation_relationship, -- AP203e2/AP214/AP242 product_definition_relationship, -- AP214/AP242 product_definition_substitute, -- AP214/AP242 property_definition, -- AP203e2/AP214/AP242 requirement_for_action_resource, -- AP214/AP242 resource_property, -- AP214/AP242 rule_action, -- AP203e2/AP242 security_classification, -- Common security_classification_level, -- AP214/AP242 shape_representation, -- AP203e2/AP214/AP242 start_request, -- Deprecated AP203e1 start_work, -- Deprecated AP203e1 versioned_action_request); -- AP203e2/AP214/AP242 END_TYPE; TYPE person_organization_select = SELECT (person, organization, person_and_organization); END_TYPE; -- IN AP203e2/AP242 TYPE picture_representation_item_select = SELECT (styled_item, planar_box, axis2_placement_2d); END_TYPE; -- IN AP242 TYPE planar_curve_select = SELECT (line, conic, trimmed_curve, pcurve, surface_curve); WHERE WR1: SELF\geometric_representation_item.dim = 3; WR2: check_curve_planarity(SELF); END_TYPE; TYPE plane_angle_measure = REAL; END_TYPE; TYPE plane_or_planar_box = SELECT (plane, planar_box); END_TYPE; -- IN AP203e2/AP242 TYPE point_and_vector_member = SELECT (point, direction); END_TYPE; -- IN AP203e2/AP242 TYPE point_and_vector_members = LIST [2:3] OF point_and_vector_member; END_TYPE; -- IN AP242 TYPE point_curve_or_surface_constraint_element = SELECT (point, curve, surface); END_TYPE; -- IN AP203e2/AP242 TYPE point_path_members = LIST [1:?] OF point_and_vector; END_TYPE; -- IN AP242 TYPE point_placement_shape_representation_item = SELECT (compound_representation_item, mapped_item, axis2_placement_3d); END_TYPE; -- IN AP203e2/AP242 TYPE positive_integer = nonnegative_integer; WHERE positivity: SELF > 0; END_TYPE; TYPE positive_length_measure = non_negative_length_measure; WHERE WR1: SELF > 0.0; END_TYPE; TYPE positive_plane_angle_measure = plane_angle_measure; WHERE WR1: SELF > 0.0; END_TYPE; TYPE positive_ratio_measure = ratio_measure; WHERE WR1: SELF > 0.0; END_TYPE; -- IN AP203e2/AP242 TYPE power_measure = REAL; END_TYPE; -- IN AP242 TYPE preferred_ordering = ENUMERATION OF (extremity_order, detected_order); END_TYPE; TYPE preferred_surface_curve_representation = ENUMERATION OF (curve_3d, pcurve_s1, pcurve_s2); END_TYPE; TYPE presentable_text = STRING; WHERE WR1: control_characters_free(SELF); END_TYPE; TYPE presentation_representation_select = SELECT (presentation_representation, presentation_set); END_TYPE; TYPE presentation_size_assignment_select = SELECT (presentation_view, presentation_area, area_in_set); END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 TYPE presentation_style_select = SELECT (approximation_tolerance, -- AP214 curve_style, -- Common externally_defined_style, -- AP214/AP242 fill_area_style, -- Common null_style, -- Common point_style, -- Common pre_defined_presentation_style, -- AP214 surface_style_usage, -- Common symbol_style, -- Common text_style); -- Common END_TYPE; TYPE presented_item_select = SELECT (action, action_method, action_relationship, product_concept, product_concept_feature, product_concept_feature_category, product_definition, product_definition_formation, product_definition_relationship); END_TYPE; -- IN AP203e2/AP242 TYPE pressure_measure = REAL; END_TYPE; -- IN AP242 TYPE previous_element_assignment_select = SELECT (modify_element, delete_element); END_TYPE; -- IN AP203e2/AP242 TYPE product_definition_or_assembly_relationship = SELECT (assembly_component_usage, product_definition); END_TYPE; -- IN AP203e2/AP242 TYPE product_definition_or_breakdown_element_usage = SELECT (product_definition, product_definition_usage); END_TYPE; -- IN AP203e2/AP242 TYPE product_definition_or_product_definition_relationship = SELECT (product_definition, product_definition_usage); END_TYPE; -- IN AP242 TYPE product_definition_or_reference = SELECT (product_definition, generic_product_definition_reference); END_TYPE; TYPE product_or_formation_or_definition = SELECT (product, product_definition_formation, product_definition); END_TYPE; -- IN AP214 TYPE product_or_presentation_space = ENUMERATION OF (product_shape_space, presentation_area_space); END_TYPE; -- IN AP242 TYPE product_space = SELECT (uniform_product_space, listed_product_space); END_TYPE; -- DIFF IN AP203e2 TYPE project_item = SELECT (assembly_component_usage, -- AP214/AP242 configuration_item, -- AP214/AP242 executed_action, -- Common product, -- AP214/AP242 product_concept, -- Common product_definition, -- AP214/AP242 product_definition_formation); -- AP214/AP242 END_TYPE; -- IN AP214/AP242 TYPE property_or_shape_select = SELECT (property_definition, shape_definition); END_TYPE; -- IN AP242 TYPE property_variable_rep_select = SELECT (dimensional_size, representation); END_TYPE; -- IN AP242 TYPE radial_geometry_constraint_element = SELECT (circle, cylindrical_surface, conical_surface, spherical_surface, right_circular_cylinder, right_circular_cone, sphere); END_TYPE; -- IN AP203e2/AP242 TYPE radioactivity_measure = REAL; END_TYPE; TYPE ratio_measure = REAL; END_TYPE; -- IN AP242 TYPE real_interval = SELECT (real_interval_from_min, real_interval_to_max, finite_real_interval, elementary_space); WHERE WR1: NOT ('ELEMENTARY_SPACE' IN stripped_typeof(SELF)) OR (SELF\elementary_space.space_id = es_reals); END_TYPE; TYPE rendering_properties_select = SELECT (surface_style_reflectance_ambient, surface_style_transparent); END_TYPE; -- IN AP242 TYPE repackage_options = ENUMERATION OF (ro_nochange, ro_wrap_as_tuple, ro_unwrap_tuple); END_TYPE; TYPE represented_definition = SELECT (general_property, property_definition, property_definition_relationship, shape_aspect, shape_aspect_relationship); END_TYPE; -- DIFF IN AP203e2 -- IN AP203e2/AP242 TYPE requirement_assigned_item = SELECT (assembly_joint, -- AP242 configuration_item, -- Common descriptive_representation_item, -- Common product, -- Common product_class, -- Common product_definition, -- Common product_definition_formation, -- Common product_definition_relationship, -- Common representation, -- Common shape_aspect); -- Common END_TYPE; -- IN AP203e2/AP242 TYPE requirement_satisfaction_item = SELECT (requirement_assigned_item); END_TYPE; -- IN AP203e2/AP242 TYPE requirement_source_item = SELECT (characterized_object, group, group_relationship, product, product_definition, product_definition_formation, product_definition_relationship, shape_aspect); END_TYPE; -- IN AP203e2/AP242 TYPE resistance_measure = REAL; END_TYPE; TYPE reversible_topology = SELECT (reversible_topology_item, list_of_reversible_topology_item, set_of_reversible_topology_item); END_TYPE; TYPE reversible_topology_item = SELECT (edge, path, face, face_bound, closed_shell, open_shell); END_TYPE; -- DIFF IN AP214 -- IN AP214/AP242 TYPE rigid_placement = SELECT (axis2_placement_3d, -- Common su_parameters); -- AP242 END_TYPE; TYPE role_select = SELECT (action_assignment, action_request_assignment, approval_assignment, approval_date_time, certification_assignment, contract_assignment, document_reference, effectivity_assignment, group_assignment, name_assignment, security_classification_assignment); END_TYPE; -- IN AP214 TYPE rotational_range_measure = SELECT (plane_angle_measure, unlimited_range); END_TYPE; -- IN AP203e2/AP242 TYPE rule_superseded_item = SELECT (product_definition_formation); END_TYPE; TYPE second_in_minute = REAL; WHERE WR1: (0 <= SELF) AND (SELF <= 60.0); END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 -- DIFF IN Deprecated AP203e1 TYPE security_classification_item = SELECT (action, -- AP214/AP242 action_directive, -- AP214/AP242 action_property, -- AP214/AP242 applied_action_assignment, -- AP214/AP242 assembly_component_usage, -- AP203e2/AP242/Deprecated AP203e1 assembly_component_usage_substitute, -- AP214/AP242 class_system, -- AP214/AP242 configuration_design, -- AP214/AP242 configuration_effectivity, -- AP214/AP242 configured_effectivity_assignment, -- AP214/AP242 document, -- AP203e2/AP242 document_file, -- AP203e2/AP214/AP242 draughting_model, -- AP214/AP242 drawing_revision, -- AP214/AP242 executed_action, -- AP214/AP242 general_property, -- AP214/AP242 make_from_usage_option, -- AP203e2/AP242 material_designation, -- AP214/AP242 mechanical_design_geometric_presentation_representation, -- AP214/AP242 organizational_project, -- AP214/AP242 presentation_area, -- AP214/AP242 product, -- AP203e2/AP214/AP242 product_concept, -- AP214/AP242 product_concept_feature, -- AP214/AP242 product_concept_feature_category, -- AP214/AP242 product_definition, -- AP203e2/AP214/AP242 product_definition_formation, -- Common product_definition_relationship, -- AP214/AP242 product_definition_usage, -- AP203e2/AP242 property_definition, -- AP214/AP242 resource_property, -- AP214/AP242 shape_representation, -- AP214/AP242 versioned_action_request); -- AP214/AP242 END_TYPE; -- IN AP242 TYPE set_inner_area_boundary = SET [1:?] OF bounded_primitive_2d; END_TYPE; -- DIFF IN AP214 TYPE set_of_reversible_topology_item = SET [0:?] OF reversible_topology_item; END_TYPE; TYPE set_representation_item = SET [1:?] OF representation_item; END_TYPE; TYPE shading_curve_method = ENUMERATION OF (constant_colour, linear_colour); END_TYPE; TYPE shading_surface_method = ENUMERATION OF (constant_shading, colour_shading, dot_shading, normal_shading); END_TYPE; -- IN AP242 TYPE shape_data_quality_assessment_specification_select = SELECT (shape_data_quality_assessment_by_logical_test, shape_data_quality_assessment_by_numerical_test); END_TYPE; -- IN AP242 TYPE shape_data_quality_value_limit_type_select = SELECT (shape_data_quality_value_range, shape_data_quality_value_limit); END_TYPE; TYPE shape_definition = SELECT (product_definition_shape, shape_aspect, shape_aspect_relationship); END_TYPE; -- IN AP242 TYPE shape_dimension_representation_item = SELECT (compound_representation_item, descriptive_representation_item, measure_representation_item, placement); END_TYPE; -- IN AP242 TYPE shape_model = SELECT (constructive_geometry_representation, shape_representation); END_TYPE; -- IN AP242 TYPE shape_representation_item = SELECT (geometric_representation_item, topological_representation_item); END_TYPE; -- IN AP242 TYPE shape_representation_with_parameters_items = SELECT (descriptive_representation_item, direction, measure_representation_item, placement); END_TYPE; -- DIFF IN AP214 TYPE shell = SELECT (closed_shell, -- Common open_shell, -- Common vertex_shell, -- AP203e2/AP242 wire_shell); -- AP203e2/AP242 END_TYPE; TYPE si_prefix = ENUMERATION OF (exa, peta, tera, giga, mega, kilo, hecto, deca, deci, centi, milli, micro, nano, pico, femto, atto); END_TYPE; -- CASE DIFF IN AP214 -- CASE DIFF IN AP203e2 TYPE si_unit_name = ENUMERATION OF (metre, gram, second, ampere, kelvin, mole, candela, radian, steradian, hertz, newton, pascal, joule, watt, coulomb, volt, farad, ohm, siemens, weber, tesla, henry, degree_Celsius, lumen, lux, becquerel, gray, sievert); END_TYPE; -- IN AP242 TYPE simple_datum_reference_modifier = ENUMERATION OF (any_cross_section, any_longitudinal_section, basic, contacting_feature, degree_of_freedom_constraint_u, degree_of_freedom_constraint_v, degree_of_freedom_constraint_w, degree_of_freedom_constraint_x, degree_of_freedom_constraint_y, degree_of_freedom_constraint_z, distance_variable, free_state, least_material_requirement, line, major_diameter, maximum_material_requirement, minor_diameter, orientation, pitch_diameter, plane, point, translation); END_TYPE; TYPE size_select = SELECT (positive_length_measure, measure_with_unit, descriptive_measure); END_TYPE; -- DIFF IN AP203e2 -- IN AP203e2/AP242 TYPE sketch_basis_select = SELECT (curve_bounded_surface, -- Common face_surface, -- Common planar_curve_select); -- AP242 END_TYPE; -- IN AP242 TYPE sketch_element_select = SELECT (curve, point); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.GEOMETRIC_REPRESENTATION_ITEM' IN TYPEOF(SELF); END_TYPE; -- IN AP242 TYPE sketch_type_select = SELECT (neutral_sketch_representation, positioned_sketch, subsketch); END_TYPE; TYPE solid_angle_measure = REAL; END_TYPE; TYPE source = ENUMERATION OF (made, bought, not_known); END_TYPE; -- DIFF IN AP214 TYPE source_item = SELECT (identifier, -- Common message); -- AP203e2/AP242 END_TYPE; -- IN AP242 TYPE space_constraint_type = ENUMERATION OF (sc_equal, sc_subspace, sc_member); END_TYPE; -- IN AP214/AP242 TYPE spatial_rotation = SELECT (ypr_rotation, rotation_about_direction); END_TYPE; -- IN AP214 TYPE specified_item = SELECT (drawing_revision); END_TYPE; -- IN AP242 TYPE spherical_pair_select = SELECT (spherical_pair, spherical_pair_with_pin); END_TYPE; -- IN AP203e2/AP242 TYPE start_request_item = SELECT (product_definition_formation); END_TYPE; -- IN AP242 TYPE statistical_value_type = ENUMERATION OF (number_of_inspected_instances, number_of_quality_defects_detected); END_TYPE; -- IN AP203e2/AP242 TYPE string_representation_item_select = SELECT (descriptive_representation_item, included_text_block, structured_text_composition); END_TYPE; -- DIFF IN AP214 TYPE style_context_select = SELECT (group, -- Common presentation_layer_assignment, -- Common presentation_set, -- Common representation, -- Common representation_item, -- Common representation_relationship, -- AP203e2/AP242 shape_representation_relationship); -- AP214 END_TYPE; -- IN AP242 DIS Fixes TYPE styled_item_target = SELECT (representation_item, -- relax select to allow existing topology usage representation); END_TYPE; -- IN AP242 TYPE summary_report_type = ENUMERATION OF (unspecified, conclusion_only, number_of_quality_defects, number_of_inspections_and_conclusion, full_statistics); END_TYPE; -- IN AP214/AP242 TYPE supported_item = SELECT (action_directive, action, action_method); END_TYPE; -- IN AP242 TYPE surface_boundary_type = ENUMERATION OF (u_parameter_min, v_parameter_min, u_parameter_max, v_parameter_max); END_TYPE; -- IN AP242 TYPE surface_model = SELECT (face_based_surface_model, shell_based_surface_model); END_TYPE; -- IN AP242 TYPE surface_or_solid_model = SELECT (surface_model, solid_model); END_TYPE; TYPE surface_side = ENUMERATION OF (positive, negative, both); END_TYPE; -- DIFF IN AP214 TYPE surface_side_style_select = SELECT (pre_defined_surface_side_style, -- AP203e2/AP242 surface_side_style); -- Common END_TYPE; TYPE surface_style_element_select = SELECT (surface_style_fill_area, surface_style_boundary, surface_style_silhouette, surface_style_segmentation_curve, surface_style_control_grid, surface_style_parameter_line, surface_style_rendering); END_TYPE; -- IN AP214 TYPE surface_tolerance_deviation = positive_length_measure; END_TYPE; -- IN AP214 TYPE surface_tolerance_parameter = REAL; END_TYPE; -- IN AP242 TYPE swept_surface_or_solid = SELECT (swept_surface, swept_face_solid, swept_area_solid); END_TYPE; TYPE symbol_style_select = SELECT (symbol_colour); END_TYPE; -- IN AP242 TYPE tangent_contact_type = ENUMERATION OF (point_contact, curve_contact, surface_contact); END_TYPE; -- IN AP242 TYPE tessellated_edge_or_vertex = SELECT (tessellated_edge, tessellated_vertex); END_TYPE; TYPE text = STRING; END_TYPE; TYPE text_alignment = label; END_TYPE; TYPE text_delineation = label; END_TYPE; -- DIFF IN AP203e2 TYPE text_or_character = SELECT (annotation_text, -- Common annotation_text_character, -- Common composite_text, -- Common defined_character_glyph, -- AP214/AP242 text_literal); -- Common END_TYPE; TYPE text_path = ENUMERATION OF (left, right, up, down); END_TYPE; -- DIFF IN AP203e2 TYPE text_string_representation_item = SELECT (annotation_text, -- Common annotation_text_character, -- Common axis2_placement, -- Common composite_text, -- Common defined_character_glyph, -- AP214/AP242 text_literal); -- Common END_TYPE; TYPE thermodynamic_temperature_measure = REAL; END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 TYPE time_interval_item = SELECT (action, -- Common action_directive, -- AP214/AP242 action_method, -- AP214/AP242 action_property, -- AP214/AP242 action_relationship, -- AP214/AP242 action_request_solution, -- AP214/AP242 alternate_product_relationship, -- AP214/AP242 applied_action_assignment, -- AP214/AP242 applied_classification_assignment, -- AP214/AP242 applied_person_and_organization_assignment, -- AP214/AP242 approval_status, -- AP214/AP242 assembly_component_usage_substitute, -- AP214/AP242 certification, -- AP214/AP242 class, -- AP214/AP242 class_system, -- AP214/AP242 configuration_design, -- AP214/AP242 configuration_effectivity, -- AP214/AP242 configuration_item, -- AP214/AP242 configured_effectivity_assignment, -- AP214/AP242 contract, -- AP214/AP242 document_file, -- AP214/AP242 draughting_model, -- AP214/AP242 drawing_revision, -- AP214/AP242 executed_action, -- AP214/AP242 general_property, -- AP214/AP242 material_designation, -- AP214/AP242 mechanical_design_geometric_presentation_representation, -- AP214/AP242 organization_relationship, -- AP214/AP242 organizational_project, -- AP214/AP242 person_and_organization, -- AP214/AP242 presentation_area, -- AP214/AP242 product, -- AP214/AP242 product_concept, -- AP214/AP242 product_concept_feature, -- AP214/AP242 product_concept_feature_association, -- AP214/AP242 product_concept_feature_category, -- AP214/AP242 product_concept_feature_category_usage, -- AP214/AP242 product_definition, -- AP214/AP242 product_definition_formation, -- AP214/AP242 product_definition_formation_relationship, -- AP214/AP242 product_definition_relationship, -- AP214/AP242 product_definition_substitute, -- AP214/AP242 property_definition, -- AP214/AP242 requirement_for_action_resource, -- AP214/AP242 resource_property, -- AP214/AP242 security_classification, -- AP214/AP242 security_classification_level, -- AP214/AP242 shape_representation, -- AP214/AP242 time_interval_based_effectivity, -- AP203e2/AP242 versioned_action_request); -- AP214/AP242 END_TYPE; TYPE time_measure = REAL; END_TYPE; -- IN AP214 TYPE tolerance_deviation_select = SELECT (curve_tolerance_deviation, surface_tolerance_deviation); END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 TYPE tolerance_method_definition = SELECT (limits_and_fits, tolerance_value); END_TYPE; -- IN AP214 TYPE tolerance_parameter_select = SELECT (curve_tolerance_parameter, surface_tolerance_parameter); END_TYPE; -- IN AP214 TYPE tolerance_select = SELECT (approximation_tolerance_deviation, approximation_tolerance_parameter); END_TYPE; -- IN AP242 TYPE tolerance_zone_target = SELECT (dimensional_location, dimensional_size, geometric_tolerance, general_datum_reference); END_TYPE; TYPE transformation = SELECT (item_defined_transformation, functionally_defined_transformation); END_TYPE; TYPE transition_code = ENUMERATION OF (discontinuous, continuous, cont_same_gradient, cont_same_gradient_same_curvature); END_TYPE; -- IN AP214 TYPE translational_range_measure = SELECT (length_measure, unlimited_range); END_TYPE; -- IN AP203e2/AP242 TYPE trim_condition_select = SELECT (length_measure, plane_angle_measure, generalized_surface_select, solid_model); END_TYPE; -- IN AP203e2/AP242 TYPE trim_intent = ENUMERATION OF (blind, offset, through_all, unspecified, up_to_next); END_TYPE; TYPE trimming_preference = ENUMERATION OF (cartesian, parameter, unspecified); END_TYPE; TYPE trimming_select = SELECT (cartesian_point, parameter_value); END_TYPE; -- IN AP242 TYPE tuple_space = SELECT (product_space, extended_tuple_space); END_TYPE; TYPE u_direction_count = INTEGER; WHERE WR1: SELF > 1; END_TYPE; -- IN AP242 TYPE u_or_v_parameter = ENUMERATION OF (u_parameter, v_parameter); END_TYPE; TYPE unit = SELECT (derived_unit, named_unit); END_TYPE; -- IN AP214 TYPE unlimited_range = ENUMERATION OF (unlimited); END_TYPE; -- IN AP242 TYPE used_quality_representation_select = SELECT (data_quality_criteria_representation, data_quality_inspection_result_representation); END_TYPE; TYPE v_direction_count = INTEGER; WHERE WR1: SELF > 1; END_TYPE; -- IN AP242 TYPE value_format_type = identifier; WHERE WR1: LENGTH(SELF) <= 80; END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 TYPE value_qualifier = SELECT (precision_qualifier, -- Common type_qualifier, -- Common uncertainty_qualifier, -- Common value_format_type_qualifier); -- AP242 END_TYPE; -- DIFF IN AP214 -- DIFF IN AP203e2 TYPE vector_or_direction = SELECT (direction, vector); END_TYPE; -- IN AP203e2/AP242 TYPE velocity_measure = REAL; END_TYPE; TYPE volume_measure = REAL; END_TYPE; -- IN AP203e2/AP242 TYPE week_in_year_number = INTEGER; WHERE WR1: (1 <= SELF) AND (SELF <= 53); END_TYPE; -- IN AP203e2/AP242 TYPE work_item = SELECT (product_definition_formation); END_TYPE; TYPE year_number = INTEGER; END_TYPE; -- IN AP214/AP242 TYPE ypr_enumeration = ENUMERATION OF (yaw, pitch, roll); END_TYPE; -- IN AP214/AP242 TYPE ypr_rotation = ARRAY [ypr_index(yaw):ypr_index(roll)] OF plane_angle_measure; END_TYPE; -- IN AP242 TYPE zero_or_one = nonnegative_integer; WHERE in_range: (SELF = 0) OR (SELF = 1); END_TYPE; -- IN AP242 ENTITY abrupt_change_of_surface_normal SUBTYPE OF (geometry_with_local_irregularity); small_vector_tolerance : length_measure; test_point_distance_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.SURFACE' ]); WR3: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.POINT_ON_SURFACE', 'STEP_MERGED_CAD_SCHEMA.POINT_ON_SURFACE' ]); WR4: validate_accuracy_types(SELF, []); END_ENTITY; -- IN AP214/AP242 ENTITY abs_function SUBTYPE OF (unary_function_call); END_ENTITY; -- IN AP203e2/AP242 ENTITY absorbed_dose_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.ABSORBED_DOSE_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; -- IN AP203e2/AP242 ENTITY absorbed_dose_unit SUBTYPE OF (derived_unit); WHERE WR1: derive_dimensional_exponents(SELF) = dimensions_for_si_unit(si_unit_name.gray); END_ENTITY; -- IN AP203e2/AP242 ENTITY abstract_variable SUBTYPE OF (property_definition, property_definition_representation, representation, representation_item); END_ENTITY; -- IN AP242 ENTITY abstracted_expression_function SUBTYPE OF (maths_function, quantifier_expression); DERIVE expr : generic_expression := SELF\multiple_arity_generic_expression.operands[1]; SELF\quantifier_expression.variables : LIST [1:?] OF UNIQUE generic_variable := remove_first(SELF\multiple_arity_generic_expression.operands); WHERE WR1: SIZEOF(QUERY (operand <* SELF\multiple_arity_generic_expression.operands| NOT has_values_space(operand))) = 0; END_ENTITY; -- IN AP203e2/AP242 ENTITY acceleration_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.ACCELERATION_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; -- IN AP203e2/AP242 ENTITY acceleration_unit SUBTYPE OF (derived_unit); WHERE WR1: derive_dimensional_exponents(SELF) = dimensional_exponents(1.0, 0.0, -2.0, 0.0, 0.0, 0.0, 0.0); END_ENTITY; -- IN AP214/AP242 ENTITY acos_function SUBTYPE OF (unary_function_call); END_ENTITY; ENTITY action; name : label; description : OPTIONAL text; chosen_method : action_method; DERIVE id : identifier := get_id_value(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ID_ATTRIBUTE.IDENTIFIED_ITEM')) <= 1; END_ENTITY; ENTITY action_assignment ABSTRACT SUPERTYPE; assigned_action : action; DERIVE role : object_role := get_role(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ROLE_ASSOCIATION.ITEM_WITH_ROLE')) <= 1; END_ENTITY; ENTITY action_directive; name : label; description : OPTIONAL text; analysis : text; comment : text; requests : SET [1:?] OF versioned_action_request; END_ENTITY; ENTITY action_method; name : label; description : OPTIONAL text; consequence : text; purpose : text; END_ENTITY; -- IN AP203e2/AP242 ENTITY action_method_assignment ABSTRACT SUPERTYPE; assigned_action_method : action_method; role : action_method_role; END_ENTITY; ENTITY action_method_relationship; name : label; description : OPTIONAL text; relating_method : action_method; related_method : action_method; END_ENTITY; -- IN AP203e2/AP242 ENTITY action_method_role; name : label; description : OPTIONAL text; END_ENTITY; ENTITY action_property; name : label; description : text; definition : characterized_action_definition; END_ENTITY; ENTITY action_property_representation; name : label; description : text; property : action_property; representation : representation; END_ENTITY; ENTITY action_relationship; name : label; description : OPTIONAL text; relating_action : action; related_action : action; END_ENTITY; ENTITY action_request_assignment ABSTRACT SUPERTYPE; assigned_action_request : versioned_action_request; DERIVE role : object_role := get_role(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ROLE_ASSOCIATION.ITEM_WITH_ROLE')) <= 1; END_ENTITY; ENTITY action_request_solution; method : action_method; request : versioned_action_request; DERIVE description : text := get_description_value(SELF); name : label := get_name_value(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'DESCRIPTION_ATTRIBUTE.DESCRIBED_ITEM')) <= 1; WR2: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'NAME_ATTRIBUTE.NAMED_ITEM')) <= 1; END_ENTITY; ENTITY action_request_status; status : label; assigned_request : versioned_action_request; END_ENTITY; -- IN AP214/AP242 ENTITY action_resource; name : label; description : OPTIONAL text; usage : SET [1:?] OF supported_item; kind : action_resource_type; END_ENTITY; -- CASE DIFF IN AP214 -- IN AP214/AP242 ENTITY action_resource_requirement; name : label; description : text; kind : resource_requirement_type; operations : SET [1:?] OF characterized_action_definition; END_ENTITY; -- IN AP214/AP242 ENTITY action_resource_type; name : label; END_ENTITY; ENTITY action_status; status : label; assigned_action : executed_action; END_ENTITY; -- IN AP242 ENTITY actuated_kinematic_pair SUBTYPE OF (kinematic_pair); t_x : OPTIONAL actuated_direction; t_y : OPTIONAL actuated_direction; t_z : OPTIONAL actuated_direction; r_x : OPTIONAL actuated_direction; r_y : OPTIONAL actuated_direction; r_z : OPTIONAL actuated_direction; END_ENTITY; -- IN AP242 ENTITY add_element SUBTYPE OF (change_element); END_ENTITY; ENTITY address; internal_location : OPTIONAL label; street_number : OPTIONAL label; street : OPTIONAL label; postal_box : OPTIONAL label; town : OPTIONAL label; region : OPTIONAL label; postal_code : OPTIONAL label; country : OPTIONAL label; facsimile_number : OPTIONAL label; telephone_number : OPTIONAL label; electronic_mail_address : OPTIONAL label; telex_number : OPTIONAL label; DERIVE name : label := get_name_value(SELF); url : identifier := get_id_value(SELF); WHERE WR1: ((((((((((EXISTS(internal_location) OR EXISTS(street_number)) OR EXISTS(street)) OR EXISTS(postal_box)) OR EXISTS(town)) OR EXISTS(region)) OR EXISTS(postal_code)) OR EXISTS(country)) OR EXISTS(facsimile_number)) OR EXISTS(telephone_number)) OR EXISTS(electronic_mail_address)) OR EXISTS(telex_number); END_ENTITY; ENTITY advanced_brep_shape_representation SUBTYPE OF (shape_representation); WHERE WR1: SIZEOF(QUERY (it <* SELF.items| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MANIFOLD_SOLID_BREP', 'STEP_MERGED_CAD_SCHEMA.FACETED_BREP', 'STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM', 'STEP_MERGED_CAD_SCHEMA.AXIS2_PLACEMENT_3D' ] * TYPEOF(it)) = 1))) = 0; WR2: SIZEOF(QUERY (it <* SELF.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MANIFOLD_SOLID_BREP', 'STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' ] * TYPEOF(it)) = 1))) > 0; WR3: SIZEOF(QUERY (msb <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.MANIFOLD_SOLID_BREP' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (csh <* msb_shells(msb)| NOT (SIZEOF(QUERY (fcs <* csh\connected_face_set.cfs_faces| NOT ('STEP_MERGED_CAD_SCHEMA.ADVANCED_FACE' IN TYPEOF(fcs)))) = 0))) = 0))) = 0; WR4: SIZEOF(QUERY (msb <* QUERY (it <* items| ('STEP_MERGED_CAD_SCHEMA.MANIFOLD_SOLID_BREP' IN TYPEOF(it)))| ('STEP_MERGED_CAD_SCHEMA.ORIENTED_CLOSED_SHELL' IN TYPEOF(msb\manifold_solid_brep.outer)))) = 0; WR5: SIZEOF(QUERY (brv <* QUERY (it <* items| ('STEP_MERGED_CAD_SCHEMA.BREP_WITH_VOIDS' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (csh <* brv\brep_with_voids.voids| csh\oriented_closed_shell.orientation)) = 0))) = 0; WR6: SIZEOF(QUERY (mi <* QUERY (it <* items| ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(it)))| NOT ('STEP_MERGED_CAD_SCHEMA.ADVANCED_BREP_SHAPE_REPRESENTATION' IN TYPEOF(mi\mapped_item.mapping_source.mapped_representation)))) = 0; END_ENTITY; ENTITY advanced_face SUBTYPE OF (face_surface); WHERE WR1: SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.ELEMENTARY_SURFACE', 'STEP_MERGED_CAD_SCHEMA.B_SPLINE_SURFACE', 'STEP_MERGED_CAD_SCHEMA.SWEPT_SURFACE' ] * TYPEOF(face_geometry)) = 1; WR2: SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* bounds| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(bnds.bound)))| NOT (SIZEOF(QUERY (oe <* elp_fbnds.bound\path.edge_list| NOT ('STEP_MERGED_CAD_SCHEMA.EDGE_CURVE' IN TYPEOF(oe\oriented_edge.edge_element)))) = 0))) = 0; WR3: SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* bounds| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(bnds.bound)))| NOT (SIZEOF(QUERY (oe <* elp_fbnds.bound\path.edge_list| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.LINE', 'STEP_MERGED_CAD_SCHEMA.CONIC', 'STEP_MERGED_CAD_SCHEMA.POLYLINE', 'STEP_MERGED_CAD_SCHEMA.SURFACE_CURVE', 'STEP_MERGED_CAD_SCHEMA.B_SPLINE_CURVE' ] * TYPEOF(oe.edge_element\edge_curve.edge_geometry)) = 1))) = 0))) = 0; WR4: SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* bounds| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(bnds.bound)))| NOT (SIZEOF(QUERY (oe <* elp_fbnds.bound\path.edge_list| NOT ((('STEP_MERGED_CAD_SCHEMA.VERTEX_POINT' IN TYPEOF(oe\edge.edge_start)) AND ('STEP_MERGED_CAD_SCHEMA.CARTESIAN_POINT' IN TYPEOF(oe\edge.edge_start\vertex_point.vertex_geometry))) AND (('STEP_MERGED_CAD_SCHEMA.VERTEX_POINT' IN TYPEOF(oe\edge.edge_end)) AND ('STEP_MERGED_CAD_SCHEMA.CARTESIAN_POINT' IN TYPEOF(oe\edge.edge_end\vertex_point.vertex_geometry)))))) = 0))) = 0; WR5: SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* bounds| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(bnds.bound)))| ('STEP_MERGED_CAD_SCHEMA.ORIENTED_PATH' IN TYPEOF(elp_fbnds.bound)))) = 0; WR6: NOT ('STEP_MERGED_CAD_SCHEMA.SWEPT_SURFACE' IN TYPEOF(face_geometry)) OR (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.LINE', 'STEP_MERGED_CAD_SCHEMA.CONIC', 'STEP_MERGED_CAD_SCHEMA.POLYLINE', 'STEP_MERGED_CAD_SCHEMA.B_SPLINE_CURVE' ] * TYPEOF(face_geometry\swept_surface.swept_curve)) = 1); WR7: SIZEOF(QUERY (vlp_fbnds <* QUERY (bnds <* bounds| ('STEP_MERGED_CAD_SCHEMA.VERTEX_LOOP' IN TYPEOF(bnds.bound)))| NOT (('STEP_MERGED_CAD_SCHEMA.VERTEX_POINT' IN TYPEOF(vlp_fbnds\face_bound.bound\vertex_loop.loop_vertex)) AND ('STEP_MERGED_CAD_SCHEMA.CARTESIAN_POINT' IN TYPEOF(vlp_fbnds\face_bound.bound\vertex_loop.loop_vertex\vertex_point.vertex_geometry))))) = 0; WR8: SIZEOF(QUERY (bnd <* bounds| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.EDGE_LOOP', 'STEP_MERGED_CAD_SCHEMA.VERTEX_LOOP' ] * TYPEOF(bnd.bound)) = 1))) = 0; WR9: SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* bounds| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(bnds.bound)))| NOT (SIZEOF(QUERY (oe <* elp_fbnds.bound\path.edge_list| ('STEP_MERGED_CAD_SCHEMA.SURFACE_CURVE' IN TYPEOF(oe\oriented_edge.edge_element\edge_curve.edge_geometry)) AND NOT (SIZEOF(QUERY (sc_ag <* oe.edge_element\edge_curve.edge_geometry\surface_curve.associated_geometry| NOT ('STEP_MERGED_CAD_SCHEMA.PCURVE' IN TYPEOF(sc_ag)))) = 0))) = 0))) = 0; WR10: (NOT ('STEP_MERGED_CAD_SCHEMA.SWEPT_SURFACE' IN TYPEOF(face_geometry)) OR (NOT ('STEP_MERGED_CAD_SCHEMA.POLYLINE' IN TYPEOF(face_geometry\swept_surface.swept_curve)) OR (SIZEOF(face_geometry\swept_surface.swept_curve\polyline.points) >= 3))) AND (SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* bounds| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(bnds.bound)))| NOT (SIZEOF(QUERY (oe <* elp_fbnds.bound\path.edge_list| ('STEP_MERGED_CAD_SCHEMA.POLYLINE' IN TYPEOF(oe\oriented_edge.edge_element\edge_curve.edge_geometry)) AND NOT (SIZEOF(oe\oriented_edge.edge_element\edge_curve.edge_geometry\polyline.points) >= 3))) = 0))) = 0); END_ENTITY; -- IN AP242 ENTITY agc_with_dimension SUBTYPE OF (angle_geometric_constraint); angle_value : plane_angle_measure; END_ENTITY; -- IN AP242 ENTITY all_around_shape_aspect SUBTYPE OF (continuous_shape_aspect); END_ENTITY; -- CASE DIFF IN AP214 ENTITY alternate_product_relationship; name : label; definition : OPTIONAL text; alternate : product; base : product; basis : text; UNIQUE UR1 : alternate, base; WHERE WR1: alternate :<>: base; END_ENTITY; ENTITY amount_of_substance_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.AMOUNT_OF_SUBSTANCE_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; ENTITY amount_of_substance_unit SUBTYPE OF (named_unit); WHERE WR1: ((((((SELF\named_unit.dimensions.length_exponent = 0.0) AND (SELF\named_unit.dimensions.mass_exponent = 0.0)) AND (SELF\named_unit.dimensions.time_exponent = 0.0)) AND (SELF\named_unit.dimensions.electric_current_exponent = 0.0)) AND (SELF\named_unit.dimensions.thermodynamic_temperature_exponent = 0.0)) AND (SELF\named_unit.dimensions.amount_of_substance_exponent = 1.0)) AND (SELF\named_unit.dimensions.luminous_intensity_exponent = 0.0); END_ENTITY; -- IN AP214/AP242 ENTITY and_expression SUBTYPE OF (multiple_arity_boolean_expression); END_ENTITY; -- IN AP242 ENTITY angle_assembly_constraint_with_dimension SUBTYPE OF (binary_assembly_constraint, agc_with_dimension); END_ENTITY; -- IN AP203e2/AP242 ENTITY angle_direction_reference SUBTYPE OF (representation_item_relationship, geometric_representation_item); SELF\representation_item_relationship.related_representation_item : angle_direction_reference_select; SELF\representation_item_relationship.relating_representation_item : orientation_basis_select; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.POINT_PATH' IN TYPEOF(related_representation_item)) AND ('STEP_MERGED_CAD_SCHEMA.MIN_AND_MAJOR_PLY_ORIENTATION_BASIS' IN TYPEOF(relating_representation_item)) OR NOT ('STEP_MERGED_CAD_SCHEMA.POINT_PATH' IN TYPEOF(related_representation_item)) AND ('STEP_MERGED_CAD_SCHEMA.AXIS2_PLACEMENT_3D' IN TYPEOF(relating_representation_item)); END_ENTITY; -- IN AP242 ENTITY angle_geometric_constraint SUBTYPE OF (explicit_geometric_constraint); SELF\explicit_constraint.constrained_elements : SET [1:?] OF linear_geometry_constraint_element; SELF\explicit_constraint.reference_elements : SET [0:1] OF linear_geometry_constraint_element; WHERE WR1: (SIZEOF(SELF\explicit_constraint.reference_elements) = 1) OR ('STEP_MERGED_CAD_SCHEMA.AGC_WITH_DIMENSION' IN TYPEOF(SELF)) AND (SIZEOF(SELF\explicit_constraint.constrained_elements) = 2); END_ENTITY; ENTITY angular_dimension SUBTYPE OF (dimension_curve_directed_callout); END_ENTITY; ENTITY angular_location SUBTYPE OF (dimensional_location); angle_selection : angle_relator; END_ENTITY; ENTITY angular_size SUBTYPE OF (dimensional_size); angle_selection : angle_relator; END_ENTITY; ENTITY angularity_tolerance SUBTYPE OF (geometric_tolerance_with_datum_reference); END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY annotation_curve_occurrence SUPERTYPE OF (ONEOF(dimension_curve, leader_curve, projection_curve)) SUBTYPE OF (annotation_occurrence); SELF\styled_item.item : curve_or_curve_set; END_ENTITY; ENTITY annotation_fill_area SUBTYPE OF (geometric_representation_item); boundaries : SET [1:?] OF curve; WHERE WR1: (SELF\geometric_representation_item.dim = 3) OR (SIZEOF(QUERY (curve <* SELF.boundaries| NOT ((((('STEP_MERGED_CAD_SCHEMA.CIRCLE' IN TYPEOF(curve)) OR ('STEP_MERGED_CAD_SCHEMA.ELLIPSE' IN TYPEOF(curve))) OR ('STEP_MERGED_CAD_SCHEMA.B_SPLINE_CURVE' IN TYPEOF(curve)) AND (curve\b_spline_curve.closed_curve = TRUE)) OR ('STEP_MERGED_CAD_SCHEMA.COMPOSITE_CURVE' IN TYPEOF(curve)) AND (curve\composite_curve.closed_curve = TRUE)) OR ('STEP_MERGED_CAD_SCHEMA.POLYLINE' IN TYPEOF(curve)) AND (curve\polyline.points[LOINDEX(curve\polyline.points)] = curve\polyline.points[HIINDEX(curve\polyline.points)])))) = 0); END_ENTITY; ENTITY annotation_fill_area_occurrence SUBTYPE OF (annotation_occurrence); fill_style_target : point; SELF\styled_item.item : annotation_fill_area; END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY annotation_occurrence SUPERTYPE OF (ONEOF(annotation_curve_occurrence, annotation_fill_area_occurrence, annotation_text_occurrence, annotation_symbol_occurrence) ANDOR ONEOF(annotation_curve_occurrence, annotation_fill_area_occurrence, annotation_plane, annotation_symbol_occurrence, annotation_text_occurrence, tessellated_annotation_occurrence)) SUBTYPE OF (styled_item); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.GEOMETRIC_REPRESENTATION_ITEM' IN TYPEOF(SELF); WR2: SIZEOF(QUERY (reps <* using_representations(SELF)| NOT ('STEP_MERGED_CAD_SCHEMA.ANNOTATION_REPRESENTATION_SELECT' IN TYPEOF(reps)))) = 0; END_ENTITY; ENTITY annotation_occurrence_associativity SUBTYPE OF (annotation_occurrence_relationship); WHERE WR1: SIZEOF(TYPEOF(SELF.related_annotation_occurrence) * [ 'STEP_MERGED_CAD_SCHEMA.ANNOTATION_FILL_AREA_OCCURRENCE', 'STEP_MERGED_CAD_SCHEMA.PROJECTION_CURVE', 'STEP_MERGED_CAD_SCHEMA.LEADER_CURVE' ]) = 1; END_ENTITY; ENTITY annotation_occurrence_relationship; name : label; description : text; relating_annotation_occurrence : annotation_occurrence; related_annotation_occurrence : annotation_occurrence; END_ENTITY; ENTITY annotation_plane SUBTYPE OF (annotation_occurrence, geometric_representation_item); elements : OPTIONAL SET [1:?] OF annotation_plane_element; SELF\styled_item.item : plane_or_planar_box; WHERE WR1: SELF\geometric_representation_item.dim = 3; WR2: NOT ('STEP_MERGED_CAD_SCHEMA.' + 'PLANAR_BOX' IN TYPEOF(SELF\styled_item.item)) OR ('STEP_MERGED_CAD_SCHEMA.' + 'AXIS2_PLACEMENT_3D' IN TYPEOF(SELF\styled_item.item\planar_box.placement)); WR3: ('STEP_MERGED_CAD_SCHEMA.' + 'PLANAR_BOX' IN TYPEOF(SELF\styled_item.item)) AND ('STEP_MERGED_CAD_SCHEMA.' + 'CURVE_STYLE' IN TYPEOF(SELF\styled_item.styles[1]\presentation_style_assignment.styles[1])) OR ('STEP_MERGED_CAD_SCHEMA.' + 'PLANE' IN TYPEOF(SELF\styled_item.item)) AND ('STEP_MERGED_CAD_SCHEMA.' + 'FILL_AREA_STYLE' IN TYPEOF(SELF\styled_item.styles[1]\presentation_style_assignment.styles[1])); WR4: (SIZEOF(SELF\styled_item.styles) = 1) AND (SIZEOF(SELF\styled_item.styles[1]\presentation_style_assignment.styles) = 1); END_ENTITY; ENTITY annotation_subfigure_occurrence SUBTYPE OF (annotation_symbol_occurrence); WHERE WR1: SIZEOF(QUERY (sty <* SELF.styles| NOT (SIZEOF(sty.styles) = 1))) = 0; WR2: SIZEOF(QUERY (sty <* SELF.styles| NOT ('STEP_MERGED_CAD_SCHEMA.NULL_STYLE' IN TYPEOF(sty.styles[1])))) = 0; WR3: 'STEP_MERGED_CAD_SCHEMA.ANNOTATION_SYMBOL' IN TYPEOF(SELF.item); WR4: 'STEP_MERGED_CAD_SCHEMA.DRAUGHTING_SUBFIGURE_REPRESENTATION' IN TYPEOF(SELF.item\mapped_item.mapping_source.mapped_representation); END_ENTITY; ENTITY annotation_symbol SUBTYPE OF (mapped_item); SELF\mapped_item.mapping_source : symbol_representation_map; SELF\mapped_item.mapping_target : symbol_target; WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.GEOMETRIC_REPRESENTATION_ITEM' IN TYPEOF(SELF); END_ENTITY; ENTITY annotation_symbol_occurrence SUBTYPE OF (annotation_occurrence); SELF\styled_item.item : annotation_symbol_occurrence_item; END_ENTITY; ENTITY annotation_text SUBTYPE OF (mapped_item); SELF\mapped_item.mapping_target : axis2_placement; WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.TEXT_STRING_REPRESENTATION' IN TYPEOF(SELF\mapped_item.mapping_source.mapped_representation); WR2: 'STEP_MERGED_CAD_SCHEMA.GEOMETRIC_REPRESENTATION_ITEM' IN TYPEOF(SELF); END_ENTITY; ENTITY annotation_text_character SUBTYPE OF (mapped_item); alignment : text_alignment; SELF\mapped_item.mapping_target : axis2_placement; WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.CHARACTER_GLYPH_SYMBOL' IN TYPEOF(SELF\mapped_item.mapping_source.mapped_representation); WR2: 'STEP_MERGED_CAD_SCHEMA.GEOMETRIC_REPRESENTATION_ITEM' IN TYPEOF(SELF); END_ENTITY; ENTITY annotation_text_occurrence SUBTYPE OF (annotation_occurrence); SELF\styled_item.item : annotation_text_occurrence_item; END_ENTITY; ENTITY apex SUBTYPE OF (derived_shape_aspect); END_ENTITY; ENTITY application_context; application : label; DERIVE description : text := get_description_value(SELF); id : identifier := get_id_value(SELF); INVERSE context_elements : SET [1:?] OF application_context_element FOR frame_of_reference; WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'DESCRIPTION_ATTRIBUTE.DESCRIBED_ITEM')) <= 1; WR2: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ID_ATTRIBUTE.IDENTIFIED_ITEM')) <= 1; END_ENTITY; ENTITY application_context_element SUPERTYPE OF (ONEOF(product_concept_context, product_context, product_definition_context)); name : label; frame_of_reference : application_context; END_ENTITY; -- IN AP214 ENTITY application_context_relationship; name : label; description : OPTIONAL text; relating_context : application_context; related_context : application_context; END_ENTITY; -- IN AP242 ENTITY application_defined_function SUBTYPE OF (maths_function); explicit_domain : tuple_space; explicit_range : tuple_space; parameters : LIST [0:?] OF maths_value; WHERE WR1: expression_is_constant(explicit_domain); WR2: expression_is_constant(explicit_range); END_ENTITY; ENTITY application_protocol_definition; status : label; application_interpreted_model_schema_name : label; application_protocol_year : year_number; application : application_context; END_ENTITY; ENTITY applied_action_assignment SUBTYPE OF (action_assignment); items : SET [1:?] OF action_item; END_ENTITY; -- IN AP203e2/AP242 ENTITY applied_action_method_assignment SUBTYPE OF (action_method_assignment); items : SET [1:?] OF action_method_items; END_ENTITY; ENTITY applied_action_request_assignment SUBTYPE OF (action_request_assignment); items : SET [1:?] OF action_request_item; END_ENTITY; ENTITY applied_approval_assignment SUBTYPE OF (approval_assignment); items : SET [1:?] OF approval_item; END_ENTITY; -- IN AP214/AP242 ENTITY applied_area SUBTYPE OF (shape_aspect); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(SELF.of_shape); WR2: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1))) = 0; WR3: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT ((2 <= SIZEOF(impl_rep.used_representation.items)) AND (SIZEOF(impl_rep.used_representation.items) <= 3)))) = 0))) = 0; WR4: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (srwp_i <* pdr.used_representation.items| NOT (srwp_i.name IN [ 'orientation', 'effective length', 'maximum length' ]))) > 0))) = 0))) = 0; WR5: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'effective length'))) = 1))) = 0))) <= 1; WR6: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'maximum length'))) <= 1))) = 0))) = 0; WR7: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.PLACEMENT' IN TYPEOF(it)) AND (it.name = 'orientation'))) = 1))) = 0))) = 0; END_ENTITY; -- IN AP203e2/AP242 ENTITY applied_attribute_classification_assignment SUBTYPE OF (attribute_classification_assignment); items : SET [1:?] OF attribute_classification_item; SELF\attribute_classification_assignment.assigned_class : class; END_ENTITY; ENTITY applied_certification_assignment SUBTYPE OF (certification_assignment); items : SET [1:?] OF certification_item; END_ENTITY; ENTITY applied_classification_assignment SUBTYPE OF (classification_assignment); items : SET [1:?] OF classification_item; END_ENTITY; ENTITY applied_contract_assignment SUBTYPE OF (contract_assignment); items : SET [1:?] OF contract_item; END_ENTITY; ENTITY applied_date_and_time_assignment SUBTYPE OF (date_and_time_assignment); items : SET [1:?] OF date_and_time_item; END_ENTITY; ENTITY applied_date_assignment SUBTYPE OF (date_assignment); items : SET [1:?] OF date_item; END_ENTITY; ENTITY applied_document_reference SUBTYPE OF (document_reference); items : SET [1:?] OF document_reference_item; END_ENTITY; ENTITY applied_document_usage_constraint_assignment SUBTYPE OF (document_usage_constraint_assignment); items : SET [1:?] OF document_reference_item; END_ENTITY; ENTITY applied_effectivity_assignment SUBTYPE OF (effectivity_assignment); items : SET [1:?] OF effectivity_item; END_ENTITY; ENTITY applied_event_occurrence_assignment SUBTYPE OF (event_occurrence_assignment); items : SET [1:?] OF event_occurrence_item; END_ENTITY; ENTITY applied_external_identification_assignment SUBTYPE OF (external_identification_assignment); items : SET [1:?] OF external_identification_item; END_ENTITY; -- DIFF IN AP214 ENTITY applied_group_assignment SUBTYPE OF (group_assignment); items : SET [1:?] OF groupable_item; END_ENTITY; ENTITY applied_identification_assignment SUBTYPE OF (identification_assignment); items : SET [1:?] OF identification_item; END_ENTITY; -- IN AP214/AP242 ENTITY applied_ineffectivity_assignment SUBTYPE OF (effectivity_assignment); items : SET [1:?] OF effectivity_item; WHERE WR1: SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.LOT_EFFECTIVITY', 'STEP_MERGED_CAD_SCHEMA.SERIAL_NUMBERED_EFFECTIVITY', 'STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_EFFECTIVITY' ] * TYPEOF(SELF.assigned_effectivity)) = 0; END_ENTITY; -- DIFF IN AP214 ENTITY applied_name_assignment SUBTYPE OF (name_assignment); item : name_item; END_ENTITY; ENTITY applied_organization_assignment SUBTYPE OF (organization_assignment); items : SET [1:?] OF organization_item; END_ENTITY; ENTITY applied_organizational_project_assignment SUBTYPE OF (organizational_project_assignment); items : SET [1:?] OF project_item; END_ENTITY; ENTITY applied_person_and_organization_assignment SUBTYPE OF (person_and_organization_assignment); items : SET [1:?] OF person_and_organization_item; END_ENTITY; ENTITY applied_presented_item SUBTYPE OF (presented_item); items : SET [1:?] OF presented_item_select; END_ENTITY; ENTITY applied_security_classification_assignment SUBTYPE OF (security_classification_assignment); items : SET [1:?] OF security_classification_item; END_ENTITY; -- DIFF IN AP203e2 -- IN AP203e2/AP214 ENTITY applied_time_interval_assignment SUBTYPE OF (time_interval_assignment); items : SET [1:?] OF time_interval_item; END_ENTITY; -- IN AP203e2/AP242 ENTITY applied_usage_right SUBTYPE OF (applied_action_assignment); SELF\applied_action_assignment.items : SET [1:?] OF ir_usage_item; END_ENTITY; ENTITY approval; status : approval_status; level : label; END_ENTITY; ENTITY approval_assignment ABSTRACT SUPERTYPE; assigned_approval : approval; DERIVE role : object_role := get_role(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ROLE_ASSOCIATION.ITEM_WITH_ROLE')) <= 1; END_ENTITY; ENTITY approval_date_time; date_time : date_time_select; dated_approval : approval; DERIVE role : object_role := get_role(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ROLE_ASSOCIATION.ITEM_WITH_ROLE')) <= 1; END_ENTITY; ENTITY approval_person_organization; person_organization : person_organization_select; authorized_approval : approval; role : approval_role; END_ENTITY; ENTITY approval_relationship; name : label; description : OPTIONAL text; relating_approval : approval; related_approval : approval; END_ENTITY; ENTITY approval_role; role : label; DERIVE description : text := get_description_value(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'DESCRIPTION_ATTRIBUTE.DESCRIBED_ITEM')) <= 1; END_ENTITY; ENTITY approval_status; name : label; END_ENTITY; -- IN AP214 ENTITY approximation_tolerance SUBTYPE OF (founded_item); tolerance : tolerance_select; END_ENTITY; -- IN AP214 ENTITY approximation_tolerance_deviation SUBTYPE OF (founded_item); tessellation_type : approximation_method; tolerances : SET [1:2] OF tolerance_deviation_select; definition_space : product_or_presentation_space; WHERE wr1: (HIINDEX(SELF.tolerances) = 1) XOR (TYPEOF(SELF.tolerances[1]) <> TYPEOF(SELF.tolerances[2])); END_ENTITY; -- IN AP214 ENTITY approximation_tolerance_parameter SUBTYPE OF (founded_item); tolerances : SET [1:2] OF tolerance_parameter_select; WHERE wr1: (HIINDEX(SELF.tolerances) = 1) XOR (TYPEOF(SELF.tolerances[1]) <> TYPEOF(SELF.tolerances[2])); END_ENTITY; ENTITY area_in_set; area : presentation_area; in_set : presentation_set; END_ENTITY; ENTITY area_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.AREA_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; ENTITY area_unit SUBTYPE OF (derived_unit); WHERE WR1: derive_dimensional_exponents(SELF) = dimensional_exponents(2.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0); END_ENTITY; -- IN AP242 ENTITY area_with_outer_boundary SUBTYPE OF (half_space_2d); SELF\half_space_2d.base_curve : composite_curve; WHERE WR1: base_curve\composite_curve.closed_curve = TRUE; END_ENTITY; -- IN AP242 ENTITY array_placement_group SUPERTYPE OF (ONEOF(linear_array_placement_group_component, rectangular_array_placement_group_component)) SUBTYPE OF (assembly_group_component); END_ENTITY; -- IN AP214/AP242 ENTITY asin_function SUBTYPE OF (unary_function_call); END_ENTITY; -- IN AP242 ENTITY assembly_bond_definition SUBTYPE OF (shape_aspect); UNIQUE UR1 : SELF\shape_aspect.name; END_ENTITY; -- IN AP242 ENTITY assembly_component SUBTYPE OF (component_definition, product_definition_shape); DERIVE SELF\property_definition.definition : assembly_component := SELF; WHERE WR1: NOT EXISTS(SELF\property_definition.description); END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY assembly_component_usage SUPERTYPE OF (quantified_assembly_component_usage ANDOR ONEOF(multi_level_reference_designator, next_assembly_usage_occurrence, promissory_usage_occurrence, specified_higher_usage_occurrence)) SUBTYPE OF (product_definition_usage); reference_designator : OPTIONAL identifier; END_ENTITY; -- CASE DIFF IN AP214 ENTITY assembly_component_usage_substitute; name : label; definition : OPTIONAL text; base : assembly_component_usage; substitute : assembly_component_usage; UNIQUE UR1 : base, substitute; WHERE WR1: base.relating_product_definition :=: substitute.relating_product_definition; WR2: base :<>: substitute; END_ENTITY; -- IN AP242 ENTITY assembly_geometric_constraint ABSTRACT SUPERTYPE OF (ONEOF(binary_assembly_constraint, fixed_constituent_assembly_constraint)) SUBTYPE OF (explicit_constraint); END_ENTITY; -- IN AP242 ENTITY assembly_group_component SUBTYPE OF (assembly_component); END_ENTITY; -- IN AP242 ENTITY assembly_group_component_definition_placement_link SUBTYPE OF (product_definition, product_definition_relationship); SELF\product_definition_relationship.related_product_definition : assembly_component; SELF\product_definition_relationship.relating_product_definition : assembly_component; WHERE WR1: SELF\product_definition_relationship.related_product_definition :<>: SELF\product_definition_relationship.relating_product_definition; WR2: acyclic_product_definition_relationship(SELF, [ SELF\product_definition_relationship.related_product_definition ], 'STEP_MERGED_CAD_SCHEMA.ASSEMBLY_GROUP_COMPONENT_DEFINITION_PLACEMENT_LINK'); END_ENTITY; -- IN AP242 ENTITY assembly_joint SUBTYPE OF (component_feature_joint); WHERE WR1: acyclic_shape_aspect_relationship(SELF, [ SELF\shape_aspect_relationship.related_shape_aspect ], 'STEP_MERGED_CAD_SCHEMA.' + 'ASSEMBLY_JOINT'); END_ENTITY; -- IN AP203e2/AP242 ENTITY assigned_requirement SUBTYPE OF (group_assignment); items : SET [1:1] OF product_definition; SELF\group_assignment.assigned_group : requirement_assignment; END_ENTITY; -- IN AP214/AP242 ENTITY atan_function SUBTYPE OF (binary_function_call); END_ENTITY; -- IN AP242 ENTITY atom_based_literal SUBTYPE OF (generic_literal); lit_value : atom_based_value; END_ENTITY; -- IN AP203e2/AP242 ENTITY atomic_formula SUBTYPE OF (compound_representation_item); END_ENTITY; -- IN AP203e2/AP242 ENTITY attribute_assertion SUBTYPE OF (fact_type, property_definition_representation, representation); END_ENTITY; ENTITY attribute_classification_assignment ABSTRACT SUPERTYPE; assigned_class : group; attribute_name : label; role : classification_role; END_ENTITY; -- DIFF IN AP214 ENTITY attribute_language_assignment SUBTYPE OF (attribute_classification_assignment); items : SET [1:?] OF attribute_language_item; SELF\attribute_classification_assignment.assigned_class : language; WHERE WR1: SELF\attribute_classification_assignment.role.name IN [ 'primary', 'translated' ]; WR2: SELF\attribute_classification_assignment.attribute_name <> ''; END_ENTITY; ENTITY attribute_value_assignment ABSTRACT SUPERTYPE; attribute_name : label; attribute_value : attribute_type; role : attribute_value_role; END_ENTITY; ENTITY attribute_value_role; name : label; description : OPTIONAL text; END_ENTITY; -- IN AP203e2/AP242 ENTITY auxiliary_geometric_representation_item SUBTYPE OF (geometric_representation_item, variational_representation_item); END_ENTITY; ENTITY axis1_placement SUBTYPE OF (placement); axis : OPTIONAL direction; DERIVE z : direction := NVL(normalise(axis), dummy_gri || direction([ 0.0, 0.0, 1.0 ])); WHERE WR1: SELF\geometric_representation_item.dim = 3; END_ENTITY; ENTITY axis2_placement_2d SUBTYPE OF (placement); ref_direction : OPTIONAL direction; DERIVE p : LIST [2:2] OF direction := build_2axes(ref_direction); WHERE WR1: SELF\geometric_representation_item.dim = 2; END_ENTITY; ENTITY axis2_placement_3d SUBTYPE OF (placement); axis : OPTIONAL direction; ref_direction : OPTIONAL direction; DERIVE p : LIST [3:3] OF direction := build_axes(axis, ref_direction); WHERE WR1: SELF\placement.location.dim = 3; WR2: NOT EXISTS(axis) OR (axis.dim = 3); WR3: NOT EXISTS(ref_direction) OR (ref_direction.dim = 3); WR4: (NOT EXISTS(axis) OR NOT EXISTS(ref_direction)) OR (cross_product(axis, ref_direction).magnitude > 0.0); END_ENTITY; -- IN AP242 ENTITY b_spline_basis SUBTYPE OF (maths_function, generic_literal); degree : nonnegative_integer; repeated_knots : LIST [2:?] OF REAL; DERIVE num_basis : positive_integer := SIZEOF(repeated_knots) - order; order : positive_integer := degree + 1; WHERE WR1: num_basis >= order; WR2: nondecreasing(repeated_knots); WR3: repeated_knots[order] < repeated_knots[(num_basis + 1)]; END_ENTITY; -- DIFF IN AP214 ENTITY b_spline_curve SUPERTYPE OF (ONEOF(uniform_curve, b_spline_curve_with_knots, quasi_uniform_curve, bezier_curve) ANDOR rational_b_spline_curve) SUBTYPE OF (bounded_curve); degree : INTEGER; control_points_list : LIST [2:?] OF cartesian_point; curve_form : b_spline_curve_form; closed_curve : LOGICAL; self_intersect : LOGICAL; DERIVE control_points : ARRAY [0:upper_index_on_control_points] OF cartesian_point := list_to_array(control_points_list, 0, upper_index_on_control_points); upper_index_on_control_points : INTEGER := SIZEOF(control_points_list) - 1; WHERE WR1: ((('STEP_MERGED_CAD_SCHEMA.UNIFORM_CURVE' IN TYPEOF(SELF)) OR ('STEP_MERGED_CAD_SCHEMA.QUASI_UNIFORM_CURVE' IN TYPEOF(SELF))) OR ('STEP_MERGED_CAD_SCHEMA.BEZIER_CURVE' IN TYPEOF(SELF))) OR ('STEP_MERGED_CAD_SCHEMA.B_SPLINE_CURVE_WITH_KNOTS' IN TYPEOF(SELF)); END_ENTITY; -- IN AP242 ENTITY b_spline_curve_knot_locator SUBTYPE OF (founded_item); basis_curve : b_spline_curve; knot_index : INTEGER; WHERE WR1: SIZEOF(using_representations(SELF.basis_curve) * relating_shape_representations_of_extreme_values(SELF)) > 0; END_ENTITY; -- IN AP242 ENTITY b_spline_curve_segment SUBTYPE OF (founded_item); basis_curve : b_spline_curve; start_knot_index : INTEGER; WHERE WR1: SIZEOF(using_representations(SELF.basis_curve) * relating_shape_representations_of_extreme_values(SELF)) > 0; END_ENTITY; ENTITY b_spline_curve_with_knots SUBTYPE OF (b_spline_curve); knot_multiplicities : LIST [2:?] OF INTEGER; knots : LIST [2:?] OF parameter_value; knot_spec : knot_type; DERIVE upper_index_on_knots : INTEGER := SIZEOF(knots); WHERE WR1: constraints_param_b_spline(degree, upper_index_on_knots, upper_index_on_control_points, knot_multiplicities, knots); WR2: SIZEOF(knot_multiplicities) = upper_index_on_knots; END_ENTITY; -- IN AP242 ENTITY b_spline_function SUBTYPE OF (maths_function, unary_generic_expression); basis : LIST [1:?] OF b_spline_basis; SELF\unary_generic_expression.operand : maths_function; DERIVE coef : maths_function := SELF\unary_generic_expression.operand; WHERE WR1: function_is_table(coef); WR2: (space_dimension(coef.range) = 1) AND (number_superspace_of(factor1(coef.range)) = the_reals); WR3: SIZEOF(basis) <= SIZEOF(shape_of_array(coef)); WR4: compare_basis_and_coef(basis, coef); END_ENTITY; -- DIFF IN AP214 ENTITY b_spline_surface SUPERTYPE OF (ONEOF(b_spline_surface_with_knots, uniform_surface, quasi_uniform_surface, bezier_surface) ANDOR rational_b_spline_surface) SUBTYPE OF (bounded_surface); u_degree : INTEGER; v_degree : INTEGER; control_points_list : LIST [2:?] OF LIST [2:?] OF cartesian_point; surface_form : b_spline_surface_form; u_closed : LOGICAL; v_closed : LOGICAL; self_intersect : LOGICAL; DERIVE control_points : ARRAY [0:u_upper] OF ARRAY [0:v_upper] OF cartesian_point := make_array_of_array(control_points_list, 0, u_upper, 0, v_upper); u_upper : INTEGER := SIZEOF(control_points_list) - 1; v_upper : INTEGER := SIZEOF(control_points_list[1]) - 1; WHERE WR1: ((('STEP_MERGED_CAD_SCHEMA.UNIFORM_SURFACE' IN TYPEOF(SELF)) OR ('STEP_MERGED_CAD_SCHEMA.QUASI_UNIFORM_SURFACE' IN TYPEOF(SELF))) OR ('STEP_MERGED_CAD_SCHEMA.BEZIER_SURFACE' IN TYPEOF(SELF))) OR ('STEP_MERGED_CAD_SCHEMA.B_SPLINE_SURFACE_WITH_KNOTS' IN TYPEOF(SELF)); END_ENTITY; -- IN AP242 ENTITY b_spline_surface_knot_locator SUBTYPE OF (founded_item); basis_surface : b_spline_surface; knot_index : INTEGER; surface_parameter : u_or_v_parameter; WHERE WR1: SIZEOF(using_representations(SELF.basis_surface) * relating_shape_representations_of_extreme_values(SELF)) > 0; END_ENTITY; -- IN AP242 ENTITY b_spline_surface_patch SUBTYPE OF (founded_item); basis_surface : b_spline_surface; u_start_knot_index : INTEGER; v_start_knot_index : INTEGER; WHERE WR1: SIZEOF(using_representations(SELF.basis_surface) * relating_shape_representations_of_extreme_values(SELF)) > 0; END_ENTITY; -- IN AP242 ENTITY b_spline_surface_strip SUBTYPE OF (founded_item); basis_surface : b_spline_surface; start_knot_index : INTEGER; surface_parameter : u_or_v_parameter; WHERE WR1: SIZEOF(using_representations(SELF.basis_surface) * relating_shape_representations_of_extreme_values(SELF)) > 0; END_ENTITY; ENTITY b_spline_surface_with_knots SUBTYPE OF (b_spline_surface); u_multiplicities : LIST [2:?] OF INTEGER; v_multiplicities : LIST [2:?] OF INTEGER; u_knots : LIST [2:?] OF parameter_value; v_knots : LIST [2:?] OF parameter_value; knot_spec : knot_type; DERIVE knot_u_upper : INTEGER := SIZEOF(u_knots); knot_v_upper : INTEGER := SIZEOF(v_knots); WHERE WR1: constraints_param_b_spline(SELF\b_spline_surface.u_degree, knot_u_upper, SELF\b_spline_surface.u_upper, u_multiplicities, u_knots); WR2: constraints_param_b_spline(SELF\b_spline_surface.v_degree, knot_v_upper, SELF\b_spline_surface.v_upper, v_multiplicities, v_knots); WR3: SIZEOF(u_multiplicities) = knot_u_upper; WR4: SIZEOF(v_multiplicities) = knot_v_upper; END_ENTITY; -- IN AP203e2/AP242 ENTITY back_chaining_rule SUBTYPE OF (rule_definition); END_ENTITY; -- IN AP203e2/AP242 ENTITY back_chaining_rule_body SUBTYPE OF (property_definition, property_definition_representation, representation); END_ENTITY; -- CASE DIFF IN AP214 ENTITY background_colour SUBTYPE OF (colour); presentation : area_or_view; UNIQUE UR1 : presentation; END_ENTITY; -- IN AP214/AP242 ENTITY barring_hole SUBTYPE OF (feature_definition); WHERE WR1: SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| ((sa.name = 'hole profile') AND (sa.description = 'closed profile occurrence')) AND (SIZEOF(QUERY (sar <* USEDIN(sa, 'STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)) AND (sar.description = 'profile usage')) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CIRCULAR_CLOSED_PROFILE', 'STEP_MERGED_CAD_SCHEMA.NGON_CLOSED_PROFILE', 'STEP_MERGED_CAD_SCHEMA.RECTANGULAR_CLOSED_PROFILE', 'STEP_MERGED_CAD_SCHEMA.CLOSED_PATH_PROFILE' ] * TYPEOF(sar.relating_shape_aspect)) = 1))) = 1))) = 1; WR2: SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| ((sa.name = 'barring profile') AND (sa.description = 'closed profile occurrence')) AND (SIZEOF(QUERY (sar <* USEDIN(sa, 'STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)) AND (sar.description = 'profile usage'))) = 1))) = 1; WR3: (SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1) AND (SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND ((1 <= SIZEOF(pdr.used_representation.items)) AND (SIZEOF(pdr.used_representation.items) <= 2)))) = 1); WR4: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| NOT (i.name IN [ 'orientation', 'base radius' ]))) > 0))) = 0; WR5: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| (i.name = 'base radius') AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(i)) = 2))) <> 1))) = 0; END_ENTITY; -- IN AP242 ENTITY basic_sparse_matrix SUBTYPE OF (explicit_table_function, multiple_arity_generic_expression); default_entry : maths_value; order : ordering_type; SELF\multiple_arity_generic_expression.operands : LIST [3:3] OF maths_function; DERIVE index : maths_function := SELF\multiple_arity_generic_expression.operands[1]; loc : maths_function := SELF\multiple_arity_generic_expression.operands[2]; val : maths_function := SELF\multiple_arity_generic_expression.operands[3]; WHERE WR1: function_is_1d_table(index); WR2: function_is_1d_table(loc); WR3: function_is_1d_table(val); WR4: check_sparse_index_domain(index.domain, index_base, shape, order); WR5: check_sparse_index_to_loc(index.range, loc.domain); WR6: loc.domain = val.domain; WR7: check_sparse_loc_range(loc.range, index_base, shape, order); WR8: member_of(default_entry, val.range); END_ENTITY; -- IN AP214/AP242 ENTITY bead SUBTYPE OF (feature_definition); WHERE WR1: (SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) <= 1) AND (SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(pdr.used_representation.items) > 2))) = 0); WR2: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| NOT (i.name IN [ 'orientation', 'base radius' ]))) > 0))) = 0; WR3: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| (i.name = 'base radius') AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(i)) = 2))) > 1))) = 0; WR4: SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| ((sa.name = 'sweep path') AND (sa.description = 'path feature component occurrence')) AND (SIZEOF(QUERY (sar <* USEDIN(sa, 'STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)) AND (sar.description = 'path feature component usage')) AND ('STEP_MERGED_CAD_SCHEMA.PATH_FEATURE_COMPONENT' IN TYPEOF(sar.relating_shape_aspect)))) = 1))) = 1; WR5: SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| ((sa.name = 'bead profile') AND (sa.description = 'open profile occurrence')) AND (SIZEOF(QUERY (sar <* USEDIN(sa, 'STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)) AND (sar.description = 'profile usage')) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.OPEN_PATH_PROFILE', 'STEP_MERGED_CAD_SCHEMA.PARTIAL_CIRCULAR_PROFILE', 'STEP_MERGED_CAD_SCHEMA.ROUNDED_U_PROFILE', 'STEP_MERGED_CAD_SCHEMA.SQUARE_U_PROFILE', 'STEP_MERGED_CAD_SCHEMA.TEE_PROFILE', 'STEP_MERGED_CAD_SCHEMA.VEE_PROFILE' ] * TYPEOF(sar.relating_shape_aspect)) = 1))) = 1))) = 1; WR6: SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| ((sa.name = 'end condition') AND (sa.description = 'bead end occurrence')) AND (SIZEOF(QUERY (sar <* USEDIN(sa, 'STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| ((('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)) AND (sar.name = 'bead end usage')) AND (sar.description = 'starting')) AND ('STEP_MERGED_CAD_SCHEMA.BEAD_END' IN TYPEOF(sar.relating_shape_aspect)))) = 1))) = 1; WR7: SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| ((sa.name = 'end condition') AND (sa.description = 'bead end occurrence')) AND (SIZEOF(QUERY (sar <* USEDIN(sa, 'STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| ((('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)) AND (sar.name = 'bead end usage')) AND (sar.description = 'ending')) AND ('STEP_MERGED_CAD_SCHEMA.BEAD_END' IN TYPEOF(sar.relating_shape_aspect)))) = 1))) = 1; END_ENTITY; -- IN AP214/AP242 ENTITY bead_end SUBTYPE OF (shape_aspect); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_DEFINITION' IN TYPEOF(SELF.of_shape.definition); WR2: SELF.description IN [ 'linear', 'open', 'radiused' ]; WR3: (SELF.description <> 'linear') XOR (SIZEOF(QUERY (pdr <* get_shape_aspect_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) > 0); WR4: (SELF.description <> 'linear') OR (SIZEOF(QUERY (pdr <* get_shape_aspect_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(pdr.used_representation.items) = 2))) = 1); WR5: (SELF.description <> 'linear') OR (SIZEOF(QUERY (pdr <* get_shape_aspect_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| (i.name = 'end length') AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(i)) = 2))) = 1))) = 1); WR6: (SELF.description <> 'linear') OR (SIZEOF(QUERY (pdr <* get_shape_aspect_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| ((i.name = 'end shape') AND (i\descriptive_representation_item.description IN [ 'straight', 'tapered' ])) AND ('STEP_MERGED_CAD_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(i)))) = 1))) = 1); WR7: SIZEOF(QUERY (sar <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_ASPECT_RELATIONSHIP.RELATING_SHAPE_ASPECT')| ((((('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)) AND (sar.name = 'bead end usage')) AND (sar.description IN [ 'starting', 'ending' ])) AND ('STEP_MERGED_CAD_SCHEMA.BEAD' IN TYPEOF(sar.related_shape_aspect.of_shape.definition))) AND (sar.related_shape_aspect.of_shape.definition\characterized_object.name = 'end condition')) AND (sar.related_shape_aspect.of_shape.definition\characterized_object.description = 'bead end occurrence'))) = 1; END_ENTITY; -- IN AP242 ENTITY between_shape_aspect SUBTYPE OF (continuous_shape_aspect); END_ENTITY; -- IN AP203e2/AP242 ENTITY beveled_sheet_representation SUBTYPE OF (shape_representation); END_ENTITY; ENTITY bezier_curve SUBTYPE OF (b_spline_curve); END_ENTITY; ENTITY bezier_surface SUBTYPE OF (b_spline_surface); END_ENTITY; -- IN AP242 ENTITY binary_assembly_constraint ABSTRACT SUPERTYPE OF (ONEOF(parallel_assembly_constraint, surface_distance_assembly_constraint_with_dimension, angle_assembly_constraint_with_dimension, perpendicular_assembly_constraint, incidence_assembly_constraint, coaxial_assembly_constraint, tangent_assembly_constraint)) SUBTYPE OF (assembly_geometric_constraint, representation_relationship_with_transformation); SELF\representation_relationship.rep_1 : representative_shape_representation; SELF\representation_relationship.rep_2 : representative_shape_representation; WHERE WR1: (SELF\explicit_constraint.constrained_elements[1]\geometric_representation_item.dim = 3) AND (SELF\explicit_constraint.reference_elements[1]\geometric_representation_item.dim = 3); WR2: (SELF\representation_relationship.rep_1 IN using_representations(SELF\representation_relationship_with_transformation.transformation_operator\item_defined_transformation.transform_item_1) + using_representation_with_mapping(SELF\representation_relationship_with_transformation.transformation_operator\item_defined_transformation.transform_item_1)) AND (SELF\representation_relationship.rep_2 IN using_representations(SELF\representation_relationship_with_transformation.transformation_operator\item_defined_transformation.transform_item_2) + using_representation_with_mapping(SELF\representation_relationship_with_transformation.transformation_operator\item_defined_transformation.transform_item_2)); WR3: (SIZEOF(SELF\explicit_constraint.constrained_elements) = 1) AND (SIZEOF(SELF\explicit_constraint.reference_elements) = 1); WR4: (SELF\representation_relationship_with_transformation.transformation_operator\item_defined_transformation.transform_item_1 = SELF\explicit_constraint.reference_elements[1]) AND (SELF\representation_relationship_with_transformation.transformation_operator\item_defined_transformation.transform_item_2 = SELF\explicit_constraint.constrained_elements[1]); END_ENTITY; -- IN AP214/AP242 ENTITY binary_boolean_expression ABSTRACT SUPERTYPE OF (ONEOF(xor_expression, equals_expression)) SUBTYPE OF (boolean_expression, binary_generic_expression); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY binary_function_call ABSTRACT SUPERTYPE SUBTYPE OF (binary_numeric_expression); END_ENTITY; ENTITY binary_generic_expression ABSTRACT SUPERTYPE SUBTYPE OF (generic_expression); operands : LIST [2:2] OF generic_expression; END_ENTITY; -- IN AP242 ENTITY binary_literal SUBTYPE OF (generic_literal); lit_value : BINARY; END_ENTITY; -- DIFF IN AP203e2 ENTITY binary_numeric_expression ABSTRACT SUPERTYPE OF (ONEOF(minus_expression, div_expression, mod_expression, slash_expression, power_expression, binary_function_call)) SUBTYPE OF (numeric_expression, binary_generic_expression); SELF\binary_generic_expression.operands : LIST [2:2] OF numeric_expression; END_ENTITY; -- IN AP203e2/AP242 ENTITY binary_representation_item SUBTYPE OF (representation_item); binary_value : BINARY; END_ENTITY; ENTITY block SUBTYPE OF (geometric_representation_item); position : axis2_placement_3d; x : positive_length_measure; y : positive_length_measure; z : positive_length_measure; END_ENTITY; -- IN AP214/AP242 ENTITY boolean_defined_function ABSTRACT SUPERTYPE SUBTYPE OF (defined_function, boolean_expression); END_ENTITY; -- DIFF IN AP203e2 ENTITY boolean_expression ABSTRACT SUPERTYPE OF (ONEOF(simple_boolean_expression, unary_boolean_expression, binary_boolean_expression, multiple_arity_boolean_expression, comparison_expression, interval_expression, boolean_defined_function)) SUBTYPE OF (expression); END_ENTITY; ENTITY boolean_literal SUBTYPE OF (simple_boolean_expression, generic_literal); the_value : BOOLEAN; END_ENTITY; -- IN AP203e2/AP242 ENTITY boolean_representation_item SUBTYPE OF (representation_item, boolean_literal); END_ENTITY; ENTITY boolean_result SUBTYPE OF (geometric_representation_item); operator : boolean_operator; first_operand : boolean_operand; second_operand : boolean_operand; END_ENTITY; -- IN AP242 ENTITY boolean_result_2d SUBTYPE OF (boolean_result); SELF\boolean_result.first_operand : boolean_operand_2d; SELF\boolean_result.second_operand : boolean_operand_2d; END_ENTITY; -- IN AP214/AP242 ENTITY boolean_variable SUBTYPE OF (simple_boolean_expression, variable); END_ENTITY; -- IN AP214/AP242 ENTITY boss SUBTYPE OF (feature_definition); WHERE WR1: SELF\characterized_object.description IN [ 'circular', 'complex', 'rectangular' ]; WR2: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'boss height occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'path feature component usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| (('STEP_MERGED_CAD_SCHEMA.PATH_FEATURE_COMPONENT' IN TYPEOF(sdr.relating_shape_aspect)) AND (sdr.relating_shape_aspect.description = 'linear')) AND (sdr.name = 'boss height'))) = 1))) = 1))) = 0; WR3: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND ((1 <= SIZEOF(pdr.used_representation.items)) AND (SIZEOF(pdr.used_representation.items) <= 2)))) = 1))) = 1; WR4: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (srwp_i <* pdr.used_representation.items| (srwp_i.name = 'orientation') OR (srwp_i.name = 'fillet radius'))) = SIZEOF(pdr.used_representation.items)))) = 1))) = 1; WR5: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'fillet radius'))) <= 1))) = 0))) = 0; WR6: NOT (SELF\characterized_object.description = 'circular') OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'circular profile occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'profile usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.CIRCULAR_CLOSED_PROFILE' IN TYPEOF(sdr.relating_shape_aspect)))) = 1))) = 1))) = 0); WR7: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'top condition occurrence') AND (SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'boss top usage') AND ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.BOSS_TOP' IN TYPEOF(fcr.relating_shape_aspect)))) = 1))) = 1))) = 0; WR8: NOT (SELF\characterized_object.description = 'circular') OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'change in diameter occurrence') AND (SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'taper usage') AND ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.TAPER' IN TYPEOF(fcr.related_shape_aspect)) AND ('STEP_MERGED_CAD_SCHEMA.BOSS' IN TYPEOF(fcr.relating_shape_aspect)))) = 1))) <= 1))) = 0); WR9: NOT (SELF\characterized_object.description = 'complex') OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'enclosed boundary occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'profile usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.NGON_CLOSED_PROFILE', 'STEP_MERGED_CAD_SCHEMA.CLOSED_PATH_PROFILE' ] * TYPEOF(sdr.relating_shape_aspect)) = 1))) = 1))) = 1))) = 0); WR10: NOT (SELF\characterized_object.description IN [ 'complex', 'rectangular' ]) OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'change in boundary occurrence') AND (SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATING_SHAPE_ASPECT')| (sar.description = 'taper usage') AND ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| (('STEP_MERGED_CAD_SCHEMA.TAPER' IN TYPEOF(fcr.related_shape_aspect)) AND ('STEP_MERGED_CAD_SCHEMA.BOSS' IN TYPEOF(fcr.relating_shape_aspect))) AND (fcr.related_shape_aspect.description IN [ 'angle taper', 'directed taper' ]))) = 1))) <= 1))) = 0); WR11: NOT (SELF\characterized_object.description = 'rectangular') OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'rectangular profile occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'profile usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.RECTANGULAR_CLOSED_PROFILE' IN TYPEOF(sdr.relating_shape_aspect)))) = 1))) = 1))) = 0); WR12: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.PLANAR_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'maximum feature limit'))) >= 0; END_ENTITY; -- IN AP214/AP242 ENTITY boss_top SUBTYPE OF (shape_aspect); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_DEFINITION' IN TYPEOF(SELF.of_shape.definition); WR2: SELF.description IN [ 'planar', 'complex' ]; WR3: NOT (SELF.description = 'planar') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.DIRECTION_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)))) = 1))) = 0); WR4: NOT (SELF.description = 'planar') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.LOCATION_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)))) = 1))) = 0); WR5: NOT (SELF.description = 'complex') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.FACE_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)))) = 1))) = 0); WR6: SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.' + 'RELATING_SHAPE_ASPECT')| ((sar.description = 'boss top usage') AND (sar.name IN [ 'boss height start', 'boss height end' ])) AND ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| ((fcr.related_shape_aspect.description = 'top condition occurrence') AND ('STEP_MERGED_CAD_SCHEMA.BOSS' IN TYPEOF(fcr.related_shape_aspect.of_shape.definition))) AND ('STEP_MERGED_CAD_SCHEMA.BOSS_TOP' IN TYPEOF(fcr.relating_shape_aspect)))) >= 1; WR7: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) <= 1))) = 0; WR8: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) = 1))) = 0))) = 0; WR9: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'top radius'))) <= 1))) = 0))) = 0; END_ENTITY; -- IN AP242 ENTITY bound_parameter_environment SUBTYPE OF (environment); WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.BOUND_VARIATIONAL_PARAMETER' IN TYPEOF(SELF\environment.syntactic_representation)) AND ('STEP_MERGED_CAD_SCHEMA.INSTANCE_ATTRIBUTE_REFERENCE' IN TYPEOF(SELF\environment.semantics)); END_ENTITY; -- IN AP242 ENTITY bound_variational_parameter SUBTYPE OF (variational_parameter); DERIVE SELF\variational_parameter.parameter_current_value : maths_value := ?; WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.BOUND_PARAMETER_ENVIRONMENT' IN TYPEOF(SELF\generic_variable.interpretation); END_ENTITY; ENTITY boundary_curve SUBTYPE OF (composite_curve_on_surface); WHERE WR1: SELF\composite_curve.closed_curve; END_ENTITY; -- IN AP242 ENTITY boundary_curve_of_b_spline_or_rectangular_composite_surface SUBTYPE OF (founded_item); basis_surface : b_spline_or_rectangular_composite_surface_select; boundary_type : surface_boundary_type; WHERE WR1: SIZEOF(using_representations(SELF.basis_surface) * relating_shape_representations_of_extreme_values(SELF)) > 0; END_ENTITY; ENTITY bounded_curve SUPERTYPE OF (ONEOF(polyline, b_spline_curve, trimmed_curve, bounded_pcurve, bounded_surface_curve, composite_curve)) SUBTYPE OF (curve); END_ENTITY; -- IN AP203e2/AP214 ENTITY bounded_pcurve SUBTYPE OF (pcurve, bounded_curve); WHERE wr1: 'STEP_MERGED_CAD_SCHEMA.BOUNDED_CURVE' IN TYPEOF(SELF\pcurve.reference_to_curve.items[1]); END_ENTITY; ENTITY bounded_surface SUPERTYPE OF (ONEOF(b_spline_surface, rectangular_trimmed_surface, curve_bounded_surface, rectangular_composite_surface)) SUBTYPE OF (surface); END_ENTITY; -- IN AP203e2/AP214 ENTITY bounded_surface_curve SUBTYPE OF (surface_curve, bounded_curve); WHERE wr1: 'STEP_MERGED_CAD_SCHEMA.BOUNDED_CURVE' IN TYPEOF(SELF\surface_curve.curve_3d); END_ENTITY; ENTITY box_domain SUBTYPE OF (founded_item); corner : cartesian_point; xlength : positive_length_measure; ylength : positive_length_measure; zlength : positive_length_measure; WHERE WR1: SIZEOF(QUERY (item <* USEDIN(SELF, '')| NOT ('STEP_MERGED_CAD_SCHEMA.BOXED_HALF_SPACE' IN TYPEOF(item)))) = 0; END_ENTITY; ENTITY boxed_half_space SUBTYPE OF (half_space_solid); enclosure : box_domain; END_ENTITY; -- IN AP203e2/AP242 ENTITY breakdown_context SUBTYPE OF (product_definition_relationship); END_ENTITY; -- IN AP203e2/AP242 ENTITY breakdown_element_group_assignment SUBTYPE OF (group_assignment); items : SET [1:1] OF product_definition_or_breakdown_element_usage; SELF\group_assignment.assigned_group : product_definition_element_relationship; END_ENTITY; -- IN AP203e2/AP242 ENTITY breakdown_element_realization SUBTYPE OF (characterized_object, product_definition_element_relationship); END_ENTITY; -- IN AP203e2/AP242 ENTITY breakdown_element_usage SUBTYPE OF (product_definition_relationship); END_ENTITY; -- IN AP203e2/AP242 ENTITY breakdown_of SUBTYPE OF (product_definition_relationship); END_ENTITY; ENTITY brep_with_voids SUBTYPE OF (manifold_solid_brep); voids : SET [1:?] OF oriented_closed_shell; END_ENTITY; -- IN AP203e2/AP242 ENTITY bytes_representation_item SUBTYPE OF (binary_representation_item); DERIVE no_of_bytes : INTEGER := BLENGTH(SELF\binary_representation_item.binary_value) DIV 8; WHERE WR1: BLENGTH(SELF\binary_representation_item.binary_value) MOD 8 = 0; END_ENTITY; ENTITY calendar_date SUBTYPE OF (date); day_component : day_in_month_number; month_component : month_in_year_number; WHERE WR1: valid_calendar_date(SELF); END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY camera_image SUPERTYPE OF (ONEOF(camera_image_2d_with_scale, camera_image_3d_with_scale)) SUBTYPE OF (mapped_item); SELF\mapped_item.mapping_source : camera_usage; SELF\mapped_item.mapping_target : planar_box; WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.GEOMETRIC_REPRESENTATION_ITEM' IN TYPEOF(SELF); END_ENTITY; -- IN AP214/AP242 ENTITY camera_image_2d_with_scale SUBTYPE OF (camera_image); DERIVE scale : positive_ratio_measure := SELF\mapped_item.mapping_target\planar_extent.size_in_x / SELF\mapped_item.mapping_source.mapping_origin\camera_model_d2.view_window\planar_extent.size_in_x; WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.CAMERA_MODEL_D2' IN TYPEOF(SELF\mapped_item.mapping_source.mapping_origin); WR2: aspect_ratio(SELF\mapped_item.mapping_target) = aspect_ratio(SELF\mapped_item.mapping_source.mapping_origin\camera_model_d2.view_window); WR3: SELF\mapped_item.mapping_source.mapping_origin\camera_model_d2.view_window_clipping; END_ENTITY; ENTITY camera_image_3d_with_scale SUBTYPE OF (camera_image); DERIVE scale : positive_ratio_measure := SELF\mapped_item.mapping_target\planar_extent.size_in_x / SELF\mapped_item.mapping_source.mapping_origin\camera_model_d3.perspective_of_volume.view_window.size_in_x; WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.CAMERA_MODEL_D3' IN TYPEOF(SELF\mapped_item.mapping_source.mapping_origin); WR2: aspect_ratio(SELF\mapped_item.mapping_target) = aspect_ratio(SELF\mapped_item.mapping_source.mapping_origin\camera_model_d3.perspective_of_volume.view_window); WR3: SELF\mapped_item.mapping_source.mapping_origin\camera_model_d3.perspective_of_volume.front_plane_clipping AND SELF\mapped_item.mapping_source.mapping_origin\camera_model_d3.perspective_of_volume.view_volume_sides_clipping; WR4: (SELF\mapped_item.mapping_target\planar_extent.size_in_x > 0) AND (SELF\mapped_item.mapping_target\planar_extent.size_in_y > 0); WR5: (SELF\mapped_item.mapping_source.mapping_origin\camera_model_d3.perspective_of_volume.view_window.size_in_x > 0) AND (SELF\mapped_item.mapping_source.mapping_origin\camera_model_d3.perspective_of_volume.view_window.size_in_y > 0); WR6: ('STEP_MERGED_CAD_SCHEMA.' + 'AXIS2_PLACEMENT_2D' IN TYPEOF(SELF\mapped_item.mapping_target\planar_box.placement)) AND NOT ('STEP_MERGED_CAD_SCHEMA.' + 'AXIS2_PLACEMENT_3D' IN TYPEOF(SELF\mapped_item.mapping_target\planar_box.placement)); END_ENTITY; -- DIFF IN AP203e2 ENTITY camera_model ABSTRACT SUPERTYPE OF (ONEOF(camera_model_d2, camera_model_d3)) SUBTYPE OF (geometric_representation_item); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ITEM_DEFINED_TRANSFORMATION.' + 'TRANSFORM_ITEM_1')) + SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'REPRESENTATION_MAP.MAPPING_ORIGIN')) > 0; WR2: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'STYLED_ITEM.ITEM')) = 0; END_ENTITY; -- IN AP214/AP242 ENTITY camera_model_d2 SUBTYPE OF (camera_model); view_window : planar_box; view_window_clipping : BOOLEAN; WHERE WR1: SELF\geometric_representation_item.dim = 2; END_ENTITY; ENTITY camera_model_d3 SUBTYPE OF (camera_model); view_reference_system : axis2_placement_3d; perspective_of_volume : view_volume; WHERE WR1: SELF\geometric_representation_item.dim = 3; END_ENTITY; -- IN AP203e2/AP242 ENTITY camera_model_d3_multi_clipping SUBTYPE OF (camera_model_d3); shape_clipping : SET [1:?] OF camera_model_d3_multi_clipping_interection_select; END_ENTITY; -- IN AP203e2/AP242 ENTITY camera_model_d3_multi_clipping_intersection SUBTYPE OF (geometric_representation_item); shape_clipping : SET [2:?] OF camera_model_d3_multi_clipping_interection_select; END_ENTITY; -- IN AP203e2/AP242 ENTITY camera_model_d3_multi_clipping_union SUBTYPE OF (geometric_representation_item); shape_clipping : SET [2:?] OF camera_model_d3_multi_clipping_union_select; END_ENTITY; ENTITY camera_model_d3_with_hlhsr SUBTYPE OF (camera_model_d3); hidden_line_surface_removal : BOOLEAN; END_ENTITY; -- IN AP203e2/AP242 ENTITY camera_model_with_light_sources SUBTYPE OF (camera_model_d3); sources : SET [1:?] OF light_source; END_ENTITY; ENTITY camera_usage SUBTYPE OF (representation_map); SELF\representation_map.mapping_origin : camera_model; WHERE WR1: NOT ('STEP_MERGED_CAD_SCHEMA.PRESENTATION_REPRESENTATION' IN TYPEOF(SELF\representation_map.mapped_representation)); END_ENTITY; -- IN AP203e2/AP242 ENTITY capacitance_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.CAPACITANCE_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; -- IN AP203e2/AP242 ENTITY capacitance_unit SUBTYPE OF (derived_unit); WHERE WR1: derive_dimensional_exponents(SELF) = dimensions_for_si_unit(si_unit_name.farad); END_ENTITY; -- IN AP242 ENTITY cartesian_complex_number_region SUBTYPE OF (maths_space, generic_literal); real_constraint : real_interval; imag_constraint : real_interval; WHERE WR1: ((min_exists(real_constraint) OR max_exists(real_constraint)) OR min_exists(imag_constraint)) OR max_exists(imag_constraint); END_ENTITY; ENTITY cartesian_point SUBTYPE OF (point); coordinates : LIST [1:3] OF length_measure; END_ENTITY; -- IN AP203e2/AP214 ENTITY cartesian_transformation_operator SUPERTYPE OF (ONEOF(cartesian_transformation_operator_2d, cartesian_transformation_operator_3d)) SUBTYPE OF (geometric_representation_item, functionally_defined_transformation); axis1 : OPTIONAL direction; axis2 : OPTIONAL direction; local_origin : cartesian_point; scale : OPTIONAL REAL; DERIVE scl : REAL := NVL(scale, 1.0); WHERE wr1: scl > 0.0; END_ENTITY; ENTITY cartesian_transformation_operator_2d SUBTYPE OF (cartesian_transformation_operator); DERIVE u : LIST [2:2] OF direction := base_axis(2, SELF\cartesian_transformation_operator.axis1, SELF\cartesian_transformation_operator.axis2, ?); WHERE WR1: SELF\geometric_representation_item.dim = 2; END_ENTITY; ENTITY cartesian_transformation_operator_3d SUBTYPE OF (cartesian_transformation_operator); axis3 : OPTIONAL direction; DERIVE u : LIST [3:3] OF direction := base_axis(3, SELF\cartesian_transformation_operator.axis1, SELF\cartesian_transformation_operator.axis2, axis3); WHERE WR1: SELF\geometric_representation_item.dim = 3; END_ENTITY; -- IN AP242 ENTITY cdgc_with_dimension SUBTYPE OF (curve_distance_geometric_constraint); distance_value : non_negative_length_measure; END_ENTITY; ENTITY celsius_temperature_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.THERMODYNAMIC_TEMPERATURE_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; ENTITY centre_of_symmetry SUBTYPE OF (derived_shape_aspect); END_ENTITY; ENTITY certification; name : label; purpose : text; kind : certification_type; END_ENTITY; ENTITY certification_assignment ABSTRACT SUPERTYPE; assigned_certification : certification; DERIVE role : object_role := get_role(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ROLE_ASSOCIATION.ITEM_WITH_ROLE')) <= 1; END_ENTITY; ENTITY certification_type; description : label; END_ENTITY; -- IN AP242 ENTITY chain_based_geometric_item_specific_usage SUBTYPE OF (geometric_item_specific_usage, chain_based_item_identified_representation_usage); END_ENTITY; -- IN AP242 ENTITY chain_based_item_identified_representation_usage SUBTYPE OF (item_identified_representation_usage); nodes : LIST [2:?] OF UNIQUE representation; undirected_link : LIST [1:?] OF chained_representation_link; DERIVE directed_link : LIST [1:?] OF representation_relationship := get_directed_link(nodes, undirected_link); leaf : representation := SELF\item_identified_representation_usage.used_representation; root : representation := nodes[1]; SELF\item_identified_representation_usage.used_representation : representation := nodes[HIINDEX(nodes)]; WHERE WR1: EXISTS(directed_link); END_ENTITY; -- IN AP214/AP242 ENTITY chamfer SUBTYPE OF (transition_feature); WHERE WR1: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.FACE_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'chamfer face'))) <= 1))) = 0; WR2: SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATING_SHAPE_ASPECT')| ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| (('STEP_MERGED_CAD_SCHEMA.CHAMFER_OFFSET' IN TYPEOF(fcr.related_shape_aspect)) AND ('STEP_MERGED_CAD_SCHEMA.CHAMFER' IN TYPEOF(fcr.relating_shape_aspect))) AND (fcr.related_shape_aspect.description = 'first offset'))) = 1; WR3: SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATING_SHAPE_ASPECT')| ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| (('STEP_MERGED_CAD_SCHEMA.CHAMFER_OFFSET' IN TYPEOF(fcr.related_shape_aspect)) AND ('STEP_MERGED_CAD_SCHEMA.CHAMFER' IN TYPEOF(fcr.relating_shape_aspect))) AND (fcr.related_shape_aspect.description = 'second offset'))) = 1; END_ENTITY; -- IN AP214/AP242 ENTITY chamfer_offset SUBTYPE OF (shape_aspect); WHERE WR1: SELF.description IN [ 'first offset', 'second offset' ]; WR2: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1))) = 0; WR3: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) = 1))) = 0))) = 0; WR4: NOT (SELF.description = 'first offset') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'offset amount'))) = 1))) = 0))) = 0); WR5: NOT (SELF.description = 'first offset') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.FACE_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'first face shape'))) <= 1))) = 0); WR6: NOT (SELF.description = 'second offset') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'offset amount') OR (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'offset angle'))) = 1))) = 0))) = 0); WR7: NOT (SELF.description = 'second offset') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.FACE_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'second face shape'))) <= 1))) = 0); WR8: SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.CHAMFER' IN TYPEOF(sdr.relating_shape_aspect)) AND ('STEP_MERGED_CAD_SCHEMA.CHAMFER_OFFSET' IN TYPEOF(sdr.related_shape_aspect)))) = 1; END_ENTITY; -- IN AP203e2/AP242 ENTITY change SUBTYPE OF (action_assignment); items : SET [1:?] OF work_item; END_ENTITY; -- IN AP242 ENTITY change_composition_relationship SUBTYPE OF (group_relationship); SELF\group_relationship.related_group : change_element; SELF\group_relationship.relating_group : change_group; DERIVE composition : change_group := SELF\group_relationship.relating_group; element : change_element := SELF\group_relationship.related_group; END_ENTITY; -- IN AP242 ENTITY change_element ABSTRACT SUPERTYPE OF (ONEOF(modify_element, delete_element, add_element)) SUBTYPE OF (group, characterized_object); END_ENTITY; -- IN AP242 ENTITY change_element_sequence SUBTYPE OF (group_relationship); SELF\group_relationship.related_group : change_element; SELF\group_relationship.relating_group : change_element; DERIVE next : change_element := SELF\group_relationship.related_group; previous : change_element := SELF\group_relationship.relating_group; END_ENTITY; -- IN AP242 ENTITY change_group SUBTYPE OF (group); END_ENTITY; -- IN AP242 ENTITY change_group_assignment SUBTYPE OF (group_assignment); item : change_relationship_select; SELF\group_assignment.assigned_group : change_group; END_ENTITY; -- IN AP203e2/AP242 ENTITY change_request SUBTYPE OF (action_request_assignment); items : SET [1:?] OF change_request_item; END_ENTITY; -- IN AP203e2/AP242 ENTITY character_glyph_font_usage; character : generic_character_glyph_symbol; font : text_font; END_ENTITY; -- IN AP203e2/AP242 ENTITY character_glyph_style_outline SUBTYPE OF (founded_item); outline_style : curve_style; END_ENTITY; -- IN AP203e2/AP242 ENTITY character_glyph_style_stroke SUBTYPE OF (founded_item); stroke_style : curve_style; END_ENTITY; ENTITY character_glyph_symbol SUBTYPE OF (generic_character_glyph_symbol); character_box : planar_extent; baseline_ratio : ratio_measure; DERIVE box_height : length_measure := character_box.size_in_y; WHERE WR1: (0.0 <= baseline_ratio) AND (baseline_ratio <= 1.0); WR2: item_in_context(SELF.character_box, SELF\representation.context_of_items); WR3: 'STEP_MERGED_CAD_SCHEMA.POSITIVE_LENGTH_MEASURE' IN TYPEOF(SELF.box_height); END_ENTITY; -- IN AP203e2/AP242 ENTITY character_glyph_symbol_outline SUBTYPE OF (character_glyph_symbol); outlines : SET [1:?] OF annotation_fill_area; WHERE WR1: SELF.outlines <= SELF\representation.items; END_ENTITY; -- IN AP203e2/AP242 ENTITY character_glyph_symbol_stroke SUBTYPE OF (character_glyph_symbol); strokes : SET [1:?] OF curve; WHERE WR1: SELF.strokes <= SELF\representation.items; END_ENTITY; -- IN AP203e2/AP242 ENTITY characteristic_data_column_header SUBTYPE OF (general_property); END_ENTITY; -- IN AP203e2/AP242 ENTITY characteristic_data_column_header_link SUBTYPE OF (general_property_relationship); END_ENTITY; -- IN AP203e2/AP242 ENTITY characteristic_data_table_header SUBTYPE OF (general_property); END_ENTITY; -- IN AP203e2/AP242 ENTITY characteristic_data_table_header_decomposition SUBTYPE OF (general_property_relationship); END_ENTITY; -- IN AP203e2/AP242 ENTITY characteristic_type SUBTYPE OF (group); END_ENTITY; -- IN AP242 ENTITY characterized_chain_based_item_within_representation SUBTYPE OF (characterized_item_within_representation); nodes : LIST [2:?] OF UNIQUE representation; undirected_link : LIST [1:?] OF chained_representation_link; DERIVE directed_link : LIST [1:?] OF representation_relationship := get_directed_link(nodes, undirected_link); leaf : representation := SELF\characterized_item_within_representation.rep; SELF\characterized_item_within_representation.rep : representation := nodes[HIINDEX(nodes)]; root : representation := nodes[1]; WHERE WR1: EXISTS(directed_link); END_ENTITY; ENTITY characterized_class SUBTYPE OF (characterized_object, class); END_ENTITY; -- IN AP242 ENTITY characterized_item_within_representation SUBTYPE OF (characterized_object); item : representation_item; rep : representation; UNIQUE WR1 : item, rep; WHERE WR2: rep IN using_representations(item); END_ENTITY; ENTITY characterized_object; name : label; description : OPTIONAL text; END_ENTITY; -- IN AP242 ENTITY characterized_representation SUBTYPE OF (representation, characterized_object); DERIVE SELF\characterized_object.description : text := SELF\representation.description; SELF\characterized_object.name : label := SELF\representation.name; END_ENTITY; ENTITY circle SUBTYPE OF (conic); radius : positive_length_measure; END_ENTITY; -- IN AP242 ENTITY circular_area SUBTYPE OF (primitive_2d); centre : cartesian_point; radius : positive_length_measure; END_ENTITY; -- IN AP214/AP242 ENTITY circular_closed_profile SUBTYPE OF (shape_aspect); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_DEFINITION' IN TYPEOF(SELF.of_shape.definition); WR2: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1))) = 0; WR3: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) = 2))) = 0))) = 0; WR4: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.PLACEMENT' IN TYPEOF(it)) AND (it.name = 'orientation'))) = 1))) = 0))) = 0; WR5: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'diameter'))) = 1))) = 0))) = 0; END_ENTITY; -- IN AP242 ENTITY circular_path SUBTYPE OF (path_node); via_point : cartesian_point; END_ENTITY; -- IN AP214/AP242 ENTITY circular_pattern SUBTYPE OF (replicate_feature); WHERE WR1: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.' + 'RELATING_SHAPE_ASPECT')| ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT' IN TYPEOF(sdr.related_shape_aspect)))) = 1))) <= 3))) = 0; WR2: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1))) = 0; WR3: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT ((SIZEOF(impl_rep.used_representation.items) >= 3) AND (SIZEOF(impl_rep.used_representation.items) <= 5)))) = 0))) = 0; WR4: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'diameter'))) <= 1))) = 0))) = 0; WR5: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'base feature rotation'))) <= 1))) = 0))) = 0; WR6: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND ('STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE' IN TYPEOF(it\measure_with_unit.value_component))) AND (it.name = 'number of features'))) = 1))) = 0))) = 0; WR7: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'angular spacing'))) = 1))) = 0))) = 0; WR8: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.PLACEMENT' IN TYPEOF(it)) AND (it.name = 'orientation'))) = 1))) = 0))) = 0; END_ENTITY; ENTITY circular_runout_tolerance SUBTYPE OF (geometric_tolerance_with_datum_reference); END_ENTITY; ENTITY class SUBTYPE OF (group); END_ENTITY; -- IN AP203e2/AP242 ENTITY class_by_extension SUBTYPE OF (class); END_ENTITY; -- IN AP203e2/AP242 ENTITY class_by_intension SUBTYPE OF (class); END_ENTITY; ENTITY class_system SUBTYPE OF (group); END_ENTITY; ENTITY class_usage_effectivity_context_assignment SUBTYPE OF (effectivity_context_assignment); items : SET [1:?] OF class_usage_effectivity_context_item; WHERE WR1: SELF.role.name = 'class usage influence'; WR2: SIZEOF(QUERY (i <* SELF.items| NOT ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION' IN TYPEOF(i)))) = 0; WR3: ((('STEP_MERGED_CAD_SCHEMA.APPLIED_EFFECTIVITY_ASSIGNMENT' IN TYPEOF(SELF.assigned_effectivity_assignment)) AND (SIZEOF(TYPEOF(SELF.assigned_effectivity_assignment.assigned_effectivity)) = 1)) AND (SELF.assigned_effectivity_assignment.assigned_effectivity.id = 'class usage')) AND (SIZEOF(QUERY (i <* SELF.assigned_effectivity_assignment\applied_effectivity_assignment.items| NOT ('STEP_MERGED_CAD_SCHEMA.PRODUCT_CONCEPT_FEATURE_CATEGORY_USAGE' IN TYPEOF(i)))) = 0); END_ENTITY; ENTITY classification_assignment ABSTRACT SUPERTYPE; assigned_class : group; role : classification_role; END_ENTITY; ENTITY classification_role; name : label; description : OPTIONAL text; END_ENTITY; -- IN AP242 ENTITY clgc_with_dimension SUBTYPE OF (curve_length_geometric_constraint); length_value : positive_length_measure; END_ENTITY; -- IN AP242 ENTITY closed_curve_style_parameters SUBTYPE OF (curve_style_parameters_representation); END_ENTITY; -- IN AP214/AP242 ENTITY closed_path_profile SUBTYPE OF (shape_aspect); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_DEFINITION' IN TYPEOF(SELF.of_shape.definition); WR2: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1))) = 0; WR3: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) = 1))) = 0))) = 0; WR4: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.PLACEMENT' IN TYPEOF(it)) AND (it.name = 'orientation'))) = 1))) = 0))) = 0; WR5: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PATH_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)))) = 1))) = 0; END_ENTITY; ENTITY closed_shell SUBTYPE OF (connected_face_set); END_ENTITY; -- IN AP242 ENTITY coaxial_assembly_constraint SUBTYPE OF (binary_assembly_constraint, coaxial_geometric_constraint); END_ENTITY; -- IN AP242 ENTITY coaxial_geometric_constraint SUBTYPE OF (explicit_geometric_constraint); SELF\explicit_constraint.constrained_elements : SET [1:?] OF axial_geometry_constraint_element; SELF\explicit_constraint.reference_elements : SET [0:1] OF axial_geometry_constraint_element; WHERE WR1: SIZEOF(QUERY (q <* SELF\explicit_constraint.reference_elements| (SIZEOF(TYPEOF(q) * [ 'STEP_MERGED_CAD_SCHEMA.POINT', 'STEP_MERGED_CAD_SCHEMA.PLANE', 'STEP_MERGED_CAD_SCHEMA.SPHERICAL_SURFACE', 'STEP_MERGED_CAD_SCHEMA.SPHERE' ]) > 0))) = 0; END_ENTITY; ENTITY coaxiality_tolerance SUBTYPE OF (geometric_tolerance_with_datum_reference); END_ENTITY; ENTITY colour; END_ENTITY; ENTITY colour_rgb SUBTYPE OF (colour_specification); red : REAL; green : REAL; blue : REAL; WHERE WR1: (0.0 <= red) AND (red <= 1.0); WR2: (0.0 <= green) AND (green <= 1.0); WR3: (0.0 <= blue) AND (blue <= 1.0); END_ENTITY; ENTITY colour_specification SUBTYPE OF (colour); name : label; END_ENTITY; ENTITY common_datum SUBTYPE OF (composite_shape_aspect, datum); WHERE WR1: SIZEOF(SELF\composite_shape_aspect.component_relationships) = 2; WR2: SIZEOF(QUERY (sar <* SELF\composite_shape_aspect.component_relationships| NOT (('STEP_MERGED_CAD_SCHEMA.DATUM' IN TYPEOF(sar.related_shape_aspect)) AND NOT ('STEP_MERGED_CAD_SCHEMA.COMMON_DATUM' IN TYPEOF(sar.related_shape_aspect))))) = 0; END_ENTITY; -- IN AP214/AP242 ENTITY comparison_equal SUBTYPE OF (comparison_expression); END_ENTITY; -- DIFF IN AP203e2 ENTITY comparison_expression ABSTRACT SUPERTYPE OF (ONEOF(comparison_equal, comparison_greater, comparison_greater_equal, comparison_less, comparison_less_equal, comparison_not_equal, like_expression)) SUBTYPE OF (boolean_expression, binary_generic_expression); SELF\binary_generic_expression.operands : LIST [2:2] OF expression; WHERE WR1: (('STEP_MERGED_CAD_SCHEMA.NUMERIC_EXPRESSION' IN TYPEOF(SELF\binary_generic_expression.operands[1])) AND ('STEP_MERGED_CAD_SCHEMA.NUMERIC_EXPRESSION' IN TYPEOF(SELF\binary_generic_expression.operands[2])) OR ('STEP_MERGED_CAD_SCHEMA.BOOLEAN_EXPRESSION' IN TYPEOF(SELF\binary_generic_expression.operands[1])) AND ('STEP_MERGED_CAD_SCHEMA.BOOLEAN_EXPRESSION' IN TYPEOF(SELF\binary_generic_expression.operands[2]))) OR ('STEP_MERGED_CAD_SCHEMA.STRING_EXPRESSION' IN TYPEOF(SELF\binary_generic_expression.operands[1])) AND ('STEP_MERGED_CAD_SCHEMA.STRING_EXPRESSION' IN TYPEOF(SELF\binary_generic_expression.operands[2])); END_ENTITY; -- IN AP214/AP242 ENTITY comparison_greater SUBTYPE OF (comparison_expression); END_ENTITY; -- IN AP214/AP242 ENTITY comparison_greater_equal SUBTYPE OF (comparison_expression); END_ENTITY; -- IN AP214/AP242 ENTITY comparison_less SUBTYPE OF (comparison_expression); END_ENTITY; -- IN AP214/AP242 ENTITY comparison_less_equal SUBTYPE OF (comparison_expression); END_ENTITY; -- IN AP214/AP242 ENTITY comparison_not_equal SUBTYPE OF (comparison_expression); END_ENTITY; -- IN AP242 ENTITY complex_area ABSTRACT SUPERTYPE OF (path_area_with_parameters ANDOR primitive_2d_with_inner_boundary) SUBTYPE OF (primitive_2d); END_ENTITY; -- IN AP203e2/AP242 ENTITY complex_clause SUBTYPE OF (compound_representation_item); END_ENTITY; -- IN AP203e2/AP242 ENTITY complex_conjunctive_clause SUBTYPE OF (complex_clause); END_ENTITY; -- IN AP203e2/AP242 ENTITY complex_disjunctive_clause SUBTYPE OF (complex_clause); END_ENTITY; -- IN AP242 ENTITY complex_number_literal SUBTYPE OF (generic_literal); real_part : REAL; imag_part : REAL; END_ENTITY; -- IN AP242 ENTITY complex_number_literal_polar SUBTYPE OF (complex_number_literal); modulus : REAL; argument : REAL; DERIVE SELF\complex_number_literal.imag_part : REAL := modulus * sin(argument); SELF\complex_number_literal.real_part : REAL := modulus * cos(argument); WHERE WR1: modulus >= 0; WR2: (0 <= argument) AND (argument <= 2 * 3.14159); END_ENTITY; -- IN AP203e2/AP242 ENTITY complex_shelled_solid SUBTYPE OF (shelled_solid); thickened_face_list : LIST [1:?] OF SET [1:?] OF face_surface; thickness_list : LIST [1:?] OF length_measure; WHERE WR1: SIZEOF(thickened_face_list) = SIZEOF(thickness_list); WR2: SIZEOF(QUERY (q <* thickness_list| (q = 0))) = 0; END_ENTITY; -- IN AP242 ENTITY complex_triangulated_face SUBTYPE OF (tessellated_face); pnindex : LIST [0:?] OF INTEGER; triangle_strips : LIST [0:?] OF LIST [3:?] OF INTEGER; triangle_fans : LIST [0:?] OF LIST [3:?] OF INTEGER; WHERE WR1: (SIZEOF(pnindex) = 0) OR (SIZEOF(pnindex) = SELF\tessellated_face.pnmax); WR2: NOT ((SIZEOF(pnindex) = 0) AND (SELF\tessellated_face.pnmax <> coordinates.npoints)); WR3: NOT ((SIZEOF(triangle_strips) = 0) AND (SIZEOF(triangle_fans) = 0)); END_ENTITY; -- IN AP242 ENTITY complex_triangulated_surface_set SUBTYPE OF (tessellated_surface_set); pnindex : LIST [0:?] OF INTEGER; triangle_strips : LIST [0:?] OF LIST [3:?] OF INTEGER; triangle_fans : LIST [0:?] OF LIST [3:?] OF INTEGER; WHERE WR1: (SIZEOF(pnindex) = 0) OR (SIZEOF(pnindex) = SELF\tessellated_surface_set.pnmax); WR2: NOT ((SIZEOF(pnindex) = 0) AND (SELF\tessellated_surface_set.pnmax <> coordinates.npoints)); WR3: NOT ((SIZEOF(triangle_strips) = 0) AND (SIZEOF(triangle_fans) = 0)); END_ENTITY; -- IN AP242 ENTITY component_definition SUBTYPE OF (product_definition, product_definition_relationship); DERIVE SELF\product_definition_relationship.related_product_definition : component_definition := SELF; WHERE WR1: NOT EXISTS(SELF\product_definition_relationship.description); WR2: NOT EXISTS(SELF\property_definition.description); WR3: SELF\product_definition_relationship.id = SELF\product_definition.id; WR4: SELF\product_definition_relationship.name = 'definition usage'; WR5: NOT ('STEP_MERGED_CAD_SCHEMA.' + 'PRODUCT_DEFINITION_USAGE' IN TYPEOF(SELF)); END_ENTITY; -- IN AP242 ENTITY component_feature SUBTYPE OF (shape_aspect); SELF\shape_aspect.of_shape : assembly_component; END_ENTITY; -- IN AP242 ENTITY component_feature_joint SUBTYPE OF (shape_aspect_relationship, shape_aspect); SELF\shape_aspect_relationship.related_shape_aspect : component_feature; SELF\shape_aspect_relationship.relating_shape_aspect : component_feature; END_ENTITY; -- IN AP242 ENTITY component_feature_relationship SUBTYPE OF (shape_aspect_relationship); SELF\shape_aspect_relationship.related_shape_aspect : component_feature; SELF\shape_aspect_relationship.relating_shape_aspect : component_feature; WHERE WR1: SELF\shape_aspect_relationship.related_shape_aspect :<>: SELF\shape_aspect_relationship.relating_shape_aspect; END_ENTITY; -- IN AP242 ENTITY component_mating_constraint_condition SUBTYPE OF (shape_aspect); UNIQUE UR1 : SELF\shape_aspect.name, SELF\shape_aspect.of_shape; END_ENTITY; -- IN AP242 ENTITY component_path_shape_aspect SUBTYPE OF (shape_aspect); location : multi_or_next_assembly_usage_occurrence; component_shape_aspect : internal_or_reflected_shape_aspect; UNIQUE UR1 : location, component_shape_aspect; END_ENTITY; -- IN AP242 ENTITY component_terminal SUBTYPE OF (component_feature); END_ENTITY; -- IN AP203e2 ENTITY composite_assembly_definition SUBTYPE OF (product_definition); WHERE WR1: SIZEOF(QUERY (pdr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PRODUCT_DEFINITION_RELATIONSHIP.' + 'RELATING_PRODUCT_DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.' + 'NEXT_ASSEMBLY_USAGE_OCCURRENCE' IN TYPEOF(pdr)))) = 1; END_ENTITY; -- IN AP203e2/AP242 ENTITY composite_assembly_sequence_definition SUBTYPE OF (product_definition); WHERE WR1: SIZEOF(QUERY (pdr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PRODUCT_DEFINITION_RELATIONSHIP.' + 'RELATING_PRODUCT_DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.' + 'NEXT_ASSEMBLY_USAGE_OCCURRENCE' IN TYPEOF(pdr)))) > 0; END_ENTITY; -- IN AP203e2/AP242 ENTITY composite_assembly_table SUBTYPE OF (part_laminate_table); END_ENTITY; -- DIFF IN AP214 ENTITY composite_curve SUBTYPE OF (bounded_curve); segments : LIST [1:?] OF composite_curve_segment; self_intersect : LOGICAL; DERIVE closed_curve : LOGICAL := segments[n_segments].transition <> discontinuous; n_segments : INTEGER := SIZEOF(segments); WHERE WR1: NOT closed_curve AND (SIZEOF(QUERY (temp <* segments| (temp.transition = discontinuous))) = 1) OR closed_curve AND (SIZEOF(QUERY (temp <* segments| (temp.transition = discontinuous))) = 0); END_ENTITY; ENTITY composite_curve_on_surface SUPERTYPE OF (boundary_curve) SUBTYPE OF (composite_curve); DERIVE basis_surface : SET [0:2] OF surface := get_basis_surface(SELF); WHERE WR1: SIZEOF(basis_surface) > 0; WR2: constraints_composite_curve_on_surface(SELF); END_ENTITY; ENTITY composite_curve_segment SUBTYPE OF (founded_item); transition : transition_code; same_sense : BOOLEAN; parent_curve : curve; INVERSE using_curves : BAG [1:?] OF composite_curve FOR segments; WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.BOUNDED_CURVE' IN TYPEOF(parent_curve); END_ENTITY; -- IN AP242 ENTITY composite_curve_transition_locator SUBTYPE OF (founded_item); basis_curve : composite_curve; transition_index : INTEGER; WHERE WR1: SIZEOF(using_representations(SELF.basis_curve) * relating_shape_representations_of_extreme_values(SELF)) > 0; END_ENTITY; -- IN AP242 ENTITY composite_group_shape_aspect SUBTYPE OF (composite_shape_aspect); END_ENTITY; -- IN AP214/AP242 ENTITY composite_hole SUBTYPE OF (compound_feature); WHERE WR1: SELF\characterized_object.description IN [ 'counterbore', 'countersunk' ]; WR2: SIZEOF(QUERY (pds <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pds)) AND (SIZEOF(QUERY (csa <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| ('STEP_MERGED_CAD_SCHEMA.COMPOSITE_SHAPE_ASPECT' IN TYPEOF(csa)) AND (SIZEOF(QUERY (sar <* csa.component_relationships| ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)) AND ('STEP_MERGED_CAD_SCHEMA.ROUND_HOLE' IN TYPEOF(sar.related_shape_aspect)))) = 2))) = 1))) = 1; WR3: NOT (SELF\characterized_object.description = 'countersunk') OR (SIZEOF(QUERY (pds <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pds)) AND (SIZEOF(QUERY (csa <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| ('STEP_MERGED_CAD_SCHEMA.COMPOSITE_SHAPE_ASPECT' IN TYPEOF(csa)) AND (SIZEOF(QUERY (sar <* csa.component_relationships| ('STEP_MERGED_CAD_SCHEMA.ROUND_HOLE' IN TYPEOF(sar.related_shape_aspect)) AND NOT (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(sar.related_shape_aspect, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'change in diameter occurrence') AND (SIZEOF(QUERY (fcr2 <* QUERY (sar2 <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATING_SHAPE_ASPECT')| (sar2.description = 'taper usage') AND ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar2)))| ('STEP_MERGED_CAD_SCHEMA.TAPER' IN TYPEOF(fcr2.related_shape_aspect)))) = 1))) = 0))) = 0))) = 1))) = 1))) = 1); END_ENTITY; -- IN AP203e2/AP242 ENTITY composite_material_designation SUBTYPE OF (material_designation); END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY composite_shape_aspect SUPERTYPE OF (ONEOF(continuous_shape_aspect, common_datum, composite_group_shape_aspect)) SUBTYPE OF (shape_aspect); INVERSE component_relationships : SET [2:?] OF shape_aspect_relationship FOR relating_shape_aspect; END_ENTITY; -- IN AP203e2/AP242 ENTITY composite_sheet_representation SUBTYPE OF (shape_representation); WHERE WR1: SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'GEOMETRICALLY_BOUNDED_SURFACE_SHAPE_REPRESENTATION'), ('STEP_MERGED_CAD_SCHEMA.' + 'MANIFOLD_SURFACE_SHAPE_REPRESENTATION') ] * TYPEOF(SELF)) = 1; END_ENTITY; ENTITY composite_text SUBTYPE OF (geometric_representation_item); collected_text : SET [2:?] OF text_or_character; WHERE WR1: acyclic_composite_text(SELF, SELF.collected_text); END_ENTITY; ENTITY composite_text_with_associated_curves SUBTYPE OF (composite_text); associated_curves : SET [1:?] OF curve; END_ENTITY; ENTITY composite_text_with_blanking_box SUBTYPE OF (composite_text); blanking : planar_box; END_ENTITY; -- IN AP203e2/AP242 ENTITY composite_text_with_delineation SUBTYPE OF (composite_text); delineation : text_delineation; END_ENTITY; ENTITY composite_text_with_extent SUBTYPE OF (composite_text); extent : planar_extent; END_ENTITY; -- IN AP242 ENTITY composite_unit_shape_aspect SUBTYPE OF (composite_shape_aspect); END_ENTITY; -- IN AP214/AP242 ENTITY compound_feature SUBTYPE OF (feature_definition); WHERE WR1: SIZEOF(QUERY (pds <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pds)) AND (SIZEOF(QUERY (csa <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (csa.name = 'compound feature in solid') AND ('STEP_MERGED_CAD_SCHEMA.COMPOSITE_SHAPE_ASPECT' IN TYPEOF(csa)))) = 1))) = 1; WR2: SIZEOF(QUERY (pds <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pds)) AND (SIZEOF(QUERY (csa <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| ('STEP_MERGED_CAD_SCHEMA.COMPOSITE_SHAPE_ASPECT' IN TYPEOF(csa)))) = 1))) = 1; WR3: SIZEOF(QUERY (pds <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pds)) AND (SIZEOF(QUERY (csa <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| ('STEP_MERGED_CAD_SCHEMA.COMPOSITE_SHAPE_ASPECT' IN TYPEOF(csa)) AND (SIZEOF(QUERY (fcr <* csa.component_relationships| NOT ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(fcr)))) = 0))) = 1))) = 1; WR4: SIZEOF(QUERY (pds <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pds)) AND (SIZEOF(QUERY (csa <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| ('STEP_MERGED_CAD_SCHEMA.COMPOSITE_SHAPE_ASPECT' IN TYPEOF(csa)))) = 1))) = 1; WR5: SIZEOF(QUERY (pds <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pds)) AND (SIZEOF(QUERY (csa <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| ('STEP_MERGED_CAD_SCHEMA.COMPOSITE_SHAPE_ASPECT' IN TYPEOF(csa)) AND (SIZEOF(QUERY (sar <* csa.component_relationships| ('STEP_MERGED_CAD_SCHEMA.THREAD' IN TYPEOF(sar.related_shape_aspect)))) = 0))) = 1))) = 1; WR6: SIZEOF(QUERY (pds <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pds)) AND (SIZEOF(QUERY (csa <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| ('STEP_MERGED_CAD_SCHEMA.COMPOSITE_SHAPE_ASPECT' IN TYPEOF(csa)) AND (SIZEOF(QUERY (sar <* csa.component_relationships| ('STEP_MERGED_CAD_SCHEMA.COMPOUND_FEATURE' IN TYPEOF(sar.related_shape_aspect)) AND (sar.related_shape_aspect\characterized_object.name <> SELF\characterized_object.name))) = 0))) = 1))) = 1; END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY compound_representation_item SUPERTYPE OF (ONEOF(point_and_vector, point_path) ANDOR ONEOF(row_representation_item, table_representation_item)) SUBTYPE OF (representation_item); item_element : compound_item_definition; END_ENTITY; ENTITY compound_shape_representation SUBTYPE OF (shape_representation); WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'GEOMETRIC_REPRESENTATION_CONTEXT' IN TYPEOF(SELF.context_of_items)) AND (SELF.context_of_items\geometric_representation_context.coordinate_space_dimension = 3); WR2: SIZEOF(QUERY (cbsr_i <* SELF.items| (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'EDGE_BASED_WIREFRAME_MODEL'), ('STEP_MERGED_CAD_SCHEMA.' + 'FACE_BASED_SURFACE_MODEL'), ('STEP_MERGED_CAD_SCHEMA.' + 'MAPPED_ITEM'), ('STEP_MERGED_CAD_SCHEMA.' + 'AXIS2_PLACEMENT_3D') ] * TYPEOF(cbsr_i)) <> 1))) = 0; WR3: SIZEOF(QUERY (cbsr_i <* SELF.items| (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'EDGE_BASED_WIREFRAME_MODEL'), ('STEP_MERGED_CAD_SCHEMA.' + 'FACE_BASED_SURFACE_MODEL'), ('STEP_MERGED_CAD_SCHEMA.' + 'MAPPED_ITEM') ] * TYPEOF(cbsr_i)) = 1))) > 0; WR4: SIZEOF(QUERY (cbsr_i <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.' + 'MAPPED_ITEM' IN TYPEOF(cbsr_i)) AND (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'COMPOUND_SHAPE_REPRESENTATION'), ('STEP_MERGED_CAD_SCHEMA.' + 'EDGE_BASED_WIREFRAME_SHAPE_REPRESENTATION'), ('STEP_MERGED_CAD_SCHEMA.' + 'NON_MANIFOLD_SURFACE_SHAPE_REPRESENTATION') ] * TYPEOF(cbsr_i\mapped_item.mapping_source)) <> 1))) = 0; END_ENTITY; -- IN AP214/AP242 ENTITY concat_expression SUBTYPE OF (string_expression, multiple_arity_generic_expression); SELF\multiple_arity_generic_expression.operands : LIST [2:?] OF string_expression; END_ENTITY; ENTITY concentricity_tolerance SUBTYPE OF (geometric_tolerance_with_datum_reference); END_ENTITY; ENTITY concept_feature_operator; name : label; description : OPTIONAL text; END_ENTITY; ENTITY concept_feature_relationship; name : label; description : OPTIONAL text; relating_product_concept_feature : product_concept_feature; related_product_concept_feature : product_concept_feature; END_ENTITY; ENTITY concept_feature_relationship_with_condition SUBTYPE OF (concept_feature_relationship); conditional_operator : concept_feature_operator; END_ENTITY; ENTITY conditional_concept_feature SUBTYPE OF (product_concept_feature); condition : concept_feature_relationship_with_condition; END_ENTITY; -- IN AP203e2/AP242 ENTITY conductance_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.CONDUCTANCE_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; -- IN AP203e2/AP242 ENTITY conductance_unit SUBTYPE OF (derived_unit); WHERE WR1: derive_dimensional_exponents(SELF) = dimensions_for_si_unit(si_unit_name.siemens); END_ENTITY; ENTITY configurable_item SUBTYPE OF (configuration_item); item_concept_feature : SET [1:?] OF product_concept_feature_association; END_ENTITY; -- IN AP214 ENTITY configuration_definition; pair_values : SET [1:?] OF pair_value; t_parameter : motion_parameter_measure; END_ENTITY; -- DIFF IN AP214 ENTITY configuration_design; configuration : configuration_item; design : configuration_design_item; DERIVE description : text := get_description_value(SELF); name : label := get_name_value(SELF); UNIQUE UR1 : configuration, design; WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'NAME_ATTRIBUTE.NAMED_ITEM')) <= 1; WR2: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'DESCRIPTION_ATTRIBUTE.DESCRIBED_ITEM')) <= 1; END_ENTITY; -- DIFF IN AP214 ENTITY configuration_effectivity SUBTYPE OF (product_definition_effectivity); configuration : configuration_design; UNIQUE UR1 : configuration, SELF\product_definition_effectivity.usage, SELF\effectivity.id; WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_USAGE' IN TYPEOF(SELF\product_definition_effectivity.usage); END_ENTITY; -- IN AP214 ENTITY configuration_interpolation; previous_configuration_definition : configuration_definition; next_configuration_definition : configuration_definition; interpolation : interpolation_type; END_ENTITY; ENTITY configuration_item; id : identifier; name : label; description : OPTIONAL text; item_concept : product_concept; purpose : OPTIONAL label; END_ENTITY; -- IN AP203e2/AP242 ENTITY configuration_item_hierarchical_relationship SUBTYPE OF (configuration_item_relationship); END_ENTITY; -- IN AP203e2/AP242 ENTITY configuration_item_relationship; name : label; description : OPTIONAL text; relating_configuration_item : configuration_item; related_configuration_item : configuration_item; END_ENTITY; -- IN AP203e2/AP242 ENTITY configuration_item_revision_sequence SUBTYPE OF (configuration_item_relationship); END_ENTITY; ENTITY configured_effectivity_assignment SUBTYPE OF (effectivity_assignment); items : SET [1:?] OF configured_effectivity_item; WHERE WR1: (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.EFFECTIVITY' ] * TYPEOF(SELF.assigned_effectivity)) = 1) AND (SELF.assigned_effectivity.id = 'configuration validity'); WR2: SIZEOF(SELF.items) = 1; WR3: SIZEOF(QUERY (i <* SELF.items| NOT ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION' IN TYPEOF(i)) OR NOT (i\product_definition.frame_of_reference.name IN [ 'conceptual definition', 'part occurrence', 'functional definition', 'alternative definition' ]))) = 0; WR4: SELF.role.name IN [ 'design', 'usage' ]; WR5: (SELF.role.name <> 'design') OR (SIZEOF(QUERY (i <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION' IN TYPEOF(i)) AND (i\product_definition.frame_of_reference.name = 'part occurrence'))) = 0); WR6: (SELF.role.name <> 'usage') OR (SIZEOF(QUERY (i <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION' IN TYPEOF(i)) AND (i\product_definition.frame_of_reference.name = 'conceptual definition'))) = 0); WR7: SELF.role.description IN [ 'exception', 'inherited', 'local' ]; WR8: SIZEOF(QUERY (x <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'EFFECTIVITY_CONTEXT_ASSIGNMENT.ASSIGNED_EFFECTIVITY_ASSIGNMENT')| ('STEP_MERGED_CAD_SCHEMA.CONFIGURED_EFFECTIVITY_CONTEXT_ASSIGNMENT' IN TYPEOF(x)))) = 1; END_ENTITY; -- DIFF IN AP214 ENTITY configured_effectivity_context_assignment SUBTYPE OF (effectivity_context_assignment); items : SET [1:?] OF configured_effectivity_context_item; SELF\effectivity_context_assignment.assigned_effectivity_assignment : configured_effectivity_assignment; WHERE WR1: SIZEOF(SELF.items) = 1; END_ENTITY; ENTITY conic SUPERTYPE OF (ONEOF(circle, ellipse, hyperbola, parabola)) SUBTYPE OF (curve); position : axis2_placement; END_ENTITY; -- IN AP203e2/AP242 ENTITY conical_stepped_hole_transition SUBTYPE OF (geometric_representation_item); transition_number : positive_integer; cone_apex_angle : plane_angle_measure; cone_base_radius : positive_length_measure; END_ENTITY; ENTITY conical_surface SUBTYPE OF (elementary_surface); radius : length_measure; semi_angle : plane_angle_measure; WHERE WR1: radius >= 0.0; END_ENTITY; ENTITY connected_edge_set SUBTYPE OF (topological_representation_item); ces_edges : SET [1:?] OF edge; END_ENTITY; ENTITY connected_face_set SUPERTYPE OF (ONEOF(closed_shell, open_shell)) SUBTYPE OF (topological_representation_item); cfs_faces : SET [1:?] OF face; END_ENTITY; ENTITY connected_face_sub_set SUBTYPE OF (connected_face_set); parent_face_set : connected_face_set; END_ENTITY; -- IN AP242 ENTITY connection_zone_based_assembly_joint SUBTYPE OF (assembly_joint); END_ENTITY; -- IN AP242 ENTITY connection_zone_interface_plane_relationship SUBTYPE OF (shape_aspect, shape_aspect_relationship); UNIQUE UR1 : SELF\shape_aspect.name; END_ENTITY; -- IN AP242 ENTITY constant_function SUBTYPE OF (maths_function, generic_literal); sole_output : maths_value; source_of_domain : maths_space_or_function; WHERE WR1: no_cyclic_domain_reference(source_of_domain, [ SELF ]); WR2: expression_is_constant(domain_from(source_of_domain)); END_ENTITY; -- IN AP242 ENTITY constrained_kinematic_motion_representation SUBTYPE OF (representation_relationship_with_transformation); SELF\representation_relationship.rep_1 : representative_shape_representation; SELF\representation_relationship.rep_2 : representative_shape_representation; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.AXIS2_PLACEMENT_3D' IN TYPEOF(SELF\representation_relationship_with_transformation.transformation_operator\item_defined_transformation.transform_item_1)) AND ('STEP_MERGED_CAD_SCHEMA.AXIS2_PLACEMENT_3D' IN TYPEOF(SELF\representation_relationship_with_transformation.transformation_operator\item_defined_transformation.transform_item_2)); WR2: (dimension_of(SELF\representation_relationship_with_transformation.transformation_operator\item_defined_transformation.transform_item_1) = 3) AND (dimension_of(SELF\representation_relationship_with_transformation.transformation_operator\item_defined_transformation.transform_item_2) = 3); WR3: (SELF\representation_relationship.rep_1 IN using_representations(SELF\representation_relationship_with_transformation.transformation_operator\item_defined_transformation.transform_item_1) + using_representation_with_mapping(SELF\representation_relationship_with_transformation.transformation_operator\item_defined_transformation.transform_item_1)) AND (SELF\representation_relationship.rep_2 IN using_representations(SELF\representation_relationship_with_transformation.transformation_operator\item_defined_transformation.transform_item_2) + using_representation_with_mapping(SELF\representation_relationship_with_transformation.transformation_operator\item_defined_transformation.transform_item_2)); WR4: 'STEP_MERGED_CAD_SCHEMA.KINEMATIC_PAIR' IN TYPEOF(SELF\representation_relationship_with_transformation.transformation_operator); END_ENTITY; ENTITY constructive_geometry_representation SUBTYPE OF (representation); WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.GEOMETRIC_REPRESENTATION_CONTEXT' IN TYPEOF(SELF.context_of_items)) AND ((2 <= SELF.context_of_items\geometric_representation_context.coordinate_space_dimension) AND (SELF.context_of_items\geometric_representation_context.coordinate_space_dimension <= 3)); WR2: SIZEOF(QUERY (cgr_i <* SELF.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.PLACEMENT', 'STEP_MERGED_CAD_SCHEMA.CURVE', 'STEP_MERGED_CAD_SCHEMA.EDGE', 'STEP_MERGED_CAD_SCHEMA.FACE', 'STEP_MERGED_CAD_SCHEMA.POINT', 'STEP_MERGED_CAD_SCHEMA.SURFACE', 'STEP_MERGED_CAD_SCHEMA.FACE_SURFACE', 'STEP_MERGED_CAD_SCHEMA.VERTEX_POINT' ] * TYPEOF(cgr_i)) <> 1))) = 0; WR3: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'REPRESENTATION_RELATIONSHIP.REP_2')) > 0; WR4: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'REPRESENTATION_MAP.MAPPED_REPRESENTATION')) = 0; END_ENTITY; -- DIFF IN AP214 ENTITY constructive_geometry_representation_relationship SUBTYPE OF (representation_relationship); SELF\representation_relationship.rep_1 : constructive_geometry_representation_or_shape_represenation; SELF\representation_relationship.rep_2 : constructive_geometry_representation; WHERE WR1: (SELF.rep_1.context_of_items :=: SELF.rep_2.context_of_items) AND ('STEP_MERGED_CAD_SCHEMA.GEOMETRIC_REPRESENTATION_CONTEXT' IN TYPEOF(SELF.rep_1.context_of_items)); WR2: NOT ('STEP_MERGED_CAD_SCHEMA.' + 'REPRESENTATION_RELATIONSHIP_WITH_TRANSFORMATION' IN TYPEOF(SELF)); END_ENTITY; ENTITY contact_ratio_representation SUBTYPE OF (representation); WHERE WR1: (SIZEOF(SELF.items) = 1) AND (SIZEOF(QUERY (i <* SELF.items| (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'MEASURE_REPRESENTATION_ITEM'), ('STEP_MERGED_CAD_SCHEMA.' + 'VALUE_RANGE') ] * TYPEOF(i)) = 1) AND (i.name = 'ratio value'))) = 1); WR2: (SIZEOF(QUERY (pdr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PROPERTY_DEFINITION_REPRESENTATION.' + 'USED_REPRESENTATION')| (pdr\property_definition_representation.name = 'contact ratio reference'))) = 1) AND (SIZEOF(QUERY (pdr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PROPERTY_DEFINITION_REPRESENTATION.' + 'USED_REPRESENTATION')| (pdr\property_definition_representation.name = 'contact ratio reference') AND ('STEP_MERGED_CAD_SCHEMA.' + 'PRODUCT_DEFINITION' IN TYPEOF(pdr\property_definition_representation.definition\property_definition.definition)))) = 1); WR3: (SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PROPERTY_DEFINITION_REPRESENTATION.' + 'USED_REPRESENTATION')) = 1) AND (SIZEOF(QUERY (pdr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PROPERTY_DEFINITION_REPRESENTATION.' + 'USED_REPRESENTATION')| (SIZEOF(QUERY (gpa <* USEDIN(pdr.definition, 'STEP_MERGED_CAD_SCHEMA.' + 'GENERAL_PROPERTY_ASSOCIATION.' + 'DERIVED_DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.' + 'GENERAL_PROPERTY' IN TYPEOF(gpa\general_property_association.base_definition)) AND (gpa\general_property_association.base_definition\general_property.name = 'surface_condition'))) = 1))) = 1); END_ENTITY; -- IN AP242 ENTITY contacting_feature SUBTYPE OF (shape_aspect); WHERE WR1: SELF\shape_aspect.product_definitional = FALSE; END_ENTITY; ENTITY context_dependent_invisibility SUBTYPE OF (invisibility); presentation_context : invisibility_context; END_ENTITY; -- IN AP242 ENTITY context_dependent_kinematic_link_representation; representation_relation : kinematic_link_representation_association; represented_product_relation : product_definition_relationship_kinematics; END_ENTITY; ENTITY context_dependent_over_riding_styled_item SUBTYPE OF (over_riding_styled_item); style_context : LIST [1:?] OF style_context_select; WHERE WR1: (SIZEOF(QUERY (sc <* SELF.style_context| ('STEP_MERGED_CAD_SCHEMA.REPRESENTATION_ITEM' IN TYPEOF(sc)))) = 1) OR (SIZEOF(QUERY (sc <* SELF.style_context| ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(sc)) OR ('STEP_MERGED_CAD_SCHEMA.REPRESENTATION_RELATIONSHIP' IN TYPEOF(sc)))) = SIZEOF(style_context)); END_ENTITY; ENTITY context_dependent_shape_representation; representation_relation : shape_representation_relationship; represented_product_relation : product_definition_shape; DERIVE description : text := get_description_value(SELF); name : label := get_name_value(SELF); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_RELATIONSHIP' IN TYPEOF(SELF.represented_product_relation.definition); WR2: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'DESCRIPTION_ATTRIBUTE.DESCRIBED_ITEM')) <= 1; WR3: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'NAME_ATTRIBUTE.NAMED_ITEM')) <= 1; END_ENTITY; ENTITY context_dependent_unit SUBTYPE OF (named_unit); name : label; END_ENTITY; -- IN AP242 ENTITY continuous_shape_aspect SUPERTYPE OF (ONEOF(between_shape_aspect, all_around_shape_aspect)) SUBTYPE OF (composite_shape_aspect); END_ENTITY; ENTITY contract; name : label; purpose : text; kind : contract_type; END_ENTITY; ENTITY contract_assignment ABSTRACT SUPERTYPE; assigned_contract : contract; DERIVE role : object_role := get_role(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ROLE_ASSOCIATION.ITEM_WITH_ROLE')) <= 1; END_ENTITY; -- IN AP203e2/AP242 ENTITY contract_relationship; id : identifier; name : label; description : OPTIONAL text; relating_contract : contract; related_contract : contract; END_ENTITY; ENTITY contract_type; description : label; END_ENTITY; -- DIFF IN AP214 ENTITY conversion_based_unit SUBTYPE OF (named_unit); name : label; conversion_factor : measure_with_unit; WHERE WR1: SELF\named_unit.dimensions = derive_dimensional_exponents(conversion_factor\measure_with_unit.unit_component); END_ENTITY; ENTITY coordinated_universal_time_offset; hour_offset : INTEGER; minute_offset : OPTIONAL INTEGER; sense : ahead_or_behind; DERIVE actual_minute_offset : INTEGER := NVL(minute_offset, 0); WHERE WR1: (0 <= hour_offset) AND (hour_offset < 24); WR2: (0 <= actual_minute_offset) AND (actual_minute_offset <= 59); WR3: NOT (((hour_offset <> 0) OR (actual_minute_offset <> 0)) AND (sense = exact)); END_ENTITY; -- IN AP242 ENTITY coordinates_list SUBTYPE OF (tessellated_item); npoints : INTEGER; position_coords : LIST [1:?] OF LIST [3:3] OF REAL; WHERE WR1: npoints = SIZEOF(position_coords); WR2: SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.REPOSITIONED_TESSELLATED_ITEM' ] * TYPEOF(SELF)) = 0; END_ENTITY; -- IN AP214/AP242 ENTITY cos_function SUBTYPE OF (unary_function_call); END_ENTITY; -- IN AP242 ENTITY csg_2d_shape_representation SUBTYPE OF (shape_representation); SELF\representation.items : SET [1:?] OF csg_2d_shape_select; WHERE WR1: SELF.context_of_items\geometric_representation_context.coordinate_space_dimension = 2; WR2: SIZEOF(QUERY (it <* SELF.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CSG_SOLID' ] * TYPEOF(it)) = 1) OR ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(it)) AND ('STEP_MERGED_CAD_SCHEMA.' + 'CSG_2D_SHAPE_REPRESENTATION' IN TYPEOF(it\mapped_item.mapping_source.mapped_representation)))) >= 1; WR3: SIZEOF(QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(it)) AND NOT ('STEP_MERGED_CAD_SCHEMA.' + 'CSG_2D_SHAPE_REPRESENTATION' IN TYPEOF(it\mapped_item.mapping_source.mapped_representation)))) = 0; END_ENTITY; -- IN AP242 ENTITY csg_primitive_solid_2d SUBTYPE OF (csg_solid_2d); SELF\csg_solid.tree_root_expression : bounded_primitive_2d; END_ENTITY; ENTITY csg_shape_representation SUBTYPE OF (shape_representation); WHERE WR1: SELF.context_of_items\geometric_representation_context.coordinate_space_dimension = 3; WR2: SIZEOF(QUERY (it <* SELF.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CSG_SOLID', 'STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM', 'STEP_MERGED_CAD_SCHEMA.AXIS2_PLACEMENT_3D', 'STEP_MERGED_CAD_SCHEMA.SOLID_REPLICA', 'STEP_MERGED_CAD_SCHEMA.REVOLVED_FACE_SOLID', 'STEP_MERGED_CAD_SCHEMA.EXTRUDED_FACE_SOLID' ] * TYPEOF(it)) <> 1))) = 0; WR3: SIZEOF(QUERY (mi <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(it)))| NOT ('STEP_MERGED_CAD_SCHEMA.CSG_SHAPE_REPRESENTATION' IN TYPEOF(mi\mapped_item.mapping_source.mapped_representation)))) = 0; WR4: SIZEOF(QUERY (sr <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.SOLID_REPLICA' IN TYPEOF(it)))| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CSG_SOLID', 'STEP_MERGED_CAD_SCHEMA.REVOLVED_FACE_SOLID', 'STEP_MERGED_CAD_SCHEMA.EXTRUDED_FACE_SOLID' ] * TYPEOF(sr\solid_replica.parent_solid)) = 0))) = 0; WR5: SIZEOF(QUERY (it <* SELF.items| NOT ('STEP_MERGED_CAD_SCHEMA.AXIS2_PLACEMENT_3D' IN TYPEOF(it)))) > 0; END_ENTITY; ENTITY csg_solid SUBTYPE OF (solid_model); tree_root_expression : csg_select; END_ENTITY; -- IN AP242 ENTITY csg_solid_2d SUBTYPE OF (csg_solid); SELF\csg_solid.tree_root_expression : csg_select_2d; WHERE WR1: valid_csg_2d_primitives(SELF); END_ENTITY; -- IN AP203e2/AP242 ENTITY currency ABSTRACT SUPERTYPE OF (ONEOF(externally_defined_currency, iso4217_currency)) SUBTYPE OF (context_dependent_unit); WHERE WR1: ((((((SELF\named_unit.dimensions.length_exponent = 0.0) AND (SELF\named_unit.dimensions.mass_exponent = 0.0)) AND (SELF\named_unit.dimensions.time_exponent = 0.0)) AND (SELF\named_unit.dimensions.electric_current_exponent = 0.0)) AND (SELF\named_unit.dimensions.thermodynamic_temperature_exponent = 0.0)) AND (SELF\named_unit.dimensions.amount_of_substance_exponent = 0.0)) AND (SELF\named_unit.dimensions.luminous_intensity_exponent = 0.0); END_ENTITY; -- IN AP203e2/AP242 ENTITY currency_measure_with_unit SUBTYPE OF (measure_with_unit); SELF\measure_with_unit.unit_component : currency; END_ENTITY; -- IN AP242 ENTITY current_change_element_assignment SUBTYPE OF (group_assignment); items : SET [1:?] OF change_management_object; SELF\group_assignment.assigned_group : current_element_assignment_select; END_ENTITY; ENTITY curve SUPERTYPE OF (ONEOF(line, conic, pcurve, surface_curve, offset_curve_2d, offset_curve_3d, curve_replica)) SUBTYPE OF (geometric_representation_item); END_ENTITY; -- IN AP242 ENTITY curve_based_path SUBTYPE OF (path_node); path_curve : curve; END_ENTITY; -- IN AP242 ENTITY curve_based_path_with_orientation SUBTYPE OF (kinematic_path_segment); position_curve : bounded_curve; orientation_curve : bounded_curve; WHERE WR1: TYPEOF(position_curve) = TYPEOF(orientation_curve); END_ENTITY; -- IN AP242 ENTITY curve_based_path_with_orientation_and_parameters SUBTYPE OF (curve_based_path_with_orientation); parameters : path_parameter_representation; END_ENTITY; ENTITY curve_bounded_surface SUBTYPE OF (bounded_surface); basis_surface : surface; boundaries : SET [1:?] OF boundary_curve; implicit_outer : BOOLEAN; WHERE WR1: NOT implicit_outer OR (SIZEOF(QUERY (temp <* boundaries| ('STEP_MERGED_CAD_SCHEMA.OUTER_BOUNDARY_CURVE' IN TYPEOF(temp)))) = 0); WR2: NOT implicit_outer OR ('STEP_MERGED_CAD_SCHEMA.BOUNDED_SURFACE' IN TYPEOF(basis_surface)); WR3: SIZEOF(QUERY (temp <* boundaries| ('STEP_MERGED_CAD_SCHEMA.OUTER_BOUNDARY_CURVE' IN TYPEOF(temp)))) <= 1; WR4: SIZEOF(QUERY (temp <* boundaries| (temp\composite_curve_on_surface.basis_surface[1] <> SELF.basis_surface))) = 0; END_ENTITY; ENTITY curve_dimension SUBTYPE OF (dimension_curve_directed_callout); END_ENTITY; -- IN AP242 ENTITY curve_distance_geometric_constraint SUBTYPE OF (explicit_geometric_constraint); near_points : SET [0:4] OF near_point_relationship; SELF\explicit_constraint.constrained_elements : SET [1:2] OF curve; SELF\explicit_constraint.reference_elements : SET [0:4] OF point_curve_or_surface_constraint_element; WHERE WR1: (SIZEOF(SELF\explicit_constraint.reference_elements) > 0) OR ('STEP_MERGED_CAD_SCHEMA.CDGC_WITH_DIMENSION' IN TYPEOF(SELF)) AND (SIZEOF(SELF\explicit_constraint.constrained_elements) = 2); WR2: SIZEOF(near_points) <= SIZEOF(SELF\explicit_constraint.reference_elements); WR3: SIZEOF(QUERY (q <* near_points| NOT (q\representation_item_relationship.relating_representation_item IN SELF\explicit_constraint.reference_elements))) = 0; END_ENTITY; -- IN AP242 ENTITY curve_length_geometric_constraint SUBTYPE OF (explicit_geometric_constraint); SELF\explicit_constraint.constrained_elements : SET [1:?] OF bounded_curve; WHERE WR1: SIZEOF(SELF\explicit_constraint.reference_elements) = 0; END_ENTITY; ENTITY curve_replica SUBTYPE OF (curve); parent_curve : curve; transformation : cartesian_transformation_operator; WHERE WR1: transformation.dim = parent_curve.dim; WR2: acyclic_curve_replica(SELF, parent_curve); END_ENTITY; -- IN AP242 ENTITY curve_segment_set SUBTYPE OF (geometric_representation_item); segments : SET [1:?] OF composite_curve_segment; END_ENTITY; -- IN AP242 ENTITY curve_smoothness_geometric_constraint SUBTYPE OF (explicit_geometric_constraint); smoothness : transition_code; SELF\explicit_constraint.constrained_elements : SET [1:1] OF curve_segment_set; WHERE WR1: SIZEOF(SELF\explicit_constraint.reference_elements) = 0; END_ENTITY; ENTITY curve_style SUBTYPE OF (founded_item); name : label; curve_font : curve_font_or_scaled_curve_font_select; curve_width : size_select; curve_colour : colour; END_ENTITY; ENTITY curve_style_font SUBTYPE OF (founded_item); name : label; pattern_list : LIST [1:?] OF curve_style_font_pattern; END_ENTITY; -- IN AP203e2/AP242 ENTITY curve_style_font_and_scaling SUBTYPE OF (founded_item); name : label; curve_font : curve_style_font_select; curve_font_scaling : REAL; END_ENTITY; ENTITY curve_style_font_pattern SUBTYPE OF (founded_item); visible_segment_length : positive_length_measure; invisible_segment_length : positive_length_measure; END_ENTITY; -- IN AP242 ENTITY curve_style_parameters_representation SUBTYPE OF (representation); END_ENTITY; -- IN AP242 ENTITY curve_style_parameters_with_ends SUBTYPE OF (curve_style_parameters_representation); END_ENTITY; ENTITY curve_style_rendering; rendering_method : shading_curve_method; rendering_properties : surface_rendering_properties; END_ENTITY; ENTITY curve_swept_solid_shape_representation SUBTYPE OF (shape_representation); WHERE WR1: SIZEOF(QUERY (it <* SELF.items| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.SWEPT_AREA_SOLID', 'STEP_MERGED_CAD_SCHEMA.SWEPT_DISK_SOLID', 'STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM', 'STEP_MERGED_CAD_SCHEMA.AXIS2_PLACEMENT_3D' ] * TYPEOF(it)) = 1))) = 0; WR2: SIZEOF(QUERY (it <* SELF.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.SWEPT_AREA_SOLID', 'STEP_MERGED_CAD_SCHEMA.SWEPT_DISK_SOLID', 'STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' ] * TYPEOF(it)) = 1))) > 0; WR3: SIZEOF(QUERY (mi <* QUERY (it <* items| ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(it)))| NOT ('STEP_MERGED_CAD_SCHEMA.CURVE_SWEPT_SOLID_SHAPE_REPRESENTATION' IN TYPEOF(mi\mapped_item.mapping_source.mapped_representation)))) = 0; WR4: SIZEOF(QUERY (scsas <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.SURFACE_CURVE_SWEPT_AREA_SOLID' IN TYPEOF(it)))| NOT (('STEP_MERGED_CAD_SCHEMA.SURFACE_CURVE' IN TYPEOF(scsas\surface_curve_swept_area_solid.directrix)) OR ('STEP_MERGED_CAD_SCHEMA.PCURVE' IN TYPEOF(scsas\surface_curve_swept_area_solid.directrix))))) = 0; END_ENTITY; -- IN AP242 ENTITY curve_with_excessive_segments SUBTYPE OF (overcomplex_geometry); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'B_SPLINE_OR_COMPOSITE_CURVE_SELECT' ]); WR4: validate_locations_of_extreme_value_type(SELF, []); WR5: validate_accuracy_types(SELF, []); END_ENTITY; -- IN AP242 ENTITY curve_with_small_curvature_radius SUBTYPE OF (geometry_with_local_near_degeneracy); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_UPPER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.CURVE' ]); WR4: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.POINT_ON_CURVE' ]); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY cylindrical_pair SUBTYPE OF (low_order_kinematic_pair); DERIVE SELF\low_order_kinematic_pair.r_x : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.r_y : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.r_z : BOOLEAN := TRUE; SELF\low_order_kinematic_pair.t_x : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.t_y : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.t_z : BOOLEAN := TRUE; END_ENTITY; -- IN AP214 ENTITY cylindrical_pair_range SUBTYPE OF (simple_pair_range); SELF\simple_pair_range.applies_to_pair : cylindrical_pair; lower_limit_actual_translation : translational_range_measure; upper_limit_actual_translation : translational_range_measure; lower_limit_actual_rotation : rotational_range_measure; upper_limit_actual_rotation : rotational_range_measure; WHERE wr1: (('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(lower_limit_actual_translation)) OR ('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(upper_limit_actual_translation))) XOR (lower_limit_actual_translation < upper_limit_actual_translation); wr2: (('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(lower_limit_actual_rotation)) OR ('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(upper_limit_actual_rotation))) XOR (lower_limit_actual_rotation < upper_limit_actual_rotation); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY cylindrical_pair_value SUBTYPE OF (pair_value); actual_translation : length_measure; actual_rotation : plane_angle_measure; SELF\pair_value.applies_to_pair : cylindrical_pair; END_ENTITY; -- IN AP242 ENTITY cylindrical_pair_with_range SUBTYPE OF (cylindrical_pair); lower_limit_actual_translation : OPTIONAL length_measure; upper_limit_actual_translation : OPTIONAL length_measure; lower_limit_actual_rotation : OPTIONAL plane_angle_measure; upper_limit_actual_rotation : OPTIONAL plane_angle_measure; WHERE WR1: (NOT EXISTS(lower_limit_actual_translation) OR NOT EXISTS(upper_limit_actual_translation)) XOR (lower_limit_actual_translation < upper_limit_actual_translation); WR2: (NOT EXISTS(lower_limit_actual_rotation) OR NOT EXISTS(upper_limit_actual_rotation)) XOR (lower_limit_actual_rotation < upper_limit_actual_rotation); END_ENTITY; ENTITY cylindrical_surface SUBTYPE OF (elementary_surface); radius : positive_length_measure; END_ENTITY; ENTITY cylindricity_tolerance SUBTYPE OF (geometric_tolerance); WHERE WR1: NOT ('STEP_MERGED_CAD_SCHEMA.' + 'GEOMETRIC_TOLERANCE_WITH_DATUM_REFERENCE' IN TYPEOF(SELF)); END_ENTITY; ENTITY data_environment; name : label; description : text; elements : SET [1:?] OF property_definition_representation; END_ENTITY; -- IN AP242 ENTITY data_quality_assessment_measurement_association; assessment_specification : data_quality_criterion_assessment_association; measurement_requirement : data_quality_criterion_measurement_association; WHERE WR1: SELF.measurement_requirement\representation_item_relationship.relating_representation_item :=: SELF.assessment_specification.criterion; END_ENTITY; -- IN AP242 ENTITY data_quality_assessment_specification; description : text; END_ENTITY; -- IN AP242 ENTITY data_quality_criteria_representation SUBTYPE OF (representation); WHERE WR1: SIZEOF(QUERY (q <* SELF\representation.items| ('STEP_MERGED_CAD_SCHEMA.' + 'DATA_QUALITY_CRITERION' IN TYPEOF(q)))) > 0; END_ENTITY; -- IN AP242 ENTITY data_quality_criterion SUBTYPE OF (representation_item); WHERE WR1: SIZEOF(QUERY (q <* bag_to_set(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.REPRESENTATION.ITEMS'))| ('STEP_MERGED_CAD_SCHEMA.' + 'DATA_QUALITY_INSPECTION_RESULT_REPRESENTATION' IN TYPEOF(q)))) = 0; END_ENTITY; -- IN AP242 ENTITY data_quality_criterion_assessment_association; criterion : data_quality_criterion; assessment_specification : data_quality_assessment_specification; END_ENTITY; -- IN AP242 ENTITY data_quality_criterion_measurement_association SUBTYPE OF (representation_item_relationship); SELF\representation_item_relationship.related_representation_item : data_quality_measurement_requirement; SELF\representation_item_relationship.relating_representation_item : data_quality_criterion; END_ENTITY; -- IN AP242 ENTITY data_quality_definition; description : text; END_ENTITY; -- IN AP242 ENTITY data_quality_definition_relationship; description : text; relating_data_quality_definition : data_quality_definition; related_data_quality_definition : data_quality_definition; END_ENTITY; -- IN AP242 ENTITY data_quality_definition_representation_relationship; description : text; definition : data_quality_definition; used_representation : used_quality_representation_select; END_ENTITY; -- IN AP242 ENTITY data_quality_inspection_criterion_report SUBTYPE OF (data_quality_inspection_report); statistical_values : SET [1:2] OF data_quality_inspection_criterion_report_item; WHERE WR1: SIZEOF(QUERY (i1 <* bag_to_set(USEDIN(SELF\data_quality_inspection_report.inspection_result.criterion_inspected, 'STEP_MERGED_CAD_SCHEMA.' + 'DATA_QUALITY_REPORT_REQUEST.CRITERION_OF_REPORT_REQUEST'))| ('STEP_MERGED_CAD_SCHEMA.' + 'SUMMARY_REPORT_REQUEST' IN TYPEOF(i1)))) > 0; WR2: (SIZEOF(SELF.statistical_values) = 1) OR (SELF.statistical_values[1].value_type <> SELF.statistical_values[2].value_type); END_ENTITY; -- IN AP242 ENTITY data_quality_inspection_criterion_report_item SUBTYPE OF (representation_item); statistical_value : INTEGER; value_type : statistical_value_type; WHERE WR1: SIZEOF(QUERY (q <* bag_to_set(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.REPRESENTATION.ITEMS'))| ('STEP_MERGED_CAD_SCHEMA.' + 'DATA_QUALITY_CRITERIA_REPRESENTATION' IN TYPEOF(q)))) = 0; END_ENTITY; -- IN AP242 ENTITY data_quality_inspection_instance_report SUBTYPE OF (data_quality_inspection_report); inspected_instances : LIST [1:?] OF data_quality_inspection_instance_report_item; WHERE WR1: SIZEOF(QUERY (i1 <* bag_to_set(USEDIN(SELF\data_quality_inspection_report.inspection_result.criterion_inspected, 'STEP_MERGED_CAD_SCHEMA.' + 'DATA_QUALITY_REPORT_REQUEST.CRITERION_OF_REPORT_REQUEST'))| ('STEP_MERGED_CAD_SCHEMA.' + 'DETAILED_REPORT_REQUEST' IN TYPEOF(i1)))) > 0; END_ENTITY; -- IN AP242 ENTITY data_quality_inspection_instance_report_item SUBTYPE OF (representation_item); inspected_elements : SET [1:?] OF inspected_element_select; WHERE WR1: SIZEOF(QUERY (q <* bag_to_set(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.REPRESENTATION.ITEMS'))| ('STEP_MERGED_CAD_SCHEMA.' + 'DATA_QUALITY_CRITERIA_REPRESENTATION' IN TYPEOF(q)))) = 0; END_ENTITY; -- IN AP242 ENTITY data_quality_inspection_report SUPERTYPE OF (ONEOF(data_quality_inspection_criterion_report, data_quality_inspection_instance_report)) SUBTYPE OF (representation_item); inspection_result : data_quality_inspection_result; WHERE WR1: SIZEOF(QUERY (q <* bag_to_set(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.REPRESENTATION.ITEMS'))| ('STEP_MERGED_CAD_SCHEMA.' + 'DATA_QUALITY_CRITERIA_REPRESENTATION' IN TYPEOF(q)))) = 0; END_ENTITY; -- IN AP242 ENTITY data_quality_inspection_result SUBTYPE OF (representation_item); criterion_inspected : data_quality_criterion; WHERE WR1: SIZEOF(QUERY (q <* bag_to_set(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.REPRESENTATION.ITEMS'))| ('STEP_MERGED_CAD_SCHEMA.' + 'DATA_QUALITY_CRITERIA_REPRESENTATION' IN TYPEOF(q)))) = 0; END_ENTITY; -- IN AP242 ENTITY data_quality_inspection_result_representation SUBTYPE OF (representation); criteria_inspected : data_quality_criteria_representation; WHERE WR1: SIZEOF(QUERY (q <* SELF\representation.items| ('STEP_MERGED_CAD_SCHEMA.' + 'DATA_QUALITY_INSPECTION_RESULT' IN TYPEOF(q)))) > 0; WR2: SIZEOF(inspected_product_definition(SELF)) > 0; END_ENTITY; -- IN AP242 ENTITY data_quality_inspection_result_with_judgement SUBTYPE OF (data_quality_inspection_result); judgement : BOOLEAN; END_ENTITY; -- IN AP242 ENTITY data_quality_measurement_requirement SUBTYPE OF (representation_item); WHERE WR1: SIZEOF(QUERY (q <* bag_to_set(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.REPRESENTATION.ITEMS'))| ('STEP_MERGED_CAD_SCHEMA.' + 'DATA_QUALITY_INSPECTION_RESULT_REPRESENTATION' IN TYPEOF(q)))) = 0; END_ENTITY; -- IN AP242 ENTITY data_quality_report_measurement_association SUBTYPE OF (representation_item_relationship); SELF\representation_item_relationship.related_representation_item : data_quality_inspection_report; SELF\representation_item_relationship.relating_representation_item : data_quality_measurement_requirement; END_ENTITY; -- IN AP242 ENTITY data_quality_report_request ABSTRACT SUPERTYPE OF (ONEOF(summary_report_request, detailed_report_request)); description : text; criterion_of_report_request : data_quality_criterion; END_ENTITY; -- DIFF IN AP214 ENTITY date SUPERTYPE OF (ONEOF(calendar_date, ordinal_date, week_of_year_and_day_date, year_month)); year_component : year_number; END_ENTITY; ENTITY date_and_time; date_component : date; time_component : local_time; END_ENTITY; ENTITY date_and_time_assignment ABSTRACT SUPERTYPE; assigned_date_and_time : date_and_time; role : date_time_role; END_ENTITY; ENTITY date_assignment ABSTRACT SUPERTYPE; assigned_date : date; role : date_role; END_ENTITY; -- IN AP203e2/AP242 ENTITY date_representation_item SUBTYPE OF (representation_item, date); END_ENTITY; ENTITY date_role; name : label; DERIVE description : text := get_description_value(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'DESCRIPTION_ATTRIBUTE.DESCRIBED_ITEM')) <= 1; END_ENTITY; -- IN AP203e2/AP242 ENTITY date_time_representation_item SUBTYPE OF (representation_item, date_and_time); END_ENTITY; ENTITY date_time_role; name : label; DERIVE description : text := get_description_value(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'DESCRIPTION_ATTRIBUTE.DESCRIBED_ITEM')) <= 1; END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY dated_effectivity SUBTYPE OF (effectivity); effectivity_end_date : OPTIONAL date_time_or_event_occurrence; effectivity_start_date : OPTIONAL date_time_or_event_occurrence; WHERE WR1: EXISTS(effectivity_end_date) OR EXISTS(effectivity_start_date); END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY datum SUBTYPE OF (shape_aspect); identification : identifier; INVERSE established_by_relationships : SET [1:?] OF shape_aspect_relationship FOR related_shape_aspect; UNIQUE UR1 : identification, SELF\shape_aspect.of_shape; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.COMMON_DATUM' IN TYPEOF(SELF)) XOR (SIZEOF(QUERY (x <* SELF\datum.established_by_relationships| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.DATUM_FEATURE', 'STEP_MERGED_CAD_SCHEMA.DATUM_TARGET' ] * TYPEOF(x\shape_aspect_relationship.relating_shape_aspect)) = 1))) >= 1); WR2: SIZEOF(QUERY (x <* SELF\datum.established_by_relationships| ('STEP_MERGED_CAD_SCHEMA.DATUM_FEATURE' IN TYPEOF(x\shape_aspect_relationship.relating_shape_aspect)))) <= 1; WR3: SELF\shape_aspect.product_definitional = FALSE; WR4: SELF\shape_aspect.name = ''; END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY datum_feature SUPERTYPE OF (ONEOF(dimensional_location_with_datum_feature, dimensional_size_with_datum_feature)) SUBTYPE OF (shape_aspect); INVERSE feature_basis_relationship : SET [1:?] OF shape_aspect_relationship FOR relating_shape_aspect; WHERE WR1: SIZEOF(QUERY (sar <* SELF\datum_feature.feature_basis_relationship| ('STEP_MERGED_CAD_SCHEMA.DATUM' IN TYPEOF(sar\shape_aspect_relationship.related_shape_aspect)))) = 1; WR2: SELF\shape_aspect.product_definitional = TRUE; END_ENTITY; ENTITY datum_feature_callout SUBTYPE OF (draughting_callout); END_ENTITY; ENTITY datum_reference; precedence : INTEGER; referenced_datum : datum; WHERE WR1: precedence > 0; END_ENTITY; -- IN AP242 ENTITY datum_reference_compartment SUBTYPE OF (general_datum_reference); INVERSE owner : datum_system FOR constituents; END_ENTITY; -- IN AP242 ENTITY datum_reference_element SUBTYPE OF (general_datum_reference); DERIVE owner : general_datum_reference := sts_get_general_datum_reference(SELF); WHERE WR1: SELF <> owner; WR2: EXISTS(owner); WR3: SELF\shape_aspect.of_shape = owner\shape_aspect.of_shape; END_ENTITY; -- IN AP242 ENTITY datum_reference_modifier_with_value; modifier_type : datum_reference_modifier_type; modifier_value : length_measure_with_unit; WHERE WR1: modifier_value\measure_with_unit.value_component > 0.0; END_ENTITY; -- IN AP242 ENTITY datum_system SUBTYPE OF (shape_aspect); constituents : LIST [1:3] OF UNIQUE datum_reference_compartment; UNIQUE UR1 : SELF\shape_aspect.of_shape, SELF\shape_aspect.name; WHERE WR1: SELF\shape_aspect.product_definitional = FALSE; END_ENTITY; -- DIFF IN AP214 ENTITY datum_target SUBTYPE OF (shape_aspect); target_id : identifier; INVERSE target_basis_relationship : SET [1:?] OF shape_aspect_relationship FOR relating_shape_aspect; WHERE WR1: SIZEOF(QUERY (sar <* SELF\datum_target.target_basis_relationship| ('STEP_MERGED_CAD_SCHEMA.DATUM' IN TYPEOF(sar\shape_aspect_relationship.related_shape_aspect)))) = 1; WR2: SELF\shape_aspect.product_definitional = TRUE; END_ENTITY; ENTITY datum_target_callout SUBTYPE OF (draughting_callout); END_ENTITY; ENTITY default_tolerance_table SUBTYPE OF (representation); WHERE WR1: SIZEOF(QUERY (i <* SELF.items| NOT ('STEP_MERGED_CAD_SCHEMA.DEFAULT_TOLERANCE_TABLE_CELL' IN TYPEOF(i)))) = 0; WR2: ((SIZEOF(QUERY (rr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'REPRESENTATION_RELATIONSHIP.REP_1')| (rr.name < 'general tolerance definition'))) = 0) AND (SIZEOF(QUERY (rr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'REPRESENTATION_RELATIONSHIP.REP_1')| (rr.name = 'general tolerance definition') AND (rr.rep_2.name < 'default tolerance'))) = 0)) AND (SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'REPRESENTATION_RELATIONSHIP.REP_2')) = 0); END_ENTITY; ENTITY default_tolerance_table_cell SUBTYPE OF (compound_representation_item); WHERE WR1: SIZEOF(QUERY (x <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'REPRESENTATION.ITEMS')| ('STEP_MERGED_CAD_SCHEMA.' + 'DEFAULT_TOLERANCE_TABLE' IN TYPEOF(x)))) = 1; WR2: default_tolerance_table_cell_wr2(SELF\compound_representation_item.item_element); WR3: default_tolerance_table_cell_wr3(SELF\compound_representation_item.item_element); WR4: default_tolerance_table_cell_wr4(SELF\compound_representation_item.item_element); WR5: default_tolerance_table_cell_wr5(SELF\compound_representation_item.item_element); END_ENTITY; -- IN AP214/AP242 ENTITY defined_character_glyph SUBTYPE OF (geometric_representation_item); definition : defined_glyph_select; placement : axis2_placement; END_ENTITY; -- IN AP242 ENTITY defined_constraint ABSTRACT SUPERTYPE OF (equal_parameter_constraint) SUBTYPE OF (explicit_constraint); END_ENTITY; -- CASE DIFF IN AP214 -- IN AP214/AP242 ENTITY defined_function ABSTRACT SUPERTYPE OF (ONEOF(numeric_defined_function, string_defined_function, boolean_defined_function) ANDOR SQL_mappable_defined_function); END_ENTITY; ENTITY defined_symbol SUBTYPE OF (geometric_representation_item); definition : defined_symbol_select; target : symbol_target; END_ENTITY; -- IN AP242 ENTITY definite_integral_expression SUBTYPE OF (quantifier_expression); lower_limit_neg_infinity : BOOLEAN; upper_limit_pos_infinity : BOOLEAN; DERIVE integrand : generic_expression := SELF\multiple_arity_generic_expression.operands[1]; variable_of_integration : maths_variable := SELF\multiple_arity_generic_expression.operands[2]; SELF\quantifier_expression.variables : LIST [1:1] OF UNIQUE generic_variable := [ variable_of_integration ]; WHERE WR1: has_values_space(integrand); WR2: space_is_continuum(values_space_of(integrand)); WR3: definite_integral_expr_check(SELF\multiple_arity_generic_expression.operands, lower_limit_neg_infinity, upper_limit_pos_infinity); END_ENTITY; -- IN AP242 ENTITY definite_integral_function SUBTYPE OF (maths_function, unary_generic_expression); variable_of_integration : input_selector; lower_limit_neg_infinity : BOOLEAN; upper_limit_pos_infinity : BOOLEAN; SELF\unary_generic_expression.operand : maths_function; DERIVE integrand : maths_function := SELF\unary_generic_expression.operand; WHERE WR1: space_is_continuum(integrand.range); WR2: definite_integral_check(integrand.domain, variable_of_integration, lower_limit_neg_infinity, upper_limit_pos_infinity); END_ENTITY; ENTITY definitional_representation SUBTYPE OF (representation); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.PARAMETRIC_REPRESENTATION_CONTEXT' IN TYPEOF(SELF\representation.context_of_items); END_ENTITY; -- IN AP203e2/AP242 ENTITY definitional_representation_relationship SUBTYPE OF (representation_relationship); WHERE WR1: acyclic_representation_relationship(SELF, [ SELF\representation_relationship.rep_2 ], 'STEP_MERGED_CAD_SCHEMA.' + 'REPRESENTATION'); END_ENTITY; -- IN AP203e2/AP242 ENTITY definitional_representation_relationship_with_same_context SUBTYPE OF (definitional_representation_relationship); WHERE WR1: SELF\representation_relationship.rep_1.context_of_items :=: SELF\representation_relationship.rep_2.context_of_items; END_ENTITY; ENTITY degenerate_pcurve SUBTYPE OF (point); basis_surface : surface; reference_to_curve : definitional_representation; WHERE WR1: SIZEOF(reference_to_curve\representation.items) = 1; WR2: 'STEP_MERGED_CAD_SCHEMA.CURVE' IN TYPEOF(reference_to_curve\representation.items[1]); WR3: reference_to_curve\representation.items[1]\geometric_representation_item.dim = 2; END_ENTITY; ENTITY degenerate_toroidal_surface SUBTYPE OF (toroidal_surface); select_outer : BOOLEAN; WHERE WR1: major_radius < minor_radius; END_ENTITY; -- IN AP242 ENTITY delete_element SUBTYPE OF (change_element); END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY derived_shape_aspect SUPERTYPE OF (ONEOF(apex, centre_of_symmetry, geometric_alignment, geometric_contact, geometric_intersection, parallel_offset, perpendicular_to, extension, tangent)) SUBTYPE OF (shape_aspect); INVERSE deriving_relationships : SET [1:?] OF shape_aspect_deriving_relationship FOR relating_shape_aspect; END_ENTITY; -- DIFF IN AP214 ENTITY derived_unit SUPERTYPE OF (ONEOF(absorbed_dose_unit, acceleration_unit, radioactivity_unit, area_unit, capacitance_unit, dose_equivalent_unit, electric_charge_unit, conductance_unit, electric_potential_unit, energy_unit, magnetic_flux_density_unit, force_unit, frequency_unit, illuminance_unit, inductance_unit, magnetic_flux_unit, power_unit, pressure_unit, resistance_unit, velocity_unit, volume_unit)); elements : SET [1:?] OF derived_unit_element; DERIVE name : label := get_name_value(SELF); WHERE WR1: (SIZEOF(elements) > 1) OR (SIZEOF(elements) = 1) AND (elements[1].exponent <> 1.0); WR2: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'NAME_ATTRIBUTE.NAMED_ITEM')) <= 1; END_ENTITY; ENTITY derived_unit_element; unit : named_unit; exponent : REAL; END_ENTITY; -- IN AP214 ENTITY derived_unit_variable SUBTYPE OF (derived_unit, variable_semantics); INVERSE associated_variable_environment : environment FOR semantics; END_ENTITY; ENTITY description_attribute; attribute_value : text; described_item : description_attribute_select; END_ENTITY; -- DIFF IN AP214 ENTITY descriptive_representation_item SUPERTYPE OF (ONEOF(tagged_text_item, uniform_resource_identifier)) SUBTYPE OF (representation_item); description : text; END_ENTITY; -- IN AP203e2/AP242 ENTITY design_make_from_relationship SUBTYPE OF (product_definition_relationship); END_ENTITY; -- IN AP242 ENTITY detailed_report_request SUBTYPE OF (data_quality_report_request); detailed_report_request_type : detailed_report_type; report_sequence : preferred_ordering; END_ENTITY; -- IN AP242 ENTITY detailed_report_request_with_number_of_data SUBTYPE OF (detailed_report_request); number_of_data : INTEGER; DERIVE SELF\detailed_report_request.detailed_report_request_type : detailed_report_type := measured_element; END_ENTITY; ENTITY diameter_dimension SUBTYPE OF (dimension_curve_directed_callout); END_ENTITY; -- IN AP203e2/AP242 ENTITY dielectric_constant_measure_with_unit SUBTYPE OF (ratio_measure_with_unit); END_ENTITY; ENTITY dimension_callout SUBTYPE OF (draughting_callout); WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.LEADER_DIRECTED_CALLOUT' IN TYPEOF(SELF)) XOR (SIZEOF(QUERY (dce_1 <* SELF\draughting_callout.contents| ('STEP_MERGED_CAD_SCHEMA.LEADER_CURVE' IN TYPEOF(dce_1)))) = 0); WR2: ('STEP_MERGED_CAD_SCHEMA.PROJECTION_DIRECTED_CALLOUT' IN TYPEOF(SELF)) XOR (SIZEOF(QUERY (dce_1 <* SELF\draughting_callout.contents| ('STEP_MERGED_CAD_SCHEMA.PROJECTION_CURVE' IN TYPEOF(dce_1)))) = 0); WR3: ('STEP_MERGED_CAD_SCHEMA.DIMENSION_CURVE_DIRECTED_CALLOUT' IN TYPEOF(SELF)) XOR (SIZEOF(QUERY (dce_1 <* SELF\draughting_callout.contents| ('STEP_MERGED_CAD_SCHEMA.DIMENSION_CURVE' IN TYPEOF(dce_1)))) = 0); END_ENTITY; ENTITY dimension_callout_component_relationship SUBTYPE OF (draughting_callout_relationship); WHERE WR1: SELF.name IN [ 'prefix', 'suffix' ]; WR2: 'STEP_MERGED_CAD_SCHEMA.STRUCTURED_DIMENSION_CALLOUT' IN TYPEOF(SELF.relating_draughting_callout); WR3: SIZEOF(TYPEOF(SELF.related_draughting_callout) * [ 'STEP_MERGED_CAD_SCHEMA.LEADER_DIRECTED_CALLOUT', 'STEP_MERGED_CAD_SCHEMA.PROJECTION_DIRECTED_CALLOUT', 'STEP_MERGED_CAD_SCHEMA.DIMENSION_CURVE_DIRECTED_CALLOUT', 'STEP_MERGED_CAD_SCHEMA.STRUCTURED_DIMENSION_CALLOUT' ]) = 0; WR4: SELF.related_draughting_callout.contents * SELF.relating_draughting_callout.contents = SELF.related_draughting_callout.contents; WR5: (SELF.name = 'prefix') AND (SIZEOF(QUERY (ato <* QUERY (con <* SELF.related_draughting_callout.contents| ('STEP_MERGED_CAD_SCHEMA.ANNOTATION_TEXT_OCCURRENCE' IN TYPEOF(con)))| NOT (ato.name = 'prefix text'))) = 0); WR6: (SELF.name = 'suffix') AND (SIZEOF(QUERY (ato <* QUERY (con <* SELF.related_draughting_callout.contents| ('STEP_MERGED_CAD_SCHEMA.ANNOTATION_TEXT_OCCURRENCE' IN TYPEOF(con)))| NOT (ato.name = 'suffix text'))) = 0); END_ENTITY; ENTITY dimension_callout_relationship SUBTYPE OF (draughting_callout_relationship); WHERE WR1: SELF.name IN [ 'primary', 'secondary' ]; WR2: SIZEOF(TYPEOF(SELF.relating_draughting_callout) * [ 'STEP_MERGED_CAD_SCHEMA.ANGULAR_DIMENSION', 'STEP_MERGED_CAD_SCHEMA.CURVE_DIMENSION', 'STEP_MERGED_CAD_SCHEMA.DIAMETER_DIMENSION', 'STEP_MERGED_CAD_SCHEMA.LEADER_DIRECTED_DIMENSION', 'STEP_MERGED_CAD_SCHEMA.LINEAR_DIMENSION', 'STEP_MERGED_CAD_SCHEMA.ORDINATE_DIMENSION', 'STEP_MERGED_CAD_SCHEMA.RADIUS_DIMENSION' ]) >= 1; WR3: SIZEOF(TYPEOF(SELF.related_draughting_callout) * [ 'STEP_MERGED_CAD_SCHEMA.DIMENSION_CURVE_DIRECTED_CALLOUT', 'STEP_MERGED_CAD_SCHEMA.PROJECTION_DIRECTED_CALLOUT', 'STEP_MERGED_CAD_SCHEMA.LEADER_DIRECTED_CALLOUT' ]) = 0; WR4: SELF.related_draughting_callout.contents * SELF.relating_draughting_callout.contents = SELF.related_draughting_callout.contents; END_ENTITY; ENTITY dimension_curve SUBTYPE OF (annotation_curve_occurrence); WHERE WR1: SIZEOF(QUERY (dct <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'TERMINATOR_SYMBOL.ANNOTATED_CURVE')| ('STEP_MERGED_CAD_SCHEMA.' + 'DIMENSION_CURVE_TERMINATOR' IN TYPEOF(dct)))) <= 2; WR2: SIZEOF(QUERY (dcdc <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_CALLOUT.CONTENTS')| ('STEP_MERGED_CAD_SCHEMA.' + 'DIMENSION_CURVE_DIRECTED_CALLOUT' IN TYPEOF(dcdc)))) >= 1; WR3: (SIZEOF(QUERY (dct1 <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'TERMINATOR_SYMBOL.ANNOTATED_CURVE')| ('STEP_MERGED_CAD_SCHEMA.' + 'DIMENSION_CURVE_TERMINATOR' IN TYPEOF(dct1)) AND (dct1\dimension_curve_terminator.role = dimension_extent_usage.origin))) <= 1) AND (SIZEOF(QUERY (dct2 <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'TERMINATOR_SYMBOL.ANNOTATED_CURVE')| ('STEP_MERGED_CAD_SCHEMA.' + 'DIMENSION_CURVE_TERMINATOR' IN TYPEOF(dct2)) AND (dct2\dimension_curve_terminator.role = dimension_extent_usage.target))) <= 1); END_ENTITY; ENTITY dimension_curve_directed_callout SUBTYPE OF (draughting_callout); WHERE WR1: SIZEOF(QUERY (d_c <* SELF\draughting_callout.contents| ('STEP_MERGED_CAD_SCHEMA.DIMENSION_CURVE' IN TYPEOF(d_c)))) <= 2; WR2: SIZEOF(SELF\draughting_callout.contents) >= 2; END_ENTITY; ENTITY dimension_curve_terminator SUBTYPE OF (terminator_symbol); role : dimension_extent_usage; WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.DIMENSION_CURVE' IN TYPEOF(SELF\terminator_symbol.annotated_curve); END_ENTITY; -- IN AP203e2/AP242 ENTITY dimension_curve_terminator_to_projection_curve_associativity SUBTYPE OF (annotation_occurrence_associativity); SELF\annotation_occurrence_relationship.related_annotation_occurrence : projection_curve; SELF\annotation_occurrence_relationship.relating_annotation_occurrence : dimension_curve_terminator; END_ENTITY; ENTITY dimension_pair SUBTYPE OF (draughting_callout_relationship); WHERE WR1: SELF.name IN [ 'chained', 'parallel' ]; WR2: SIZEOF(TYPEOF(SELF.relating_draughting_callout) * [ 'STEP_MERGED_CAD_SCHEMA.ANGULAR_DIMENSION', 'STEP_MERGED_CAD_SCHEMA.CURVE_DIMENSION', 'STEP_MERGED_CAD_SCHEMA.DIAMETER_DIMENSION', 'STEP_MERGED_CAD_SCHEMA.LINEAR_DIMENSION', 'STEP_MERGED_CAD_SCHEMA.ORDINATE_DIMENSION', 'STEP_MERGED_CAD_SCHEMA.RADIUS_DIMENSION' ]) = 1; WR3: SIZEOF(TYPEOF(SELF.related_draughting_callout) * [ 'STEP_MERGED_CAD_SCHEMA.ANGULAR_DIMENSION', 'STEP_MERGED_CAD_SCHEMA.CURVE_DIMENSION', 'STEP_MERGED_CAD_SCHEMA.DIAMETER_DIMENSION', 'STEP_MERGED_CAD_SCHEMA.LINEAR_DIMENSION', 'STEP_MERGED_CAD_SCHEMA.ORDINATE_DIMENSION', 'STEP_MERGED_CAD_SCHEMA.RADIUS_DIMENSION' ]) = 1; END_ENTITY; ENTITY dimension_related_tolerance_zone_element; related_dimension : dimensional_location; related_element : tolerance_zone_definition; END_ENTITY; ENTITY dimension_text_associativity SUBTYPE OF (text_literal, mapped_item); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.SHAPE_DIMENSION_REPRESENTATION' IN TYPEOF(SELF\mapped_item.mapping_source.mapped_representation); WR2: 'STEP_MERGED_CAD_SCHEMA.DRAUGHTING_CALLOUT' IN TYPEOF(SELF\mapped_item.mapping_target); WR3: SIZEOF(QUERY (ato <* QUERY (si <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.STYLED_ITEM.ITEM')| ('STEP_MERGED_CAD_SCHEMA.ANNOTATION_TEXT_OCCURRENCE' IN TYPEOF(si)))| NOT (SIZEOF(QUERY (dc <* USEDIN(ato, ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_CALLOUT.CONTENTS'))| ('STEP_MERGED_CAD_SCHEMA.DRAUGHTING_CALLOUT' IN TYPEOF(dc))) * [ SELF\mapped_item.mapping_target ]) = 1))) = 0; END_ENTITY; ENTITY dimensional_characteristic_representation; dimension : dimensional_characteristic; representation : shape_dimension_representation; END_ENTITY; ENTITY dimensional_exponents; length_exponent : REAL; mass_exponent : REAL; time_exponent : REAL; electric_current_exponent : REAL; thermodynamic_temperature_exponent : REAL; amount_of_substance_exponent : REAL; luminous_intensity_exponent : REAL; END_ENTITY; ENTITY dimensional_location SUPERTYPE OF (ONEOF(angular_location, dimensional_location_with_path)) SUBTYPE OF (shape_aspect_relationship); WHERE WR1: SELF\shape_aspect_relationship.relating_shape_aspect :<>: SELF\shape_aspect_relationship.related_shape_aspect; WR2: SELF\shape_aspect_relationship.relating_shape_aspect.of_shape :=: SELF\shape_aspect_relationship.related_shape_aspect.of_shape; END_ENTITY; -- IN AP242 ENTITY dimensional_location_with_datum_feature SUBTYPE OF (datum_feature, dimensional_location); END_ENTITY; ENTITY dimensional_location_with_path SUBTYPE OF (dimensional_location); path : shape_aspect; END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY dimensional_size SUPERTYPE OF (ONEOF(angular_size, dimensional_size_with_path)); applies_to : shape_aspect; name : label; DERIVE id : identifier := get_id_value(SELF); UNIQUE UR1 : id, applies_to; WHERE WR1: applies_to.product_definitional = TRUE; WR2: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ID_ATTRIBUTE.IDENTIFIED_ITEM')) <= 1; END_ENTITY; -- IN AP242 ENTITY dimensional_size_with_datum_feature SUBTYPE OF (datum_feature, dimensional_size); END_ENTITY; ENTITY dimensional_size_with_path SUBTYPE OF (dimensional_size); path : shape_aspect; END_ENTITY; ENTITY directed_action SUBTYPE OF (executed_action); directive : action_directive; END_ENTITY; -- IN AP214/AP242 ENTITY directed_angle SUBTYPE OF (shape_aspect); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_DEFINITION' IN TYPEOF(SELF.of_shape.definition); WR2: SIZEOF(QUERY (pdr <* get_shape_aspect_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1; WR3: SIZEOF(QUERY (pdr <* get_shape_aspect_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(pdr.used_representation.items) = 1))) = 1; WR4: SELF.description IN [ 'punch direction', 'profile normal', 'surface normal' ]; WR5: SIZEOF(QUERY (pdr <* get_shape_aspect_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| (i.name = 'angle') AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(i)) = 2))) = 1))) = 1; END_ENTITY; ENTITY directed_dimensional_location SUBTYPE OF (dimensional_location); END_ENTITY; ENTITY direction SUBTYPE OF (geometric_representation_item); direction_ratios : LIST [2:3] OF REAL; WHERE WR1: SIZEOF(QUERY (tmp <* direction_ratios| (tmp <> 0.0))) > 0; END_ENTITY; -- IN AP214/AP242 ENTITY direction_shape_representation SUBTYPE OF (shape_representation); WHERE WR1: SIZEOF(SELF.items) = 1; WR2: SIZEOF(QUERY (it <* SELF.items| NOT ('STEP_MERGED_CAD_SCHEMA.DIRECTION' IN TYPEOF(it)))) = 0; END_ENTITY; -- IN AP242 ENTITY disallowed_assembly_relationship_usage SUBTYPE OF (externally_conditioned_data_quality_criterion); WHERE WR1: validate_ecdq_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.ASSEMBLY_COMPONENT_USAGE' ]); END_ENTITY; -- IN AP242 ENTITY disconnected_face_set SUBTYPE OF (erroneous_topology); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.CONNECTED_FACE_SET' ]); WR3: validate_locations_of_extreme_value_type(SELF, []); WR4: validate_accuracy_types(SELF, []); END_ENTITY; -- IN AP242 ENTITY discontinuous_geometry ABSTRACT SUPERTYPE OF (ONEOF(g1_discontinuous_curve, g2_discontinuous_curve, g1_discontinuous_surface, g2_discontinuous_surface)) SUBTYPE OF (inapt_geometry); END_ENTITY; -- IN AP214/AP242 ENTITY div_expression SUBTYPE OF (binary_numeric_expression); END_ENTITY; -- DIFF IN AP214 ENTITY document; id : identifier; name : label; description : OPTIONAL text; kind : document_type; INVERSE representation_types : SET [0:?] OF document_representation_type FOR represented_document; END_ENTITY; ENTITY document_file SUBTYPE OF (document, characterized_object); WHERE WR1: SELF\characterized_object.name = ''; WR2: NOT EXISTS(SELF\characterized_object.description); WR3: SIZEOF(QUERY (drt <* SELF\document.representation_types| (drt.name IN [ 'digital', 'physical' ]))) = 1; END_ENTITY; -- IN AP203e2/AP242 ENTITY document_identifier SUBTYPE OF (group); UNIQUE UR1 : SELF\group.name, SELF\group.description; END_ENTITY; -- IN AP203e2/AP242 ENTITY document_identifier_assignment SUBTYPE OF (group_assignment); items : SET [1:?] OF document_identifier_assigned_item; SELF\group_assignment.assigned_group : document_identifier; END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY document_product_association ABSTRACT SUPERTYPE; name : label; description : OPTIONAL text; relating_document : document; related_product : product_or_formation_or_definition; END_ENTITY; ENTITY document_product_equivalence SUBTYPE OF (document_product_association); WHERE WR1: SELF\document_product_association.name = 'equivalence'; WR2: NOT ('STEP_MERGED_CAD_SCHEMA.PRODUCT' IN TYPEOF(SELF\document_product_association.related_product)) OR (SELF\document_product_association.relating_document.kind.product_data_type = 'configuration controlled document') AND (SIZEOF(QUERY (prpc <* USEDIN(SELF\document_product_association.related_product, 'STEP_MERGED_CAD_SCHEMA.' + 'PRODUCT_RELATED_PRODUCT_CATEGORY.PRODUCTS')| (prpc.name = 'document'))) = 1); WR3: NOT ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_FORMATION' IN TYPEOF(SELF.related_product)) OR (SELF\document_product_association.relating_document.kind.product_data_type = 'configuration controlled document version') AND (SIZEOF(QUERY (prpc <* USEDIN(SELF.related_product\product_definition_formation.of_product, 'STEP_MERGED_CAD_SCHEMA.PRODUCT_RELATED_PRODUCT_CATEGORY.PRODUCTS')| (prpc.name = 'document'))) = 1); WR4: NOT ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION' IN TYPEOF(SELF.related_product)) OR (SELF\document_product_association.relating_document.kind.product_data_type = 'configuration controlled document definition') AND (SIZEOF(QUERY (prpc <* USEDIN(SELF\document_product_association.related_product\product_definition.formation.of_product, 'STEP_MERGED_CAD_SCHEMA.PRODUCT_RELATED_PRODUCT_CATEGORY.PRODUCTS')| (prpc.name = 'document'))) = 1); END_ENTITY; ENTITY document_reference ABSTRACT SUPERTYPE; assigned_document : document; source : label; DERIVE role : object_role := get_role(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ROLE_ASSOCIATION.ITEM_WITH_ROLE')) <= 1; END_ENTITY; ENTITY document_relationship; name : label; description : OPTIONAL text; relating_document : document; related_document : document; END_ENTITY; ENTITY document_representation_type; name : label; represented_document : document; END_ENTITY; ENTITY document_type; product_data_type : label; END_ENTITY; ENTITY document_usage_constraint; source : document; subject_element : label; subject_element_value : text; END_ENTITY; ENTITY document_usage_constraint_assignment ABSTRACT SUPERTYPE; assigned_document_usage : document_usage_constraint; role : document_usage_role; END_ENTITY; ENTITY document_usage_role; name : label; description : OPTIONAL text; END_ENTITY; -- IN Deprecated AP203e1 ENTITY document_with_class SUBTYPE OF (document); class : identifier; END_ENTITY; -- IN AP203e2/AP242 ENTITY dose_equivalent_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.DOSE_EQUIVALENT_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; -- IN AP203e2/AP242 ENTITY dose_equivalent_unit SUBTYPE OF (derived_unit); WHERE WR1: derive_dimensional_exponents(SELF) = dimensions_for_si_unit(si_unit_name.sievert); END_ENTITY; -- IN AP203e2/AP242 ENTITY double_offset_shelled_solid SUBTYPE OF (shelled_solid); thickness2 : length_measure; WHERE WR1: thickness2 <> 0; WR2: SELF\shelled_solid.thickness <> thickness2; END_ENTITY; -- IN AP203e2/AP242 ENTITY draped_defined_transformation SUBTYPE OF (transformation_with_derived_angle); END_ENTITY; ENTITY draughting_annotation_occurrence SUBTYPE OF (annotation_occurrence); WHERE WR1: NOT ('STEP_MERGED_CAD_SCHEMA.ANNOTATION_CURVE_OCCURRENCE' IN TYPEOF(SELF)) OR (SIZEOF(QUERY (sty <* SELF.styles| NOT ((SIZEOF(sty.styles) = 1) AND ('STEP_MERGED_CAD_SCHEMA.CURVE_STYLE' IN TYPEOF(sty.styles[1]))))) = 0); WR2: NOT ('STEP_MERGED_CAD_SCHEMA.ANNOTATION_FILL_AREA_OCCURRENCE' IN TYPEOF(SELF)) OR (SIZEOF(QUERY (sty <* SELF.styles| NOT ((SIZEOF(sty.styles) = 1) AND ('STEP_MERGED_CAD_SCHEMA.FILL_AREA_STYLE' IN TYPEOF(sty.styles[1]))))) = 0); WR3: NOT ('STEP_MERGED_CAD_SCHEMA.ANNOTATION_FILL_AREA_OCCURRENCE' IN TYPEOF(SELF)) OR (SIZEOF(QUERY (bound <* SELF.item\annotation_fill_area.boundaries| NOT (SIZEOF(QUERY (si <* USEDIN(bound, 'STEP_MERGED_CAD_SCHEMA.' + 'STYLED_ITEM.ITEM')| ('STEP_MERGED_CAD_SCHEMA.' + 'ANNOTATION_CURVE_OCCURRENCE' IN TYPEOF(si)))) > 0))) = 0); WR4: NOT ('STEP_MERGED_CAD_SCHEMA.ANNOTATION_SYMBOL_OCCURRENCE' IN TYPEOF(SELF)) OR (SIZEOF(QUERY (sty <* SELF.styles| NOT ((SIZEOF(sty.styles) = 1) AND (SIZEOF(TYPEOF(sty.styles[1]) * [ 'STEP_MERGED_CAD_SCHEMA.SYMBOL_STYLE', 'STEP_MERGED_CAD_SCHEMA.NULL_STYLE' ]) = 1)))) = 0); WR5: NOT (('STEP_MERGED_CAD_SCHEMA.ANNOTATION_SYMBOL_OCCURRENCE' IN TYPEOF(SELF)) AND ('STEP_MERGED_CAD_SCHEMA.ANNOTATION_SYMBOL' IN TYPEOF(SELF.item))) OR (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_SYMBOL_REPRESENTATION'), ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_SUBFIGURE_REPRESENTATION') ] * TYPEOF(SELF.item\mapped_item.mapping_source.mapped_representation)) = 1); WR6: NOT ('STEP_MERGED_CAD_SCHEMA.ANNOTATION_TEXT_OCCURRENCE' IN TYPEOF(SELF)) OR (SIZEOF(QUERY (sty <* SELF.styles| NOT ((SIZEOF(sty.styles) = 1) AND ('STEP_MERGED_CAD_SCHEMA.TEXT_STYLE' IN TYPEOF(sty.styles[1]))))) = 0); WR7: NOT ('STEP_MERGED_CAD_SCHEMA.ANNOTATION_TEXT_OCCURRENCE' IN TYPEOF(SELF)) OR (SIZEOF(TYPEOF(SELF.item) * [ 'STEP_MERGED_CAD_SCHEMA.COMPOSITE_TEXT', 'STEP_MERGED_CAD_SCHEMA.TEXT_LITERAL' ]) = 1); WR8: NOT (('STEP_MERGED_CAD_SCHEMA.ANNOTATION_TEXT_OCCURRENCE' IN TYPEOF(SELF)) AND ('STEP_MERGED_CAD_SCHEMA.COMPOSITE_TEXT' IN TYPEOF(SELF.item))) OR (SIZEOF(QUERY (tl <* SELF.item\composite_text.collected_text| NOT ('STEP_MERGED_CAD_SCHEMA.TEXT_LITERAL' IN TYPEOF(tl)))) = 0); WR9: NOT (('STEP_MERGED_CAD_SCHEMA.ANNOTATION_TEXT_OCCURRENCE' IN TYPEOF(SELF)) AND ('STEP_MERGED_CAD_SCHEMA.TEXT_LITERAL' IN TYPEOF(SELF.item))) OR (SELF.item\text_literal.alignment IN [ 'baseline left', 'baseline centre', 'baseline right' ]); WR10: NOT (('STEP_MERGED_CAD_SCHEMA.ANNOTATION_TEXT_OCCURRENCE' IN TYPEOF(SELF)) AND ('STEP_MERGED_CAD_SCHEMA.COMPOSITE_TEXT' IN TYPEOF(SELF.item))) OR (SIZEOF(QUERY (tl <* QUERY (text <* SELF.item\composite_text.collected_text| ('STEP_MERGED_CAD_SCHEMA.TEXT_LITERAL' IN TYPEOF(text)))| NOT (tl\text_literal.alignment IN [ 'baseline left', 'baseline centre', 'baseline right' ]))) = 0); WR11: NOT (('STEP_MERGED_CAD_SCHEMA.ANNOTATION_TEXT_OCCURRENCE' IN TYPEOF(SELF)) AND ('STEP_MERGED_CAD_SCHEMA.COMPOSITE_TEXT' IN TYPEOF(SELF.item))) OR check_text_alignment(SELF.item); WR12: NOT (('STEP_MERGED_CAD_SCHEMA.ANNOTATION_TEXT_OCCURRENCE' IN TYPEOF(SELF)) AND ('STEP_MERGED_CAD_SCHEMA.COMPOSITE_TEXT' IN TYPEOF(SELF.item))) OR check_text_font(SELF.item); WR13: NOT (('STEP_MERGED_CAD_SCHEMA.ANNOTATION_TEXT_OCCURRENCE' IN TYPEOF(SELF)) AND ('STEP_MERGED_CAD_SCHEMA.COMPOSITE_TEXT' IN TYPEOF(SELF.item))) OR (SIZEOF(QUERY (tl <* QUERY (text <* SELF.item\composite_text.collected_text| ('STEP_MERGED_CAD_SCHEMA.TEXT_LITERAL' IN TYPEOF(text)))| NOT (SIZEOF(TYPEOF(tl) * [ ('STEP_MERGED_CAD_SCHEMA.' + 'TEXT_LITERAL_WITH_BLANKING_BOX'), ('STEP_MERGED_CAD_SCHEMA.' + 'TEXT_LITERAL_WITH_ASSOCIATED_CURVES') ]) = 0))) = 0); WR14: NOT (('STEP_MERGED_CAD_SCHEMA.ANNOTATION_TEXT_OCCURRENCE' IN TYPEOF(SELF)) AND ('STEP_MERGED_CAD_SCHEMA.TEXT_LITERAL_WITH_ASSOCIATED_CURVES' IN TYPEOF(SELF.item))) OR (SIZEOF(QUERY (crv <* SELF.item\text_literal_with_associated_curves.associated_curves| NOT (SIZEOF(QUERY (si <* USEDIN(crv, 'STEP_MERGED_CAD_SCHEMA.STYLED_ITEM.ITEM')| ('STEP_MERGED_CAD_SCHEMA.ANNOTATION_CURVE_OCCURRENCE' IN TYPEOF(si)))) > 0))) = 0); WR15: NOT (('STEP_MERGED_CAD_SCHEMA.ANNOTATION_TEXT_OCCURRENCE' IN TYPEOF(SELF)) AND ('STEP_MERGED_CAD_SCHEMA.COMPOSITE_TEXT_WITH_ASSOCIATED_CURVES' IN TYPEOF(SELF.item))) OR (SIZEOF(QUERY (crv <* SELF.item\composite_text_with_associated_curves.associated_curves| NOT (SIZEOF(QUERY (si <* USEDIN(crv, 'STEP_MERGED_CAD_SCHEMA.STYLED_ITEM.ITEM')| ('STEP_MERGED_CAD_SCHEMA.ANNOTATION_CURVE_OCCURRENCE' IN TYPEOF(si)))) > 0))) = 0); WR16: SIZEOF(QUERY (cs <* QUERY (sty <* SELF.styles| ('STEP_MERGED_CAD_SCHEMA.CURVE_STYLE' IN TYPEOF(sty.styles[1])))| NOT (('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' IN TYPEOF(cs.styles[1]\curve_style.curve_width)) AND ('STEP_MERGED_CAD_SCHEMA.POSITIVE_LENGTH_MEASURE' IN TYPEOF(cs.styles[1]\curve_style.curve_width\measure_with_unit.value_component))))) = 0; WR17: SIZEOF(QUERY (fas <* QUERY (sty <* SELF.styles| ('STEP_MERGED_CAD_SCHEMA.FILL_AREA_STYLE' IN TYPEOF(sty.styles[1])))| NOT ((SIZEOF(QUERY (fs <* fas.styles[1]\fill_area_style.fill_styles| ('STEP_MERGED_CAD_SCHEMA.FILL_AREA_STYLE_TILES' IN TYPEOF(fs)))) <= 1) AND (SIZEOF(QUERY (fst <* QUERY (fs <* fas.styles[1]\fill_area_style.fill_styles| ('STEP_MERGED_CAD_SCHEMA.FILL_AREA_STYLE_TILES' IN TYPEOF(fs)))| NOT (SIZEOF(fst\fill_area_style_tiles.tiles) = 1))) = 0)))) = 0; WR18: SIZEOF(QUERY (fas <* QUERY (sty <* SELF.styles| ('STEP_MERGED_CAD_SCHEMA.FILL_AREA_STYLE' IN TYPEOF(sty.styles[1])))| NOT (SIZEOF(QUERY (fsh <* QUERY (fs <* fas.styles[1]\fill_area_style.fill_styles| ('STEP_MERGED_CAD_SCHEMA.FILL_AREA_STYLE_HATCHING' IN TYPEOF(fs)))| NOT (fsh\fill_area_style_hatching.point_of_reference_hatch_line :=: fsh\fill_area_style_hatching.pattern_start))) = 0))) = 0; WR19: SIZEOF(QUERY (ts <* QUERY (sty <* SELF.styles| ('STEP_MERGED_CAD_SCHEMA.TEXT_STYLE' IN TYPEOF(sty.styles[1])))| NOT ('STEP_MERGED_CAD_SCHEMA.' + 'TEXT_STYLE_WITH_BOX_CHARACTERISTICS' IN TYPEOF(ts.styles[1])))) = 0; WR20: SIZEOF(QUERY (ts <* QUERY (sty <* SELF.styles| ('STEP_MERGED_CAD_SCHEMA.TEXT_STYLE_WITH_BOX_CHARACTERISTICS' IN TYPEOF(sty.styles[1])))| NOT (SIZEOF(ts.styles[1]\text_style_with_box_characteristics.characteristics) = 4))) = 0; END_ENTITY; -- DIFF IN AP203e2 ENTITY draughting_callout SUBTYPE OF (geometric_representation_item); contents : SET [1:?] OF draughting_callout_element; WHERE WR1: (((SIZEOF(QUERY (l_1 <* SELF\draughting_callout.contents| ('STEP_MERGED_CAD_SCHEMA.LEADER_CURVE' IN TYPEOF(l_1)))) = 0) OR ('STEP_MERGED_CAD_SCHEMA.LEADER_DIRECTED_CALLOUT' IN TYPEOF(SELF)) AND (SIZEOF(QUERY (l_1 <* SELF\draughting_callout.contents| ('STEP_MERGED_CAD_SCHEMA.PROJECTION_CURVE' IN TYPEOF(l_1)))) = 0)) OR ('STEP_MERGED_CAD_SCHEMA.PROJECTION_DIRECTED_CALLOUT' IN TYPEOF(SELF)) AND (SIZEOF(QUERY (l_1 <* SELF\draughting_callout.contents| ('STEP_MERGED_CAD_SCHEMA.DIMENSION_CURVE' IN TYPEOF(l_1)))) = 0)) OR ('STEP_MERGED_CAD_SCHEMA.DIMENSION_CURVE_DIRECTED_CALLOUT' IN TYPEOF(SELF)); END_ENTITY; ENTITY draughting_callout_relationship; name : label; description : text; relating_draughting_callout : draughting_callout; related_draughting_callout : draughting_callout; END_ENTITY; ENTITY draughting_elements SUBTYPE OF (draughting_callout); WHERE WR1: SIZEOF(QUERY (l_c <* QUERY (con <* SELF.contents| ('STEP_MERGED_CAD_SCHEMA.LEADER_CURVE' IN TYPEOF(con)))| NOT (SIZEOF(QUERY (ldc <* USEDIN(l_c, 'STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_CALLOUT.CONTENTS')| ('STEP_MERGED_CAD_SCHEMA.LEADER_DIRECTED_CALLOUT' IN TYPEOF(ldc)))) <= 1))) = 0; WR2: NOT ('STEP_MERGED_CAD_SCHEMA.DIMENSION_CURVE_DIRECTED_CALLOUT' IN TYPEOF(SELF)) OR (SIZEOF(QUERY (con <* SELF.contents| ('STEP_MERGED_CAD_SCHEMA.PROJECTION_CURVE' IN TYPEOF(con)))) <= 2); WR3: SIZEOF(QUERY (rc <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.DRAUGHTING_CALLOUT_' + 'RELATIONSHIP.RELATING_DRAUGHTING_CALLOUT')| ('STEP_MERGED_CAD_SCHEMA.' + 'DIMENSION_CALLOUT_RELATIONSHIP' IN TYPEOF(rc)) AND (rc.name = 'primary'))) <= 1; WR4: SIZEOF(QUERY (rc <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.DRAUGHTING_CALLOUT_' + 'RELATIONSHIP.RELATING_DRAUGHTING_CALLOUT')| ('STEP_MERGED_CAD_SCHEMA.' + 'DIMENSION_CALLOUT_RELATIONSHIP' IN TYPEOF(rc)) AND (rc.name = 'secondary'))) <= 1; WR5: SIZEOF(QUERY (sec <* QUERY (rc <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.DRAUGHTING_CALLOUT_' + 'RELATIONSHIP.RELATING_DRAUGHTING_CALLOUT')| ('STEP_MERGED_CAD_SCHEMA.' + 'DIMENSION_CALLOUT_RELATIONSHIP' IN TYPEOF(rc)) AND (rc.name = 'secondary'))| NOT (SIZEOF(QUERY (prim <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.DRAUGHTING_CALLOUT_' + 'RELATIONSHIP.RELATING_DRAUGHTING_CALLOUT')| ('STEP_MERGED_CAD_SCHEMA.' + 'DIMENSION_CALLOUT_RELATIONSHIP' IN TYPEOF(prim)) AND (prim.name = 'primary'))) = 1))) = 0; END_ENTITY; -- DIFF IN AP214 ENTITY draughting_model SUBTYPE OF (representation); SELF\representation.items : SET [1:?] OF draughting_model_item_select; UNIQUE UR1 : SELF\representation.name; WHERE WR1: SIZEOF(QUERY (mi <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION', 'STEP_MERGED_CAD_SCHEMA.DRAUGHTING_MODEL' ] * TYPEOF(mi\mapped_item.mapping_source.mapped_representation)) = 1))) = 0; WR2: SIZEOF(QUERY (smi <* QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(si\styled_item.item)))| NOT (('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION' IN TYPEOF(smi\styled_item.item\mapped_item.mapping_source.mapped_representation)) AND (SIZEOF(QUERY (sty <* smi\styled_item.styles| NOT (SIZEOF(QUERY (psa <* sty.styles| NOT ('STEP_MERGED_CAD_SCHEMA.CURVE_STYLE' IN TYPEOF(psa)))) = 1))) = 1)))) = 0; END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY draughting_model_item_association SUBTYPE OF (item_identified_representation_usage); SELF\item_identified_representation_usage.definition : draughting_model_item_definition; SELF\item_identified_representation_usage.identified_item : draughting_model_item_association_select; SELF\item_identified_representation_usage.used_representation : annotation_representation_select; END_ENTITY; ENTITY draughting_pre_defined_colour SUBTYPE OF (pre_defined_colour); WHERE WR1: SELF.name IN [ 'red', 'green', 'blue', 'yellow', 'magenta', 'cyan', 'black', 'white' ]; END_ENTITY; ENTITY draughting_pre_defined_curve_font SUBTYPE OF (pre_defined_curve_font); WHERE WR1: SELF.name IN [ 'continuous', 'chain', 'chain double dash', 'dashed', 'dotted' ]; END_ENTITY; ENTITY draughting_pre_defined_text_font SUBTYPE OF (pre_defined_text_font); WHERE WR1: SELF.name[ 1 : 8 ] = 'ISO 3098'; END_ENTITY; -- IN AP214 ENTITY draughting_specification_reference SUBTYPE OF (document_reference); specified_items : SET [1:?] OF specified_item; WHERE wr1: SELF.assigned_document.kind.product_data_type = 'draughting specification'; END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY draughting_subfigure_representation SUBTYPE OF (symbol_representation); SELF\representation.items : SET [1:?] OF draughting_subfigure_representation_item; WHERE WR1: SIZEOF(QUERY (item <* SELF\representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.ANNOTATION_OCCURRENCE', 'STEP_MERGED_CAD_SCHEMA.DRAUGHTING_CALLOUT' ] * TYPEOF(item)) = 1))) >= 1; WR2: SIZEOF(QUERY (srm <* QUERY (rm <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'REPRESENTATION_MAP.MAPPED_REPRESENTATION')| ('STEP_MERGED_CAD_SCHEMA.SYMBOL_REPRESENTATION_MAP' IN TYPEOF(rm)))| NOT (SIZEOF(QUERY (a_s <* QUERY (mi <* srm.map_usage| ('STEP_MERGED_CAD_SCHEMA.ANNOTATION_SYMBOL' IN TYPEOF(mi)))| NOT (SIZEOF(QUERY (aso <* USEDIN(a_s, 'STEP_MERGED_CAD_SCHEMA.' + 'STYLED_ITEM.ITEM')| NOT ('STEP_MERGED_CAD_SCHEMA.ANNOTATION_SUBFIGURE_OCCURRENCE' IN TYPEOF(aso)))) = 0))) = 0))) > 0; WR3: SIZEOF(SELF.context_of_items.representations_in_context) = 1; END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY draughting_symbol_representation SUBTYPE OF (symbol_representation); SELF\representation.items : SET [1:?] OF draughting_symbol_representation_item; UNIQUE UR1 : SELF\representation.name; WHERE WR1: SIZEOF(QUERY (item <* SELF\representation.items| (SIZEOF(TYPEOF(item) * [ 'STEP_MERGED_CAD_SCHEMA.ANNOTATION_CURVE_OCCURRENCE', 'STEP_MERGED_CAD_SCHEMA.ANNOTATION_SYMBOL_OCCURRENCE', 'STEP_MERGED_CAD_SCHEMA.ANNOTATION_FILL_AREA_OCCURRENCE', 'STEP_MERGED_CAD_SCHEMA.ANNOTATION_TEXT_OCCURRENCE' ]) = 1))) >= 1; WR2: SIZEOF(QUERY (item <* SELF\representation.items| ('STEP_MERGED_CAD_SCHEMA.ANNOTATION_SUBFIGURE_OCCURRENCE' IN TYPEOF(item)))) = 0; WR3: SIZEOF(QUERY (rm <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'REPRESENTATION_MAP.MAPPED_REPRESENTATION')| NOT ('STEP_MERGED_CAD_SCHEMA.SYMBOL_REPRESENTATION_MAP' IN TYPEOF(rm)))) = 0; WR4: SIZEOF(SELF.context_of_items.representations_in_context) = 1; END_ENTITY; ENTITY draughting_text_literal_with_delineation SUBTYPE OF (text_literal_with_delineation); WHERE WR1: SELF.delineation IN [ 'underline', 'overline' ]; END_ENTITY; ENTITY draughting_title; items : SET [1:?] OF draughting_titled_item; language : label; contents : text; END_ENTITY; ENTITY drawing_definition; drawing_number : identifier; drawing_type : OPTIONAL label; END_ENTITY; -- CASE DIFF IN AP214 ENTITY drawing_revision SUBTYPE OF (presentation_set); revision_identifier : identifier; drawing_identifier : drawing_definition; intended_scale : OPTIONAL text; UNIQUE UR1 : revision_identifier, drawing_identifier; END_ENTITY; ENTITY drawing_revision_sequence; predecessor : drawing_revision; successor : drawing_revision; WHERE WR1: predecessor :<>: successor; END_ENTITY; -- IN AP214/AP242 ENTITY drawing_sheet_layout SUBTYPE OF (draughting_symbol_representation); END_ENTITY; ENTITY drawing_sheet_revision SUBTYPE OF (presentation_area); revision_identifier : identifier; WHERE WR1: SIZEOF(QUERY (item <* SELF\representation.items| ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(item)) AND ('STEP_MERGED_CAD_SCHEMA.DRAWING_SHEET_REVISION' IN TYPEOF(item\mapped_item.mapping_source.mapped_representation)))) = 0; END_ENTITY; -- IN AP203e2/AP242 ENTITY drawing_sheet_revision_sequence SUBTYPE OF (representation_relationship); WHERE WR1: SELF\representation_relationship.rep_1 :<>: SELF\representation_relationship.rep_2; WR2: 'STEP_MERGED_CAD_SCHEMA.DRAWING_SHEET_REVISION' IN TYPEOF(SELF\representation_relationship.rep_1); WR3: 'STEP_MERGED_CAD_SCHEMA.DRAWING_SHEET_REVISION' IN TYPEOF(SELF\representation_relationship.rep_2); END_ENTITY; -- DIFF IN AP214 ENTITY drawing_sheet_revision_usage SUBTYPE OF (area_in_set); sheet_number : identifier; UNIQUE UR1 : sheet_number, SELF\area_in_set.in_set; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.DRAWING_SHEET_REVISION' IN TYPEOF(SELF\area_in_set.area)) AND ('STEP_MERGED_CAD_SCHEMA.DRAWING_REVISION' IN TYPEOF(SELF\area_in_set.in_set)); END_ENTITY; ENTITY edge SUPERTYPE OF (ONEOF(edge_curve, oriented_edge, subedge)) SUBTYPE OF (topological_representation_item); edge_start : vertex; edge_end : vertex; END_ENTITY; ENTITY edge_based_wireframe_model SUBTYPE OF (geometric_representation_item); ebwm_boundary : SET [1:?] OF connected_edge_set; END_ENTITY; ENTITY edge_based_wireframe_shape_representation SUBTYPE OF (shape_representation); WHERE WR1: SIZEOF(QUERY (it <* SELF.items| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.EDGE_BASED_WIREFRAME_MODEL', 'STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM', 'STEP_MERGED_CAD_SCHEMA.AXIS2_PLACEMENT_3D' ] * TYPEOF(it)) = 1))) = 0; WR2: SIZEOF(QUERY (it <* SELF.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.EDGE_BASED_WIREFRAME_MODEL', 'STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' ] * TYPEOF(it)) = 1))) >= 1; WR3: SIZEOF(QUERY (ebwm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.EDGE_BASED_WIREFRAME_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (eb <* ebwm\edge_based_wireframe_model.ebwm_boundary| NOT (SIZEOF(QUERY (edges <* eb.ces_edges| NOT ('STEP_MERGED_CAD_SCHEMA.EDGE_CURVE' IN TYPEOF(edges)))) = 0))) = 0))) = 0; WR4: SIZEOF(QUERY (ebwm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.EDGE_BASED_WIREFRAME_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (eb <* ebwm\edge_based_wireframe_model.ebwm_boundary| NOT (SIZEOF(QUERY (pline_edges <* QUERY (edges <* eb.ces_edges| ('STEP_MERGED_CAD_SCHEMA.POLYLINE' IN TYPEOF(edges\edge_curve.edge_geometry)))| NOT (SIZEOF(pline_edges\edge_curve.edge_geometry\polyline.points) > 2))) = 0))) = 0))) = 0; WR5: SIZEOF(QUERY (ebwm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.EDGE_BASED_WIREFRAME_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (eb <* ebwm\edge_based_wireframe_model.ebwm_boundary| NOT (SIZEOF(QUERY (edges <* eb.ces_edges| NOT (('STEP_MERGED_CAD_SCHEMA.VERTEX_POINT' IN TYPEOF(edges.edge_start)) AND ('STEP_MERGED_CAD_SCHEMA.VERTEX_POINT' IN TYPEOF(edges.edge_end))))) = 0))) = 0))) = 0; WR6: SIZEOF(QUERY (ebwm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.EDGE_BASED_WIREFRAME_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (eb <* ebwm\edge_based_wireframe_model.ebwm_boundary| NOT (SIZEOF(QUERY (edges <* eb.ces_edges| NOT valid_wireframe_edge_curve(edges\edge_curve.edge_geometry))) = 0))) = 0))) = 0; WR7: SIZEOF(QUERY (ebwm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.EDGE_BASED_WIREFRAME_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (eb <* ebwm\edge_based_wireframe_model.ebwm_boundary| NOT (SIZEOF(QUERY (edges <* eb.ces_edges| NOT (valid_wireframe_vertex_point(edges.edge_start\vertex_point.vertex_geometry) AND valid_wireframe_vertex_point(edges.edge_end\vertex_point.vertex_geometry)))) = 0))) = 0))) = 0; WR8: SIZEOF(QUERY (mi <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(it)))| NOT ('STEP_MERGED_CAD_SCHEMA.' + 'EDGE_BASED_WIREFRAME_SHAPE_REPRESENTATION' IN TYPEOF(mi\mapped_item.mapping_source.mapped_representation)))) = 0; WR9: SELF.context_of_items\geometric_representation_context.coordinate_space_dimension = 3; END_ENTITY; -- DIFF IN AP203e2 -- IN AP203e2/AP242 ENTITY edge_blended_solid ABSTRACT SUPERTYPE OF (track_blended_solid ANDOR ONEOF(solid_with_constant_radius_edge_blend, solid_with_chamfered_edges)) SUBTYPE OF (modified_solid); blended_edges : LIST [1:?] OF UNIQUE edge_curve; END_ENTITY; ENTITY edge_curve SUBTYPE OF (edge, geometric_representation_item); edge_geometry : curve; same_sense : BOOLEAN; END_ENTITY; ENTITY edge_loop SUBTYPE OF (loop, path); DERIVE ne : INTEGER := SIZEOF(SELF\path.edge_list); WHERE WR1: SELF\path.edge_list[1].edge_start :=: SELF\path.edge_list[ne].edge_end; END_ENTITY; -- IN AP214/AP242 ENTITY edge_round SUBTYPE OF (transition_feature); WHERE WR1: NOT (SELF\shape_aspect.description = 'constant radius') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1))) = 0); WR2: NOT (SELF\shape_aspect.description = 'constant radius') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) >= 1) AND (SIZEOF(impl_rep.used_representation.items) <= 3))) = 0))) = 0); WR3: NOT (SELF.description = 'constant radius') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'radius'))) = 1))) = 0))) = 0); WR4: NOT (SELF.description = 'constant radius') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'first offset'))) <= 1))) = 0))) = 0); WR5: NOT (SELF.description = 'constant radius') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'second offset'))) <= 1))) = 0))) = 0); WR6: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.FACE_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'edge round face'))) <= 1))) = 0; WR7: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.FACE_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'first face shape'))) <= 1))) = 0; WR8: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.FACE_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'second face shape'))) <= 1))) = 0; END_ENTITY; -- IN AP242 ENTITY edge_with_excessive_segments SUBTYPE OF (overcomplex_topology_and_geometry_relationship); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.EDGE_CURVE' ]); WR4: validate_locations_of_extreme_value_type(SELF, []); WR5: validate_accuracy_types(SELF, []); END_ENTITY; -- DIFF IN AP214 ENTITY effectivity SUPERTYPE OF (ONEOF(serial_numbered_effectivity, dated_effectivity, lot_effectivity, time_interval_based_effectivity)); id : identifier; DERIVE description : text := get_description_value(SELF); name : label := get_name_value(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'NAME_ATTRIBUTE.NAMED_ITEM')) <= 1; WR2: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'DESCRIPTION_ATTRIBUTE.DESCRIBED_ITEM')) <= 1; END_ENTITY; ENTITY effectivity_assignment ABSTRACT SUPERTYPE; assigned_effectivity : effectivity; DERIVE role : object_role := get_role(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ROLE_ASSOCIATION.ITEM_WITH_ROLE')) <= 1; END_ENTITY; ENTITY effectivity_context_assignment ABSTRACT SUPERTYPE; assigned_effectivity_assignment : effectivity_assignment; role : effectivity_context_role; END_ENTITY; ENTITY effectivity_context_role; name : label; description : OPTIONAL text; END_ENTITY; ENTITY effectivity_relationship; name : label; description : OPTIONAL text; related_effectivity : effectivity; relating_effectivity : effectivity; END_ENTITY; -- IN AP203e2/AP242 ENTITY electric_charge_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.ELECTRIC_CHARGE_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; -- IN AP203e2/AP242 ENTITY electric_charge_unit SUBTYPE OF (derived_unit); WHERE WR1: derive_dimensional_exponents(SELF) = dimensions_for_si_unit(si_unit_name.coulomb); END_ENTITY; ENTITY electric_current_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.ELECTRIC_CURRENT_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; ENTITY electric_current_unit SUBTYPE OF (named_unit); WHERE WR1: ((((((SELF\named_unit.dimensions.length_exponent = 0.0) AND (SELF\named_unit.dimensions.mass_exponent = 0.0)) AND (SELF\named_unit.dimensions.time_exponent = 0.0)) AND (SELF\named_unit.dimensions.electric_current_exponent = 1.0)) AND (SELF\named_unit.dimensions.thermodynamic_temperature_exponent = 0.0)) AND (SELF\named_unit.dimensions.amount_of_substance_exponent = 0.0)) AND (SELF\named_unit.dimensions.luminous_intensity_exponent = 0.0); END_ENTITY; -- IN AP203e2/AP242 ENTITY electric_potential_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.ELECTRIC_POTENTIAL_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; -- IN AP203e2/AP242 ENTITY electric_potential_unit SUBTYPE OF (derived_unit); WHERE WR1: derive_dimensional_exponents(SELF) = dimensions_for_si_unit(si_unit_name.volt); END_ENTITY; -- IN AP214 ENTITY element_delivery SUBTYPE OF (action); WHERE wr1: (SIZEOF(QUERY (aa <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.ACTION_ASSIGNMENT.ASSIGNED_ACTION')| ('STEP_MERGED_CAD_SCHEMA.' + 'APPLIED_ACTION_ASSIGNMENT' IN TYPEOF(aa)))) = 1) AND (SIZEOF(QUERY (aaa <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.ACTION_ASSIGNMENT.ASSIGNED_ACTION')| ((('STEP_MERGED_CAD_SCHEMA.' + 'APPLIED_ACTION_ASSIGNMENT' IN TYPEOF(aaa)) AND (aaa.role.name = 'deliverable element')) AND (SIZEOF(aaa.items) = 1)) AND (SIZEOF(QUERY (i <* aaa.items| (('STEP_MERGED_CAD_SCHEMA.' + 'APPLIED_ACTION_ASSIGNMENT' IN TYPEOF(i)) AND (SIZEOF(i\applied_action_assignment.items) = 1)) AND (SIZEOF(QUERY (i1 <* aaa\applied_action_assignment.items| (('STEP_MERGED_CAD_SCHEMA.' + 'CONFIGURATION_ITEM' IN TYPEOF(i1)) OR ('STEP_MERGED_CAD_SCHEMA.' + 'PRODUCT_DEFINITION' IN TYPEOF(i1)) AND (i1\product_definition.frame_of_reference.name = 'physical occurrence')) OR ('STEP_MERGED_CAD_SCHEMA.' + 'PRODUCT_DEFINITION_FORMATION' IN TYPEOF(i1)) AND (SIZEOF(QUERY (prpc <* USEDIN(i1, 'STEP_MERGED_CAD_SCHEMA.PRODUCT_RELATED_PRODUCT_CATEGORY.PRODUCTS')| (prpc\product_category.name IN [ 'part', 'raw material', 'tool' ]))) = 1))) = 1))) = 1))) = 1); wr2: (SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.APPLIED_ORGANIZATION_ASSIGNMENT.ITEMS')) = 1) AND (SIZEOF(QUERY (aoa <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.APPLIED_ORGANIZATION_ASSIGNMENT.ITEMS')| (aoa.role.name = 'destination'))) = 1); wr3: ((SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.ACTION_PROPERTY.DEFINITION')) = 1) AND (SIZEOF(QUERY (ap <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.ACTION_PROPERTY.DEFINITION')| (SIZEOF(USEDIN(ap, 'STEP_MERGED_CAD_SCHEMA.ACTION_PROPERTY_REPRESENTATION.PROPERTY')) = 1))) = 1)) AND (SIZEOF(QUERY (ap <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.ACTION_PROPERTY.DEFINITION')| (SIZEOF(QUERY (apr <* USEDIN(ap, 'STEP_MERGED_CAD_SCHEMA.ACTION_PROPERTY_REPRESENTATION.PROPERTY')| ((apr.representation.name = 'delivery quantity') AND (SIZEOF(apr.representation.items) = 1)) AND (SIZEOF(QUERY (i <* apr.representation.items| (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'MEASURE_REPRESENTATION_ITEM'), ('STEP_MERGED_CAD_SCHEMA.' + 'VALUE_RANGE') ] * TYPEOF(i)) = 1))) = 1))) = 1))) = 1); wr4: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.ACTION_RELATIONSHIP.RELATING_ACTION')) + SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.ACTION_RELATIONSHIP.RELATED_ACTION')) = 0; END_ENTITY; -- IN AP203e2/AP242 ENTITY elementary_brep_shape_representation SUBTYPE OF (shape_representation); WHERE WR1: SIZEOF(QUERY (it <* SELF.items| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MANIFOLD_SOLID_BREP', 'STEP_MERGED_CAD_SCHEMA.FACETED_BREP', 'STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM', 'STEP_MERGED_CAD_SCHEMA.AXIS2_PLACEMENT_3D' ] * TYPEOF(it)) = 1))) = 0; WR2: SIZEOF(QUERY (it <* SELF.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MANIFOLD_SOLID_BREP', 'STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' ] * TYPEOF(it)) = 1))) > 0; WR3: SIZEOF(QUERY (msb <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.MANIFOLD_SOLID_BREP' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (csh <* msb_shells(msb)| NOT (SIZEOF(QUERY (fcs <* csh.cfs_faces| NOT ('STEP_MERGED_CAD_SCHEMA.FACE_SURFACE' IN TYPEOF(fcs)))) = 0))) = 0))) = 0; WR4: SIZEOF(QUERY (msb <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.MANIFOLD_SOLID_BREP' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (csh <* msb_shells(msb)| NOT (SIZEOF(QUERY (fcs <* csh\connected_face_set.cfs_faces| NOT ('STEP_MERGED_CAD_SCHEMA.ELEMENTARY_SURFACE' IN TYPEOF(fcs\face_surface.face_geometry)))) = 0))) = 0))) = 0; WR5: SIZEOF(QUERY (msb <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.MANIFOLD_SOLID_BREP' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (csh <* msb_shells(msb)| NOT (SIZEOF(QUERY (fcs <* csh\connected_face_set.cfs_faces| NOT (SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* fcs.bounds| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(bnds.bound)))| NOT (SIZEOF(QUERY (oe <* elp_fbnds.bound\path.edge_list| NOT ('STEP_MERGED_CAD_SCHEMA.EDGE_CURVE' IN TYPEOF(oe.edge_element)))) = 0))) = 0))) = 0))) = 0))) = 0; WR6: SIZEOF(QUERY (msb <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.MANIFOLD_SOLID_BREP' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (csh <* msb_shells(msb)| NOT (SIZEOF(QUERY (fcs <* csh\connected_face_set.cfs_faces| NOT (SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* fcs.bounds| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(bnds.bound)))| NOT (SIZEOF(QUERY (oe <* elp_fbnds.bound\path.edge_list| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.LINE', 'STEP_MERGED_CAD_SCHEMA.CONIC', 'STEP_MERGED_CAD_SCHEMA.POLYLINE' ] * TYPEOF(oe.edge_element\edge_curve.edge_geometry)) = 1))) = 0))) = 0))) = 0))) = 0))) = 0; WR7: SIZEOF(QUERY (msb <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.MANIFOLD_SOLID_BREP' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (csh <* msb_shells(msb)| NOT (SIZEOF(QUERY (fcs <* csh\connected_face_set.cfs_faces| NOT (SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* fcs.bounds| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(bnds.bound)))| NOT (SIZEOF(QUERY (oe <* elp_fbnds.bound\path.edge_list| NOT (('STEP_MERGED_CAD_SCHEMA.VERTEX_POINT' IN TYPEOF(oe.edge_start)) AND ('STEP_MERGED_CAD_SCHEMA.VERTEX_POINT' IN TYPEOF(oe.edge_end))))) = 0))) = 0))) = 0))) = 0))) = 0; WR8: SIZEOF(QUERY (msb <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.MANIFOLD_SOLID_BREP' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (csh <* msb_shells(msb)| NOT (SIZEOF(QUERY (fcs <* csh\connected_face_set.cfs_faces| NOT (SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* fcs.bounds| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(bnds.bound)))| NOT (SIZEOF(QUERY (oe <* elp_fbnds.bound\path.edge_list| ('STEP_MERGED_CAD_SCHEMA.POLYLINE' IN TYPEOF(oe.edge_element\edge_curve.edge_geometry)) AND NOT (SIZEOF(oe\oriented_edge.edge_element\edge_curve.edge_geometry\polyline.points) >= 3))) = 0))) = 0))) = 0))) = 0))) = 0; WR9: SIZEOF(QUERY (msb <* QUERY (it <* items| ('STEP_MERGED_CAD_SCHEMA.MANIFOLD_SOLID_BREP' IN TYPEOF(it)))| ('STEP_MERGED_CAD_SCHEMA.ORIENTED_CLOSED_SHELL' IN TYPEOF(msb\manifold_solid_brep.outer)))) = 0; WR10: SIZEOF(QUERY (brv <* QUERY (it <* items| ('STEP_MERGED_CAD_SCHEMA.BREP_WITH_VOIDS' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (csh <* brv\brep_with_voids.voids| csh\oriented_closed_shell.orientation)) = 0))) = 0; WR11: SIZEOF(QUERY (mi <* QUERY (it <* items| ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(it)))| NOT ('STEP_MERGED_CAD_SCHEMA.ELEMENTARY_BREP_SHAPE_REPRESENTATION' IN TYPEOF(mi\mapped_item.mapping_source.mapped_representation)))) = 0; WR12: SIZEOF(QUERY (msb <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.MANIFOLD_SOLID_BREP' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (csh <* msb_shells(msb)| NOT (SIZEOF(QUERY (fcs <* csh\connected_face_set.cfs_faces| NOT (SIZEOF(QUERY (vlp_fbnds <* QUERY (bnds <* fcs.bounds| ('STEP_MERGED_CAD_SCHEMA.VERTEX_LOOP' IN TYPEOF(bnds.bound)))| NOT (('STEP_MERGED_CAD_SCHEMA.VERTEX_POINT' IN TYPEOF(vlp_fbnds\face_bound.bound\vertex_loop.loop_vertex)) AND ('STEP_MERGED_CAD_SCHEMA.CARTESIAN_POINT' IN TYPEOF(vlp_fbnds\face_bound.bound\vertex_loop.loop_vertex\vertex_point.vertex_geometry))))) = 0))) = 0))) = 0))) = 0; END_ENTITY; -- IN AP242 ENTITY elementary_function SUBTYPE OF (maths_function, generic_literal); func_id : elementary_function_enumerators; END_ENTITY; -- IN AP242 ENTITY elementary_space SUBTYPE OF (maths_space, generic_literal); space_id : elementary_space_enumerators; END_ENTITY; ENTITY elementary_surface SUPERTYPE OF (ONEOF(plane, cylindrical_surface, conical_surface, spherical_surface, toroidal_surface)) SUBTYPE OF (surface); position : axis2_placement_3d; END_ENTITY; ENTITY ellipse SUBTYPE OF (conic); semi_axis_1 : positive_length_measure; semi_axis_2 : positive_length_measure; END_ENTITY; -- IN AP242 ENTITY elliptic_area SUBTYPE OF (primitive_2d); position : axis2_placement_2d; semi_axis_1 : positive_length_measure; semi_axis_2 : positive_length_measure; END_ENTITY; -- IN AP203e2/AP242 ENTITY energy_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.ENERGY_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; -- IN AP203e2/AP242 ENTITY energy_unit SUBTYPE OF (derived_unit); WHERE WR1: derive_dimensional_exponents(SELF) = dimensions_for_si_unit(si_unit_name.joule); END_ENTITY; -- IN AP242 ENTITY entirely_narrow_face SUBTYPE OF (topology_related_to_nearly_degenerate_geometry); width_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.FACE_SURFACE' ]); WR3: validate_locations_of_extreme_value_type(SELF, []); WR4: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY entirely_narrow_solid SUBTYPE OF (inapt_manifold_solid_brep); width_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.MANIFOLD_SOLID_BREP' ]); WR3: validate_locations_of_extreme_value_type(SELF, []); WR4: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY entirely_narrow_surface SUBTYPE OF (nearly_degenerate_geometry); width_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.BOUNDED_SURFACE' ]); WR3: validate_locations_of_extreme_value_type(SELF, []); WR4: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP203e2/AP242 ENTITY entity_assertion SUBTYPE OF (fact_type); END_ENTITY; -- IN AP203e2/AP242 ENTITY enum_reference_prefix SUBTYPE OF (descriptive_representation_item); END_ENTITY; ENTITY environment; syntactic_representation : generic_variable; semantics : variable_semantics; END_ENTITY; -- IN AP242 ENTITY equal_parameter_constraint SUBTYPE OF (defined_constraint); SELF\explicit_constraint.constrained_elements : SET [1:?] OF variational_parameter; SELF\explicit_constraint.reference_elements : SET [0:1] OF variational_parameter; WHERE WR1: SIZEOF(SELF\explicit_constraint.constrained_elements + SELF\explicit_constraint.reference_elements) >= 2; END_ENTITY; -- IN AP214/AP242 ENTITY equals_expression SUBTYPE OF (binary_boolean_expression); END_ENTITY; -- IN AP242 ENTITY erroneous_b_spline_curve_definition SUBTYPE OF (erroneous_geometry); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.B_SPLINE_CURVE_WITH_KNOTS' ]); WR3: validate_locations_of_extreme_value_type(SELF, []); WR4: validate_accuracy_types(SELF, []); END_ENTITY; -- IN AP242 ENTITY erroneous_b_spline_surface_definition SUBTYPE OF (erroneous_geometry); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.B_SPLINE_SURFACE_WITH_KNOTS' ]); WR3: validate_locations_of_extreme_value_type(SELF, []); WR4: validate_accuracy_types(SELF, []); END_ENTITY; -- IN AP242 ENTITY erroneous_data ABSTRACT SUPERTYPE OF (ONEOF(erroneous_topology, erroneous_geometry, erroneous_topology_and_geometry_relationship, erroneous_manifold_solid_brep)) SUBTYPE OF (shape_data_quality_criterion); END_ENTITY; -- IN AP242 ENTITY erroneous_geometry ABSTRACT SUPERTYPE OF (ONEOF(inconsistent_curve_transition_code, erroneous_b_spline_curve_definition, inconsistent_surface_transition_code, erroneous_b_spline_surface_definition)) SUBTYPE OF (erroneous_data); END_ENTITY; -- IN AP242 ENTITY erroneous_manifold_solid_brep ABSTRACT SUPERTYPE OF (ONEOF(wrongly_oriented_void, wrongly_placed_void, intersecting_shells_in_solid, solid_with_wrong_number_of_voids)) SUBTYPE OF (erroneous_data); END_ENTITY; -- IN AP242 ENTITY erroneous_topology ABSTRACT SUPERTYPE OF (ONEOF(open_edge_loop, open_closed_shell, inconsistent_adjacent_face_normals, disconnected_face_set)) SUBTYPE OF (erroneous_data); END_ENTITY; -- IN AP242 ENTITY erroneous_topology_and_geometry_relationship ABSTRACT SUPERTYPE OF (ONEOF(inconsistent_edge_and_curve_directions, inconsistent_face_and_surface_normals, inconsistent_face_and_closed_shell_normals, intersecting_loops_in_face, wrongly_placed_loop)) SUBTYPE OF (erroneous_data); END_ENTITY; -- IN AP203e2/AP242 ENTITY evaluated_characteristic SUBTYPE OF (representation, representation_relationship); UNIQUE UR1 : SELF\representation_relationship.rep_1, SELF\representation_relationship.rep_2; WHERE WR1: SELF\representation_relationship.rep_1 <> SELF\representation_relationship.rep_2; END_ENTITY; -- IN AP242 ENTITY evaluated_characteristic_of_product_as_individual_test_result SUBTYPE OF (evaluated_characteristic); END_ENTITY; ENTITY evaluated_degenerate_pcurve SUBTYPE OF (degenerate_pcurve); equivalent_point : cartesian_point; END_ENTITY; -- IN AP203e2/AP242 ENTITY evaluation_product_definition SUBTYPE OF (product_definition); END_ENTITY; ENTITY event_occurrence; id : identifier; name : label; description : OPTIONAL text; END_ENTITY; ENTITY event_occurrence_assignment ABSTRACT SUPERTYPE; assigned_event_occurrence : event_occurrence; role : event_occurrence_role; END_ENTITY; -- IN AP214 ENTITY event_occurrence_context_assignment ABSTRACT SUPERTYPE; assigned_event_occurrence_assignment : event_occurrence_assignment; role : event_occurrence_context_role; END_ENTITY; -- IN AP214 ENTITY event_occurrence_context_role; name : label; description : OPTIONAL text; END_ENTITY; -- IN AP203e2/AP242 ENTITY event_occurrence_relationship; name : label; description : OPTIONAL text; relating_event : event_occurrence; related_event : event_occurrence; END_ENTITY; ENTITY event_occurrence_role; name : label; description : OPTIONAL text; END_ENTITY; -- IN AP242 ENTITY excessive_use_of_groups SUBTYPE OF (externally_conditioned_data_quality_criterion); WHERE WR1: validate_ecdq_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.GROUP' ]); END_ENTITY; -- IN AP242 ENTITY excessive_use_of_layers SUBTYPE OF (externally_conditioned_data_quality_criterion); WHERE WR1: validate_ecdq_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.PRESENTATION_LAYER_ASSIGNMENT' ]); END_ENTITY; -- IN AP242 ENTITY excessively_high_degree_curve SUBTYPE OF (overcomplex_geometry); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.B_SPLINE_CURVE' ]); WR4: validate_locations_of_extreme_value_type(SELF, []); WR5: validate_accuracy_types(SELF, []); END_ENTITY; -- IN AP242 ENTITY excessively_high_degree_surface SUBTYPE OF (overcomplex_geometry); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.B_SPLINE_SURFACE' ]); WR4: validate_locations_of_extreme_value_type(SELF, []); WR5: validate_accuracy_types(SELF, []); END_ENTITY; ENTITY exclusive_product_concept_feature_category SUBTYPE OF (product_concept_feature_category); END_ENTITY; ENTITY executed_action SUBTYPE OF (action); END_ENTITY; -- IN AP214/AP242 ENTITY exp_function SUBTYPE OF (unary_function_call); END_ENTITY; -- IN AP203e2/AP242 ENTITY expanded_uncertainty SUBTYPE OF (standard_uncertainty); coverage_factor : REAL; END_ENTITY; -- IN AP242 ENTITY explicit_constraint ABSTRACT SUPERTYPE OF (ONEOF(defined_constraint, free_form_constraint)) SUBTYPE OF (variational_representation_item); description : OPTIONAL text; constrained_elements : SET [1:?] OF representation_item; reference_elements : SET [0:?] OF representation_item; WHERE WR1: SIZEOF(constrained_elements * reference_elements) = 0; END_ENTITY; -- IN AP242 ENTITY explicit_geometric_constraint ABSTRACT SUPERTYPE OF (ONEOF(fixed_element_geometric_constraint, parallel_geometric_constraint, point_distance_geometric_constraint, skew_line_distance_geometric_constraint, curve_distance_geometric_constraint, surface_distance_geometric_constraint, radius_geometric_constraint, curve_length_geometric_constraint, parallel_offset_geometric_constraint, angle_geometric_constraint, perpendicular_geometric_constraint, incidence_geometric_constraint, coaxial_geometric_constraint, tangent_geometric_constraint, symmetry_geometric_constraint, swept_point_curve_geometric_constraint, swept_curve_surface_geometric_constraint, curve_smoothness_geometric_constraint, surface_smoothness_geometric_constraint)) SUBTYPE OF (defined_constraint, geometric_representation_item); SELF\explicit_constraint.constrained_elements : SET [1:?] OF geometric_representation_item; SELF\explicit_constraint.reference_elements : SET [0:?] OF geometric_representation_item; END_ENTITY; -- IN AP203e2/AP242 ENTITY explicit_procedural_geometric_representation_item_relationship SUBTYPE OF (explicit_procedural_representation_item_relationship); SELF\representation_item_relationship.related_representation_item : geometric_representation_item; SELF\representation_item_relationship.relating_representation_item : procedural_shape_representation_sequence; WHERE WR1: NOT ('STEP_MERGED_CAD_SCHEMA.PROCEDURAL_SHAPE_REPRESENTATION_SEQUENCE' IN TYPEOF(SELF\representation_item_relationship.related_representation_item)); END_ENTITY; -- IN AP203e2/AP242 ENTITY explicit_procedural_representation_item_relationship SUBTYPE OF (representation_item_relationship); SELF\representation_item_relationship.relating_representation_item : procedural_representation_sequence; WHERE WR1: NOT ('STEP_MERGED_CAD_SCHEMA.PROCEDURAL_REPRESENTATION_SEQUENCE' IN TYPEOF(SELF\representation_item_relationship.related_representation_item)); WR2: SIZEOF(QUERY (q <* using_representations(SELF\representation_item_relationship.related_representation_item)| item_in_context(SELF\representation_item_relationship.relating_representation_item, q.context_of_items))) > 0; END_ENTITY; -- IN AP203e2/AP242 ENTITY explicit_procedural_representation_relationship SUBTYPE OF (representation_relationship); SELF\representation_relationship.rep_1 : procedural_representation; WHERE WR1: NOT ('STEP_MERGED_CAD_SCHEMA.PROCEDURAL_REPRESENTATION' IN TYPEOF(SELF\representation_relationship.rep_2)) AND NOT ('STEP_MERGED_CAD_SCHEMA.VARIATIONAL_REPRESENTATION' IN TYPEOF(SELF\representation_relationship.rep_2)); WR2: SELF\representation_relationship.rep_1.context_of_items :=: SELF\representation_relationship.rep_2.context_of_items; END_ENTITY; -- IN AP203e2/AP242 ENTITY explicit_procedural_shape_representation_relationship SUBTYPE OF (explicit_procedural_representation_relationship); SELF\representation_relationship.rep_1 : procedural_shape_representation; SELF\representation_relationship.rep_2 : shape_representation; END_ENTITY; -- IN AP242 ENTITY explicit_table_function ABSTRACT SUPERTYPE OF (ONEOF(listed_data, externally_listed_data, linearized_table_function, basic_sparse_matrix)) SUBTYPE OF (maths_function); index_base : zero_or_one; shape : LIST [1:?] OF positive_integer; END_ENTITY; -- DIFF IN AP203e2 ENTITY expression ABSTRACT SUPERTYPE OF (ONEOF(numeric_expression, boolean_expression, string_expression)) SUBTYPE OF (generic_expression); END_ENTITY; ENTITY expression_conversion_based_unit SUBTYPE OF (context_dependent_unit, variable_semantics); INVERSE associated_variable_environment : environment FOR semantics; END_ENTITY; -- IN AP242 ENTITY expression_denoted_function SUBTYPE OF (maths_function, unary_generic_expression); DERIVE expr : generic_expression := SELF\unary_generic_expression.operand; WHERE WR1: schema_prefix + 'FUNCTION_SPACE' IN TYPEOF(values_space_of(expr)); END_ENTITY; -- IN AP242 ENTITY expression_extension_numeric SUBTYPE OF (measure_with_unit, numeric_expression); END_ENTITY; -- IN AP242 ENTITY expression_extension_string SUBTYPE OF (measure_with_unit, string_expression); END_ENTITY; -- IN AP242 ENTITY expression_extension_to_select; type_expression_associated : expression_extension_select; END_ENTITY; -- IN AP242 ENTITY extended_tuple_space SUBTYPE OF (maths_space, generic_literal); base : product_space; extender : maths_space; WHERE WR1: expression_is_constant(base) AND expression_is_constant(extender); WR2: no_cyclic_space_reference(SELF, []); WR3: extender <> the_empty_space; END_ENTITY; ENTITY extension SUBTYPE OF (derived_shape_aspect); WHERE WR1: SIZEOF(SELF\derived_shape_aspect.deriving_relationships) = 1; END_ENTITY; -- IN AP203e2/AP242 ENTITY extent SUBTYPE OF (characterized_object); END_ENTITY; -- IN AP203e2/AP242 ENTITY external_class_library SUBTYPE OF (external_source); END_ENTITY; ENTITY external_identification_assignment ABSTRACT SUPERTYPE SUBTYPE OF (identification_assignment); source : external_source; END_ENTITY; ENTITY external_source; source_id : source_item; DERIVE description : text := get_description_value(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'DESCRIPTION_ATTRIBUTE.DESCRIBED_ITEM')) <= 1; END_ENTITY; -- IN AP203e2/AP242 ENTITY external_source_relationship; name : label; description : OPTIONAL text; relating_source : external_source; related_source : external_source; END_ENTITY; -- IN AP242 ENTITY externally_conditioned_data_quality_criteria_representation SUBTYPE OF (data_quality_criteria_representation); WHERE WR1: SIZEOF(QUERY (q <* SELF\representation.items| ('STEP_MERGED_CAD_SCHEMA.' + 'EXTERNALLY_CONDITIONED_DATA_QUALITY_CRITERION' IN TYPEOF(q)))) > 0; END_ENTITY; -- IN AP242 ENTITY externally_conditioned_data_quality_criterion SUBTYPE OF (data_quality_criterion, data_quality_measurement_requirement); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'DATA_QUALITY_CRITERION_ASSESSMENT_ASSOCIATION.' + 'CRITERION')) = 0; WR2: SIZEOF(QUERY (i1 <* bag_to_set(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'REPRESENTATION_ITEM_RELATIONSHIP.' + 'RELATED_REPRESENTATION_ITEM'))| ('STEP_MERGED_CAD_SCHEMA.' + 'DATA_QUALITY_CRITERION_MEASUREMENT_ASSOCIATION' IN TYPEOF(i1)))) = 0; WR3: SIZEOF(QUERY (i1 <* bag_to_set(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'REPRESENTATION_ITEM_RELATIONSHIP.' + 'RELATING_REPRESENTATION_ITEM'))| ('STEP_MERGED_CAD_SCHEMA.' + 'DATA_QUALITY_CRITERION_MEASUREMENT_ASSOCIATION' IN TYPEOF(i1)))) = 0; END_ENTITY; -- IN AP242 ENTITY externally_conditioned_data_quality_inspection_instance_report_item SUBTYPE OF (data_quality_inspection_instance_report_item); SELF\data_quality_inspection_instance_report_item.inspected_elements : SET [1:?] OF inspected_ecdq_element_select; WHERE WR1: SIZEOF(QUERY (i1 <* bag_to_set(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'DATA_QUALITY_INSPECTION_INSTANCE_REPORT.' + 'INSPECTED_INSTANCES'))| NOT ('STEP_MERGED_CAD_SCHEMA.' + 'EXTERNALLY_CONDITIONED_DATA_QUALITY_INSPECTION_RESULT' IN TYPEOF(i1.inspection_result)))) = 0; END_ENTITY; -- IN AP242 ENTITY externally_conditioned_data_quality_inspection_result SUBTYPE OF (data_quality_inspection_result); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.' + 'EXTERNALLY_CONDITIONED_DATA_QUALITY_CRITERION' IN TYPEOF(SELF\data_quality_inspection_result.criterion_inspected); END_ENTITY; -- IN AP242 ENTITY externally_conditioned_data_quality_inspection_result_representation SUBTYPE OF (data_quality_inspection_result_representation); WHERE WR1: SIZEOF(QUERY (q <* SELF\representation.items| ('STEP_MERGED_CAD_SCHEMA.' + 'EXTERNALLY_CONDITIONED_DATA_QUALITY_INSPECTION_RESULT' IN TYPEOF(q)))) > 0; END_ENTITY; -- IN AP214/AP242 ENTITY externally_defined_character_glyph SUBTYPE OF (externally_defined_item); END_ENTITY; ENTITY externally_defined_class SUBTYPE OF (class, externally_defined_item); END_ENTITY; -- IN AP203e2/AP242 ENTITY externally_defined_colour SUBTYPE OF (colour_specification, externally_defined_item); END_ENTITY; -- IN AP203e2/AP242 ENTITY externally_defined_context_dependent_unit SUBTYPE OF (context_dependent_unit, externally_defined_item); END_ENTITY; -- IN AP203e2/AP242 ENTITY externally_defined_conversion_based_unit SUBTYPE OF (conversion_based_unit, externally_defined_item); END_ENTITY; -- IN AP203e2/AP242 ENTITY externally_defined_currency SUBTYPE OF (currency, externally_defined_context_dependent_unit); END_ENTITY; ENTITY externally_defined_curve_font SUBTYPE OF (externally_defined_item); END_ENTITY; ENTITY externally_defined_dimension_definition SUBTYPE OF (dimensional_size, externally_defined_item); WHERE WR1: (SELF\externally_defined_item.item_id = 'external size dimension') AND (SELF\externally_defined_item.source.source_id = 'external size dimension specification'); WR2: 1 >= SIZEOF(QUERY (adr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.APPLIED_DOCUMENT_REFERENCE.ITEMS')| (adr.assigned_document.description = 'external size dimension specification'))); END_ENTITY; -- IN AP214/AP242 ENTITY externally_defined_feature_definition SUBTYPE OF (feature_definition, externally_defined_item); WHERE WR1: ((((SELF\characterized_object.description = 'thread') AND (SELF\externally_defined_item.item_id = 'external thread')) AND (SELF\externally_defined_item.source.source_id = 'external feature specification') OR ((SELF\characterized_object.description = 'gear') AND (SELF\externally_defined_item.item_id = 'external gear')) AND (SELF\externally_defined_item.source.source_id = 'external feature specification')) OR ((SELF\characterized_object.description = 'marking') AND (SELF\externally_defined_item.item_id = 'external marking')) AND (SELF\externally_defined_item.source.source_id = 'external feature specification')) OR ((SELF\characterized_object.description = 'knurl') AND (SELF\externally_defined_item.item_id = 'external knurl')) AND (SELF\externally_defined_item.source.source_id = 'external feature specification'); WR2: NOT (SELF\characterized_object.description = 'thread') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND ((5 <= SIZEOF(pdr.used_representation.items)) AND (SIZEOF(pdr.used_representation.items) <= 10)))) = 1))) = 1); WR3: NOT (SELF\characterized_object.description = 'marking') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(pdr.used_representation.items) = 2))) = 1))) = 1); WR4: NOT (SELF\characterized_object.description = 'knurl') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(pdr.used_representation.items) = 1))) = 1))) = 1); WR5: NOT (SELF\characterized_object.description IN [ 'knurl', 'thread' ]) OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'partial area occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.' + 'RELATED_SHAPE_ASPECT')| (sar.description = 'applied area usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.APPLIED_AREA' IN TYPEOF(sdr.relating_shape_aspect)))) = 1))) <= 1))) = 0); WR6: NOT (SELF\characterized_object.description = 'marking') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND (it.name = 'marking text'))) = 1))) = 0))) = 0); WR7: NOT (SELF\characterized_object.description = 'thread') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND (it.name = 'removal direction')) AND ((it.description = 'internal') OR (it.description = 'external')))) = 1))) = 0))) = 0); WR8: NOT (SELF\characterized_object.description = 'thread') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND (it.name = 'qualifier'))) <= 1))) = 0))) = 0); WR9: NOT (SELF\characterized_object.description = 'thread') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND (it.name = 'hand'))) = 1))) = 0))) = 0); WR10: NOT (SELF\characterized_object.description = 'thread') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND (it.name = 'fit class'))) = 1))) = 0))) = 0); WR11: NOT (SELF\characterized_object.description = 'thread') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND (it.name = 'form'))) = 1))) = 0))) = 0); WR12: NOT (SELF\characterized_object.description = 'thread') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'major diameter'))) <= 1))) = 0))) = 0); WR13: NOT (SELF\characterized_object.description = 'thread') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.RATIO_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'number of threads'))) = 1))) = 0))) = 0); WR14: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND (it.name = 'fit class 2'))) <= 1))) = 0))) = 0; WR15: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'nominal size'))) <= 1))) = 0))) = 0; WR16: NOT (SELF\characterized_object.description IN [ 'knurl', 'gear', 'thread' ]) OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.' + 'RELATED_SHAPE_ASPECT')| (sar.description = 'applied shape') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT' IN TYPEOF(sdr.relating_shape_aspect)))) = 1))) <= 1))) = 0); WR17: NOT (SELF\characterized_object.description IN [ 'gear' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| (('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (10 <= SIZEOF(pdr.used_representation.items))) AND (SIZEOF(pdr.used_representation.items) >= 11))) = 1))) = 1); WR18: NOT (SELF\characterized_object.description IN [ 'gear' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.RATIO_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'number of teeth'))) = 1))) = 0))) = 0); WR19: NOT (SELF\characterized_object.description IN [ 'gear' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'reference pressure angle'))) = 1))) = 0))) = 0); WR20: NOT (SELF\characterized_object.description IN [ 'gear' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'rake shift factor'))) = 1))) = 0))) = 0); WR21: NOT (SELF\characterized_object.description IN [ 'gear' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'nominal tooth depth'))) = 1))) = 0))) = 0); WR22: NOT (SELF\characterized_object.description IN [ 'gear' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'face width'))) = 1))) = 0))) = 0); WR23: NOT (SELF\characterized_object.description IN [ 'gear' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'tip diameter'))) = 1))) = 0))) = 0); WR24: NOT (SELF\characterized_object.description IN [ 'gear' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND (it.name = 'module or diametral pitch')) AND ((it.description = 'module') OR (it.description = 'diametral pitch')))) = 1))) = 0))) = 0); WR25: NOT (SELF\characterized_object.description IN [ 'gear' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'normal attribute'))) = 1))) = 0))) = 0); WR26: NOT (SELF\characterized_object.description IN [ 'gear' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND (it.name = 'internal or external gear')) AND ((it.description = 'internal') OR (it.description = 'external')))) = 1))) = 0))) = 0); WR27: NOT (SELF\characterized_object.description IN [ 'gear' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'root fillet radius'))) <= 1))) = 0))) = 0); END_ENTITY; ENTITY externally_defined_general_property SUBTYPE OF (general_property, externally_defined_item); END_ENTITY; ENTITY externally_defined_hatch_style SUBTYPE OF (externally_defined_item, geometric_representation_item); END_ENTITY; ENTITY externally_defined_item; item_id : source_item; source : external_source; END_ENTITY; ENTITY externally_defined_item_relationship; name : label; description : OPTIONAL text; relating_item : externally_defined_item; related_item : externally_defined_item; END_ENTITY; -- IN AP242 ENTITY externally_defined_item_with_multiple_references SUBTYPE OF (externally_defined_item); references : LIST [1:?] OF UNIQUE source_item; UNIQUE UR1 : references; WHERE WR1: NOT (SELF\externally_defined_item.item_id IN references); END_ENTITY; -- IN AP203e2/AP242 ENTITY externally_defined_marker SUBTYPE OF (externally_defined_symbol, pre_defined_marker); END_ENTITY; -- IN AP203e2/AP242 ENTITY externally_defined_picture_representation_item SUBTYPE OF (picture_representation_item); INVERSE source : applied_external_identification_assignment FOR items; WHERE WR1: NOT (SELF\representation_item.name IN pre_defined_picture_representation_types); END_ENTITY; -- IN AP242 ENTITY externally_defined_representation SUBTYPE OF (representation, externally_defined_item); SELF\representation.items : SET [1:?] OF externally_defined_representation_item; END_ENTITY; -- IN AP203e2/AP242 ENTITY externally_defined_representation_item SUBTYPE OF (representation_item, externally_defined_item); END_ENTITY; -- IN AP203e2/AP242 ENTITY externally_defined_string SUBTYPE OF (externally_defined_representation_item); END_ENTITY; -- IN AP214/AP242 ENTITY externally_defined_style SUBTYPE OF (externally_defined_item, founded_item); END_ENTITY; ENTITY externally_defined_symbol SUBTYPE OF (externally_defined_item); END_ENTITY; -- IN AP203e2/AP242 ENTITY externally_defined_terminator_symbol SUBTYPE OF (externally_defined_symbol); END_ENTITY; ENTITY externally_defined_text_font SUBTYPE OF (externally_defined_item); END_ENTITY; -- IN AP203e2/AP242 ENTITY externally_defined_tile SUBTYPE OF (externally_defined_item); END_ENTITY; ENTITY externally_defined_tile_style SUBTYPE OF (externally_defined_item, geometric_representation_item); END_ENTITY; -- IN AP242 ENTITY externally_listed_data SUBTYPE OF (explicit_table_function, generic_literal, externally_defined_item); value_range : maths_space; WHERE WR1: expression_is_constant(value_range); END_ENTITY; -- IN AP242 ENTITY extreme_instance; locations_of_extreme_value : SET [1:?] OF location_of_extreme_value_select; measured_value : measured_value_select; END_ENTITY; -- IN AP242 ENTITY extreme_patch_width_variation SUBTYPE OF (geometry_with_local_irregularity); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.RATIO_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.RATIO_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.B_SPLINE_SURFACE' ]); WR4: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'B_SPLINE_SURFACE_KNOT_LOCATOR' ]); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; ENTITY extruded_area_solid SUBTYPE OF (swept_area_solid); extruded_direction : direction; depth : positive_length_measure; WHERE WR1: dot_product(SELF\swept_area_solid.swept_area.basis_surface\elementary_surface.position.p[3], extruded_direction) <> 0.0; END_ENTITY; ENTITY extruded_face_solid SUBTYPE OF (swept_face_solid); extruded_direction : direction; depth : positive_length_measure; WHERE WR1: dot_product(SELF\swept_face_solid.swept_face.face_geometry\elementary_surface.position.p[3], extruded_direction) <> 0.0; END_ENTITY; -- IN AP203e2/AP242 ENTITY extruded_face_solid_with_draft_angle SUBTYPE OF (extruded_face_solid_with_trim_conditions); draft_angle : plane_angle_measure; WHERE WR1: draft_angle <> 0; END_ENTITY; -- IN AP203e2/AP242 ENTITY extruded_face_solid_with_multiple_draft_angles SUBTYPE OF (extruded_face_solid_with_trim_conditions); drafted_edges : LIST [2:?] OF SET [1:?] OF edge_curve; draft_angles : LIST [2:?] OF plane_angle_measure; WHERE WR1: SIZEOF(drafted_edges) = SIZEOF(draft_angles); WR2: SIZEOF(QUERY (q <* draft_angles| (q = 0))) = 0; WR3: SIZEOF(QUERY (q <* drafted_edges| (SIZEOF(QUERY (r <* q| NOT (SELF\swept_face_solid.swept_face IN using_items(r, [])))) > 0))) = 0; END_ENTITY; -- IN AP203e2/AP242 ENTITY extruded_face_solid_with_trim_conditions SUPERTYPE OF (ONEOF(extruded_face_solid_with_draft_angle, extruded_face_solid_with_multiple_draft_angles)) SUBTYPE OF (extruded_face_solid); first_trim_condition : trim_condition_select; second_trim_condition : trim_condition_select; first_trim_intent : trim_intent; second_trim_intent : trim_intent; first_offset : non_negative_length_measure; second_offset : non_negative_length_measure; WHERE WR1: NOT (('STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE' IN TYPEOF(first_trim_condition)) OR ('STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE' IN TYPEOF(second_trim_condition))); WR2: NOT (('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN TYPEOF(first_trim_condition)) AND ((first_trim_intent = trim_intent.offset) OR (first_trim_intent = trim_intent.up_to_next)) OR ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN TYPEOF(second_trim_condition)) AND ((second_trim_intent = trim_intent.offset) OR (second_trim_intent = trim_intent.up_to_next))); WR3: NOT (NOT ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN TYPEOF(first_trim_condition)) AND ((first_trim_intent = trim_intent.blind) OR (first_trim_intent = trim_intent.through_all)) OR NOT ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN TYPEOF(second_trim_condition)) AND ((second_trim_intent = trim_intent.blind) OR (second_trim_intent = trim_intent.through_all))); WR4: ((first_trim_intent = trim_intent.offset) AND (first_offset > 0) XOR (first_trim_intent <> trim_intent.offset) AND (first_offset = 0)) AND ((second_trim_intent = trim_intent.offset) AND (second_offset > 0) XOR (second_trim_intent <> trim_intent.offset) AND (second_offset = 0)); WR5: NOT ((('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN TYPEOF(first_trim_condition)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN TYPEOF(second_trim_condition))) AND (first_trim_condition = second_trim_condition)); END_ENTITY; ENTITY face SUPERTYPE OF (ONEOF(face_surface, subface, oriented_face)) SUBTYPE OF (topological_representation_item); bounds : SET [1:?] OF face_bound; WHERE WR1: NOT mixed_loop_type_set(list_to_set(list_face_loops(SELF))); WR2: SIZEOF(QUERY (temp <* bounds| ('STEP_MERGED_CAD_SCHEMA.FACE_OUTER_BOUND' IN TYPEOF(temp)))) <= 1; END_ENTITY; ENTITY face_based_surface_model SUBTYPE OF (geometric_representation_item); fbsm_faces : SET [1:?] OF connected_face_set; END_ENTITY; ENTITY face_bound SUBTYPE OF (topological_representation_item); bound : loop; orientation : BOOLEAN; END_ENTITY; ENTITY face_outer_bound SUBTYPE OF (face_bound); END_ENTITY; -- IN AP214/AP242 ENTITY face_shape_representation SUBTYPE OF (shape_representation); WHERE WR1: SIZEOF(SELF.items) >= 1; WR2: SIZEOF(QUERY (it <* SELF.items| NOT (('STEP_MERGED_CAD_SCHEMA.FACE_SURFACE' IN TYPEOF(it)) OR ('STEP_MERGED_CAD_SCHEMA.ORIENTED_FACE' IN TYPEOF(it))))) = 0; END_ENTITY; -- IN AP242 ENTITY face_shape_representation_relationship SUBTYPE OF (representation_relationship); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.FACE_SHAPE_REPRESENTATION' IN TYPEOF(SELF.rep_1); WR2: 'STEP_MERGED_CAD_SCHEMA.FACE_SHAPE_REPRESENTATION' IN TYPEOF(SELF.rep_2); END_ENTITY; ENTITY face_surface SUBTYPE OF (face, geometric_representation_item); face_geometry : surface; same_sense : BOOLEAN; WHERE WR1: NOT ('STEP_MERGED_CAD_SCHEMA.ORIENTED_SURFACE' IN TYPEOF(face_geometry)); END_ENTITY; -- IN AP242 ENTITY face_surface_with_excessive_patches_in_one_direction SUBTYPE OF (overcomplex_topology_and_geometry_relationship); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.FACE_SURFACE' ]); WR4: validate_locations_of_extreme_value_type(SELF, []); WR5: validate_accuracy_types(SELF, []); END_ENTITY; ENTITY faceted_brep SUBTYPE OF (manifold_solid_brep); END_ENTITY; ENTITY faceted_brep_shape_representation SUBTYPE OF (shape_representation); WHERE WR1: SIZEOF(QUERY (it <* items| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.FACETED_BREP', 'STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM', 'STEP_MERGED_CAD_SCHEMA.AXIS2_PLACEMENT_3D' ] * TYPEOF(it)) = 1))) = 0; WR2: SIZEOF(QUERY (it <* items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.FACETED_BREP', 'STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' ] * TYPEOF(it)) = 1))) > 0; WR3: SIZEOF(QUERY (fbrep <* QUERY (it <* items| ('STEP_MERGED_CAD_SCHEMA.FACETED_BREP' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (csh <* msb_shells(fbrep)| NOT (SIZEOF(QUERY (fcs <* csh\connected_face_set.cfs_faces| NOT (('STEP_MERGED_CAD_SCHEMA.FACE_SURFACE' IN TYPEOF(fcs)) AND (('STEP_MERGED_CAD_SCHEMA.PLANE' IN TYPEOF(fcs\face_surface.face_geometry)) AND ('STEP_MERGED_CAD_SCHEMA.CARTESIAN_POINT' IN TYPEOF(fcs\face_surface.face_geometry\elementary_surface.position.location)))))) = 0))) = 0))) = 0; WR4: SIZEOF(QUERY (fbrep <* QUERY (it <* items| ('STEP_MERGED_CAD_SCHEMA.FACETED_BREP' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (csh <* msb_shells(fbrep)| NOT (SIZEOF(QUERY (fcs <* csh\connected_face_set.cfs_faces| NOT (SIZEOF(QUERY (bnds <* fcs.bounds| ('STEP_MERGED_CAD_SCHEMA.FACE_OUTER_BOUND' IN TYPEOF(bnds)))) = 1))) = 0))) = 0))) = 0; WR5: SIZEOF(QUERY (msb <* QUERY (it <* items| ('STEP_MERGED_CAD_SCHEMA.MANIFOLD_SOLID_BREP' IN TYPEOF(it)))| ('STEP_MERGED_CAD_SCHEMA.ORIENTED_CLOSED_SHELL' IN TYPEOF(msb\manifold_solid_brep.outer)))) = 0; WR6: SIZEOF(QUERY (brv <* QUERY (it <* items| ('STEP_MERGED_CAD_SCHEMA.BREP_WITH_VOIDS' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (csh <* brv\brep_with_voids.voids| csh\oriented_closed_shell.orientation)) = 0))) = 0; WR7: SIZEOF(QUERY (mi <* QUERY (it <* items| ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(it)))| NOT ('STEP_MERGED_CAD_SCHEMA.FACETED_BREP_SHAPE_REPRESENTATION' IN TYPEOF(mi\mapped_item.mapping_source.mapped_representation)))) = 0; END_ENTITY; -- IN AP203e2/AP242 ENTITY fact_type SUBTYPE OF (property_definition); END_ENTITY; -- IN AP214/AP242 ENTITY feature_component_definition SUBTYPE OF (characterized_object); WHERE WR1: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')) = 1))) = 0; END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY feature_component_relationship SUPERTYPE OF (ONEOF(pattern_omit_membership, pattern_offset_membership)) SUBTYPE OF (shape_aspect_relationship); WHERE WR1: ((SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.COMPOSITE_SHAPE_ASPECT', 'STEP_MERGED_CAD_SCHEMA.REPLICATE_FEATURE', 'STEP_MERGED_CAD_SCHEMA.TRANSITION_FEATURE', 'STEP_MERGED_CAD_SCHEMA.MODIFIED_PATTERN' ] * TYPEOF(SELF.relating_shape_aspect)) = 1) OR ('STEP_MERGED_CAD_SCHEMA.MACHINING_FEATURE_DEFINITION' IN TYPEOF(SELF.relating_shape_aspect.of_shape.definition))) OR ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_DEFINITION' IN TYPEOF(SELF.relating_shape_aspect.of_shape.definition)); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY feature_definition SUPERTYPE OF (ONEOF(boss, compound_feature, externally_defined_feature_definition, flat_face, gear, marking, outer_round, outside_profile, pocket, protrusion, removal_volume, replicate_feature, revolved_profile, rib_top, round_hole, rounded_end, spherical_cap, step, slot, thread, turned_knurl)) SUBTYPE OF (characterized_object); END_ENTITY; -- IN AP242 ENTITY feature_definition_with_connection_area SUBTYPE OF (shape_feature_definition); END_ENTITY; -- IN AP242 ENTITY feature_for_datum_target_relationship SUBTYPE OF (shape_aspect_relationship); SELF\shape_aspect_relationship.related_shape_aspect : datum_target; UNIQUE UR1 : related_shape_aspect; WHERE WR1: relating_shape_aspect.of_shape :=: related_shape_aspect.of_shape; WR2: relating_shape_aspect\shape_aspect.product_definitional = TRUE; END_ENTITY; -- IN AP214/AP242 ENTITY feature_in_panel SUBTYPE OF (feature_definition); WHERE WR1: SELF.description IN [ 'pocket', 'boss', 'stairstep' ]; WR2: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND NOT ((2 <= SIZEOF(pdr.used_representation.items)) AND (SIZEOF(pdr.used_representation.items) <= 3)))) = 0; WR3: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| NOT (i.name IN [ 'orientation', 'base radius', 'target radius' ]))) > 0))) = 0; WR4: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| (i.name = 'base radius') AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(i)) = 2))) = 1))) = 1; WR5: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| (i.name = 'target radius') AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(i)) = 2))) = 1))) = 1; WR6: SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| (sa.name = 'base boundary') AND (sa.description IN [ 'directed angle occurrence', 'closed profile occurrence' ]))) = 1; WR7: SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| (sa.name = 'target boundary') AND (sa.description IN [ 'directed angle occurrence', 'closed profile occurrence' ]))) = 1; WR8: SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| (sa.description = 'directed angle occurrence'))) <= 1; WR9: SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| (sa.description = 'directed angle occurrence') AND (SIZEOF(QUERY (sar <* USEDIN(sa, 'STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)) AND (sar.name = 'directed angle usage')) AND ('STEP_MERGED_CAD_SCHEMA.DIRECTED_ANGLE' IN TYPEOF(sar.relating_shape_aspect)))) = 1))) = SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| (sa.description = 'directed angle occurrence'))); WR10: SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| (sa.description = 'closed profile occurrence') AND (SIZEOF(QUERY (sar <* USEDIN(sa, 'STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)) AND (sar.description = 'profile usage')) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CIRCULAR_CLOSED_PROFILE', 'STEP_MERGED_CAD_SCHEMA.NGON_CLOSED_PROFILE', 'STEP_MERGED_CAD_SCHEMA.RECTANGULAR_CLOSED_PROFILE', 'STEP_MERGED_CAD_SCHEMA.CLOSED_PATH_PROFILE' ] * TYPEOF(sar.relating_shape_aspect)) = 1))) = 1))) = SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| (sa.description = 'closed profile occurrence'))); WR11: (SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.FACE_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)))) <= 1) AND (SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.FACE_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND NOT (pdr.used_representation.name = 'target face'))) = 0); WR12: (SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| (sa.name = 'target boundary') AND (sa.description = 'directed angle occurrence'))) = 0) OR (SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.FACE_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)))) = 1); END_ENTITY; -- IN AP214/AP242 ENTITY feature_pattern SUBTYPE OF (replicate_feature); WHERE WR1: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (srwp_i <* pdr.used_representation.items| NOT ('STEP_MERGED_CAD_SCHEMA.PLACEMENT' IN TYPEOF(srwp_i)))) > 0))) > 0))) = 0; WR2: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.PLACEMENT' IN TYPEOF(it)) AND (it.name = 'base feature placement'))) > 1))) = 0))) = 0; END_ENTITY; -- IN AP214 ENTITY featured_shape SUBTYPE OF (product_definition_shape); WHERE wr1: 'STEP_MERGED_CAD_SCHEMA.' + 'PRODUCT_DEFINITION' IN TYPEOF(SELF.definition); wr2: (SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_RELATIONSHIP.RELATED_PROPERTY_DEFINITION')) = 1) AND (SIZEOF(QUERY (pdr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_RELATIONSHIP.RELATED_PROPERTY_DEFINITION')| ((pdr.name = 'featured shape sequence') AND ('STEP_MERGED_CAD_SCHEMA.' + 'PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pdr.relating_property_definition))) AND (pdr.relating_property_definition :<>: SELF))) = 1); wr3: SIZEOF(QUERY (pdr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_RELATIONSHIP.RELATED_PROPERTY_DEFINITION')| (SELF.definition :=: pdr.relating_property_definition.definition))) = 1; wr4: SIZEOF(QUERY (sa <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'PLACED_FEATURE'), ('STEP_MERGED_CAD_SCHEMA.' + 'INSTANCED_FEATURE') ] * TYPEOF(sa)) = 1))) >= 1; END_ENTITY; ENTITY fill_area_style SUBTYPE OF (founded_item); name : label; fill_styles : SET [1:?] OF fill_style_select; WHERE WR1: SIZEOF(QUERY (fill_style <* SELF.fill_styles| ('STEP_MERGED_CAD_SCHEMA.' + 'FILL_AREA_STYLE_COLOUR' IN TYPEOF(fill_style)))) <= 1; END_ENTITY; ENTITY fill_area_style_colour; name : label; fill_colour : colour; END_ENTITY; ENTITY fill_area_style_hatching SUBTYPE OF (geometric_representation_item); hatch_line_appearance : curve_style; start_of_next_hatch_line : one_direction_repeat_factor; point_of_reference_hatch_line : cartesian_point; pattern_start : cartesian_point; hatch_line_angle : plane_angle_measure; END_ENTITY; -- IN AP203e2/AP242 ENTITY fill_area_style_tile_coloured_region SUBTYPE OF (geometric_representation_item); closed_curve : curve_or_annotation_curve_occurrence; region_colour : colour; WHERE WR1: ((((NOT ('STEP_MERGED_CAD_SCHEMA.CURVE' IN TYPEOF(closed_curve)) OR ('STEP_MERGED_CAD_SCHEMA.CIRCLE' IN TYPEOF(closed_curve))) OR ('STEP_MERGED_CAD_SCHEMA.ELLIPSE' IN TYPEOF(closed_curve))) OR ('STEP_MERGED_CAD_SCHEMA.B_SPLINE_CURVE' IN TYPEOF(closed_curve)) AND (closed_curve\b_spline_curve.closed_curve = TRUE)) OR ('STEP_MERGED_CAD_SCHEMA.COMPOSITE_CURVE' IN TYPEOF(closed_curve)) AND (closed_curve\composite_curve.closed_curve = TRUE)) OR ('STEP_MERGED_CAD_SCHEMA.POLYLINE' IN TYPEOF(closed_curve)) AND (closed_curve\polyline.points[LOINDEX(closed_curve\polyline.points)] = closed_curve\polyline.points[HIINDEX(closed_curve\polyline.points)]); END_ENTITY; -- IN AP203e2/AP242 ENTITY fill_area_style_tile_curve_with_style SUBTYPE OF (geometric_representation_item); styled_curve : annotation_curve_occurrence; END_ENTITY; ENTITY fill_area_style_tile_symbol_with_style SUBTYPE OF (geometric_representation_item); symbol : annotation_symbol_occurrence; END_ENTITY; ENTITY fill_area_style_tiles SUBTYPE OF (geometric_representation_item); tiling_pattern : two_direction_repeat_factor; tiles : SET [1:?] OF fill_area_style_tile_shape_select; tiling_scale : positive_ratio_measure; END_ENTITY; -- IN AP214/AP242 ENTITY fillet SUBTYPE OF (transition_feature); WHERE WR1: NOT (SELF\shape_aspect.description = 'constant radius') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1))) = 0); WR2: NOT (SELF\shape_aspect.description = 'constant radius') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) >= 1) AND (SIZEOF(impl_rep.used_representation.items) <= 3))) = 0))) = 0); WR3: NOT (SELF.description = 'constant radius') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'radius'))) = 1))) = 0))) = 0); WR4: NOT (SELF.description = 'constant radius') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'first offset'))) <= 1))) = 0))) = 0); WR5: NOT (SELF.description = 'constant radius') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'second offset'))) <= 1))) = 0))) = 0); WR6: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.FACE_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'fillet face'))) = 1))) = 0; WR7: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.FACE_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'first face shape'))) = 1))) = 0; WR8: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.FACE_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'second face shape'))) = 1))) = 0; END_ENTITY; -- IN AP242 ENTITY finite_function SUBTYPE OF (maths_function, generic_literal); pairs : SET [1:?] OF LIST [2:2] OF maths_value; WHERE WR1: VALUE_UNIQUE(list_selected_components(pairs, 1)); END_ENTITY; -- IN AP242 ENTITY finite_integer_interval SUBTYPE OF (maths_space, generic_literal); min : INTEGER; max : INTEGER; DERIVE size : positive_integer := max - min + 1; WHERE WR1: min <= max; END_ENTITY; -- IN AP242 ENTITY finite_real_interval SUBTYPE OF (maths_space, generic_literal); min : REAL; min_closure : open_closed; max : REAL; max_closure : open_closed; WHERE WR1: min < max; END_ENTITY; -- IN AP242 ENTITY finite_space SUBTYPE OF (maths_space, generic_literal); members : SET [0:?] OF maths_value; WHERE WR1: VALUE_UNIQUE(members); WR2: SIZEOF(QUERY (expr <* QUERY (member <* members| ('STEP_MERGED_CAD_SCHEMA.GENERIC_EXPRESSION' IN TYPEOF(member)))| NOT expression_is_constant(expr))) = 0; WR3: no_cyclic_space_reference(SELF, []); END_ENTITY; -- IN AP242 ENTITY fixed_constituent_assembly_constraint SUBTYPE OF (assembly_geometric_constraint, fixed_element_geometric_constraint); fixed_constituent : representative_shape_representation; WHERE WR1: SELF\explicit_constraint.constrained_elements[1]\geometric_representation_item.dim = 3; WR2: assembly_leaf(using_product_definition_of_shape_representation(fixed_constituent)[1]); WR3: (SIZEOF(SELF\explicit_constraint.constrained_elements) = 1) AND (SIZEOF(SELF\explicit_constraint.reference_elements) = 0); WR4: fixed_constituent IN using_representations(SELF\explicit_constraint.constrained_elements[1]) + using_representation_with_mapping(SELF\explicit_constraint.constrained_elements[1]); END_ENTITY; -- IN AP242 ENTITY fixed_element_geometric_constraint SUBTYPE OF (explicit_geometric_constraint); SELF\explicit_constraint.constrained_elements : SET [1:?] OF geometric_constraint_element; WHERE WR1: SIZEOF(SELF\explicit_constraint.reference_elements) = 0; END_ENTITY; -- IN AP242 ENTITY fixed_instance_attribute_set SUBTYPE OF (variational_representation_item); fixed_attributes : SET [1:?] OF instance_attribute_reference; WHERE WR1: SIZEOF(QUERY (q <* using_representations(SELF)| (SIZEOF(QUERY (r <* q.items| ('STEP_MERGED_CAD_SCHEMA.FIXED_INSTANCE_ATTRIBUTE_SET' IN TYPEOF(r)))) > 1))) = 0; END_ENTITY; -- IN AP242 ENTITY flat_face SUBTYPE OF (feature_definition); WHERE WR1: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.DIRECTION_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'removal direction'))) = 1))) = 0; WR2: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'course of travel occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'path feature component usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| (('STEP_MERGED_CAD_SCHEMA.PATH_FEATURE_COMPONENT' IN TYPEOF(sdr.relating_shape_aspect)) AND (sdr.relating_shape_aspect.description = 'linear')) AND (sdr.name = 'course of travel'))) = 1))) = 1))) = 0; WR3: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'removal boundary occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'profile usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.LINEAR_PROFILE' IN TYPEOF(sdr.relating_shape_aspect)) AND (sdr.name = 'removal boundary'))) = 1))) = 1))) = 0; WR4: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'enclosed boundary occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'profile usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CIRCULAR_CLOSED_PROFILE', 'STEP_MERGED_CAD_SCHEMA.NGON_CLOSED_PROFILE', 'STEP_MERGED_CAD_SCHEMA.RECTANGULAR_CLOSED_PROFILE', 'STEP_MERGED_CAD_SCHEMA.CLOSED_PATH_PROFILE' ] * TYPEOF(sdr.relating_shape_aspect)) = 1) AND (sdr.relating_shape_aspect.description = 'boundary'))) = 1))) <= 1))) = 0; WR5: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.PLANAR_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'maximum feature limit'))) >= 0; WR6: SIZEOF(QUERY (pds <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pds)) AND (SIZEOF(QUERY (csa <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (('STEP_MERGED_CAD_SCHEMA.COMPOSITE_SHAPE_ASPECT' IN TYPEOF(csa)) AND (csa.name = 'uncut volume')) AND (SIZEOF(QUERY (sar <* csa.component_relationships| ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.BOSS', 'STEP_MERGED_CAD_SCHEMA.PROTRUSION' ] * TYPEOF(sar.related_shape_aspect)) = 1))) = 1))) <= 1))) = 1; WR7: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'removal depth'))) <= 1))) = 0))) = 0; END_ENTITY; -- IN AP203e2/AP242 ENTITY flat_pattern_ply_representation_relationship SUBTYPE OF (shape_representation_relationship); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION' IN TYPEOF(SELF\representation_relationship.rep_1) * TYPEOF(SELF\representation_relationship.rep_2); WR2: SELF\representation_relationship.rep_1.context_of_items\geometric_representation_context.coordinate_space_dimension = 3; END_ENTITY; ENTITY flatness_tolerance SUBTYPE OF (geometric_tolerance); WHERE WR1: NOT ('STEP_MERGED_CAD_SCHEMA.' + 'GEOMETRIC_TOLERANCE_WITH_DATUM_REFERENCE' IN TYPEOF(SELF)); END_ENTITY; -- IN AP203e2/AP242 ENTITY force_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.FORCE_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; -- IN AP203e2/AP242 ENTITY force_unit SUBTYPE OF (derived_unit); WHERE WR1: derive_dimensional_exponents(SELF) = dimensions_for_si_unit(si_unit_name.newton); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY format_function SUBTYPE OF (string_expression, binary_generic_expression); DERIVE format_string : generic_expression := SELF\binary_generic_expression.operands[2]; value_to_format : generic_expression := SELF\binary_generic_expression.operands[1]; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.NUMERIC_EXPRESSION' IN TYPEOF(value_to_format)) AND ('STEP_MERGED_CAD_SCHEMA.STRING_EXPRESSION' IN TYPEOF(format_string)); END_ENTITY; -- IN AP203e2/AP242 ENTITY forward_chaining_rule SUBTYPE OF (rule_definition); END_ENTITY; -- IN AP203e2/AP242 ENTITY forward_chaining_rule_premise SUBTYPE OF (property_definition, property_definition_representation, representation); END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY founded_item SUPERTYPE OF (ONEOF(b_spline_curve_knot_locator, b_spline_curve_segment, b_spline_surface_knot_locator, b_spline_surface_patch, b_spline_surface_strip, boundary_curve_of_b_spline_or_rectangular_composite_surface, box_domain, character_glyph_style_outline, character_glyph_style_stroke, composite_curve_segment, composite_curve_transition_locator, curve_style, curve_style_font, curve_style_font_and_scaling, curve_style_font_pattern, externally_defined_style, fill_area_style, interpolated_configuration_segment, kinematic_path_segment, plane_angle_and_length_pair, plane_angle_and_ratio_pair, point_style, presentation_style_assignment, rectangular_composite_surface_transition_locator, surface_patch, surface_side_style, surface_style_boundary, surface_style_control_grid, surface_style_fill_area, surface_style_parameter_line, surface_style_segmentation_curve, surface_style_silhouette, surface_style_usage, symbol_style, text_style, view_volume) ANDOR ONEOF(character_glyph_style_outline, character_glyph_style_stroke, curve_style, curve_style_font, curve_style_font_and_scaling, curve_style_font_pattern, externally_defined_style, fill_area_style, point_style, presentation_style_assignment, surface_side_style, surface_style_boundary, surface_style_control_grid, surface_style_fill_area, surface_style_parameter_line, surface_style_segmentation_curve, surface_style_silhouette, surface_style_usage, symbol_style, text_style)); DERIVE users : SET [0:?] OF founded_item_select := using_items(SELF, []); WHERE WR1: SIZEOF(users) > 0; WR2: NOT (SELF IN users); END_ENTITY; -- IN AP214 ENTITY founded_kinematic_path SUBTYPE OF (representation); SELF\representation.items : SET [1:?] OF kinematic_path; SELF\representation.context_of_items : geometric_representation_context; DERIVE paths : SET [1:?] OF kinematic_path := SELF\representation.items; founding : geometric_representation_context := SELF\representation.context_of_items; END_ENTITY; -- IN AP242 ENTITY free_edge SUBTYPE OF (inapt_topology); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.CONNECTED_FACE_SET' ]); WR3: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.EDGE_CURVE' ]); WR4: validate_accuracy_types(SELF, []); WR5: SIZEOF(QUERY (sdqr <* bag_to_set(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'DATA_QUALITY_INSPECTION_RESULT.' + 'CRITERION_INSPECTED'))| ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_INSPECTION_RESULT' IN TYPEOF(sdqr)) AND (SIZEOF(QUERY (sdqiir <* bag_to_set(USEDIN(sdqr, 'STEP_MERGED_CAD_SCHEMA.' + 'DATA_QUALITY_INSPECTION_REPORT.' + 'INSPECTION_RESULT'))| ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_INSPECTION_INSTANCE_REPORT' IN TYPEOF(sdqiir)) AND (SIZEOF(QUERY (sdqiri <* sdqiir.inspected_instances| ('STEP_MERGED_CAD_SCHEMA.CLOSED_SHELL' IN TYPEOF(sdqiri.inspected_elements[1])))) = 0))) = 0))) = 0; END_ENTITY; -- IN AP242 ENTITY free_form_assignment SUBTYPE OF (free_form_constraint); WHERE WR1: SIZEOF(QUERY (q <* SELF\free_form_constraint.constrained_elements| (q IN used_variables(SELF\free_form_constraint.constraining_expression)))) = 0; WR2: SIZEOF(QUERY (q <* SELF\free_form_constraint.reference_elements| NOT (q IN used_variables(SELF\free_form_constraint.constraining_expression)))) = 0; WR3: SIZEOF(SELF\free_form_constraint.reference_elements) >= 1; WR4: SIZEOF(QUERY (q <* SELF\free_form_constraint.constrained_elements| NOT compatible_spaces(values_space_of(SELF\free_form_constraint.constraining_expression), q\maths_variable.values_space))) = 0; END_ENTITY; -- IN AP242 ENTITY free_form_constraint ABSTRACT SUPERTYPE OF (ONEOF(free_form_assignment, free_form_relation)) SUBTYPE OF (explicit_constraint); constraining_expression : expression; SELF\explicit_constraint.constrained_elements : SET [1:?] OF variational_parameter; SELF\explicit_constraint.reference_elements : SET [0:?] OF variational_parameter; END_ENTITY; -- IN AP242 ENTITY free_form_relation SUBTYPE OF (free_form_constraint); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_EXPRESSION' IN TYPEOF(SELF\free_form_constraint.constraining_expression); WR2: SIZEOF(QUERY (q <* SELF\free_form_constraint.constrained_elements + SELF\free_form_constraint.reference_elements| NOT (q IN used_variables(SELF\free_form_constraint.constraining_expression)))) = 0; END_ENTITY; -- IN AP242 ENTITY free_kinematic_motion_representation SUBTYPE OF (representation_relationship_with_transformation); motion : kinematic_path; SELF\representation_relationship.rep_1 : representative_shape_representation; SELF\representation_relationship.rep_2 : representative_shape_representation; WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.ITEM_DEFINED_TRANSFORMATION' IN TYPEOF(SELF\representation_relationship_with_transformation.transformation_operator); WR2: ('STEP_MERGED_CAD_SCHEMA.GEOMETRIC_REPRESENTATION_ITEM' IN TYPEOF(SELF\representation_relationship_with_transformation.transformation_operator\item_defined_transformation.transform_item_1)) AND ('STEP_MERGED_CAD_SCHEMA.GEOMETRIC_REPRESENTATION_ITEM' IN TYPEOF(SELF\representation_relationship_with_transformation.transformation_operator\item_defined_transformation.transform_item_2)); WR3: (dimension_of(SELF\representation_relationship_with_transformation.transformation_operator\item_defined_transformation.transform_item_1) = 3) AND (dimension_of(SELF\representation_relationship_with_transformation.transformation_operator\item_defined_transformation.transform_item_2) = 3); WR4: (SELF\representation_relationship.rep_1 IN using_representations(SELF\representation_relationship_with_transformation.transformation_operator\item_defined_transformation.transform_item_1) + using_representation_with_mapping(SELF\representation_relationship_with_transformation.transformation_operator\item_defined_transformation.transform_item_1)) AND (SELF\representation_relationship.rep_2 IN using_representations(SELF\representation_relationship_with_transformation.transformation_operator\item_defined_transformation.transform_item_2) + using_representation_with_mapping(SELF\representation_relationship_with_transformation.transformation_operator\item_defined_transformation.transform_item_2)); END_ENTITY; -- IN AP203e2/AP242 ENTITY frequency_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.FREQUENCY_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; -- IN AP203e2/AP242 ENTITY frequency_unit SUBTYPE OF (derived_unit); WHERE WR1: derive_dimensional_exponents(SELF) = dimensions_for_si_unit(si_unit_name.hertz); END_ENTITY; -- IN AP242 ENTITY frozen_assignment SUBTYPE OF (approval_assignment); items : SET [1:?] OF change_management_object; END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY fully_constrained_pair SUBTYPE OF (low_order_kinematic_pair); DERIVE SELF\low_order_kinematic_pair.r_x : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.r_y : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.r_z : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.t_x : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.t_y : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.t_z : BOOLEAN := FALSE; END_ENTITY; -- IN AP203e2/AP242 ENTITY func SUBTYPE OF (compound_representation_item); END_ENTITY; -- IN AP242 ENTITY function_application SUBTYPE OF (multiple_arity_generic_expression); func : maths_function_select; arguments : LIST [1:?] OF maths_expression; DERIVE SELF\multiple_arity_generic_expression.operands : LIST [2:?] OF generic_expression := [ convert_to_maths_function(func) ] + convert_to_operands(arguments); WHERE WR1: function_applicability(func, arguments); END_ENTITY; -- IN AP242 ENTITY function_space SUBTYPE OF (maths_space, generic_literal); domain_constraint : space_constraint_type; domain_argument : maths_space; range_constraint : space_constraint_type; range_argument : maths_space; WHERE WR1: expression_is_constant(domain_argument) AND expression_is_constant(range_argument); WR2: (domain_argument <> the_empty_space) AND (range_argument <> the_empty_space); WR3: (domain_constraint <> sc_member) OR NOT member_of(the_empty_space, domain_argument); WR4: (range_constraint <> sc_member) OR NOT member_of(the_empty_space, range_argument); WR5: NOT (any_space_satisfies(domain_constraint, domain_argument) AND any_space_satisfies(range_constraint, range_argument)); END_ENTITY; -- IN AP203e2/AP242 ENTITY functional_breakdown_context SUBTYPE OF (breakdown_context); END_ENTITY; -- IN AP203e2/AP242 ENTITY functional_element_usage SUBTYPE OF (breakdown_element_usage); END_ENTITY; ENTITY functionally_defined_transformation; name : label; description : OPTIONAL text; END_ENTITY; -- IN AP242 ENTITY g1_discontinuity_between_adjacent_faces SUBTYPE OF (non_smooth_geometry_transition_across_edge); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.CONNECTED_FACE_SET' ]); WR4: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'POINT_ON_EDGE_CURVE' ]); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY g1_discontinuous_curve SUBTYPE OF (discontinuous_geometry); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.B_SPLINE_CURVE' ]); WR4: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'B_SPLINE_CURVE_KNOT_LOCATOR' ]); WR5: validate_accuracy_types(SELF, []); END_ENTITY; -- IN AP242 ENTITY g1_discontinuous_surface SUBTYPE OF (discontinuous_geometry); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.B_SPLINE_SURFACE' ]); WR4: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'B_SPLINE_SURFACE_KNOT_LOCATOR' ]); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY g2_discontinuity_between_adjacent_faces SUBTYPE OF (non_smooth_geometry_transition_across_edge); assessment_specification_2 : shape_data_quality_assessment_by_numerical_test; flat_curvature_radius_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(assessment_specification_2\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.RATIO_MEASURE' IN value_limit_type(assessment_specification_2\shape_data_quality_assessment_by_numerical_test.threshold)); WR3: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PLANE_ANGLE_AND_RATIO_PAIR'); WR4: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.CONNECTED_FACE_SET' ]); WR5: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'POINT_ON_EDGE_CURVE' ]); WR6: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.RATIO_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY g2_discontinuous_curve SUBTYPE OF (discontinuous_geometry); assessment_specification_2 : shape_data_quality_assessment_by_numerical_test; flat_curvature_radius_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(assessment_specification_2\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.RATIO_MEASURE' IN value_limit_type(assessment_specification_2\shape_data_quality_assessment_by_numerical_test.threshold)); WR3: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PLANE_ANGLE_AND_RATIO_PAIR'); WR4: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.B_SPLINE_CURVE' ]); WR5: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'B_SPLINE_CURVE_KNOT_LOCATOR' ]); WR6: validate_accuracy_types(SELF, []); END_ENTITY; -- IN AP242 ENTITY g2_discontinuous_surface SUBTYPE OF (discontinuous_geometry); assessment_specification_2 : shape_data_quality_assessment_by_numerical_test; flat_curvature_radius_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(assessment_specification_2\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.RATIO_MEASURE' IN value_limit_type(assessment_specification_2\shape_data_quality_assessment_by_numerical_test.threshold)); WR3: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PLANE_ANGLE_AND_RATIO_PAIR'); WR4: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.B_SPLINE_SURFACE' ]); WR5: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'B_SPLINE_SURFACE_KNOT_LOCATOR' ]); WR6: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.RATIO_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY gap_between_adjacent_edges_in_loop SUBTYPE OF (geometric_gap_in_topology); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' ]); WR4: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.ORIENTED_EDGE' ]); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY gap_between_edge_and_base_surface SUBTYPE OF (geometric_gap_in_topology); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.FACE_SURFACE' ]); WR4: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'POINT_ON_EDGE_CURVE', 'STEP_MERGED_CAD_SCHEMA.' + 'POINT_ON_FACE_SURFACE' ]); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY gap_between_faces_related_to_an_edge SUBTYPE OF (geometric_gap_in_topology); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.CONNECTED_FACE_SET' ]); WR4: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'POINT_ON_EDGE_CURVE' ]); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY gap_between_pcurves_related_to_an_edge SUBTYPE OF (geometric_gap_in_topology); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.CONNECTED_FACE_SET' ]); WR4: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.POINT_ON_SURFACE', 'STEP_MERGED_CAD_SCHEMA.POINT_ON_SURFACE' ]); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY gap_between_vertex_and_base_surface SUBTYPE OF (geometric_gap_in_topology); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.FACE_SURFACE' ]); WR4: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.VERTEX_POINT', 'STEP_MERGED_CAD_SCHEMA.' + 'POINT_ON_FACE_SURFACE' ]); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY gap_between_vertex_and_edge SUBTYPE OF (geometric_gap_in_topology); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.EDGE_CURVE' ]); WR4: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.VERTEX_POINT', 'STEP_MERGED_CAD_SCHEMA.' + 'POINT_ON_EDGE_CURVE' ]); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY gear SUBTYPE OF (feature_definition); WHERE WR1: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| (('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (10 <= SIZEOF(pdr.used_representation.items))) AND (SIZEOF(pdr.used_representation.items) <= 13))) = 1))) = 1; WR2: NOT (SELF\characterized_object.description IN [ 'straight bevel gear', 'helical bevel gear', 'spur gear', 'helical gear' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.RATIO_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'number of teeth'))) = 1))) = 0))) = 0); WR3: NOT (SELF\characterized_object.description IN [ 'straight bevel gear', 'helical bevel gear', 'spur gear', 'helical gear' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'reference pressure angle'))) = 1))) = 0))) = 0); WR4: NOT (SELF\characterized_object.description IN [ 'straight bevel gear', 'helical bevel gear', 'spur gear', 'helical gear' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'rake shift factor'))) = 1))) = 0))) = 0); WR5: NOT (SELF\characterized_object.description IN [ 'straight bevel gear', 'helical bevel gear', 'spur gear', 'helical gear' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'nominal tooth depth'))) = 1))) = 0))) = 0); WR6: NOT (SELF\characterized_object.description IN [ 'straight bevel gear', 'helical bevel gear', 'spur gear', 'helical gear' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'face width'))) = 1))) = 0))) = 0); WR7: NOT (SELF\characterized_object.description IN [ 'straight bevel gear', 'helical bevel gear', 'spur gear', 'helical gear' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'tip diameter'))) = 1))) = 0))) = 0); WR8: NOT (SELF\characterized_object.description IN [ 'straight bevel gear', 'helical bevel gear', 'spur gear', 'helical gear' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND (it.name = 'module or diametral pitch')) AND ((it.description = 'module') OR (it.description = 'diametral pitch')))) = 1))) = 0))) = 0); WR9: NOT (SELF\characterized_object.description IN [ 'straight bevel gear', 'helical bevel gear', 'spur gear', 'helical gear' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND (it.name = 'internal or external gear')) AND ((it.description = 'internal') OR (it.description = 'external')))) = 1))) = 0))) = 0); WR10: NOT (SELF\characterized_object.description IN [ 'straight bevel gear', 'helical bevel gear', 'spur gear', 'helical gear' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'normal attribute'))) = 1))) = 0))) = 0); WR11: NOT (SELF\characterized_object.description IN [ 'straight bevel gear', 'helical bevel gear', 'spur gear', 'helical gear' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'root fillet radius'))) <= 1))) = 0))) = 0); WR12: NOT (SELF\characterized_object.description IN [ 'helix gear', 'helical bevel gear' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'reference helix angle'))) = 1))) = 0))) = 0); WR13: NOT (SELF\characterized_object.description IN [ 'helix gear', 'helical bevel gear' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND (it.name = 'gear tooth')) AND ((it.description = 'left hand tooth') OR (it.description = 'right hand tooth')))) = 1))) = 0))) = 0); WR14: NOT (SELF\characterized_object.description IN [ 'straight bevel gear', 'helical bevel gear' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'tip angle'))) = 1))) = 0))) = 0); WR15: NOT (SELF\characterized_object.description IN [ 'straight bevel gear', 'helical bevel gear' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'root angle'))) = 1))) = 0))) = 0); WR16: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'applied shape') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT' IN TYPEOF(sdr.relating_shape_aspect)))) = 1))) = 1))) = 0; END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY gear_pair SUBTYPE OF (low_order_kinematic_pair_with_motion_coupling); radius_first_link : length_measure; radius_second_link : length_measure; bevel : plane_angle_measure; helical_angle : plane_angle_measure; gear_ratio : REAL; WHERE WR1: SIZEOF(QUERY (lr <* SELF\kinematic_pair.associated_link_representations_1| NOT ('STEP_MERGED_CAD_SCHEMA.RIGID_LINK_REPRESENTATION' IN TYPEOF(lr)))) = 0; END_ENTITY; -- IN AP214 ENTITY gear_pair_range SUBTYPE OF (simple_pair_range); SELF\simple_pair_range.applies_to_pair : gear_pair; lower_limit_actual_rotation_1 : rotational_range_measure; upper_limit_actual_rotation_1 : rotational_range_measure; WHERE wr1: (('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(lower_limit_actual_rotation_1)) OR ('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(upper_limit_actual_rotation_1))) XOR (lower_limit_actual_rotation_1 < upper_limit_actual_rotation_1); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY gear_pair_value SUBTYPE OF (pair_value); actual_rotation_1 : plane_angle_measure; SELF\pair_value.applies_to_pair : gear_pair; DERIVE actual_rotation_2 : plane_angle_measure := -actual_rotation_1 * SELF\pair_value.applies_to_pair\gear_pair.gear_ratio; END_ENTITY; -- IN AP242 ENTITY gear_pair_with_range SUBTYPE OF (gear_pair); lower_limit_actual_rotation_1 : OPTIONAL plane_angle_measure; upper_limit_actual_rotation_1 : OPTIONAL plane_angle_measure; WHERE WR1: (NOT EXISTS(lower_limit_actual_rotation_1) OR NOT EXISTS(upper_limit_actual_rotation_1)) XOR (lower_limit_actual_rotation_1 < upper_limit_actual_rotation_1); END_ENTITY; -- IN AP242 ENTITY general_datum_reference ABSTRACT SUPERTYPE OF (ONEOF(datum_reference_compartment, datum_reference_element)) SUBTYPE OF (shape_aspect); base : datum_or_common_datum; modifiers : OPTIONAL SET [1:?] OF datum_reference_modifier; WHERE WR1: SELF\shape_aspect.name = ''; WR2: NOT EXISTS(SELF\shape_aspect.description); WR3: NOT EXISTS(SELF\shape_aspect.id); WR4: SELF\shape_aspect.product_definitional = FALSE; WR5: NOT ('STEP_MERGED_CAD_SCHEMA.DATUM' IN TYPEOF(base)) OR (SELF\shape_aspect.of_shape = base\shape_aspect.of_shape); WR6: NOT ('STEP_MERGED_CAD_SCHEMA.COMMON_DATUM_LIST' IN TYPEOF(base)) OR (SELF\shape_aspect.of_shape = base[1]\shape_aspect.of_shape); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY general_feature SUBTYPE OF (shape_feature_definition); WHERE WR1: (SIZEOF(get_property_definition_representations(SELF)) <= 1) AND (SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) <= 1); WR2: SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| (sa.description = 'course of travel occurrence'))) = SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| (sa.description = 'course of travel occurrence') AND (SIZEOF(QUERY (sar <* USEDIN(sa, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)) AND (sar.name = 'course of travel'))) = 1))); WR3: SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| (sa.description = 'course of travel occurrence'))) = SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| (sa.description = 'course of travel occurrence') AND (SIZEOF(QUERY (sar <* USEDIN(sa, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)) AND ('STEP_MERGED_CAD_SCHEMA.PATH_FEATURE_COMPONENT' IN TYPEOF(sar.relating_shape_aspect)))) = 1))); WR4: SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| (sa.description = 'boundary occurrence'))) = SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| (sa.description = 'boundary occurrence') AND (SIZEOF(QUERY (sar <* USEDIN(sa, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)) AND (sar.description = 'profile usage'))) = 1))); WR5: (SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| ('STEP_MERGED_CAD_SCHEMA.COMPOSITE_SHAPE_ASPECT' IN TYPEOF(sa)))) <= 1) AND (SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| (('STEP_MERGED_CAD_SCHEMA.COMPOSITE_SHAPE_ASPECT' IN TYPEOF(sa)) AND (sa.name = 'general compound feature')) AND (SIZEOF(QUERY (sar <* USEDIN(sa, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATING_SHAPE_ASPECT')| ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)) AND ('STEP_MERGED_CAD_SCHEMA.INSTANCED_FEATURE' IN TYPEOF(sar.related_shape_aspect)))) >= 2))) <= 1); END_ENTITY; -- IN AP242 ENTITY general_linear_function SUBTYPE OF (maths_function, unary_generic_expression); sum_index : one_or_two; SELF\unary_generic_expression.operand : maths_function; DERIVE mat : maths_function := SELF\unary_generic_expression.operand; WHERE WR1: function_is_2d_table(mat); WR2: (space_dimension(mat.range) = 1) AND subspace_of_es(factor1(mat.range), es_numbers); END_ENTITY; ENTITY general_material_property SUBTYPE OF (general_property); WHERE WR1: SIZEOF(QUERY (gpa <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.GENERAL_PROPERTY_ASSOCIATION.BASE_DEFINITION')| NOT ('STEP_MERGED_CAD_SCHEMA.MATERIAL_PROPERTY' IN TYPEOF(gpa\general_property_association.derived_definition)))) = 0; END_ENTITY; ENTITY general_property; id : identifier; name : label; description : OPTIONAL text; END_ENTITY; ENTITY general_property_association; name : label; description : OPTIONAL text; base_definition : general_property; derived_definition : derived_property_select; WHERE WR1: SIZEOF(USEDIN(derived_definition, 'STEP_MERGED_CAD_SCHEMA.' + 'GENERAL_PROPERTY_ASSOCIATION.' + 'DERIVED_DEFINITION')) = 1; WR2: derived_definition.name = base_definition.name; END_ENTITY; ENTITY general_property_relationship; name : label; description : OPTIONAL text; relating_property : general_property; related_property : general_property; END_ENTITY; -- IN AP242 ENTITY generated_finite_numeric_space SUBTYPE OF (finite_space); start_value : maths_number; increment_value : maths_number; increment_number : positive_integer; DERIVE SELF\finite_space.members : SET [2:?] OF maths_number := make_numeric_set(start_value, increment_value, increment_number); WHERE WR1: increment_value <> 0.0; END_ENTITY; ENTITY generic_character_glyph_symbol ABSTRACT SUPERTYPE SUBTYPE OF (symbol_representation); END_ENTITY; ENTITY generic_expression ABSTRACT SUPERTYPE OF (ONEOF(simple_generic_expression, unary_generic_expression, binary_generic_expression, multiple_arity_generic_expression)); WHERE WR1: is_acyclic(SELF); END_ENTITY; ENTITY generic_literal ABSTRACT SUPERTYPE SUBTYPE OF (simple_generic_expression); END_ENTITY; -- IN AP242 ENTITY generic_product_definition_reference ABSTRACT SUPERTYPE OF (ONEOF(product_definition_reference, product_definition_reference_with_local_representation)); source : external_source; END_ENTITY; ENTITY generic_variable ABSTRACT SUPERTYPE SUBTYPE OF (simple_generic_expression); INVERSE interpretation : environment FOR syntactic_representation; END_ENTITY; ENTITY geometric_alignment SUBTYPE OF (derived_shape_aspect); WHERE WR1: SIZEOF(SELF\derived_shape_aspect.deriving_relationships) > 1; END_ENTITY; -- IN AP242 ENTITY geometric_contact SUBTYPE OF (derived_shape_aspect); WHERE WR1: SIZEOF(SELF\derived_shape_aspect.deriving_relationships) = 2; END_ENTITY; ENTITY geometric_curve_set SUBTYPE OF (geometric_set); WHERE WR1: SIZEOF(QUERY (temp <* SELF\geometric_set.elements| ('STEP_MERGED_CAD_SCHEMA.SURFACE' IN TYPEOF(temp)))) = 0; END_ENTITY; -- IN AP242 ENTITY geometric_gap_in_topology ABSTRACT SUPERTYPE OF (ONEOF(gap_between_adjacent_edges_in_loop, gap_between_vertex_and_base_surface, gap_between_vertex_and_edge, gap_between_edge_and_base_surface, gap_between_pcurves_related_to_an_edge, gap_between_faces_related_to_an_edge)) SUBTYPE OF (inapt_topology_and_geometry_relationship); END_ENTITY; ENTITY geometric_intersection SUBTYPE OF (derived_shape_aspect); WHERE WR1: SIZEOF(SELF\derived_shape_aspect.deriving_relationships) > 1; END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY geometric_item_specific_usage SUBTYPE OF (item_identified_representation_usage); SELF\item_identified_representation_usage.definition : geometric_item_specific_usage_select; SELF\item_identified_representation_usage.identified_item : geometric_model_item; SELF\item_identified_representation_usage.used_representation : shape_model; UNIQUE UR1 : definition; END_ENTITY; -- IN AP203e2/AP242 ENTITY geometric_model_element_relationship SUBTYPE OF (geometric_representation_item, representation_item_relationship); SELF\representation_item_relationship.related_representation_item : geometric_representation_item; SELF\representation_item_relationship.relating_representation_item : geometric_representation_item; UNIQUE UR1 : relating_representation_item, related_representation_item; WHERE WR1: SELF\representation_item_relationship.relating_representation_item :<>: SELF\representation_item_relationship.related_representation_item; END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY geometric_representation_context SUPERTYPE OF (ONEOF(geometric_representation_context_with_parameter, path_parameter_representation_context)) SUBTYPE OF (representation_context); coordinate_space_dimension : dimension_count; END_ENTITY; -- IN AP242 ENTITY geometric_representation_context_with_parameter SUBTYPE OF (geometric_representation_context); parameter_unit : OPTIONAL unit; END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY geometric_representation_item SUPERTYPE OF ((((((ONEOF(point, direction, vector, placement, cartesian_transformation_operator, curve, surface, edge_curve, face_surface, poly_loop, vertex_point, solid_model, boolean_result, sphere, right_circular_cone, right_circular_cylinder, torus, block, primitive_2d, right_angular_wedge, volume, half_space_solid, shell_based_surface_model, face_based_surface_model, shell_based_wireframe_model, edge_based_wireframe_model, geometric_set, tessellated_item) ANDOR ONEOF(camera_model, camera_model_d3_multi_clipping_intersection, camera_model_d3_multi_clipping_union, curve, direction, light_source)) ANDOR ONEOF(annotation_fill_area, composite_text, curve, defined_character_glyph, defined_symbol, point, symbol_target, text_literal)) ANDOR ONEOF(kinematic_path, placement)) ANDOR ONEOF(curve, externally_defined_hatch_style, externally_defined_tile_style, fill_area_style_hatching, fill_area_style_tile_coloured_region, fill_area_style_tile_curve_with_style, fill_area_style_tile_symbol_with_style, fill_area_style_tiles, one_direction_repeat_factor, point, vector)) ANDOR ONEOF(curve, planar_extent)) ANDOR ONEOF(rotation_about_direction, su_parameters)) SUBTYPE OF (representation_item); DERIVE dim : dimension_count := dimension_of(SELF); WHERE WR1: SIZEOF(QUERY (using_rep <* using_representations(SELF)| NOT ('STEP_MERGED_CAD_SCHEMA.GEOMETRIC_REPRESENTATION_CONTEXT' IN TYPEOF(using_rep.context_of_items)))) = 0; END_ENTITY; -- DIFF IN AP214 ENTITY geometric_set SUBTYPE OF (geometric_representation_item); elements : SET [1:?] OF geometric_set_select; END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY geometric_tolerance ABSTRACT SUPERTYPE OF ((((geometric_tolerance_with_datum_reference ANDOR geometric_tolerance_with_defined_unit) ANDOR ONEOF(geometric_tolerance_with_modifiers, modified_geometric_tolerance)) ANDOR unequally_disposed_geometric_tolerance) ANDOR ONEOF(cylindricity_tolerance, flatness_tolerance, line_profile_tolerance, position_tolerance, roundness_tolerance, straightness_tolerance, surface_profile_tolerance)); name : label; description : OPTIONAL text; magnitude : OPTIONAL length_measure_with_unit; toleranced_shape_aspect : geometric_tolerance_target; DERIVE controlling_shape : product_definition_shape := sts_get_product_definition_shape(toleranced_shape_aspect); id : identifier := get_id_value(SELF); UNIQUE UR1 : id, controlling_shape; WHERE WR1: magnitude\measure_with_unit.value_component >= 0.0; WR2: EXISTS(controlling_shape); WR3: NOT ('STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP' IN TYPEOF(toleranced_shape_aspect)) OR (toleranced_shape_aspect\shape_aspect_relationship.relating_shape_aspect.of_shape :=: toleranced_shape_aspect\shape_aspect_relationship.related_shape_aspect.of_shape); WR4: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ID_ATTRIBUTE.IDENTIFIED_ITEM')) <= 1; END_ENTITY; ENTITY geometric_tolerance_relationship; name : label; description : text; relating_geometric_tolerance : geometric_tolerance; related_geometric_tolerance : geometric_tolerance; END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY geometric_tolerance_with_datum_reference SUPERTYPE OF (ONEOF(angularity_tolerance, circular_runout_tolerance, coaxiality_tolerance, concentricity_tolerance, parallelism_tolerance, perpendicularity_tolerance, symmetry_tolerance, total_runout_tolerance)) SUBTYPE OF (geometric_tolerance); datum_system : SET [1:?] OF datum_system_or_reference; WHERE WR1: (SIZEOF(QUERY (ds <* datum_system| ('STEP_MERGED_CAD_SCHEMA.' + 'DATUM_SYSTEM' IN TYPEOF(ds)))) = 0) OR (SIZEOF(datum_system) = 1); END_ENTITY; -- IN AP242 ENTITY geometric_tolerance_with_defined_area_unit SUBTYPE OF (geometric_tolerance_with_defined_unit); area_type : area_unit_type; second_unit_size : OPTIONAL length_measure_with_unit; WHERE WR1: NOT (EXISTS(second_unit_size) XOR (area_type = area_unit_type.rectangular)); END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY geometric_tolerance_with_defined_unit SUBTYPE OF (geometric_tolerance); unit_size : length_measure_with_unit; WHERE WR1: ('NUMBER' IN TYPEOF(unit_size\measure_with_unit.value_component)) AND (unit_size\measure_with_unit.value_component > 0.0); END_ENTITY; -- IN AP242 ENTITY geometric_tolerance_with_maximum_tolerance SUBTYPE OF (geometric_tolerance_with_modifiers); maximum_upper_tolerance : length_measure_with_unit; WHERE WR1: (geometric_tolerance_modifier.maximum_material_requirement IN SELF\geometric_tolerance_with_modifiers.modifiers) OR (geometric_tolerance_modifier.least_material_requirement IN SELF\geometric_tolerance_with_modifiers.modifiers); WR2: (maximum_upper_tolerance\measure_with_unit.unit_component = SELF\geometric_tolerance.magnitude\measure_with_unit.unit_component) AND (maximum_upper_tolerance\measure_with_unit.value_component > SELF\geometric_tolerance.magnitude\measure_with_unit.value_component); END_ENTITY; -- IN AP242 ENTITY geometric_tolerance_with_modifiers SUBTYPE OF (geometric_tolerance); modifiers : SET [1:?] OF geometric_tolerance_modifier; END_ENTITY; ENTITY geometrical_tolerance_callout SUBTYPE OF (draughting_callout); END_ENTITY; ENTITY geometrically_bounded_2d_wireframe_representation SUBTYPE OF (shape_representation); WHERE WR1: SELF.context_of_items\geometric_representation_context.coordinate_space_dimension = 2; WR2: SIZEOF(QUERY (item <* SELF.items| NOT (SIZEOF(TYPEOF(item) * [ 'STEP_MERGED_CAD_SCHEMA.GEOMETRIC_CURVE_SET', 'STEP_MERGED_CAD_SCHEMA.AXIS2_PLACEMENT_2D', 'STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' ]) = 1))) = 0; WR3: SIZEOF(QUERY (item <* SELF.items| (SIZEOF(TYPEOF(item) * [ 'STEP_MERGED_CAD_SCHEMA.GEOMETRIC_CURVE_SET', 'STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' ]) = 1))) >= 1; WR4: SIZEOF(QUERY (mi <* QUERY (item <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(item)))| NOT ('STEP_MERGED_CAD_SCHEMA.' + 'GEOMETRICALLY_BOUNDED_2D_WIREFRAME_REPRESENTATION' IN TYPEOF(mi\mapped_item.mapping_source.mapped_representation)))) = 0; WR5: SIZEOF(QUERY (gcs <* QUERY (item <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.GEOMETRIC_CURVE_SET' IN TYPEOF(item)))| NOT (SIZEOF(QUERY (elem <* gcs\geometric_set.elements| NOT (SIZEOF(TYPEOF(elem) * [ 'STEP_MERGED_CAD_SCHEMA.B_SPLINE_CURVE', 'STEP_MERGED_CAD_SCHEMA.CIRCLE', 'STEP_MERGED_CAD_SCHEMA.COMPOSITE_CURVE', 'STEP_MERGED_CAD_SCHEMA.ELLIPSE', 'STEP_MERGED_CAD_SCHEMA.OFFSET_CURVE_2D', 'STEP_MERGED_CAD_SCHEMA.POINT', 'STEP_MERGED_CAD_SCHEMA.POLYLINE', 'STEP_MERGED_CAD_SCHEMA.TRIMMED_CURVE' ]) = 1))) = 0))) = 0; WR6: SIZEOF(QUERY (gcs <* QUERY (item <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.GEOMETRIC_CURVE_SET' IN TYPEOF(item)))| NOT (SIZEOF(QUERY (crv <* QUERY (elem <* gcs\geometric_set.elements| ('STEP_MERGED_CAD_SCHEMA.CURVE' IN TYPEOF(elem)))| NOT valid_basis_curve_in_2d_wireframe(crv))) = 0))) = 0; WR7: SIZEOF(QUERY (gcs <* QUERY (item <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.GEOMETRIC_CURVE_SET' IN TYPEOF(item)))| NOT (SIZEOF(QUERY (pnt <* QUERY (elem <* gcs\geometric_set.elements| ('STEP_MERGED_CAD_SCHEMA.POINT' IN TYPEOF(elem)))| NOT (SIZEOF(TYPEOF(pnt) * [ 'STEP_MERGED_CAD_SCHEMA.CARTESIAN_POINT', 'STEP_MERGED_CAD_SCHEMA.POINT_ON_CURVE' ]) = 1))) = 0))) = 0; END_ENTITY; ENTITY geometrically_bounded_surface_shape_representation SUBTYPE OF (shape_representation); WHERE WR1: SIZEOF(QUERY (it <* SELF.items| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.GEOMETRIC_SET', 'STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM', 'STEP_MERGED_CAD_SCHEMA.AXIS2_PLACEMENT_3D' ] * TYPEOF(it)) = 1))) = 0; WR2: SIZEOF(QUERY (it <* SELF.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.GEOMETRIC_SET', 'STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' ] * TYPEOF(it)) = 1))) > 0; WR3: SIZEOF(QUERY (mi <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(it)))| NOT (('STEP_MERGED_CAD_SCHEMA.' + 'GEOMETRICALLY_BOUNDED_SURFACE_SHAPE_REPRESENTATION' IN TYPEOF(mi\mapped_item.mapping_source.mapped_representation)) AND (SIZEOF(QUERY (mr_it <* mi\mapped_item.mapping_source.mapped_representation.items| ('STEP_MERGED_CAD_SCHEMA.GEOMETRIC_SET' IN TYPEOF(mr_it)))) > 0)))) = 0; WR4: SIZEOF(QUERY (gs <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.GEOMETRIC_SET' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (pnt <* QUERY (gsel <* gs\geometric_set.elements| ('STEP_MERGED_CAD_SCHEMA.POINT' IN TYPEOF(gsel)))| NOT gbsf_check_point(pnt))) = 0))) = 0; WR5: SIZEOF(QUERY (gs <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.GEOMETRIC_SET' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (cv <* QUERY (gsel <* gs\geometric_set.elements| ('STEP_MERGED_CAD_SCHEMA.CURVE' IN TYPEOF(gsel)))| NOT gbsf_check_curve(cv))) = 0))) = 0; WR6: SIZEOF(QUERY (gs <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.GEOMETRIC_SET' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (sf <* QUERY (gsel <* gs\geometric_set.elements| ('STEP_MERGED_CAD_SCHEMA.SURFACE' IN TYPEOF(gsel)))| NOT gbsf_check_surface(sf))) = 0))) = 0; WR7: SIZEOF(QUERY (gs <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.GEOMETRIC_SET' IN TYPEOF(it)))| (SIZEOF(QUERY (gsel <* gs\geometric_set.elements| ('STEP_MERGED_CAD_SCHEMA.SURFACE' IN TYPEOF(gsel)))) > 0))) > 0; END_ENTITY; ENTITY geometrically_bounded_wireframe_shape_representation SUBTYPE OF (shape_representation); WHERE WR1: SIZEOF(QUERY (it <* SELF.items| NOT (SIZEOF(TYPEOF(it) * [ 'STEP_MERGED_CAD_SCHEMA.GEOMETRIC_CURVE_SET', 'STEP_MERGED_CAD_SCHEMA.AXIS2_PLACEMENT_3D', 'STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' ]) = 1))) = 0; WR2: SIZEOF(QUERY (it <* SELF.items| (SIZEOF(TYPEOF(it) * [ 'STEP_MERGED_CAD_SCHEMA.GEOMETRIC_CURVE_SET', 'STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' ]) = 1))) >= 1; WR3: SIZEOF(QUERY (gcs <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.GEOMETRIC_CURVE_SET' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (crv <* QUERY (elem <* gcs\geometric_set.elements| ('STEP_MERGED_CAD_SCHEMA.CURVE' IN TYPEOF(elem)))| NOT valid_geometrically_bounded_wf_curve(crv))) = 0))) = 0; WR4: SIZEOF(QUERY (gcs <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.GEOMETRIC_CURVE_SET' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (pnts <* QUERY (elem <* gcs\geometric_set.elements| ('STEP_MERGED_CAD_SCHEMA.POINT' IN TYPEOF(elem)))| NOT valid_geometrically_bounded_wf_point(pnts))) = 0))) = 0; WR5: SIZEOF(QUERY (gcs <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.GEOMETRIC_CURVE_SET' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (cnc <* QUERY (elem <* gcs\geometric_set.elements| ('STEP_MERGED_CAD_SCHEMA.CONIC' IN TYPEOF(elem)))| NOT ('STEP_MERGED_CAD_SCHEMA.AXIS2_PLACEMENT_3D' IN TYPEOF(cnc\conic.position)))) = 0))) = 0; WR6: SIZEOF(QUERY (gcs <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.GEOMETRIC_CURVE_SET' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (pline <* QUERY (elem <* gcs\geometric_set.elements| ('STEP_MERGED_CAD_SCHEMA.POLYLINE' IN TYPEOF(elem)))| NOT (SIZEOF(pline\polyline.points) > 2))) = 0))) = 0; WR7: SIZEOF(QUERY (mi <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(it)))| NOT ('STEP_MERGED_CAD_SCHEMA.' + 'GEOMETRICALLY_BOUNDED_WIREFRAME_SHAPE_REPRESENTATION' IN TYPEOF(mi\mapped_item.mapping_source.mapped_representation)))) = 0; END_ENTITY; -- IN AP242 ENTITY geometry_with_local_irregularity ABSTRACT SUPERTYPE OF (ONEOF(extreme_patch_width_variation, zero_surface_normal, abrupt_change_of_surface_normal)) SUBTYPE OF (inapt_geometry); END_ENTITY; -- IN AP242 ENTITY geometry_with_local_near_degeneracy ABSTRACT SUPERTYPE OF (ONEOF(curve_with_small_curvature_radius, short_length_curve_segment, surface_with_small_curvature_radius, small_area_surface_patch, narrow_surface_patch, indistinct_surface_knots, indistinct_curve_knots, nearly_degenerate_surface_boundary, nearly_degenerate_surface_patch)) SUBTYPE OF (inapt_geometry); END_ENTITY; -- IN AP203e2/AP242 ENTITY global_assignment SUBTYPE OF (representation_item_relationship); END_ENTITY; ENTITY global_uncertainty_assigned_context SUBTYPE OF (representation_context); uncertainty : SET [1:?] OF uncertainty_measure_with_unit; END_ENTITY; ENTITY global_unit_assigned_context SUBTYPE OF (representation_context); units : SET [1:?] OF unit; END_ENTITY; -- IN AP203e2/AP242 ENTITY ground_fact SUBTYPE OF (atomic_formula); END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY group SUPERTYPE OF (ONEOF(change_group, change_element)); name : label; description : OPTIONAL text; DERIVE id : identifier := get_id_value(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ID_ATTRIBUTE.IDENTIFIED_ITEM')) <= 1; END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY group_assignment ABSTRACT SUPERTYPE OF (ONEOF(current_change_element_assignment, previous_change_element_assignment, change_group_assignment)); assigned_group : group; DERIVE role : object_role := get_role(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ROLE_ASSOCIATION.ITEM_WITH_ROLE')) <= 1; END_ENTITY; ENTITY group_relationship; name : label; description : OPTIONAL text; relating_group : group; related_group : group; END_ENTITY; -- IN AP242 ENTITY half_space_2d SUBTYPE OF (primitive_2d); base_curve : curve; agreement_flag : BOOLEAN; END_ENTITY; ENTITY half_space_solid SUBTYPE OF (geometric_representation_item); base_surface : surface; agreement_flag : BOOLEAN; END_ENTITY; ENTITY hardness_representation SUBTYPE OF (representation); WHERE WR1: ((2 <= SIZEOF(SELF.items)) AND (SIZEOF(SELF.items) <= 4)) AND (SIZEOF(QUERY (i <* items| ('STEP_MERGED_CAD_SCHEMA.' + 'DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(i)) AND (i.name IN [ 'measuring method', 'measuring position' ]))) + SIZEOF(QUERY (i <* items| (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'MEASURE_REPRESENTATION_ITEM'), ('STEP_MERGED_CAD_SCHEMA.' + 'VALUE_RANGE') ] * TYPEOF(i)) = 1) AND (i.name IN [ 'depth', 'hardness' ]))) = SIZEOF(SELF.items)); WR2: SIZEOF(QUERY (i <* SELF.items| (i.name = 'measuring method'))) = 1; WR3: SIZEOF(QUERY (i <* SELF.items| (i.name = 'hardness'))) = 1; WR4: SIZEOF(QUERY (i <* SELF.items| (i.name = 'measuring position'))) <= 1; WR5: SIZEOF(QUERY (i <* SELF.items| (i.name = 'depth'))) <= 1; WR6: (SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PROPERTY_DEFINITION_REPRESENTATION.' + 'USED_REPRESENTATION')) = 1) AND (SIZEOF(QUERY (pdr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PROPERTY_DEFINITION_REPRESENTATION.' + 'USED_REPRESENTATION')| (SIZEOF(QUERY (gpa <* USEDIN(pdr.definition, 'STEP_MERGED_CAD_SCHEMA.' + 'GENERAL_PROPERTY_ASSOCIATION.' + 'DERIVED_DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.' + 'GENERAL_PROPERTY' IN TYPEOF(gpa.base_definition)) AND (gpa\general_property_association.base_definition\general_property.name = 'surface_condition'))) = 1))) = 1); END_ENTITY; -- DIFF IN AP214 ENTITY hidden_element_over_riding_styled_item SUBTYPE OF (context_dependent_over_riding_styled_item); SELF\styled_item.item : camera_image; SELF\context_dependent_over_riding_styled_item.style_context : LIST [1:1] OF presentation_view; INVERSE container : SET [1:?] OF presentation_view FOR items; WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.CAMERA_MODEL_D3_WITH_HLHSR' IN TYPEOF(SELF.item\mapped_item.mapping_source.mapping_origin); END_ENTITY; -- IN AP242 ENTITY high_degree_axi_symmetric_surface SUBTYPE OF (overcomplex_geometry); approximation_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.B_SPLINE_SURFACE' ]); WR4: validate_locations_of_extreme_value_type(SELF, []); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY high_degree_conic SUBTYPE OF (overcomplex_geometry); approximation_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.B_SPLINE_CURVE' ]); WR4: validate_locations_of_extreme_value_type(SELF, []); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY high_degree_linear_curve SUBTYPE OF (overcomplex_geometry); approximation_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.B_SPLINE_CURVE' ]); WR4: validate_locations_of_extreme_value_type(SELF, []); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY high_degree_planar_surface SUBTYPE OF (overcomplex_geometry); approximation_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.B_SPLINE_SURFACE' ]); WR4: validate_locations_of_extreme_value_type(SELF, []); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY high_order_kinematic_pair ABSTRACT SUPERTYPE OF (ONEOF(linear_flexible_and_planar_curve_pair, point_on_surface_pair, point_on_planar_curve_pair, planar_curve_pair, surface_pair)) SUBTYPE OF (kinematic_pair); WHERE WR1: SIZEOF(QUERY (lr <* SELF\kinematic_pair.associated_link_representations_2| NOT ('STEP_MERGED_CAD_SCHEMA.RIGID_LINK_REPRESENTATION' IN TYPEOF(lr)))) = 0; END_ENTITY; -- IN AP214/AP242 ENTITY hole_bottom SUBTYPE OF (shape_aspect); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_DEFINITION' IN TYPEOF(SELF.of_shape.definition); WR2: SELF.description IN [ 'through', 'flat', 'flat with radius', 'flat with taper', 'spherical', 'conical' ]; WR3: NOT (SELF.description = 'through') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')) = 0))) = 0); WR4: NOT (SELF.description IN [ 'flat with radius', 'flat with taper', 'spherical', 'conical' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1))) = 0); WR5: NOT (SELF.description = 'flat') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) = 0))) = 0))) = 0); WR6: NOT (SELF.description IN [ 'flat with radius', 'spherical' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) = 1))) = 0))) = 0); WR7: NOT (SELF.description = 'flat with taper') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) = 2))) = 0))) = 0); WR8: NOT (SELF.description = 'conical') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) >= 1) AND (SIZEOF(impl_rep.used_representation.items) <= 2))) = 0))) = 0); WR9: (SELF.description = 'through') OR (SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATING_SHAPE_ASPECT')| (sar.description = 'hole bottom usage') AND ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| (fcr.name IN [ 'hole depth start', 'hole depth end' ]))) >= 1); WR10: NOT (SELF.description = 'flat with radius') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'corner radius'))) = 1))) = 0))) = 0); WR11: NOT (SELF.description = 'spherical') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'radius'))) = 1))) = 0))) = 0); WR12: NOT (SELF.description = 'conical') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'tip radius'))) <= 1))) = 0))) = 0); WR13: NOT (SELF.description = 'conical') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'tip angle'))) = 1))) = 0))) = 0); WR14: SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATING_SHAPE_ASPECT')| (sar.description = 'hole bottom usage') AND ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| ((fcr.related_shape_aspect.description = 'bottom condition occurrence') AND ('STEP_MERGED_CAD_SCHEMA.ROUND_HOLE' IN TYPEOF(fcr.related_shape_aspect.of_shape.definition))) AND ('STEP_MERGED_CAD_SCHEMA.HOLE_BOTTOM' IN TYPEOF(fcr.relating_shape_aspect)))) >= 1; WR15: NOT (SELF.description = 'flat with taper') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'final diameter'))) = 1))) = 0))) = 0); WR16: NOT (SELF.description = 'flat with taper') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'taper diameter'))) = 1))) = 0))) = 0); END_ENTITY; -- IN AP214/AP242 ENTITY hole_in_panel SUBTYPE OF (feature_definition); WHERE WR1: SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| ((sa.name = 'hole profile') AND (sa.description = 'closed profile occurrence')) AND (SIZEOF(QUERY (sar <* USEDIN(sa, 'STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)) AND (sar.description = 'profile usage')) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CIRCULAR_CLOSED_PROFILE', 'STEP_MERGED_CAD_SCHEMA.NGON_CLOSED_PROFILE', 'STEP_MERGED_CAD_SCHEMA.RECTANGULAR_CLOSED_PROFILE', 'STEP_MERGED_CAD_SCHEMA.CLOSED_PATH_PROFILE' ] * TYPEOF(sar.relating_shape_aspect)) = 1))) = 1))) = 1; WR2: SIZEOF(get_property_definition_representations(SELF)) = SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| (SIZEOF(pdr.used_representation.items) = 1))); END_ENTITY; -- IN AP242 ENTITY homogeneous_linear_function SUBTYPE OF (maths_function, unary_generic_expression); sum_index : one_or_two; SELF\unary_generic_expression.operand : maths_function; DERIVE mat : maths_function := SELF\unary_generic_expression.operand; WHERE WR1: function_is_2d_table(mat); WR2: (space_dimension(mat.range) = 1) AND subspace_of_es(factor1(mat.range), es_numbers); END_ENTITY; -- IN AP214/AP242 ENTITY homokinetic_pair SUBTYPE OF (universal_pair); WHERE WR1: NOT EXISTS(SELF.input_skew_angle); END_ENTITY; ENTITY hyperbola SUBTYPE OF (conic); semi_axis : positive_length_measure; semi_imag_axis : positive_length_measure; END_ENTITY; ENTITY id_attribute; attribute_value : identifier; identified_item : id_attribute_select; END_ENTITY; ENTITY identification_assignment ABSTRACT SUPERTYPE; assigned_id : identifier; role : identification_role; END_ENTITY; ENTITY identification_role; name : label; description : OPTIONAL text; END_ENTITY; -- IN AP203e2/AP242 ENTITY illuminance_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.ILLUMINANCE_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; -- IN AP203e2/AP242 ENTITY illuminance_unit SUBTYPE OF (derived_unit); WHERE WR1: derive_dimensional_exponents(SELF) = dimensions_for_si_unit(si_unit_name.lux); END_ENTITY; -- IN AP242 ENTITY implicit_explicit_positioned_sketch_relationship SUBTYPE OF (representation_item_relationship); SELF\representation_item_relationship.related_representation_item : positioned_sketch; SELF\representation_item_relationship.relating_representation_item : repositioned_neutral_sketch; WHERE WR1: SIZEOF(QUERY (q <* using_representations(SELF\representation_item_relationship.related_representation_item)| item_in_context(SELF\representation_item_relationship.relating_representation_item, q.context_of_items))) > 0; END_ENTITY; -- IN AP242 ENTITY implicit_intersection_curve SUBTYPE OF (implicit_planar_curve); external_surface : surface; END_ENTITY; -- IN AP242 ENTITY implicit_model_intersection_curve SUBTYPE OF (implicit_planar_curve); intersected_model : surface_or_solid_model; END_ENTITY; -- IN AP242 ENTITY implicit_planar_curve ABSTRACT SUPERTYPE OF (ONEOF(implicit_intersection_curve, implicit_projected_curve, implicit_model_intersection_curve, implicit_silhouette_curve)) SUBTYPE OF (curve, auxiliary_geometric_representation_item); using_sketch : positioned_sketch; computed_representation : curve; DERIVE curve_plane : plane := get_plane_of_implicit_geometry(using_sketch); WHERE WR1: SIZEOF(TYPEOF(computed_representation) * [ 'STEP_MERGED_CAD_SCHEMA.IMPLICIT_PLANAR_CURVE', 'STEP_MERGED_CAD_SCHEMA.CURVE_REPLICA' ]) = 0; END_ENTITY; -- IN AP242 ENTITY implicit_planar_intersection_point SUBTYPE OF (implicit_point_on_plane); external_curve : curve; END_ENTITY; -- IN AP242 ENTITY implicit_planar_projection_point SUBTYPE OF (implicit_point_on_plane); external_point : point; projection_direction : direction; END_ENTITY; -- IN AP242 ENTITY implicit_point_on_plane ABSTRACT SUPERTYPE OF (ONEOF(implicit_planar_intersection_point, implicit_planar_projection_point)) SUBTYPE OF (point, auxiliary_geometric_representation_item); using_sketch : positioned_sketch; computed_representation : cartesian_point; DERIVE plane_of_point : plane := get_plane_of_implicit_geometry(using_sketch); WHERE WR1: (plane_of_point\elementary_surface.position.location = computed_representation) XOR (dot_product(plane_of_point\elementary_surface.position.p[3], get_relative_direction_2points(plane_of_point\elementary_surface.position.location, computed_representation)) = 0); WR2: SIZEOF(TYPEOF(computed_representation) * [ 'STEP_MERGED_CAD_SCHEMA.IMPLICIT_POINT_ON_PLANE', 'STEP_MERGED_CAD_SCHEMA.POINT_REPLICA' ]) = 0; END_ENTITY; -- IN AP242 ENTITY implicit_projected_curve SUBTYPE OF (implicit_planar_curve); external_curve : curve; projection_direction : direction; END_ENTITY; -- IN AP242 ENTITY implicit_silhouette_curve SUBTYPE OF (implicit_planar_curve); silhouetted_model : surface_or_solid_model; view_direction : direction; END_ENTITY; -- IN AP242 ENTITY imported_curve_function SUBTYPE OF (maths_function, generic_literal); geometry : curve; parametric_domain : tuple_space; WHERE WR1: expression_is_constant(parametric_domain); END_ENTITY; -- IN AP242 ENTITY imported_point_function SUBTYPE OF (maths_function, generic_literal); geometry : point; END_ENTITY; -- IN AP242 ENTITY imported_surface_function SUBTYPE OF (maths_function, generic_literal); geometry : surface; parametric_domain : tuple_space; WHERE WR1: expression_is_constant(parametric_domain); END_ENTITY; -- IN AP242 ENTITY imported_volume_function SUBTYPE OF (maths_function, generic_literal); geometry : volume; parametric_domain : tuple_space; WHERE WR1: expression_is_constant(parametric_domain); END_ENTITY; -- IN AP242 ENTITY inappropriate_element_visibility SUBTYPE OF (externally_conditioned_data_quality_criterion); WHERE WR1: validate_ecdq_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' ]); END_ENTITY; -- IN AP242 ENTITY inappropriate_use_of_layer SUBTYPE OF (externally_conditioned_data_quality_criterion); WHERE WR1: validate_ecdq_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.PRESENTATION_LAYER_ASSIGNMENT' ]); END_ENTITY; -- IN AP242 ENTITY inapt_data ABSTRACT SUPERTYPE OF (ONEOF(inapt_topology, inapt_geometry, inapt_topology_and_geometry_relationship, inapt_manifold_solid_brep)) SUBTYPE OF (shape_data_quality_criterion); END_ENTITY; -- IN AP242 ENTITY inapt_geometry ABSTRACT SUPERTYPE OF (ONEOF(nearly_degenerate_geometry, discontinuous_geometry, self_intersecting_geometry, geometry_with_local_near_degeneracy, overlapping_geometry, multiply_defined_geometry, geometry_with_local_irregularity, overcomplex_geometry)) SUBTYPE OF (inapt_data); END_ENTITY; -- IN AP242 ENTITY inapt_manifold_solid_brep ABSTRACT SUPERTYPE OF (ONEOF(partly_overlapping_solids, small_volume_solid, multiply_defined_solids, entirely_narrow_solid, solid_with_excessive_number_of_voids)) SUBTYPE OF (inapt_data); END_ENTITY; -- IN AP242 ENTITY inapt_topology ABSTRACT SUPERTYPE OF (ONEOF(free_edge, non_manifold_at_edge, non_manifold_at_vertex, over_used_vertex)) SUBTYPE OF (inapt_data); END_ENTITY; -- IN AP242 ENTITY inapt_topology_and_geometry_relationship ABSTRACT SUPERTYPE OF (ONEOF(topology_related_to_nearly_degenerate_geometry, geometric_gap_in_topology, non_smooth_geometry_transition_across_edge, topology_related_to_self_intersecting_geometry, steep_geometry_transition_across_edge, topology_related_to_overlapping_geometry, topology_related_to_multiply_defined_geometry, overcomplex_topology_and_geometry_relationship)) SUBTYPE OF (inapt_data); END_ENTITY; -- IN AP242 ENTITY incidence_assembly_constraint SUBTYPE OF (binary_assembly_constraint, incidence_geometric_constraint); END_ENTITY; -- IN AP242 ENTITY incidence_geometric_constraint SUBTYPE OF (explicit_geometric_constraint); near_points : SET [0:?] OF near_point_relationship; SELF\explicit_constraint.constrained_elements : SET [1:?] OF geometric_constraint_element; SELF\explicit_constraint.reference_elements : SET [0:?] OF geometric_constraint_element; WHERE WR1: (SIZEOF(SELF\explicit_constraint.reference_elements) > 0) OR (SIZEOF(SELF\explicit_constraint.constrained_elements) = 2); WR2: SIZEOF(near_points) <= SIZEOF(SELF\explicit_constraint.reference_elements); WR3: SIZEOF(QUERY (q <* near_points| NOT (q\representation_item_relationship.relating_representation_item IN SELF\explicit_constraint.reference_elements))) = 0; END_ENTITY; -- IN AP203e2/AP242 ENTITY included_text_block SUBTYPE OF (mapped_item); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.STRUCTURED_TEXT_REPRESENTATION' IN TYPEOF(SELF\mapped_item.mapping_source.mapped_representation); END_ENTITY; ENTITY inclusion_product_concept_feature SUBTYPE OF (conditional_concept_feature); WHERE WR1: NOT ('STEP_MERGED_CAD_SCHEMA.' + 'PACKAGE_PRODUCT_CONCEPT_FEATURE' IN TYPEOF(SELF)); WR2: SIZEOF(QUERY (cfr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'CONCEPT_FEATURE_RELATIONSHIP.RELATING_PRODUCT_CONCEPT_FEATURE')| ('STEP_MERGED_CAD_SCHEMA.' + 'CONCEPT_FEATURE_RELATIONSHIP_WITH_CONDITION' IN TYPEOF(cfr)))) + SIZEOF(QUERY (cfr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'CONCEPT_FEATURE_RELATIONSHIP.RELATED_PRODUCT_CONCEPT_FEATURE')| ('STEP_MERGED_CAD_SCHEMA.' + 'CONCEPT_FEATURE_RELATIONSHIP_WITH_CONDITION' IN TYPEOF(cfr)))) = 0; WR3: SELF.condition.conditional_operator.name = 'implication'; END_ENTITY; -- IN AP242 ENTITY inconsistent_adjacent_face_normals SUBTYPE OF (erroneous_topology); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'CLOSED_OR_OPEN_SHELL_SELECT' ]); WR3: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.EDGE_CURVE' ]); WR4: validate_accuracy_types(SELF, []); END_ENTITY; -- IN AP242 ENTITY inconsistent_curve_transition_code SUBTYPE OF (erroneous_geometry); angle_tolerance : plane_angle_measure; curvature_ratio_tolerance : ratio_measure; distance_tolerance : length_measure; flat_curvature_radius_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.COMPOSITE_CURVE' ]); WR3: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'COMPOSITE_CURVE_TRANSITION_LOCATOR' ]); WR4: validate_accuracy_types(SELF, []); END_ENTITY; -- IN AP242 ENTITY inconsistent_edge_and_curve_directions SUBTYPE OF (erroneous_topology_and_geometry_relationship); distance_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.EDGE_CURVE' ]); WR3: validate_locations_of_extreme_value_type(SELF, []); WR4: validate_accuracy_types(SELF, []); END_ENTITY; -- IN AP242 ENTITY inconsistent_element_reference SUBTYPE OF (externally_conditioned_data_quality_criterion); WHERE WR1: validate_ecdq_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.REPRESENTATION_ITEM' ]); END_ENTITY; -- IN AP242 ENTITY inconsistent_face_and_closed_shell_normals SUBTYPE OF (erroneous_topology_and_geometry_relationship); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.FACE_SURFACE' ]); WR3: validate_locations_of_extreme_value_type(SELF, []); WR4: validate_accuracy_types(SELF, []); END_ENTITY; -- IN AP242 ENTITY inconsistent_face_and_surface_normals SUBTYPE OF (erroneous_topology_and_geometry_relationship); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.FACE_SURFACE' ]); WR3: validate_locations_of_extreme_value_type(SELF, []); WR4: validate_accuracy_types(SELF, []); END_ENTITY; -- IN AP242 ENTITY inconsistent_surface_transition_code SUBTYPE OF (erroneous_geometry); angle_tolerance : plane_angle_measure; curvature_ratio_tolerance : ratio_measure; distance_tolerance : length_measure; flat_curvature_radius_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.RECTANGULAR_COMPOSITE_SURFACE' ]); WR3: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'RECTANGULAR_COMPOSITE_SURFACE_TRANSITION_LOCATOR' ]); WR4: validate_accuracy_types(SELF, []); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY index_expression SUBTYPE OF (string_expression, binary_generic_expression); DERIVE index : generic_expression := SELF\binary_generic_expression.operands[2]; operand : generic_expression := SELF\binary_generic_expression.operands[1]; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.STRING_EXPRESSION' IN TYPEOF(operand)) AND ('STEP_MERGED_CAD_SCHEMA.NUMERIC_EXPRESSION' IN TYPEOF(index)); WR2: is_int_expr(index); END_ENTITY; -- IN AP203e2/AP242 ENTITY indirectly_selected_elements SUBTYPE OF (user_selected_elements); indirectly_picked_items : SET [1:?] OF representation_item; END_ENTITY; -- DIFF IN AP203e2 -- IN AP203e2/AP242 ENTITY indirectly_selected_shape_elements SUBTYPE OF (indirectly_selected_elements, user_selected_shape_elements); SELF\indirectly_selected_elements.indirectly_picked_items : SET [1:?] OF shape_representation_item; END_ENTITY; -- IN AP242 ENTITY indistinct_curve_knots SUBTYPE OF (geometry_with_local_near_degeneracy); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_UPPER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.PARAMETER_VALUE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.PARAMETER_VALUE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.B_SPLINE_CURVE_WITH_KNOTS' ]); WR4: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'B_SPLINE_CURVE_KNOT_LOCATOR' ]); WR5: validate_accuracy_types(SELF, []); END_ENTITY; -- IN AP242 ENTITY indistinct_surface_knots SUBTYPE OF (geometry_with_local_near_degeneracy); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_UPPER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.PARAMETER_VALUE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.PARAMETER_VALUE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.B_SPLINE_SURFACE_WITH_KNOTS' ]); WR4: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'B_SPLINE_SURFACE_KNOT_LOCATOR' ]); WR5: validate_accuracy_types(SELF, []); END_ENTITY; -- IN AP203e2/AP242 ENTITY inductance_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.INDUCTANCE_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; -- IN AP203e2/AP242 ENTITY inductance_unit SUBTYPE OF (derived_unit); WHERE WR1: derive_dimensional_exponents(SELF) = dimensions_for_si_unit(si_unit_name.henry); END_ENTITY; -- IN AP203e2/AP242 ENTITY information_right SUBTYPE OF (action_method); END_ENTITY; -- IN AP203e2/AP242 ENTITY information_usage_right SUBTYPE OF (action_method); END_ENTITY; -- IN AP214 ENTITY initial_state; applies_to_mechanism : mechanism; pair_values : SET [1:?] OF pair_value; WHERE wr1: SIZEOF(QUERY (joint <* applies_to_mechanism.structure_definition.joints| (SIZEOF(QUERY (init_val <* pair_values| (init_val.applies_to_pair.joint :=: joint))) <> 1))) = 0; END_ENTITY; -- IN AP242 ENTITY instance_attribute_reference SUBTYPE OF (variable_semantics); attribute_name : attribute_identifier; owning_instance : representation_item; END_ENTITY; -- IN AP242 ENTITY instance_report_item_with_extreme_instances SUBTYPE OF (shape_data_quality_inspection_instance_report_item); extreme_instances : LIST [1:?] OF extreme_instance; END_ENTITY; -- IN AP203e2/AP242 ENTITY instance_usage_context_assignment SUBTYPE OF (product_definition_context); items : SET [1:?] OF instance_usage_context_select; END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY instanced_feature SUBTYPE OF (feature_definition, shape_aspect); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION' IN TYPEOF(SELF.of_shape.definition); WR2: SELF.product_definitional; END_ENTITY; ENTITY int_literal SUBTYPE OF (literal_number); SELF\literal_number.the_value : INTEGER; END_ENTITY; -- IN AP214/AP242 ENTITY int_numeric_variable SUBTYPE OF (numeric_variable); END_ENTITY; -- IN AP214/AP242 ENTITY int_value_function SUBTYPE OF (value_function); END_ENTITY; -- IN AP214/AP242 ENTITY integer_defined_function ABSTRACT SUPERTYPE SUBTYPE OF (numeric_defined_function); END_ENTITY; -- IN AP242 ENTITY integer_interval_from_min SUBTYPE OF (maths_space, generic_literal); min : INTEGER; END_ENTITY; -- IN AP242 ENTITY integer_interval_to_max SUBTYPE OF (maths_space, generic_literal); max : INTEGER; END_ENTITY; -- IN AP203e2/AP242 ENTITY integer_representation_item SUBTYPE OF (representation_item, int_literal); END_ENTITY; -- IN AP242 ENTITY integer_tuple_literal SUBTYPE OF (generic_literal); lit_value : LIST [1:?] OF INTEGER; END_ENTITY; -- IN AP242 ENTITY interfaced_group_component SUBTYPE OF (assembly_group_component); END_ENTITY; -- IN AP242 ENTITY interpolated_configuration_representation SUBTYPE OF (representation); SELF\representation.context_of_items : geometric_representation_context_with_parameter; SELF\representation.items : SET [1:?] OF interpolated_configuration_sequence; END_ENTITY; -- IN AP242 ENTITY interpolated_configuration_segment SUBTYPE OF (founded_item); state : mechanism_state_representation; t_parameter : parameter_value; interpolation : interpolation_type; END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY interpolated_configuration_sequence SUBTYPE OF (representation_item); segments : LIST [2:?] OF interpolated_configuration_segment; DERIVE closed_interpolation : LOGICAL := segments[n_segments].interpolation <> discontinuous_interpolation_type; configured_mechanism : mechanism_representation := segments[1].state.represented_mechanism; n_segments : INTEGER := SIZEOF(segments); WHERE WR1: SIZEOF(QUERY (ics <* segments| (ics.state.represented_mechanism :<>: configured_mechanism))) = 0; END_ENTITY; -- IN AP242 ENTITY intersecting_connected_face_sets SUBTYPE OF (topology_related_to_self_intersecting_geometry); interference_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.CONNECTED_FACE_SET', 'STEP_MERGED_CAD_SCHEMA.CONNECTED_FACE_SET' ]); WR3: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'POINT_ON_FACE_SURFACE', 'STEP_MERGED_CAD_SCHEMA.' + 'POINT_ON_FACE_SURFACE' ]); WR4: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY intersecting_loops_in_face SUBTYPE OF (erroneous_topology_and_geometry_relationship); interference_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.FACE' ]); WR3: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'POINT_ON_EDGE_CURVE', 'STEP_MERGED_CAD_SCHEMA.' + 'POINT_ON_EDGE_CURVE' ]); WR4: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY intersecting_shells_in_solid SUBTYPE OF (erroneous_manifold_solid_brep); interference_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.BREP_WITH_VOIDS' ]); WR3: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.SURFACE_CURVE' ]); WR4: validate_accuracy_types(SELF, []); END_ENTITY; ENTITY intersection_curve SUBTYPE OF (surface_curve); WHERE WR1: SIZEOF(SELF\surface_curve.associated_geometry) = 2; WR2: associated_surface(SELF\surface_curve.associated_geometry[1]) <> associated_surface(SELF\surface_curve.associated_geometry[2]); END_ENTITY; -- DIFF IN AP214 ENTITY interval_expression SUBTYPE OF (boolean_expression, multiple_arity_generic_expression); DERIVE interval_high : generic_expression := SELF\multiple_arity_generic_expression.operands[3]; interval_item : generic_expression := SELF\multiple_arity_generic_expression.operands[2]; interval_low : generic_expression := SELF\multiple_arity_generic_expression.operands[1]; WHERE WR1: (('STEP_MERGED_CAD_SCHEMA.EXPRESSION' IN TYPEOF(interval_low)) AND ('STEP_MERGED_CAD_SCHEMA.EXPRESSION' IN TYPEOF(interval_item))) AND ('STEP_MERGED_CAD_SCHEMA.EXPRESSION' IN TYPEOF(interval_high)); WR2: (('STEP_MERGED_CAD_SCHEMA.STRING_EXPRESSION' IN TYPEOF(SELF.interval_low)) AND ('STEP_MERGED_CAD_SCHEMA.STRING_EXPRESSION' IN TYPEOF(SELF.interval_high))) AND ('STEP_MERGED_CAD_SCHEMA.STRING_EXPRESSION' IN TYPEOF(SELF.interval_item)) OR (('STEP_MERGED_CAD_SCHEMA.NUMERIC_EXPRESSION' IN TYPEOF(SELF.interval_low)) AND ('STEP_MERGED_CAD_SCHEMA.NUMERIC_EXPRESSION' IN TYPEOF(SELF.interval_item))) AND ('STEP_MERGED_CAD_SCHEMA.NUMERIC_EXPRESSION' IN TYPEOF(SELF.interval_high)); END_ENTITY; ENTITY invisibility; invisible_items : SET [1:?] OF invisible_item; END_ENTITY; -- IN AP203e2/AP242 ENTITY iso4217_currency SUBTYPE OF (currency); END_ENTITY; ENTITY item_defined_transformation; name : label; description : OPTIONAL text; transform_item_1 : representation_item; transform_item_2 : representation_item; END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY item_identified_representation_usage; name : label; description : OPTIONAL text; definition : item_identified_representation_usage_definition; used_representation : representation; identified_item : item_identified_representation_usage_select; WHERE WR1: SELF.used_representation IN using_representations(SELF.identified_item); END_ENTITY; -- IN AP242 ENTITY item_link_motion_relationship SUBTYPE OF (link_motion_relationship); item : geometric_representation_item; SELF\representation_relationship.rep_1 : shape_representation; END_ENTITY; -- IN AP214/AP242 ENTITY joggle SUBTYPE OF (feature_definition); WHERE WR1: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND NOT ((5 <= SIZEOF(pdr.used_representation.items)) AND (SIZEOF(pdr.used_representation.items) <= 10)))) = 0; WR2: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| NOT (i.name IN [ 'orientation', 'base radius 1', 'base radius 2', 'direction angle 1', 'direction angle 2', 'height', 'slope angle 1', 'slope angle 2', 'top radius 1', 'top radius 2' ]))) > 0))) = 0; WR3: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| (i.name = 'direction angle 1') AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(i)) = 2))) = 1))) = 1; WR4: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| (i.name = 'direction angle 2') AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(i)) = 2))) = 1))) = 1; WR5: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| (i.name = 'height') AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(i)) = 2))) = 1))) <= 1; WR6: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| (i.name = 'slope angle 1') AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(i)) = 2))) = 1))) = 1; WR7: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| (i.name = 'slope angle 2') AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(i)) = 2))) = 1))) = 1; WR8: SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| ((sa.name = 'defining path') AND (sa.description = 'path feature component occurrence')) AND (SIZEOF(QUERY (sar <* USEDIN(sa, 'STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| ((('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)) AND (sar.description = 'path feature component usage')) AND ('STEP_MERGED_CAD_SCHEMA.PATH_FEATURE_COMPONENT' IN TYPEOF(sar.relating_shape_aspect))) AND (sar.relating_shape_aspect.description = 'linear'))) = 1))) = 1; WR9: SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| ((sa.name = 'termination') AND (sa.description = 'joggle termination occurrence')) AND (SIZEOF(QUERY (sar <* USEDIN(sa, 'STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)) AND (sar.name = 'joggle termination usage')) AND ('STEP_MERGED_CAD_SCHEMA.JOGGLE_TERMINATION' IN TYPEOF(sar.relating_shape_aspect)))) = 1))) = 1; WR10: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| (i.name = 'base radius 1') AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(i)) = 2))) = 1))) <= 1; WR11: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| (i.name = 'base radius 2') AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(i)) = 2))) = 1))) <= 1; WR12: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| (i.name = 'top radius 1') AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(i)) = 2))) = 1))) <= 1; WR13: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| (i.name = 'top radius 2') AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(i)) = 2))) = 1))) <= 1; END_ENTITY; -- IN AP214/AP242 ENTITY joggle_termination SUBTYPE OF (shape_aspect); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_DEFINITION' IN TYPEOF(SELF.of_shape.definition); WR2: SELF.description IN [ 'value termination', 'face termination' ]; WR3: (SELF.description = 'value termination') XOR (SIZEOF(QUERY (pdr <* get_shape_aspect_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 0); WR4: (SELF.description <> 'value termination') OR (SIZEOF(QUERY (pdr <* get_shape_aspect_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(pdr.used_representation.items) = 2))) = 1); WR5: (SELF.description <> 'value termination') OR (SIZEOF(QUERY (pdr <* get_shape_aspect_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| (i.name = 'depth') AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(i)) = 2))) = 1))) = 1); WR6: (SELF.description <> 'value termination') OR (SIZEOF(QUERY (pdr <* get_shape_aspect_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| (i.name = 'angle') AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(i)) = 2))) = 1))) = 1); WR7: SIZEOF(QUERY (sar <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_ASPECT_RELATIONSHIP.RELATING_SHAPE_ASPECT')| (((('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)) AND (sar.name = 'joggle termination usage')) AND ('STEP_MERGED_CAD_SCHEMA.JOGGLE' IN TYPEOF(sar.related_shape_aspect.of_shape.definition))) AND (sar.related_shape_aspect.of_shape.definition\characterized_object.name = 'termination')) AND (sar.related_shape_aspect.of_shape.definition\characterized_object.description = 'joggle termination occurrence'))) = 1; END_ENTITY; -- IN AP214/AP242 ENTITY kinematic_analysis_consistency; control : kinematic_control; result : kinematic_analysis_result; WHERE WR1: control.controlled_mechanism :=: result.analysed_mechanism; END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY kinematic_analysis_result; analysed_mechanism : mechanism_representation; result : kinematic_result; END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY kinematic_control; controlled_mechanism : mechanism_representation; contained_kinematic_programs : kinematic_analysis_definition; END_ENTITY; -- IN AP214 ENTITY kinematic_frame_background_representation SUBTYPE OF (representation); SELF\representation.items : SET [1:?] OF kinematic_frame_background; SELF\representation.context_of_items : geometric_representation_context; WHERE wr1: SELF\representation.context_of_items\geometric_representation_context.coordinate_space_dimension = 3; END_ENTITY; -- IN AP214 ENTITY kinematic_frame_background_representation_association SUBTYPE OF (representation_relationship_with_transformation); SELF\representation_relationship_with_transformation.transformation_operator : kinematic_frame_based_transformation; WHERE wr1: 'STEP_MERGED_CAD_SCHEMA.KINEMATIC_LINK_REPRESENTATION' IN TYPEOF(SELF\representation_relationship.rep_1); wr2: 'STEP_MERGED_CAD_SCHEMA.KINEMATIC_FRAME_BACKGROUND_REPRESENTATION' IN TYPEOF(SELF\representation_relationship.rep_2); wr3: SELF\representation_relationship_with_transformation.transformation_operator\kinematic_frame_based_transformation.transformator IN SELF\representation_relationship.rep_1.items; END_ENTITY; -- IN AP214 ENTITY kinematic_frame_based_transformation SUBTYPE OF (geometric_representation_item, functionally_defined_transformation); transformator : rigid_placement; WHERE wr1: SELF\geometric_representation_item.dim = 3; END_ENTITY; -- IN AP214 ENTITY kinematic_ground_representation SUBTYPE OF (representation); INVERSE property : kinematic_property_representation_relation FOR used_representation; WHERE wr1: 'STEP_MERGED_CAD_SCHEMA.GEOMETRIC_REPRESENTATION_CONTEXT' IN TYPEOF(SELF\representation.context_of_items); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY kinematic_joint SUBTYPE OF (edge); SELF\edge.edge_end : kinematic_link; SELF\edge.edge_start : kinematic_link; UNIQUE UR1 : edge_start, edge_end; WHERE WR1: edge_start :<>: edge_end; END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY kinematic_link SUBTYPE OF (vertex); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY kinematic_link_representation ABSTRACT SUPERTYPE OF (ONEOF(linear_flexible_link_representation, rigid_link_representation)) SUBTYPE OF (representation); represented_link : kinematic_link; SELF\representation.context_of_items : geometric_representation_context; SELF\representation.items : SET [1:?] OF kinematic_link_representation_items; INVERSE associated_shape_representation : SET [0:1] OF kinematic_link_representation_association FOR rep_1; END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY kinematic_link_representation_association SUBTYPE OF (representation_relationship); SELF\representation_relationship.rep_1 : kinematic_link_representation; SELF\representation_relationship.rep_2 : shape_representation; WHERE WR1: (SELF\representation_relationship.rep_2.context_of_items :=: SELF\representation_relationship.rep_1.context_of_items) OR ('STEP_MERGED_CAD_SCHEMA.REPRESENTATION_RELATIONSHIP_WITH_TRANSFORMATION' IN TYPEOF(SELF)); END_ENTITY; -- IN AP214 ENTITY kinematic_link_representation_relation; topological_aspects : kinematic_link; geometric_aspects : kinematic_link_representation; UNIQUE ur1 : topological_aspects; END_ENTITY; -- IN AP242 ENTITY kinematic_loop SUBTYPE OF (edge_loop); SELF\path.edge_list : LIST [1:?] OF UNIQUE oriented_joint; END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY kinematic_pair ABSTRACT SUPERTYPE OF (ONEOF(high_order_kinematic_pair, low_order_kinematic_pair_with_motion_coupling, low_order_kinematic_pair) ANDOR actuated_kinematic_pair) SUBTYPE OF (geometric_representation_item, item_defined_transformation); joint : kinematic_joint; SELF\item_defined_transformation.transform_item_1 : rigid_placement; SELF\item_defined_transformation.transform_item_2 : rigid_placement; DERIVE associated_link_representations_1 : SET [1:?] OF kinematic_link_representation := sort_link_associations(link_representation_associations, TRUE); associated_link_representations_2 : SET [1:?] OF kinematic_link_representation := sort_link_associations(link_representation_associations, FALSE); SELF\item_defined_transformation.name : label := SELF\representation_item.name; INVERSE link_representation_associations : SET [1:?] OF pair_representation_relationship FOR transformation_operator; END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY kinematic_path ABSTRACT SUPERTYPE OF (ONEOF(kinematic_path_defined_by_nodes, kinematic_path_defined_by_curves)) SUBTYPE OF (geometric_representation_item); segments : LIST [1:?] OF kinematic_path_segment; t_start : parameter_value; DERIVE closed_path : LOGICAL := segments[n_segments].transition <> discontinuous; n_segments : INTEGER := SIZEOF(segments); WHERE WR1: SIZEOF(QUERY (using_rep <* using_representations(SELF)| NOT ('STEP_MERGED_CAD_SCHEMA.GEOMETRIC_REPRESENTATION_CONTEXT_WITH_PARAMETER' IN TYPEOF(using_rep.context_of_items)))) = 0; END_ENTITY; -- IN AP242 ENTITY kinematic_path_defined_by_curves SUBTYPE OF (kinematic_path); SELF\kinematic_path.segments : LIST [1:?] OF curve_based_path_with_orientation; END_ENTITY; -- IN AP242 ENTITY kinematic_path_defined_by_nodes SUBTYPE OF (kinematic_path); placement_start : placement; SELF\kinematic_path.segments : LIST [1:?] OF path_node; END_ENTITY; -- IN AP242 ENTITY kinematic_path_segment ABSTRACT SUPERTYPE OF (ONEOF(path_node, curve_based_path_with_orientation)) SUBTYPE OF (founded_item); t_end : parameter_value; transition : transition_code; END_ENTITY; -- IN AP214 ENTITY kinematic_property_definition SUBTYPE OF (property_definition); ground_definition : characterized_definition; END_ENTITY; -- IN AP242 ENTITY kinematic_property_definition_representation ABSTRACT SUPERTYPE OF (ONEOF(kinematic_property_topology_representation, kinematic_property_mechanism_representation)) SUBTYPE OF (property_definition_representation); SELF\property_definition_representation.definition : product_definition_kinematics; END_ENTITY; -- IN AP242 ENTITY kinematic_property_mechanism_representation SUBTYPE OF (kinematic_property_definition_representation); base : kinematic_link_representation; SELF\property_definition_representation.used_representation : mechanism_representation; WHERE WR1: SIZEOF(QUERY (i <* used_representation.items| (base :=: i\representation_relationship.rep_1) OR (base :=: i\representation_relationship.rep_2))) > 0; END_ENTITY; -- IN AP214 ENTITY kinematic_property_representation_relation SUBTYPE OF (property_definition_representation); UNIQUE ur1 : SELF\property_definition_representation.definition; WHERE wr1: 'STEP_MERGED_CAD_SCHEMA.KINEMATIC_PROPERTY_DEFINITION' IN TYPEOF(SELF\property_definition_representation.definition); wr2: 'STEP_MERGED_CAD_SCHEMA.KINEMATIC_GROUND_REPRESENTATION' IN TYPEOF(SELF\property_definition_representation.used_representation); END_ENTITY; -- IN AP242 ENTITY kinematic_property_topology_representation SUBTYPE OF (kinematic_property_definition_representation); base : kinematic_link; SELF\property_definition_representation.used_representation : kinematic_topology_representation_select; WHERE WR1: used_representation IN using_representations(base); END_ENTITY; -- IN AP214 ENTITY kinematic_structure; joints : SET [1:?] OF kinematic_joint; END_ENTITY; -- IN AP242 ENTITY kinematic_topology_directed_structure SUBTYPE OF (representation); parent : kinematic_topology_structure; SELF\representation.items : SET [1:?] OF oriented_joint; WHERE WR1: context_of_items :=: parent.context_of_items; WR2: get_kinematic_joints_from_oriented_joints(items) <= parent.items; END_ENTITY; -- IN AP242 ENTITY kinematic_topology_network_structure SUBTYPE OF (representation); parent : kinematic_topology_structure; SELF\representation.items : SET [1:?] OF kinematic_loop; WHERE WR1: context_of_items :=: parent.context_of_items; WR2: get_kinematic_joints_from_kinematic_loops(items) <= parent.items; END_ENTITY; -- IN AP242 ENTITY kinematic_topology_structure SUBTYPE OF (representation); SELF\representation.items : SET [1:?] OF kinematic_joint; WHERE WR1: SIZEOF(QUERY (item <* items| ('STEP_MERGED_CAD_SCHEMA.ORIENTED_EDGE' IN TYPEOF(item)))) = 0; END_ENTITY; -- IN AP242 ENTITY kinematic_topology_substructure SUBTYPE OF (kinematic_topology_structure); parent : kinematic_topology_structure; WHERE WR1: context_of_items :=: parent.context_of_items; WR2: SELF\kinematic_topology_structure.items <= parent\kinematic_topology_structure.items; END_ENTITY; -- IN AP242 ENTITY kinematic_topology_tree_structure SUBTYPE OF (kinematic_topology_directed_structure); END_ENTITY; ENTITY known_source SUBTYPE OF (external_source, pre_defined_item); END_ENTITY; -- IN AP203e2/AP242 ENTITY laid_defined_transformation SUBTYPE OF (transformation_with_derived_angle); END_ENTITY; -- IN AP203e2/AP242 ENTITY laminate_table SUPERTYPE OF (ONEOF(part_laminate_table, zone_structural_makeup)) SUBTYPE OF (product_definition); END_ENTITY; ENTITY language SUBTYPE OF (group); WHERE WR1: SELF\group.name <> ''; END_ENTITY; -- IN AP214 ENTITY language_assignment SUBTYPE OF (classification_assignment); items : SET [1:?] OF language_item; WHERE wr1: 'STEP_MERGED_CAD_SCHEMA.' + 'LANGUAGE' IN TYPEOF(SELF.assigned_class); wr2: SELF.role.name = 'language'; wr3: SIZEOF(SELF.items) = SIZEOF(QUERY (i <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.' + 'REPRESENTATION' IN TYPEOF(i)) AND (i\representation.name = 'document content'))); END_ENTITY; ENTITY leader_curve SUBTYPE OF (annotation_curve_occurrence); WHERE WR1: SIZEOF(QUERY (ldc <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_CALLOUT.CONTENTS')| ('STEP_MERGED_CAD_SCHEMA.' + 'LEADER_DIRECTED_CALLOUT' IN TYPEOF(ldc)))) >= 1; END_ENTITY; ENTITY leader_directed_callout SUBTYPE OF (draughting_callout); WHERE WR1: SIZEOF(QUERY (l_1 <* SELF\draughting_callout.contents| ('STEP_MERGED_CAD_SCHEMA.LEADER_CURVE' IN TYPEOF(l_1)))) >= 1; WR2: SIZEOF(SELF\draughting_callout.contents) >= 2; END_ENTITY; ENTITY leader_directed_dimension SUBTYPE OF (leader_directed_callout); WHERE WR1: SIZEOF(QUERY (con <* SELF.contents| ('STEP_MERGED_CAD_SCHEMA.LEADER_CURVE' IN TYPEOF(con)))) = 1; END_ENTITY; ENTITY leader_terminator SUBTYPE OF (terminator_symbol); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.LEADER_CURVE' IN TYPEOF(SELF\terminator_symbol.annotated_curve); END_ENTITY; -- IN AP214/AP242 ENTITY length_function SUBTYPE OF (numeric_expression, unary_generic_expression); SELF\unary_generic_expression.operand : string_expression; END_ENTITY; ENTITY length_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.LENGTH_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; ENTITY length_unit SUBTYPE OF (named_unit); WHERE WR1: ((((((SELF\named_unit.dimensions.length_exponent = 1.0) AND (SELF\named_unit.dimensions.mass_exponent = 0.0)) AND (SELF\named_unit.dimensions.time_exponent = 0.0)) AND (SELF\named_unit.dimensions.electric_current_exponent = 0.0)) AND (SELF\named_unit.dimensions.thermodynamic_temperature_exponent = 0.0)) AND (SELF\named_unit.dimensions.amount_of_substance_exponent = 0.0)) AND (SELF\named_unit.dimensions.luminous_intensity_exponent = 0.0); END_ENTITY; ENTITY light_source SUPERTYPE OF (ONEOF(light_source_ambient, light_source_directional, light_source_positional, light_source_spot)) SUBTYPE OF (geometric_representation_item); light_colour : colour; WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'STYLED_ITEM.ITEM')) = 0; END_ENTITY; ENTITY light_source_ambient SUBTYPE OF (light_source); END_ENTITY; ENTITY light_source_directional SUBTYPE OF (light_source); orientation : direction; END_ENTITY; ENTITY light_source_positional SUBTYPE OF (light_source); position : cartesian_point; constant_attenuation : REAL; distance_attenuation : REAL; END_ENTITY; ENTITY light_source_spot SUBTYPE OF (light_source); position : cartesian_point; orientation : direction; concentration_exponent : REAL; constant_attenuation : REAL; distance_attenuation : REAL; spread_angle : positive_plane_angle_measure; END_ENTITY; -- IN AP214/AP242 ENTITY like_expression SUBTYPE OF (comparison_expression); WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.STRING_EXPRESSION' IN TYPEOF(SELF\binary_generic_expression.operands[1])) AND ('STEP_MERGED_CAD_SCHEMA.STRING_EXPRESSION' IN TYPEOF(SELF\binary_generic_expression.operands[2])); END_ENTITY; ENTITY limits_and_fits; form_variance : label; zone_variance : label; grade : label; source : text; END_ENTITY; ENTITY line SUBTYPE OF (curve); pnt : cartesian_point; dir : vector; WHERE WR1: dir.dim = pnt.dim; END_ENTITY; ENTITY line_profile_tolerance SUBTYPE OF (geometric_tolerance); END_ENTITY; -- IN AP242 ENTITY linear_array_component_definition_link SUBTYPE OF (product_definition, product_definition_relationship); SELF\product_definition_relationship.related_product_definition : linear_array_placement_group_component; SELF\product_definition_relationship.relating_product_definition : linear_array_placement_group_component; WHERE WR1: SELF\product_definition_relationship.related_product_definition :<>: SELF\product_definition_relationship.relating_product_definition; WR2: acyclic_product_definition_relationship(SELF, [ SELF\product_definition_relationship.related_product_definition ], 'STEP_MERGED_CAD_SCHEMA.LINEAR_ARRAY_COMPONENT_DEFINITION_LINK'); END_ENTITY; -- IN AP242 ENTITY linear_array_placement_group_component SUBTYPE OF (array_placement_group); END_ENTITY; ENTITY linear_dimension SUBTYPE OF (dimension_curve_directed_callout); END_ENTITY; -- IN AP242 ENTITY linear_flexible_and_pinion_pair SUBTYPE OF (low_order_kinematic_pair_with_motion_coupling); pinion_radius : length_measure; WHERE WR1: SIZEOF(QUERY (lr <* SELF\kinematic_pair.associated_link_representations_1| NOT ('STEP_MERGED_CAD_SCHEMA.LINEAR_FLEXIBLE_LINK_REPRESENTATION' IN TYPEOF(lr)))) = 0; END_ENTITY; -- IN AP242 ENTITY linear_flexible_and_planar_curve_pair SUBTYPE OF (high_order_kinematic_pair); pair_curve : curve; orientation : BOOLEAN; WHERE WR1: SIZEOF(QUERY (r <* SELF\kinematic_pair.associated_link_representations_1| NOT (pair_curve IN r.items))) = 0; WR2: SIZEOF(QUERY (lr <* SELF\kinematic_pair.associated_link_representations_1| NOT ('STEP_MERGED_CAD_SCHEMA.LINEAR_FLEXIBLE_LINK_REPRESENTATION' IN TYPEOF(lr)))) = 0; END_ENTITY; -- IN AP242 ENTITY linear_flexible_link_representation SUBTYPE OF (kinematic_link_representation); END_ENTITY; -- IN AP242 ENTITY linear_path SUBTYPE OF (path_node); DERIVE SELF\kinematic_path_segment.transition : transition_code := continuous; END_ENTITY; -- IN AP242 ENTITY linear_profile SUBTYPE OF (shape_aspect); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_DEFINITION' IN TYPEOF(SELF.of_shape.definition); WR2: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1))) = 0; WR3: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) = 2))) = 0))) = 0; WR4: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.PLACEMENT' IN TYPEOF(it)) AND (it.name = 'orientation'))) = 1))) = 0))) = 0; WR5: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'profile length'))) = 1))) = 0))) = 0; END_ENTITY; -- IN AP242 ENTITY linearized_table_function SUBTYPE OF (explicit_table_function, unary_generic_expression); first : INTEGER; SELF\unary_generic_expression.operand : maths_function; DERIVE source : maths_function := SELF\unary_generic_expression.operand; WHERE WR1: function_is_1d_array(source); WR2: member_of(first, source\maths_function.domain); END_ENTITY; -- IN AP242 ENTITY link_motion_relationship SUBTYPE OF (definitional_representation_relationship, representation_relationship_with_transformation); SELF\representation_relationship.rep_1 : link_or_shape_representation; SELF\representation_relationship.rep_2 : link_motion_representation_along_path; SELF\representation_relationship_with_transformation.transformation_operator : link_motion_transformation; WHERE WR1: transformation_operator\item_defined_transformation.transform_item_1 IN rep_1.items; WR2: transformation_operator\item_defined_transformation.transform_item_2 IN rep_2.items; END_ENTITY; -- IN AP242 ENTITY link_motion_representation_along_path SUPERTYPE OF (ONEOF(prescribed_path, resulting_path)) SUBTYPE OF (representation); SELF\representation.context_of_items : geometric_representation_context_with_parameter; SELF\representation.items : SET [1:?] OF kinematic_path; END_ENTITY; -- IN AP242 ENTITY link_motion_transformation SUBTYPE OF (item_defined_transformation); SELF\item_defined_transformation.transform_item_1 : rigid_placement; SELF\item_defined_transformation.transform_item_2 : kinematic_path; END_ENTITY; -- IN AP242 ENTITY listed_data SUBTYPE OF (explicit_table_function, generic_literal); values : LIST [1:?] OF maths_value; value_range : maths_space; DERIVE SELF\explicit_table_function.shape : LIST [1:?] OF positive_integer := [ SIZEOF(values) ]; WHERE WR1: expression_is_constant(value_range); WR2: SIZEOF(QUERY (val <* values| NOT member_of(val, value_range))) = 0; END_ENTITY; -- IN AP242 ENTITY listed_product_space SUBTYPE OF (maths_space, generic_literal); factors : LIST [0:?] OF maths_space; WHERE WR1: SIZEOF(QUERY (space <* factors| NOT expression_is_constant(space))) = 0; WR2: no_cyclic_space_reference(SELF, []); WR3: NOT (the_empty_space IN factors); END_ENTITY; -- IN AP203e2/AP242 ENTITY literal_conjunction SUBTYPE OF (simple_clause); END_ENTITY; -- IN AP203e2/AP242 ENTITY literal_disjunction SUBTYPE OF (simple_clause); END_ENTITY; ENTITY literal_number ABSTRACT SUPERTYPE OF (ONEOF(int_literal, real_literal)) SUBTYPE OF (simple_numeric_expression, generic_literal); the_value : NUMBER; END_ENTITY; ENTITY local_time; hour_component : hour_in_day; minute_component : OPTIONAL minute_in_hour; second_component : OPTIONAL second_in_minute; zone : coordinated_universal_time_offset; WHERE WR1: valid_time(SELF); END_ENTITY; -- IN AP242 ENTITY location_in_aggregate_representation_item SUBTYPE OF (compound_representation_item); SELF\compound_representation_item.item_element : location_in_aggregate_item; END_ENTITY; -- IN AP214/AP242 ENTITY location_shape_representation SUBTYPE OF (shape_representation); WHERE WR1: SIZEOF(SELF.items) = 1; WR2: SIZEOF(QUERY (it <* SELF.items| NOT ('STEP_MERGED_CAD_SCHEMA.POINT' IN TYPEOF(it)))) = 0; END_ENTITY; -- IN AP214/AP242 ENTITY locator SUBTYPE OF (feature_definition); WHERE WR1: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND NOT ((2 <= SIZEOF(pdr.used_representation.items)) AND (SIZEOF(pdr.used_representation.items) <= 5)))) = 0; WR2: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| (i.name = 'diameter') AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(i)) = 2))) = 1))) = 1; WR3: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| (i.name = 'tip radius') AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(i)) = 2))) = 1))) <= 1; WR4: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| (i.name = 'tip angle') AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(i)) = 2))) = 1))) = 1; WR5: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| (i.name = 'base radius') AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(i)) = 2))) = 1))) <= 1; END_ENTITY; -- IN AP214/AP242 ENTITY log10_function SUBTYPE OF (unary_function_call); END_ENTITY; -- IN AP214/AP242 ENTITY log2_function SUBTYPE OF (unary_function_call); END_ENTITY; -- IN AP214/AP242 ENTITY log_function SUBTYPE OF (unary_function_call); END_ENTITY; -- IN AP203e2/AP242 ENTITY logical_literal SUBTYPE OF (generic_literal); lit_value : LOGICAL; END_ENTITY; -- IN AP203e2/AP242 ENTITY logical_representation_item SUBTYPE OF (representation_item, logical_literal); END_ENTITY; ENTITY loop SUPERTYPE OF (ONEOF(vertex_loop, edge_loop, poly_loop)) SUBTYPE OF (topological_representation_item); END_ENTITY; -- IN AP203e2/AP242 ENTITY loss_tangent_measure_with_unit SUBTYPE OF (ratio_measure_with_unit); END_ENTITY; ENTITY lot_effectivity SUBTYPE OF (effectivity); effectivity_lot_id : identifier; effectivity_lot_size : measure_with_unit; END_ENTITY; -- IN AP242 ENTITY low_order_kinematic_pair SUPERTYPE OF (ONEOF(revolute_pair, cylindrical_pair, spherical_pair, spherical_pair_with_pin, planar_pair, unconstrained_pair, fully_constrained_pair, prismatic_pair, universal_pair, low_order_kinematic_pair_with_range)) SUBTYPE OF (kinematic_pair); t_x : BOOLEAN; t_y : BOOLEAN; t_z : BOOLEAN; r_x : BOOLEAN; r_y : BOOLEAN; r_z : BOOLEAN; WHERE WR1: SIZEOF(QUERY (lr <* SELF\kinematic_pair.associated_link_representations_1| NOT ('STEP_MERGED_CAD_SCHEMA.RIGID_LINK_REPRESENTATION' IN TYPEOF(lr)))) = 0; WR2: SIZEOF(QUERY (lr <* SELF\kinematic_pair.associated_link_representations_2| NOT ('STEP_MERGED_CAD_SCHEMA.RIGID_LINK_REPRESENTATION' IN TYPEOF(lr)))) = 0; END_ENTITY; -- IN AP242 ENTITY low_order_kinematic_pair_value SUBTYPE OF (pair_value); actual_translation_x : length_measure; actual_translation_y : length_measure; actual_translation_z : length_measure; actual_rotation_x : plane_angle_measure; actual_rotation_y : plane_angle_measure; actual_rotation_z : plane_angle_measure; SELF\pair_value.applies_to_pair : low_order_kinematic_pair; END_ENTITY; -- IN AP242 ENTITY low_order_kinematic_pair_with_motion_coupling ABSTRACT SUPERTYPE OF (ONEOF(gear_pair, linear_flexible_and_pinion_pair, rack_and_pinion_pair, screw_pair)) SUBTYPE OF (kinematic_pair); WHERE WR1: SIZEOF(QUERY (lr <* SELF\kinematic_pair.associated_link_representations_2| NOT ('STEP_MERGED_CAD_SCHEMA.RIGID_LINK_REPRESENTATION' IN TYPEOF(lr)))) = 0; END_ENTITY; -- IN AP242 ENTITY low_order_kinematic_pair_with_range SUBTYPE OF (low_order_kinematic_pair); lower_limit_actual_rotation_x : OPTIONAL plane_angle_measure; upper_limit_actual_rotation_x : OPTIONAL plane_angle_measure; lower_limit_actual_rotation_y : OPTIONAL plane_angle_measure; upper_limit_actual_rotation_y : OPTIONAL plane_angle_measure; lower_limit_actual_rotation_z : OPTIONAL plane_angle_measure; upper_limit_actual_rotation_z : OPTIONAL plane_angle_measure; lower_limit_actual_translation_x : OPTIONAL length_measure; upper_limit_actual_translation_x : OPTIONAL length_measure; lower_limit_actual_translation_y : OPTIONAL length_measure; upper_limit_actual_translation_y : OPTIONAL length_measure; lower_limit_actual_translation_z : OPTIONAL length_measure; upper_limit_actual_translation_z : OPTIONAL length_measure; END_ENTITY; -- IN AP203e2/AP242 ENTITY luminous_flux_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.LUMINOUS_FLUX_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; -- IN AP203e2/AP242 ENTITY luminous_flux_unit SUBTYPE OF (named_unit); WHERE WR1: derive_dimensional_exponents(SELF) = dimensions_for_si_unit(si_unit_name.lumen); END_ENTITY; ENTITY luminous_intensity_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.LUMINOUS_INTENSITY_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; ENTITY luminous_intensity_unit SUBTYPE OF (named_unit); WHERE WR1: ((((((SELF\named_unit.dimensions.length_exponent = 0.0) AND (SELF\named_unit.dimensions.mass_exponent = 0.0)) AND (SELF\named_unit.dimensions.time_exponent = 0.0)) AND (SELF\named_unit.dimensions.electric_current_exponent = 0.0)) AND (SELF\named_unit.dimensions.thermodynamic_temperature_exponent = 0.0)) AND (SELF\named_unit.dimensions.amount_of_substance_exponent = 0.0)) AND (SELF\named_unit.dimensions.luminous_intensity_exponent = 1.0); END_ENTITY; -- IN AP203e2/AP242 ENTITY magnetic_flux_density_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.MAGNETIC_FLUX_DENSITY_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; -- IN AP203e2/AP242 ENTITY magnetic_flux_density_unit SUBTYPE OF (derived_unit); WHERE WR1: derive_dimensional_exponents(SELF) = dimensions_for_si_unit(si_unit_name.tesla); END_ENTITY; -- IN AP203e2/AP242 ENTITY magnetic_flux_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.MAGNETIC_FLUX_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; -- IN AP203e2/AP242 ENTITY magnetic_flux_unit SUBTYPE OF (derived_unit); WHERE WR1: derive_dimensional_exponents(SELF) = dimensions_for_si_unit(si_unit_name.weber); END_ENTITY; -- IN AP242 ENTITY make_from_feature_relationship SUBTYPE OF (component_feature_relationship); END_ENTITY; ENTITY make_from_usage_option SUBTYPE OF (product_definition_usage); ranking : INTEGER; ranking_rationale : text; quantity : measure_with_unit; WHERE WR1: NOT ('NUMBER' IN TYPEOF(quantity.value_component)) OR (quantity.value_component > 0); END_ENTITY; ENTITY manifold_solid_brep SUBTYPE OF (solid_model); outer : closed_shell; END_ENTITY; ENTITY manifold_subsurface_shape_representation SUBTYPE OF (shape_representation); WHERE WR1: SIZEOF(QUERY (it <* SELF.items| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CONNECTED_FACE_SUB_SET', 'STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM', 'STEP_MERGED_CAD_SCHEMA.AXIS2_PLACEMENT_3D' ] * TYPEOF(it)) = 1))) = 0; WR2: SIZEOF(QUERY (it <* SELF.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CONNECTED_FACE_SUB_SET', 'STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' ] * TYPEOF(it)) = 1))) > 0; WR3: SIZEOF(QUERY (mi <* QUERY (it <* items| ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(it)))| NOT ('STEP_MERGED_CAD_SCHEMA.MANIFOLD_SUBSURFACE_SHAPE_REPRESENTATION' IN TYPEOF(mi\mapped_item.mapping_source.mapped_representation)))) = 0; WR4: SIZEOF(QUERY (cfss <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.CONNECTED_FACE_SUB_SET' IN TYPEOF(it)))| NOT ('STEP_MERGED_CAD_SCHEMA.OPEN_SHELL' IN TYPEOF(cfss)))) = 0; WR5: SIZEOF(QUERY (cfss <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.CONNECTED_FACE_SUB_SET' IN TYPEOF(it)))| NOT (('STEP_MERGED_CAD_SCHEMA.CONNECTED_FACE_SUB_SET' IN TYPEOF(cfss\connected_face_sub_set.parent_face_set)) AND (SIZEOF(QUERY (fac <* cfss\connected_face_sub_set.parent_face_set\connected_face_set.cfs_faces| NOT advanced_face_properties(fac))) = 0) OR (SIZEOF(QUERY (fac <* cfss\connected_face_sub_set.parent_face_set\connected_face_set.cfs_faces| NOT ('STEP_MERGED_CAD_SCHEMA.ADVANCED_FACE' IN TYPEOF(fac)))) = 0)))) = 0; WR6: SIZEOF(QUERY (cfss <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.CONNECTED_FACE_SUB_SET' IN TYPEOF(it)))| (SIZEOF(QUERY (fac <* cfss\connected_face_set.cfs_faces| NOT advanced_face_properties(fac))) = 0))) = 0; WR7: SIZEOF(QUERY (cfss <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.CONNECTED_FACE_SUB_SET' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (fcs <* cfss\connected_face_set.cfs_faces| ('STEP_MERGED_CAD_SCHEMA.SUBFACE' IN TYPEOF(fcs)) AND NOT (SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* fcs.bounds| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(bnds.bound)))| NOT (SIZEOF(QUERY (oe <* elp_fbnds.bound\path.edge_list| NOT (('STEP_MERGED_CAD_SCHEMA.EDGE_CURVE' IN TYPEOF(oe.edge_element)) OR ('STEP_MERGED_CAD_SCHEMA.SUBEDGE' IN TYPEOF(oe.edge_element))))) = 0))) = 0))) = 0))) = 0; WR8: SIZEOF(QUERY (cfss <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.CONNECTED_FACE_SUB_SET' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (fcs <* cfss\connected_face_set.cfs_faces| ('STEP_MERGED_CAD_SCHEMA.SUBFACE' IN TYPEOF(fcs)) AND NOT (SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* fcs.bounds| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(bnds.bound)))| NOT (SIZEOF(QUERY (oe <* elp_fbnds.bound\path.edge_list| NOT (('STEP_MERGED_CAD_SCHEMA.VERTEX_POINT' IN TYPEOF(oe.edge_start)) AND ('STEP_MERGED_CAD_SCHEMA.VERTEX_POINT' IN TYPEOF(oe.edge_end))))) = 0))) = 0))) = 0))) = 0; WR9: SIZEOF(QUERY (cfss <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.CONNECTED_FACE_SUB_SET' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (fcs <* cfss\connected_face_set.cfs_faces| ('STEP_MERGED_CAD_SCHEMA.SUBFACE' IN TYPEOF(fcs)) AND NOT (SIZEOF(QUERY (bnds <* fcs.bounds| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.EDGE_LOOP', 'STEP_MERGED_CAD_SCHEMA.VERTEX_LOOP' ] * TYPEOF(bnds.bound)) = 1))) = 0))) = 0))) = 0; WR10: SIZEOF(QUERY (cfss <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.CONNECTED_FACE_SUB_SET' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (fcs <* cfss\connected_face_set.cfs_faces| ('STEP_MERGED_CAD_SCHEMA.SUBFACE' IN TYPEOF(fcs)) AND NOT (SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* fcs.bounds| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(bnds.bound)))| NOT (SIZEOF(QUERY (oe <* elp_fbnds.bound\path.edge_list| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.LINE', 'STEP_MERGED_CAD_SCHEMA.CONIC', 'STEP_MERGED_CAD_SCHEMA.POLYLINE', 'STEP_MERGED_CAD_SCHEMA.SURFACE_CURVE', 'STEP_MERGED_CAD_SCHEMA.B_SPLINE_CURVE' ] * TYPEOF(oe.edge_element\edge_curve.edge_geometry)) = 1))) = 0))) = 0))) = 0))) = 0; WR11: SIZEOF(QUERY (cfss <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.CONNECTED_FACE_SUB_SET' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (fcs <* cfss\connected_face_set.cfs_faces| ('STEP_MERGED_CAD_SCHEMA.SUBFACE' IN TYPEOF(fcs)) AND NOT (SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* fcs.bounds| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(bnds.bound)))| NOT (SIZEOF(QUERY (oe <* elp_fbnds.bound\path.edge_list| ('STEP_MERGED_CAD_SCHEMA.SURFACE_CURVE' IN TYPEOF(oe.edge_element\edge_curve.edge_geometry)) AND NOT (SIZEOF(QUERY (sc_ag <* oe.edge_element\edge_curve.edge_geometry\surface_curve.associated_geometry| NOT ('STEP_MERGED_CAD_SCHEMA.PCURVE' IN TYPEOF(sc_ag)))) = 0))) = 0))) = 0))) = 0))) = 0; WR12: SIZEOF(QUERY (cfss <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.CONNECTED_FACE_SUB_SET' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (fcs <* cfss\connected_face_set.cfs_faces| ('STEP_MERGED_CAD_SCHEMA.SUBFACE' IN TYPEOF(fcs)) AND NOT (SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* fcs.bounds| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(bnds.bound)))| NOT (SIZEOF(QUERY (oe <* elp_fbnds.bound\path.edge_list| ('STEP_MERGED_CAD_SCHEMA.POLYLINE' IN TYPEOF(oe.edge_element\edge_curve.edge_geometry)) AND NOT (SIZEOF(oe\oriented_edge.edge_element\edge_curve.edge_geometry\polyline.points) >= 3))) = 0))) = 0))) = 0))) = 0; END_ENTITY; ENTITY manifold_surface_shape_representation SUBTYPE OF (shape_representation); WHERE WR1: SIZEOF(QUERY (it <* SELF.items| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.SHELL_BASED_SURFACE_MODEL', 'STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM', 'STEP_MERGED_CAD_SCHEMA.AXIS2_PLACEMENT_3D' ] * TYPEOF(it)) = 1))) = 0; WR2: SIZEOF(QUERY (it <* SELF.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.SHELL_BASED_SURFACE_MODEL', 'STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' ] * TYPEOF(it)) = 1))) > 0; WR3: SIZEOF(QUERY (mi <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(it)))| NOT (('STEP_MERGED_CAD_SCHEMA.MANIFOLD_SURFACE_SHAPE_REPRESENTATION' IN TYPEOF(mi\mapped_item.mapping_source.mapped_representation)) AND (SIZEOF(QUERY (mr_it <* mi\mapped_item.mapping_source.mapped_representation.items| ('STEP_MERGED_CAD_SCHEMA.SHELL_BASED_SURFACE_MODEL' IN TYPEOF(mr_it)))) > 0)))) = 0; WR4: SIZEOF(QUERY (sbsm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.SHELL_BASED_SURFACE_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (sh <* sbsm\shell_based_surface_model.sbsm_boundary| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.OPEN_SHELL', 'STEP_MERGED_CAD_SCHEMA.ORIENTED_CLOSED_SHELL', 'STEP_MERGED_CAD_SCHEMA.CLOSED_SHELL' ] * TYPEOF(sh)) = 1))) = 0))) = 0; WR5: SIZEOF(QUERY (sbsm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.SHELL_BASED_SURFACE_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (cfs <* sbsm\shell_based_surface_model.sbsm_boundary| NOT (SIZEOF(QUERY (fa <* cfs\connected_face_set.cfs_faces| NOT ('STEP_MERGED_CAD_SCHEMA.FACE_SURFACE' IN TYPEOF(fa)))) = 0))) = 0))) = 0; WR6: SIZEOF(QUERY (sbsm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.SHELL_BASED_SURFACE_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (cfs <* sbsm\shell_based_surface_model.sbsm_boundary| NOT (SIZEOF(QUERY (fa <* cfs\connected_face_set.cfs_faces| NOT (('STEP_MERGED_CAD_SCHEMA.ADVANCED_FACE' IN TYPEOF(fa)) OR msf_surface_check(fa\face_surface.face_geometry)))) = 0))) = 0))) = 0; WR7: SIZEOF(QUERY (sbsm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.SHELL_BASED_SURFACE_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (cfs <* sbsm\shell_based_surface_model.sbsm_boundary| NOT (SIZEOF(QUERY (fa <* cfs\connected_face_set.cfs_faces| NOT (('STEP_MERGED_CAD_SCHEMA.ADVANCED_FACE' IN TYPEOF(fa)) OR (SIZEOF(QUERY (bnds <* fa.bounds| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.EDGE_LOOP', 'STEP_MERGED_CAD_SCHEMA.VERTEX_LOOP' ] * TYPEOF(bnds.bound)) = 1))) = 0)))) = 0))) = 0))) = 0; WR8: SIZEOF(QUERY (sbsm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.SHELL_BASED_SURFACE_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (cfs <* sbsm\shell_based_surface_model.sbsm_boundary| NOT (SIZEOF(QUERY (fa <* cfs\connected_face_set.cfs_faces| NOT (('STEP_MERGED_CAD_SCHEMA.ADVANCED_FACE' IN TYPEOF(fa)) OR (SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* fa.bounds| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(bnds.bound)))| NOT (SIZEOF(QUERY (oe <* elp_fbnds\path.edge_list| NOT ('STEP_MERGED_CAD_SCHEMA.EDGE_CURVE' IN TYPEOF(oe.edge_element)))) = 0))) = 0)))) = 0))) = 0))) = 0; WR9: SIZEOF(QUERY (sbsm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.SHELL_BASED_SURFACE_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (cfs <* sbsm\shell_based_surface_model.sbsm_boundary| NOT (SIZEOF(QUERY (fa <* cfs\connected_face_set.cfs_faces| NOT (('STEP_MERGED_CAD_SCHEMA.ADVANCED_FACE' IN TYPEOF(fa)) OR (SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* fa.bounds| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(bnds.bound)))| NOT (SIZEOF(QUERY (oe_cv <* QUERY (oe <* elp_fbnds\path.edge_list| ('STEP_MERGED_CAD_SCHEMA.EDGE_CURVE' IN TYPEOF(oe.edge_element)))| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.B_SPLINE_CURVE', 'STEP_MERGED_CAD_SCHEMA.CONIC', 'STEP_MERGED_CAD_SCHEMA.CURVE_REPLICA', 'STEP_MERGED_CAD_SCHEMA.LINE', 'STEP_MERGED_CAD_SCHEMA.OFFSET_CURVE_3D', 'STEP_MERGED_CAD_SCHEMA.PCURVE', 'STEP_MERGED_CAD_SCHEMA.POLYLINE', 'STEP_MERGED_CAD_SCHEMA.SURFACE_CURVE' ] * TYPEOF(oe_cv.edge_element\edge_curve.edge_geometry)) = 1))) = 0))) = 0)))) = 0))) = 0))) = 0; WR10: SIZEOF(QUERY (sbsm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.SHELL_BASED_SURFACE_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (cfs <* sbsm\shell_based_surface_model.sbsm_boundary| NOT (SIZEOF(QUERY (fa <* cfs\connected_face_set.cfs_faces| NOT (('STEP_MERGED_CAD_SCHEMA.ADVANCED_FACE' IN TYPEOF(fa)) OR (SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* fa.bounds| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(bnds.bound)))| NOT (SIZEOF(QUERY (oe <* elp_fbnds\path.edge_list| NOT msf_curve_check(oe.edge_element\edge_curve.edge_geometry))) = 0))) = 0)))) = 0))) = 0))) = 0; WR11: SIZEOF(QUERY (sbsm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.SHELL_BASED_SURFACE_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (cfs <* sbsm\shell_based_surface_model.sbsm_boundary| NOT (SIZEOF(QUERY (fa <* cfs\connected_face_set.cfs_faces| NOT (('STEP_MERGED_CAD_SCHEMA.ADVANCED_FACE' IN TYPEOF(fa)) OR (SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* fa.bounds| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(bnds.bound)))| NOT (SIZEOF(QUERY (oe <* elp_fbnds\path.edge_list| NOT (('STEP_MERGED_CAD_SCHEMA.VERTEX_POINT' IN TYPEOF(oe.edge_element.edge_start)) AND ('STEP_MERGED_CAD_SCHEMA.VERTEX_POINT' IN TYPEOF(oe.edge_element.edge_end))))) = 0))) = 0)))) = 0))) = 0))) = 0; WR12: SIZEOF(QUERY (sbsm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.SHELL_BASED_SURFACE_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (cfs <* sbsm\shell_based_surface_model.sbsm_boundary| NOT (SIZEOF(QUERY (fa <* cfs\connected_face_set.cfs_faces| NOT (('STEP_MERGED_CAD_SCHEMA.ADVANCED_FACE' IN TYPEOF(fa)) OR (SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* fa.bounds| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(bnds.bound)))| NOT (SIZEOF(QUERY (oe <* elp_fbnds\path.edge_list| NOT ((SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CARTESIAN_POINT', 'STEP_MERGED_CAD_SCHEMA.DEGENERATE_PCURVE', 'STEP_MERGED_CAD_SCHEMA.POINT_ON_CURVE', 'STEP_MERGED_CAD_SCHEMA.POINT_ON_SURFACE' ] * TYPEOF(oe.edge_element.edge_start\vertex_point.vertex_geometry)) = 1) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CARTESIAN_POINT', 'STEP_MERGED_CAD_SCHEMA.DEGENERATE_PCURVE', 'STEP_MERGED_CAD_SCHEMA.POINT_ON_CURVE', 'STEP_MERGED_CAD_SCHEMA.POINT_ON_SURFACE' ] * TYPEOF(oe.edge_element.edge_end\vertex_point.vertex_geometry)) = 1)))) = 0))) = 0)))) = 0))) = 0))) = 0; WR13: SIZEOF(QUERY (sbsm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.SHELL_BASED_SURFACE_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (cfs <* sbsm\shell_based_surface_model.sbsm_boundary| NOT (SIZEOF(QUERY (fa <* cfs\connected_face_set.cfs_faces| NOT (('STEP_MERGED_CAD_SCHEMA.ADVANCED_FACE' IN TYPEOF(fa)) OR (SIZEOF(QUERY (vlp_fbnds <* QUERY (bnds <* fa.bounds| ('STEP_MERGED_CAD_SCHEMA.VERTEX_LOOP' IN TYPEOF(bnds.bound)))| NOT ('STEP_MERGED_CAD_SCHEMA.VERTEX_POINT' IN TYPEOF(vlp_fbnds\vertex_loop.loop_vertex)))) = 0)))) = 0))) = 0))) = 0; WR14: SIZEOF(QUERY (sbsm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.SHELL_BASED_SURFACE_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (cfs <* sbsm\shell_based_surface_model.sbsm_boundary| NOT (SIZEOF(QUERY (fa <* cfs\connected_face_set.cfs_faces| NOT (('STEP_MERGED_CAD_SCHEMA.ADVANCED_FACE' IN TYPEOF(fa)) OR (SIZEOF(QUERY (vlp_fbnds <* QUERY (bnds <* fa.bounds| ('STEP_MERGED_CAD_SCHEMA.VERTEX_LOOP' IN TYPEOF(bnds.bound)))| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CARTESIAN_POINT', 'STEP_MERGED_CAD_SCHEMA.DEGENERATE_PCURVE', 'STEP_MERGED_CAD_SCHEMA.POINT_ON_CURVE', 'STEP_MERGED_CAD_SCHEMA.POINT_ON_SURFACE' ] * TYPEOF(vlp_fbnds\vertex_loop.loop_vertex\vertex_point.vertex_geometry)) = 1))) = 0)))) = 0))) = 0))) = 0; END_ENTITY; ENTITY mapped_item SUBTYPE OF (representation_item); mapping_source : representation_map; mapping_target : representation_item; WHERE WR1: acyclic_mapped_representation(SELF); END_ENTITY; -- IN AP242 ENTITY marking SUBTYPE OF (feature_definition); WHERE WR1: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND ((2 <= SIZEOF(pdr.used_representation.items)) AND (SIZEOF(pdr.used_representation.items) <= 6)))) = 1))) = 1; WR2: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND (it.name = 'marking text'))) = 1))) = 0))) = 0; WR3: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND (it.name = 'special instructions'))) <= 1))) = 0))) = 0; WR4: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND (it.name = 'font name'))) <= 1))) = 0))) = 0; WR5: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'character height'))) <= 1))) = 0))) = 0; WR6: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'character spacing'))) <= 1))) = 0))) = 0; WR7: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.' + 'RELATED_SHAPE_ASPECT')| (sar.description = 'applied shape') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT' IN TYPEOF(sdr.relating_shape_aspect)))) = 1))) = 1))) = 0; END_ENTITY; ENTITY mass_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.MASS_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; ENTITY mass_unit SUBTYPE OF (named_unit); WHERE WR1: ((((((SELF\named_unit.dimensions.length_exponent = 0.0) AND (SELF\named_unit.dimensions.mass_exponent = 1.0)) AND (SELF\named_unit.dimensions.time_exponent = 0.0)) AND (SELF\named_unit.dimensions.electric_current_exponent = 0.0)) AND (SELF\named_unit.dimensions.thermodynamic_temperature_exponent = 0.0)) AND (SELF\named_unit.dimensions.amount_of_substance_exponent = 0.0)) AND (SELF\named_unit.dimensions.luminous_intensity_exponent = 0.0); END_ENTITY; -- IN AP242 ENTITY mated_part_relationship SUBTYPE OF (group, group_assignment, product_definition_shape, product_definition_relationship, shape_aspect); items : SET [0:?] OF product_definition; DERIVE SELF\group_assignment.assigned_group : mated_part_relationship := SELF; SELF\property_definition.definition : mated_part_relationship := SELF; SELF\shape_aspect.of_shape : mated_part_relationship := SELF; END_ENTITY; ENTITY material_designation; name : label; definitions : SET [1:?] OF characterized_definition; END_ENTITY; ENTITY material_designation_characterization; name : label; description : text; designation : material_designation; property : characterized_material_property; END_ENTITY; -- CASE DIFF IN AP214 ENTITY material_property SUBTYPE OF (property_definition); UNIQUE UR1 : SELF\property_definition.name, SELF\property_definition.definition; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.CHARACTERIZED_OBJECT' IN TYPEOF(SELF\property_definition.definition)) OR (SIZEOF(bag_to_set(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')) - QUERY (temp <* bag_to_set(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PROPERTY_DEFINITION_REPRESENTATION.DEFINITION'))| ('STEP_MERGED_CAD_SCHEMA.' + 'MATERIAL_PROPERTY_REPRESENTATION' IN TYPEOF(temp)))) = 0); END_ENTITY; ENTITY material_property_representation SUBTYPE OF (property_definition_representation); dependent_environment : data_environment; END_ENTITY; -- IN AP242 ENTITY maths_enum_literal SUBTYPE OF (generic_literal); lit_value : maths_enum_atom; END_ENTITY; -- IN AP242 ENTITY maths_function ABSTRACT SUPERTYPE OF (ONEOF(finite_function, constant_function, selector_function, elementary_function, restriction_function, repackaging_function, reindexed_array_function, series_composed_function, parallel_composed_function, explicit_table_function, homogeneous_linear_function, general_linear_function, b_spline_basis, b_spline_function, rationalize_function, partial_derivative_function, definite_integral_function, abstracted_expression_function, expression_denoted_function, imported_point_function, imported_curve_function, imported_surface_function, imported_volume_function, application_defined_function)) SUBTYPE OF (generic_expression); DERIVE domain : tuple_space := derive_function_domain(SELF); range : tuple_space := derive_function_range(SELF); END_ENTITY; -- IN AP242 ENTITY maths_space ABSTRACT SUPERTYPE OF (ONEOF(elementary_space, finite_integer_interval, integer_interval_from_min, integer_interval_to_max, finite_real_interval, real_interval_from_min, real_interval_to_max, cartesian_complex_number_region, polar_complex_number_region, finite_space, uniform_product_space, listed_product_space, extended_tuple_space, function_space)) SUBTYPE OF (generic_expression); END_ENTITY; -- IN AP242 ENTITY maths_tuple_literal SUBTYPE OF (generic_literal); lit_value : LIST [0:?] OF maths_value; END_ENTITY; -- IN AP242 ENTITY maths_variable SUBTYPE OF (generic_variable); values_space : maths_space; name : label; WHERE WR1: expression_is_constant(values_space); END_ENTITY; -- IN AP214/AP242 ENTITY maximum_function SUBTYPE OF (multiple_arity_function_call); END_ENTITY; ENTITY measure_qualification; name : label; description : text; qualified_measure : measure_with_unit; qualifiers : SET [1:?] OF value_qualifier; WHERE WR1: SIZEOF(QUERY (temp <* qualifiers| ('STEP_MERGED_CAD_SCHEMA.PRECISION_QUALIFIER' IN TYPEOF(temp)))) < 2; WR2: NOT ('STEP_MERGED_CAD_SCHEMA.REPRESENTATION_ITEM' IN TYPEOF(SELF\measure_qualification.qualified_measure)); END_ENTITY; ENTITY measure_representation_item SUBTYPE OF (representation_item, measure_with_unit); END_ENTITY; -- DIFF IN AP214 ENTITY measure_with_unit SUPERTYPE OF (ONEOF(length_measure_with_unit, mass_measure_with_unit, time_measure_with_unit, electric_current_measure_with_unit, thermodynamic_temperature_measure_with_unit, celsius_temperature_measure_with_unit, amount_of_substance_measure_with_unit, luminous_intensity_measure_with_unit, plane_angle_measure_with_unit, solid_angle_measure_with_unit, area_measure_with_unit, volume_measure_with_unit, ratio_measure_with_unit, acceleration_measure_with_unit, capacitance_measure_with_unit, electric_charge_measure_with_unit, conductance_measure_with_unit, electric_potential_measure_with_unit, energy_measure_with_unit, magnetic_flux_density_measure_with_unit, force_measure_with_unit, frequency_measure_with_unit, illuminance_measure_with_unit, inductance_measure_with_unit, luminous_flux_measure_with_unit, magnetic_flux_measure_with_unit, power_measure_with_unit, pressure_measure_with_unit, resistance_measure_with_unit, velocity_measure_with_unit, absorbed_dose_measure_with_unit, radioactivity_measure_with_unit, dose_equivalent_measure_with_unit)); value_component : measure_value; unit_component : unit; WHERE WR1: valid_units(SELF); END_ENTITY; -- IN AP203e2/AP242 ENTITY mechanical_design_and_draughting_relationship SUBTYPE OF (definitional_representation_relationship_with_same_context); SELF\representation_relationship.rep_1 : mechanical_design_and_draughting_relationship_select; SELF\representation_relationship.rep_2 : mechanical_design_and_draughting_relationship_select; WHERE WR1: NOT ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_MODEL' IN TYPEOF(rep_2)) OR (('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_MODEL' IN TYPEOF(rep_1)) OR ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_REPRESENTATION' IN TYPEOF(rep_1))); WR2: NOT ('STEP_MERGED_CAD_SCHEMA.' + 'MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION' IN TYPEOF(rep_2)) OR (('STEP_MERGED_CAD_SCHEMA.' + 'MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION' IN TYPEOF(rep_1)) OR ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_REPRESENTATION' IN TYPEOF(rep_1))); WR3: NOT ('STEP_MERGED_CAD_SCHEMA.' + 'MECHANICAL_DESIGN_SHADED_PRESENTATION_REPRESENTATION' IN TYPEOF(rep_2)) OR (('STEP_MERGED_CAD_SCHEMA.' + 'MECHANICAL_DESIGN_SHADED_PRESENTATION_REPRESENTATION' IN TYPEOF(rep_1)) OR ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_REPRESENTATION' IN TYPEOF(rep_1))); END_ENTITY; -- DIFF IN AP214 ENTITY mechanical_design_geometric_presentation_area SUBTYPE OF (presentation_area); SELF\representation.items : SET [1:?] OF mechanical_design_geometric_presentation_area_items; WHERE WR1: SIZEOF(QUERY (it1 <* SELF.items| NOT ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(it1)) OR ('STEP_MERGED_CAD_SCHEMA.PRESENTATION_VIEW' IN TYPEOF(it1\mapped_item.mapping_source.mapped_representation)))) = 0; WR2: SIZEOF(QUERY (pv <* QUERY (mi1 <* QUERY (it1 <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(it1)))| ('STEP_MERGED_CAD_SCHEMA.PRESENTATION_VIEW' IN TYPEOF(mi1\mapped_item.mapping_source.mapped_representation)))| NOT (SIZEOF(QUERY (it2 <* pv\mapped_item.mapping_source.mapped_representation\representation.items| NOT (('STEP_MERGED_CAD_SCHEMA.AXIS2_PLACEMENT' IN TYPEOF(it2)) OR (('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(it2)) AND NOT ('STEP_MERGED_CAD_SCHEMA.' + 'CAMERA_IMAGE_3D_WITH_SCALE' IN TYPEOF(it2))) AND NOT ('STEP_MERGED_CAD_SCHEMA.PRESENTATION_VIEW' IN TYPEOF(it2\mapped_item.mapping_source.mapped_representation))) OR ('STEP_MERGED_CAD_SCHEMA.' + 'CAMERA_IMAGE_3D_WITH_SCALE' IN TYPEOF(it2)) AND NOT ('STEP_MERGED_CAD_SCHEMA.' + 'MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION' IN TYPEOF(it2\mapped_item.mapping_source.mapped_representation)))) = 0))) = 0; WR3: (SIZEOF(QUERY (ps <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PRESENTATION_SIZE.UNIT')| (ps\presentation_size.size.size_in_x <= 0) OR (ps\presentation_size.size.size_in_y <= 0))) = 0) AND (SIZEOF(QUERY (ais <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'AREA_IN_SET.AREA')| (SIZEOF(QUERY (ps <* USEDIN(ais, 'STEP_MERGED_CAD_SCHEMA.' + 'PRESENTATION_SIZE.UNIT')| (ps\presentation_size.size.size_in_x <= 0) OR (ps\presentation_size.size.size_in_y <= 0))) > 0))) = 0); WR4: (SIZEOF(QUERY (ps <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PRESENTATION_SIZE.UNIT')| ('STEP_MERGED_CAD_SCHEMA.' + 'AXIS2_PLACEMENT_2D' IN TYPEOF(ps.size.placement)))) = 1) AND (SIZEOF(QUERY (ps <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PRESENTATION_SIZE.UNIT')| ('STEP_MERGED_CAD_SCHEMA.' + 'AXIS2_PLACEMENT_3D' IN TYPEOF(ps.size.placement)))) = 0) OR (SIZEOF(QUERY (ais <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'AREA_IN_SET.AREA')| (SIZEOF(QUERY (ps <* USEDIN(ais, 'STEP_MERGED_CAD_SCHEMA.' + 'PRESENTATION_SIZE.UNIT')| ('STEP_MERGED_CAD_SCHEMA.' + 'AXIS2_PLACEMENT_2D' IN TYPEOF(ps.size.placement)))) = 1))) = 1) AND (SIZEOF(QUERY (ais <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'AREA_IN_SET.AREA')| (SIZEOF(QUERY (ps <* USEDIN(ais, 'STEP_MERGED_CAD_SCHEMA.' + 'PRESENTATION_SIZE.UNIT')| ('STEP_MERGED_CAD_SCHEMA.' + 'AXIS2_PLACEMENT_3D' IN TYPEOF(ps.size.placement)))) = 0))) = 1); END_ENTITY; -- DIFF IN AP214 ENTITY mechanical_design_geometric_presentation_representation SUBTYPE OF (representation); SELF\representation.items : SET [1:?] OF mechanical_design_geometric_presentation_representation_items; WHERE WR1: SIZEOF(QUERY (mi <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_REPRESENTATION'), ('STEP_MERGED_CAD_SCHEMA.' + 'MECHANICAL_DESIGN_GEOMETRIC_PRESENTATION_REPRESENTATION') ] * TYPEOF(mi\mapped_item.mapping_source.mapped_representation)) = 1))) = 0; WR2: SIZEOF(QUERY (smi <* QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(si\styled_item.item)))| NOT ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_REPRESENTATION' IN TYPEOF(smi\styled_item.item\mapped_item.mapping_source.mapped_representation)))) = 0; WR3: SIZEOF(QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (psa <* si\styled_item.styles| NOT (SIZEOF(QUERY (pss <* psa.styles| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.POINT_STYLE', 'STEP_MERGED_CAD_SCHEMA.CURVE_STYLE', 'STEP_MERGED_CAD_SCHEMA.SURFACE_STYLE_USAGE' ] * TYPEOF(pss)) = 1))) = 0))) = 0))) = 0; WR4: SIZEOF(QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (psbc <* QUERY (psa <* si\styled_item.styles| ('STEP_MERGED_CAD_SCHEMA.' + 'PRESENTATION_STYLE_BY_CONTEXT' IN TYPEOF(psa)))| NOT (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'REPRESENTATION_ITEM'), 'STEP_MERGED_CAD_SCHEMA.REPRESENTATION' ] * TYPEOF(psbc\presentation_style_by_context.style_context)) = 1))) = 0))) = 0; WR5: SIZEOF(QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (psa <* si\styled_item.styles| NOT (SIZEOF(QUERY (ps <* QUERY (pss <* psa.styles| ('STEP_MERGED_CAD_SCHEMA.POINT_STYLE' IN TYPEOF(pss)))| NOT (('STEP_MERGED_CAD_SCHEMA.' + 'POSITIVE_LENGTH_MEASURE' IN TYPEOF(ps\point_style.marker_size)) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.COLOUR_RGB', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_COLOUR') ] * TYPEOF(ps\point_style.marker_colour)) = 1)))) = 0))) = 0))) = 0; WR6: SIZEOF(QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (psa <* si\styled_item.styles| NOT (SIZEOF(QUERY (cs <* QUERY (pss <* psa.styles| ('STEP_MERGED_CAD_SCHEMA.CURVE_STYLE' IN TYPEOF(pss)))| NOT (((SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.COLOUR_RGB', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_COLOUR') ] * TYPEOF(cs\curve_style.curve_colour)) = 1) AND ('STEP_MERGED_CAD_SCHEMA.' + 'POSITIVE_LENGTH_MEASURE' IN TYPEOF(cs\curve_style.curve_width))) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CURVE_STYLE_FONT', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_CURVE_FONT') ] * TYPEOF(cs\curve_style.curve_font)) = 1)))) = 0))) = 0))) = 0; WR7: SIZEOF(QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (psa <* si\styled_item.styles| NOT (SIZEOF(QUERY (ssu <* QUERY (pss <* psa.styles| ('STEP_MERGED_CAD_SCHEMA.SURFACE_STYLE_USAGE' IN TYPEOF(pss)))| NOT ('STEP_MERGED_CAD_SCHEMA.' + 'SURFACE_SIDE_STYLE' IN TYPEOF(ssu\surface_style_usage.style)))) = 0))) = 0))) = 0; WR8: SIZEOF(QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (psa <* si\styled_item.styles| NOT (SIZEOF(QUERY (ssu <* QUERY (pss <* psa.styles| ('STEP_MERGED_CAD_SCHEMA.SURFACE_STYLE_USAGE' IN TYPEOF(pss)))| NOT (SIZEOF(QUERY (sses <* ssu\surface_style_usage.style\surface_side_style.styles| NOT (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'SURFACE_STYLE_PARAMETER_LINE'), ('STEP_MERGED_CAD_SCHEMA.' + 'SURFACE_STYLE_CONTROL_GRID'), ('STEP_MERGED_CAD_SCHEMA.' + 'SURFACE_STYLE_SILHOUETTE'), ('STEP_MERGED_CAD_SCHEMA.' + 'SURFACE_STYLE_SEGMENTATION_CURVE'), ('STEP_MERGED_CAD_SCHEMA.' + 'SURFACE_STYLE_FILL_AREA'), ('STEP_MERGED_CAD_SCHEMA.' + 'SURFACE_STYLE_BOUNDARY') ] * TYPEOF(sses)) = 1))) = 0))) = 0))) = 0))) = 0; WR9: SIZEOF(QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (psa <* si\styled_item.styles| NOT (SIZEOF(QUERY (ssu <* QUERY (pss <* psa.styles| ('STEP_MERGED_CAD_SCHEMA.SURFACE_STYLE_USAGE' IN TYPEOF(pss)))| NOT (SIZEOF(QUERY (sspl <* QUERY (sses <* ssu\surface_style_usage.style\surface_side_style.styles| ('STEP_MERGED_CAD_SCHEMA.' + 'SURFACE_STYLE_PARAMETER_LINE' IN TYPEOF(sses)))| NOT (((('STEP_MERGED_CAD_SCHEMA.CURVE_STYLE' IN TYPEOF(sspl\surface_style_parameter_line.style_of_parameter_lines)) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.COLOUR_RGB', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_COLOUR') ] * TYPEOF(sspl\surface_style_parameter_line.style_of_parameter_lines\curve_style.curve_colour)) = 1)) AND ('STEP_MERGED_CAD_SCHEMA.' + 'POSITIVE_LENGTH_MEASURE' IN TYPEOF(sspl\surface_style_parameter_line.style_of_parameter_lines\curve_style.curve_width))) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CURVE_STYLE_FONT', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_CURVE_FONT') ] * TYPEOF(sspl\surface_style_parameter_line.style_of_parameter_lines\curve_style.curve_font)) = 1)))) = 0))) = 0))) = 0))) = 0; WR10: SIZEOF(QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (psa <* si\styled_item.styles| NOT (SIZEOF(QUERY (ssu <* QUERY (pss <* psa.styles| ('STEP_MERGED_CAD_SCHEMA.SURFACE_STYLE_USAGE' IN TYPEOF(pss)))| NOT (SIZEOF(QUERY (sscg <* QUERY (sses <* ssu\surface_style_usage.style\surface_side_style.styles| ('STEP_MERGED_CAD_SCHEMA.' + 'SURFACE_STYLE_CONTROL_GRID' IN TYPEOF(sses)))| NOT (((('STEP_MERGED_CAD_SCHEMA.CURVE_STYLE' IN TYPEOF(sscg\surface_style_control_grid.style_of_control_grid)) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.COLOUR_RGB', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_COLOUR') ] * TYPEOF(sscg\surface_style_control_grid.style_of_control_grid\curve_style.curve_colour)) = 1)) AND ('STEP_MERGED_CAD_SCHEMA.' + 'POSITIVE_LENGTH_MEASURE' IN TYPEOF(sscg\surface_style_control_grid.style_of_control_grid\curve_style.curve_width))) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CURVE_STYLE_FONT', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_CURVE_FONT') ] * TYPEOF(sscg\surface_style_control_grid.style_of_control_grid\curve_style.curve_font)) = 1)))) = 0))) = 0))) = 0))) = 0; WR11: SIZEOF(QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (psa <* si\styled_item.styles| NOT (SIZEOF(QUERY (ssu <* QUERY (pss <* psa.styles| ('STEP_MERGED_CAD_SCHEMA.SURFACE_STYLE_USAGE' IN TYPEOF(pss)))| NOT (SIZEOF(QUERY (sssh <* QUERY (sses <* ssu\surface_style_usage.style\surface_side_style.styles| ('STEP_MERGED_CAD_SCHEMA.' + 'SURFACE_STYLE_SILHOUETTE' IN TYPEOF(sses)))| NOT (((('STEP_MERGED_CAD_SCHEMA.CURVE_STYLE' IN TYPEOF(sssh\surface_style_silhouette.style_of_silhouette)) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.COLOUR_RGB', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_COLOUR') ] * TYPEOF(sssh\surface_style_silhouette.style_of_silhouette\curve_style.curve_colour)) = 1)) AND ('STEP_MERGED_CAD_SCHEMA.' + 'POSITIVE_LENGTH_MEASURE' IN TYPEOF(sssh\surface_style_silhouette.style_of_silhouette\curve_style.curve_width))) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CURVE_STYLE_FONT', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_CURVE_FONT') ] * TYPEOF(sssh\surface_style_silhouette.style_of_silhouette\curve_style.curve_font)) = 1)))) = 0))) = 0))) = 0))) = 0; WR12: SIZEOF(QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (psa <* si\styled_item.styles| NOT (SIZEOF(QUERY (ssu <* QUERY (pss <* psa.styles| ('STEP_MERGED_CAD_SCHEMA.SURFACE_STYLE_USAGE' IN TYPEOF(pss)))| NOT (SIZEOF(QUERY (sssc <* QUERY (sses <* ssu\surface_style_usage.style\surface_side_style.styles| ('STEP_MERGED_CAD_SCHEMA.' + 'SURFACE_STYLE_SEGMENTATION_CURVE' IN TYPEOF(sses)))| NOT (((('STEP_MERGED_CAD_SCHEMA.CURVE_STYLE' IN TYPEOF(sssc\surface_style_segmentation_curve.style_of_segmentation_curve)) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.COLOUR_RGB', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_COLOUR') ] * TYPEOF(sssc\surface_style_segmentation_curve.style_of_segmentation_curve\curve_style.curve_colour)) = 1)) AND ('STEP_MERGED_CAD_SCHEMA.' + 'POSITIVE_LENGTH_MEASURE' IN TYPEOF(sssc\surface_style_segmentation_curve.style_of_segmentation_curve\curve_style.curve_width))) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CURVE_STYLE_FONT', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_CURVE_FONT') ] * TYPEOF(sssc\surface_style_segmentation_curve.style_of_segmentation_curve\curve_style.curve_font)) = 1)))) = 0))) = 0))) = 0))) = 0; WR13: SIZEOF(QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (psa <* si\styled_item.styles| NOT (SIZEOF(QUERY (ssu <* QUERY (pss <* psa.styles| ('STEP_MERGED_CAD_SCHEMA.SURFACE_STYLE_USAGE' IN TYPEOF(pss)))| NOT (SIZEOF(QUERY (ssbd <* QUERY (sses <* ssu\surface_style_usage.style\surface_side_style.styles| ('STEP_MERGED_CAD_SCHEMA.' + 'SURFACE_STYLE_BOUNDARY' IN TYPEOF(sses)))| NOT (((('STEP_MERGED_CAD_SCHEMA.CURVE_STYLE' IN TYPEOF(ssbd\surface_style_boundary.style_of_boundary)) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.COLOUR_RGB', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_COLOUR') ] * TYPEOF(ssbd\surface_style_boundary.style_of_boundary\curve_style.curve_colour)) = 1)) AND ('STEP_MERGED_CAD_SCHEMA.' + 'POSITIVE_LENGTH_MEASURE' IN TYPEOF(ssbd\surface_style_boundary.style_of_boundary\curve_style.curve_width))) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CURVE_STYLE_FONT', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_CURVE_FONT') ] * TYPEOF(ssbd\surface_style_boundary.style_of_boundary\curve_style.curve_font)) = 1)))) = 0))) = 0))) = 0))) = 0; END_ENTITY; -- IN AP203e2/AP242 ENTITY mechanical_design_presentation_representation_with_draughting SUBTYPE OF (representation); SELF\representation.items : SET [1:?] OF camera_model_d3; END_ENTITY; -- DIFF IN AP203e2 -- IN AP203e2/AP242 ENTITY mechanical_design_shaded_presentation_area SUBTYPE OF (presentation_area); SELF\representation.items : SET [1:?] OF mechanical_design_shaded_presentation_area_items; WHERE WR1: SIZEOF(QUERY (it1 <* SELF.items| NOT (('STEP_MERGED_CAD_SCHEMA.AXIS2_PLACEMENT' IN TYPEOF(it1)) OR ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(it1)) AND ('STEP_MERGED_CAD_SCHEMA.PRESENTATION_VIEW' IN TYPEOF(it1\mapped_item.mapping_source.mapped_representation))))) = 0; WR2: SIZEOF(QUERY (pv <* QUERY (mi1 <* QUERY (it1 <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(it1)))| ('STEP_MERGED_CAD_SCHEMA.PRESENTATION_VIEW' IN TYPEOF(mi1\mapped_item.mapping_source.mapped_representation)))| NOT (SIZEOF(QUERY (it2 <* pv\mapped_item.mapping_source.mapped_representation\representation.items| NOT (('STEP_MERGED_CAD_SCHEMA.AXIS2_PLACEMENT' IN TYPEOF(it2)) OR (('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(it2)) AND NOT ('STEP_MERGED_CAD_SCHEMA.' + 'CAMERA_IMAGE_3D_WITH_SCALE' IN TYPEOF(it2))) AND NOT ('STEP_MERGED_CAD_SCHEMA.PRESENTATION_VIEW' IN TYPEOF(it2\mapped_item.mapping_source.mapped_representation))) OR ('STEP_MERGED_CAD_SCHEMA.' + 'CAMERA_IMAGE_3D_WITH_SCALE' IN TYPEOF(it2)) AND NOT ('STEP_MERGED_CAD_SCHEMA.' + 'MECHANICAL_DESIGN_SHADED_PRESENTATION_REPRESENTATION' IN TYPEOF(it2\mapped_item.mapping_source.mapped_representation)))) = 0))) = 0; WR3: (SIZEOF(QUERY (ps <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PRESENTATION_SIZE.UNIT')| NOT ((ps\presentation_size.size.size_in_x > 0) AND (ps\presentation_size.size.size_in_y > 0)))) = 0) AND (SIZEOF(QUERY (pset <* QUERY (ais <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'AREA_IN_SET.AREA')| ('STEP_MERGED_CAD_SCHEMA.' + 'PRESENTATION_SET' IN TYPEOF(ais.in_set)))| (SIZEOF(QUERY (ps <* USEDIN(pset, 'STEP_MERGED_CAD_SCHEMA.' + 'PRESENTATION_SIZE.UNIT')| NOT ((ps\presentation_size.size.size_in_x > 0) AND (ps\presentation_size.size.size_in_y > 0)))) = 0))) = 0); WR4: (SIZEOF(QUERY (psize <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PRESENTATION_SIZE.UNIT')| ('STEP_MERGED_CAD_SCHEMA.' + 'AXIS2_PLACEMENT_2D' IN TYPEOF(psize.size.placement)))) = 1) AND (SIZEOF(QUERY (pset <* QUERY (ais <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'AREA_IN_SET.AREA')| ('STEP_MERGED_CAD_SCHEMA.' + 'PRESENTATION_SET' IN TYPEOF(ais.in_set)))| (SIZEOF(QUERY (psize <* USEDIN(pset, 'STEP_MERGED_CAD_SCHEMA.' + 'PRESENTATION_SIZE.UNIT')| NOT ('STEP_MERGED_CAD_SCHEMA.' + 'AXIS2_PLACEMENT_2D' IN TYPEOF(psize.size.placement)))) = 0))) = 0); WR5: SIZEOF(QUERY (pv <* QUERY (mi1 <* QUERY (it1 <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(it1)))| ('STEP_MERGED_CAD_SCHEMA.PRESENTATION_VIEW' IN TYPEOF(mi1\mapped_item.mapping_source.mapped_representation)))| NOT (SIZEOF(QUERY (ci <* pv\mapped_item.mapping_source.mapped_representation\representation.items| ('STEP_MERGED_CAD_SCHEMA.' + 'CAMERA_IMAGE_3D_WITH_SCALE' IN TYPEOF(ci)) AND (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'CAMERA_MODEL_D3'), ('STEP_MERGED_CAD_SCHEMA.' + 'CAMERA_MODEL_D3_WITH_HLHSR'), ('STEP_MERGED_CAD_SCHEMA.' + 'CAMERA_MODEL_WITH_LIGHT_SOURCES') ] * TYPEOF(ci\mapped_item.mapping_source.mapping_origin)) = 1))) = 0))) = 0; END_ENTITY; -- DIFF IN AP203e2 -- IN AP203e2/AP242 ENTITY mechanical_design_shaded_presentation_representation SUBTYPE OF (representation); SELF\representation.items : SET [1:?] OF mechanical_design_shaded_presentation_representation_items; WHERE WR1: SIZEOF(QUERY (mi <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_REPRESENTATION'), ('STEP_MERGED_CAD_SCHEMA.' + 'MECHANICAL_DESIGN_SHADED_PRESENTATION_REPRESENTATION') ] * TYPEOF(mi\mapped_item.mapping_source.mapped_representation)) = 1))) = 0; WR2: SIZEOF(QUERY (smi <* QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(si\styled_item.item)))| NOT ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_REPRESENTATION' IN TYPEOF(smi\styled_item.item\mapped_item.mapping_source.mapped_representation)))) = 0; WR3: SIZEOF(QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (psa <* si\styled_item.styles| NOT (SIZEOF(QUERY (pss <* psa.styles| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.POINT_STYLE', 'STEP_MERGED_CAD_SCHEMA.CURVE_STYLE', 'STEP_MERGED_CAD_SCHEMA.SURFACE_STYLE_USAGE' ] * TYPEOF(pss)) = 1))) = 0))) = 0))) = 0; WR4: SIZEOF(QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (psbc <* QUERY (psa <* si\styled_item.styles| ('STEP_MERGED_CAD_SCHEMA.' + 'PRESENTATION_STYLE_BY_CONTEXT' IN TYPEOF(psa)))| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.REPRESENTATION' ] * TYPEOF(psbc\presentation_style_by_context.style_context)) = 1))) = 0))) = 0; WR5: SIZEOF(QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (psa <* si\styled_item.styles| NOT (SIZEOF(QUERY (ps <* QUERY (pss <* psa.styles| ('STEP_MERGED_CAD_SCHEMA.POINT_STYLE' IN TYPEOF(pss)))| NOT ((('STEP_MERGED_CAD_SCHEMA.MARKER_TYPE' IN TYPEOF(ps\point_style.marker)) AND ('STEP_MERGED_CAD_SCHEMA.POSITIVE_LENGTH_MEASURE' IN TYPEOF(ps\point_style.marker_size))) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.COLOUR_RGB', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_COLOUR') ] * TYPEOF(ps\point_style.marker_colour)) = 1)))) = 0))) = 0))) = 0; WR6: SIZEOF(QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (psa <* si\styled_item.styles| NOT (SIZEOF(QUERY (cs <* QUERY (pss <* psa.styles| ('STEP_MERGED_CAD_SCHEMA.CURVE_STYLE' IN TYPEOF(pss)))| NOT (((SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.COLOUR_RGB', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_COLOUR') ] * TYPEOF(cs\curve_style.curve_colour)) = 1) AND ('STEP_MERGED_CAD_SCHEMA.POSITIVE_LENGTH_MEASURE' IN TYPEOF(cs\curve_style.curve_width))) AND (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'CURVE_STYLE_FONT'), ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_CURVE_FONT') ] * TYPEOF(cs\curve_style.curve_font)) = 1)))) = 0))) = 0))) = 0; WR7: SIZEOF(QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (psa <* si\styled_item.styles| NOT (SIZEOF(QUERY (ssu <* QUERY (pss <* psa.styles| ('STEP_MERGED_CAD_SCHEMA.SURFACE_STYLE_USAGE' IN TYPEOF(pss)))| NOT ('STEP_MERGED_CAD_SCHEMA.SURFACE_SIDE_STYLE' IN TYPEOF(ssu\surface_style_usage.style)))) = 0))) = 0))) = 0; WR8: SIZEOF(QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (psa <* si\styled_item.styles| NOT (SIZEOF(QUERY (ssu <* QUERY (pss <* psa.styles| ('STEP_MERGED_CAD_SCHEMA.SURFACE_STYLE_USAGE' IN TYPEOF(pss)))| NOT (SIZEOF(QUERY (sses <* ssu\surface_style_usage.style\surface_side_style.styles| NOT (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'SURFACE_STYLE_PARAMETER_LINE'), ('STEP_MERGED_CAD_SCHEMA.' + 'SURFACE_STYLE_CONTROL_GRID'), ('STEP_MERGED_CAD_SCHEMA.' + 'SURFACE_STYLE_SILHOUETTE'), ('STEP_MERGED_CAD_SCHEMA.' + 'SURFACE_STYLE_SEGMENTATION_CURVE'), ('STEP_MERGED_CAD_SCHEMA.' + 'SURFACE_STYLE_BOUNDARY'), ('STEP_MERGED_CAD_SCHEMA.' + 'SURFACE_STYLE_FILL_AREA'), ('STEP_MERGED_CAD_SCHEMA.' + 'SURFACE_STYLE_RENDERING') ] * TYPEOF(sses)) = 1))) = 0))) = 0))) = 0))) = 0; WR9: SIZEOF(QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (psa <* si\styled_item.styles| NOT (SIZEOF(QUERY (ssu <* QUERY (pss <* psa.styles| ('STEP_MERGED_CAD_SCHEMA.SURFACE_STYLE_USAGE' IN TYPEOF(pss)))| NOT (SIZEOF(QUERY (ssfa <* QUERY (sses <* ssu\surface_style_usage.style\surface_side_style.styles| ('STEP_MERGED_CAD_SCHEMA.SURFACE_STYLE_FILL_AREA' IN TYPEOF(sses)))| NOT (SIZEOF(QUERY (fss <* ssfa\surface_style_fill_area.fill_area.fill_styles| NOT (('STEP_MERGED_CAD_SCHEMA.' + 'FILL_AREA_STYLE_COLOUR' IN TYPEOF(fss)) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.COLOUR_RGB', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_COLOUR') ] * TYPEOF(fss\fill_area_style_colour.fill_colour)) = 1)))) = 0))) = 0))) = 0))) = 0))) = 0; WR10: SIZEOF(QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (psa <* si\styled_item.styles| NOT (SIZEOF(QUERY (ssu <* QUERY (pss <* psa.styles| ('STEP_MERGED_CAD_SCHEMA.SURFACE_STYLE_USAGE' IN TYPEOF(pss)))| NOT (SIZEOF(QUERY (sspl <* QUERY (sses <* ssu\surface_style_usage.style\surface_side_style.styles| ('STEP_MERGED_CAD_SCHEMA.' + 'SURFACE_STYLE_PARAMETER_LINE' IN TYPEOF(sses)))| NOT (((('STEP_MERGED_CAD_SCHEMA.CURVE_STYLE' IN TYPEOF(sspl\surface_style_parameter_line.style_of_parameter_lines)) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.COLOUR_RGB', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_COLOUR') ] * TYPEOF(sspl\surface_style_parameter_line.style_of_parameter_lines\curve_style.curve_colour)) = 1)) AND ('STEP_MERGED_CAD_SCHEMA.POSITIVE_LENGTH_MEASURE' IN TYPEOF(sspl\surface_style_parameter_line.style_of_parameter_lines\curve_style.curve_width))) AND (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'CURVE_STYLE_FONT'), ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_CURVE_FONT') ] * TYPEOF(sspl\surface_style_parameter_line.style_of_parameter_lines\curve_style.curve_font)) = 1) OR ('STEP_MERGED_CAD_SCHEMA.CURVE_STYLE_RENDERING' IN TYPEOF(sspl\surface_style_parameter_line.style_of_parameter_lines)) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.COLOUR_RGB', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_COLOUR') ] * TYPEOF(sspl\surface_style_parameter_line.style_of_parameter_lines\curve_style_rendering.rendering_properties.rendered_colour)) = 1)))) = 0))) = 0))) = 0))) = 0; WR11: SIZEOF(QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (psa <* si\styled_item.styles| NOT (SIZEOF(QUERY (ssu <* QUERY (pss <* psa.styles| ('STEP_MERGED_CAD_SCHEMA.SURFACE_STYLE_USAGE' IN TYPEOF(pss)))| NOT (SIZEOF(QUERY (sscg <* QUERY (sses <* ssu\surface_style_usage.style\surface_side_style.styles| ('STEP_MERGED_CAD_SCHEMA.' + 'SURFACE_STYLE_CONTROL_GRID' IN TYPEOF(sses)))| NOT (((('STEP_MERGED_CAD_SCHEMA.CURVE_STYLE' IN TYPEOF(sscg\surface_style_control_grid.style_of_control_grid)) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.COLOUR_RGB', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_COLOUR') ] * TYPEOF(sscg\surface_style_control_grid.style_of_control_grid\curve_style.curve_colour)) = 1)) AND ('STEP_MERGED_CAD_SCHEMA.POSITIVE_LENGTH_MEASURE' IN TYPEOF(sscg\surface_style_control_grid.style_of_control_grid\curve_style.curve_width))) AND (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'CURVE_STYLE_FONT'), ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_CURVE_FONT') ] * TYPEOF(sscg\surface_style_control_grid.style_of_control_grid\curve_style.curve_font)) = 1) OR ('STEP_MERGED_CAD_SCHEMA.CURVE_STYLE_RENDERING' IN TYPEOF(sscg\surface_style_control_grid.style_of_control_grid)) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.COLOUR_RGB', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_COLOUR') ] * TYPEOF(sscg\surface_style_control_grid.style_of_control_grid\curve_style_rendering.rendering_properties.rendered_colour)) = 1)))) = 0))) = 0))) = 0))) = 0; WR12: SIZEOF(QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (psa <* si\styled_item.styles| NOT (SIZEOF(QUERY (ssu <* QUERY (pss <* psa.styles| ('STEP_MERGED_CAD_SCHEMA.SURFACE_STYLE_USAGE' IN TYPEOF(pss)))| NOT (SIZEOF(QUERY (sssh <* QUERY (sses <* ssu\surface_style_usage.style\surface_side_style.styles| ('STEP_MERGED_CAD_SCHEMA.' + 'SURFACE_STYLE_SILHOUETTE' IN TYPEOF(sses)))| NOT (((('STEP_MERGED_CAD_SCHEMA.CURVE_STYLE' IN TYPEOF(sssh\surface_style_silhouette.style_of_silhouette)) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.COLOUR_RGB', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_COLOUR') ] * TYPEOF(sssh\surface_style_silhouette.style_of_silhouette\curve_style.curve_colour)) = 1)) AND ('STEP_MERGED_CAD_SCHEMA.POSITIVE_LENGTH_MEASURE' IN TYPEOF(sssh\surface_style_silhouette.style_of_silhouette\curve_style.curve_width))) AND (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'CURVE_STYLE_FONT'), ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_CURVE_FONT') ] * TYPEOF(sssh\surface_style_silhouette.style_of_silhouette\curve_style.curve_font)) = 1) OR ('STEP_MERGED_CAD_SCHEMA.CURVE_STYLE_RENDERING' IN TYPEOF(sssh\surface_style_silhouette.style_of_silhouette)) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.COLOUR_RGB', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_COLOUR') ] * TYPEOF(sssh\surface_style_silhouette.style_of_silhouette\curve_style_rendering.rendering_properties.rendered_colour)) = 1)))) = 0))) = 0))) = 0))) = 0; WR13: SIZEOF(QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (psa <* si\styled_item.styles| NOT (SIZEOF(QUERY (ssu <* QUERY (pss <* psa.styles| ('STEP_MERGED_CAD_SCHEMA.SURFACE_STYLE_USAGE' IN TYPEOF(pss)))| NOT (SIZEOF(QUERY (sssc <* QUERY (sses <* ssu\surface_style_usage.style\surface_side_style.styles| ('STEP_MERGED_CAD_SCHEMA.' + 'SURFACE_STYLE_SEGMENTATION_CURVE' IN TYPEOF(sses)))| NOT (((('STEP_MERGED_CAD_SCHEMA.CURVE_STYLE' IN TYPEOF(sssc\surface_style_segmentation_curve.style_of_segmentation_curve)) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.COLOUR_RGB', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_COLOUR') ] * TYPEOF(sssc\surface_style_segmentation_curve.style_of_segmentation_curve\curve_style.curve_colour)) = 1)) AND ('STEP_MERGED_CAD_SCHEMA.POSITIVE_LENGTH_MEASURE' IN TYPEOF(sssc\surface_style_segmentation_curve.style_of_segmentation_curve\curve_style.curve_width))) AND (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'CURVE_STYLE_FONT'), ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_CURVE_FONT') ] * TYPEOF(sssc\surface_style_segmentation_curve.style_of_segmentation_curve\curve_style.curve_font)) = 1) OR ('STEP_MERGED_CAD_SCHEMA.CURVE_STYLE_RENDERING' IN TYPEOF(sssc\surface_style_segmentation_curve.style_of_segmentation_curve)) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.COLOUR_RGB', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_COLOUR') ] * TYPEOF(sssc\surface_style_segmentation_curve.style_of_segmentation_curve\curve_style_rendering.rendering_properties.rendered_colour)) = 1)))) = 0))) = 0))) = 0))) = 0; WR14: SIZEOF(QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (psa <* si\styled_item.styles| NOT (SIZEOF(QUERY (ssu <* QUERY (pss <* psa.styles| ('STEP_MERGED_CAD_SCHEMA.SURFACE_STYLE_USAGE' IN TYPEOF(pss)))| NOT (SIZEOF(QUERY (ssbd <* QUERY (sses <* ssu\surface_style_usage.style\surface_side_style.styles| ('STEP_MERGED_CAD_SCHEMA.' + 'SURFACE_STYLE_BOUNDARY' IN TYPEOF(sses)))| NOT (((('STEP_MERGED_CAD_SCHEMA.CURVE_STYLE' IN TYPEOF(ssbd\surface_style_boundary.style_of_boundary)) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.COLOUR_RGB', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_COLOUR') ] * TYPEOF(ssbd\surface_style_boundary.style_of_boundary\curve_style.curve_colour)) = 1)) AND ('STEP_MERGED_CAD_SCHEMA.POSITIVE_LENGTH_MEASURE' IN TYPEOF(ssbd\surface_style_boundary.style_of_boundary\curve_style.curve_width))) AND (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'CURVE_STYLE_FONT'), ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_CURVE_FONT') ] * TYPEOF(ssbd\surface_style_boundary.style_of_boundary\curve_style.curve_font)) = 1) OR ('STEP_MERGED_CAD_SCHEMA.CURVE_STYLE_RENDERING' IN TYPEOF(ssbd\surface_style_boundary.style_of_boundary)) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.COLOUR_RGB', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_COLOUR') ] * TYPEOF(ssbd\surface_style_boundary.style_of_boundary\curve_style_rendering.rendering_properties.rendered_colour)) = 1)))) = 0))) = 0))) = 0))) = 0; WR15: SIZEOF(QUERY (si <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (psa <* si\styled_item.styles| NOT (SIZEOF(QUERY (ssu <* QUERY (pss <* psa.styles| ('STEP_MERGED_CAD_SCHEMA.SURFACE_STYLE_USAGE' IN TYPEOF(pss)))| NOT (SIZEOF(QUERY (ssre <* QUERY (sses <* ssu\surface_style_usage.style\surface_side_style.styles| ('STEP_MERGED_CAD_SCHEMA.' + 'SURFACE_STYLE_RENDERING' IN TYPEOF(sses)))| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.COLOUR_RGB', ('STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_PRE_DEFINED_COLOUR') ] * TYPEOF(ssre\surface_style_rendering.surface_colour)) = 1))) = 0))) = 0))) = 0))) = 0; END_ENTITY; -- IN AP214 ENTITY mechanism; structure_definition : kinematic_structure; base : kinematic_link; containing_property : kinematic_property_definition; WHERE wr1: SIZEOF(QUERY (joint <* structure_definition.joints| (base :=: joint.first_link) OR (base :=: joint.second_link))) > 0; END_ENTITY; -- IN AP214 ENTITY mechanism_base_placement SUBTYPE OF (representation_relationship_with_transformation); base_of_mechanism : mechanism; SELF\representation_relationship_with_transformation.transformation_operator : cartesian_transformation_operator_3d; DERIVE SELF\representation_relationship.rep_2 : kinematic_link_representation := representation_of_link(base_of_mechanism.base); UNIQUE ur1 : base_of_mechanism; WHERE wr1: ('STEP_MERGED_CAD_SCHEMA.KINEMATIC_GROUND_REPRESENTATION' IN TYPEOF(SELF\representation_relationship.rep_1)) OR ('STEP_MERGED_CAD_SCHEMA.KINEMATIC_LINK_REPRESENTATION' IN TYPEOF(SELF\representation_relationship.rep_1)); wr2: suitably_based_mechanism(SELF, base_of_mechanism); wr3: SELF\representation_relationship_with_transformation.transformation_operator IN SELF\representation_relationship.rep_1.items; END_ENTITY; -- IN AP242 ENTITY mechanism_representation SUBTYPE OF (representation); represented_topology : kinematic_topology_representation_select; SELF\representation.context_of_items : geometric_representation_context; SELF\representation.items : SET [1:?] OF pair_representation_relationship; DERIVE represented_joints : SET [1:?] OF kinematic_joint := collect_joints(items); WHERE WR1: (('STEP_MERGED_CAD_SCHEMA.KINEMATIC_TOPOLOGY_STRUCTURE' IN TYPEOF(represented_topology)) AND (represented_joints :=: represented_topology.items) OR ('STEP_MERGED_CAD_SCHEMA.KINEMATIC_TOPOLOGY_DIRECTED_STRUCTURE' IN TYPEOF(represented_topology)) AND (represented_joints :=: get_kinematic_joints_from_oriented_joints(represented_topology.items))) OR ('STEP_MERGED_CAD_SCHEMA.KINEMATIC_TOPOLOGY_NETWORK_STRUCTURE' IN TYPEOF(represented_topology)) AND (represented_joints :=: get_kinematic_joints_from_kinematic_loops(represented_topology.items)); END_ENTITY; -- IN AP242 ENTITY mechanism_state_representation SUBTYPE OF (representation); represented_mechanism : mechanism_representation; SELF\representation.items : SET [1:?] OF pair_value; DERIVE SELF\representation.context_of_items : geometric_representation_context := represented_mechanism.context_of_items; END_ENTITY; -- IN AP203e2/AP242 ENTITY min_and_major_ply_orientation_basis SUBTYPE OF (representation_item_relationship, geometric_representation_item); SELF\representation_item_relationship.related_representation_item : axis2_placement_3d; SELF\representation_item_relationship.relating_representation_item : axis2_placement_3d; DERIVE major_orientation_basis : axis2_placement_3d := SELF\representation_item_relationship.related_representation_item; minor_orientation_basis : axis2_placement_3d := SELF\representation_item_relationship.relating_representation_item; END_ENTITY; -- IN AP214/AP242 ENTITY minimum_function SUBTYPE OF (multiple_arity_function_call); END_ENTITY; -- IN AP214/AP242 ENTITY minus_expression SUBTYPE OF (binary_numeric_expression); END_ENTITY; -- IN AP214/AP242 ENTITY minus_function SUBTYPE OF (unary_function_call); END_ENTITY; -- IN AP214/AP242 ENTITY mod_expression SUBTYPE OF (binary_numeric_expression); END_ENTITY; ENTITY modified_geometric_tolerance SUBTYPE OF (geometric_tolerance); modifier : limit_condition; END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY modified_pattern SUBTYPE OF (shape_aspect); WHERE WR1: SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATING_SHAPE_ASPECT')| ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.REPLICATE_FEATURE', 'STEP_MERGED_CAD_SCHEMA.INSTANCED_FEATURE' ] * TYPEOF(fcr.related_shape_aspect.of_shape.definition)) >= 1) AND (fcr.description = 'base shape'))) = 1; WR2: SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATING_SHAPE_ASPECT')| ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CIRCULAR_PATTERN', 'STEP_MERGED_CAD_SCHEMA.RECTANGULAR_PATTERN' ] * TYPEOF(fcr.related_shape_aspect.of_shape.definition)) = 1) AND (fcr.description = 'base pattern'))) = 1; WR3: SIZEOF(QUERY (sar <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATING_SHAPE_ASPECT')| (SIZEOF(QUERY (msar <* USEDIN(sar.related_shape_aspect, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| ((SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.PATTERN_OFFSET_MEMBERSHIP', 'STEP_MERGED_CAD_SCHEMA.PATTERN_OMIT_MEMBERSHIP' ] * TYPEOF(sar)) = 1) AND (sar.description = 'modified pattern')) AND (sar :<>: msar))) >= 1))) = 0; END_ENTITY; -- IN AP203e2/AP242 ENTITY modified_solid ABSTRACT SUPERTYPE OF (ONEOF(edge_blended_solid, sculptured_solid, shelled_solid, modified_solid_with_placed_configuration)) SUBTYPE OF (solid_model); rationale : text; base_solid : base_solid_select; END_ENTITY; -- IN AP203e2/AP242 ENTITY modified_solid_with_placed_configuration ABSTRACT SUPERTYPE OF (ONEOF(solid_with_depression, solid_with_protrusion, solid_with_shape_element_pattern)) SUBTYPE OF (modified_solid); placing : axis2_placement_3d; END_ENTITY; -- IN AP242 ENTITY modify_element SUBTYPE OF (change_element); END_ENTITY; ENTITY moments_of_inertia_representation SUBTYPE OF (representation); WHERE WR1: (SIZEOF(SELF.items) = 1) AND (SIZEOF(QUERY (i <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.' + 'COMPOUND_REPRESENTATION_ITEM' IN TYPEOF(i)) AND (i.name = 'moments of inertia matrix'))) = 1); WR2: SIZEOF(QUERY (i <* SELF.items| (('STEP_MERGED_CAD_SCHEMA.' + 'COMPOUND_REPRESENTATION_ITEM' IN TYPEOF(i)) AND ('STEP_MERGED_CAD_SCHEMA.' + 'LIST_REPRESENTATION_ITEM' IN TYPEOF(i\compound_representation_item.item_element))) AND value_range_aggregate_rep_item(i\compound_representation_item.item_element))) = 1; END_ENTITY; -- IN AP214 ENTITY motion_link_relationship SUPERTYPE OF (resulting_path) SUBTYPE OF (representation_relationship); SELF\representation_relationship.rep_1 : founded_kinematic_path; SELF\representation_relationship.rep_2 : kinematic_link_representation; related_frame : rigid_placement; DERIVE motion : founded_kinematic_path := SELF\representation_relationship.rep_1; frame_link : kinematic_link_representation := SELF\representation_relationship.rep_2; WHERE wr1: related_frame IN frame_link\representation.items; END_ENTITY; -- IN AP214/AP242 ENTITY mult_expression SUBTYPE OF (multiple_arity_numeric_expression); END_ENTITY; -- DIFF IN AP214 ENTITY multi_language_attribute_assignment SUBTYPE OF (attribute_value_assignment); items : SET [1:?] OF multi_language_attribute_item; DERIVE translation_language : language := language_indication[1]\attribute_classification_assignment.assigned_class; INVERSE language_indication : SET [1:1] OF attribute_language_assignment FOR items; WHERE WR1: SELF\attribute_value_assignment.role.name = 'alternate language'; WR2: SIZEOF(QUERY (ala <* language_indication| (ala\attribute_classification_assignment.attribute_name = 'attribute_value') AND (ala\attribute_classification_assignment.role.name = 'translated'))) = 1; WR3: SELF\attribute_value_assignment.attribute_name <> ''; WR4: SIZEOF(QUERY (ci <* items| (SIZEOF(QUERY (ata <* USEDIN(ci, 'STEP_MERGED_CAD_SCHEMA.MULTI_LANGUAGE_ATTRIBUTE_ASSIGNMENT.ITEMS')| (ata\attribute_value_assignment.attribute_name = SELF\attribute_value_assignment.attribute_name) AND (ata.translation_language :=: translation_language))) > 1))) = 0; WR5: SIZEOF(QUERY (ci <* items| (SIZEOF(QUERY (ata <* USEDIN(ci, 'STEP_MERGED_CAD_SCHEMA.ATTRIBUTE_LANGUAGE_ASSIGNMENT.ITEMS')| ((ata\attribute_classification_assignment.role.name = 'primary') AND (ata\attribute_classification_assignment.attribute_name = SELF\attribute_value_assignment.attribute_name)) AND (ata\attribute_classification_assignment.assigned_class :=: translation_language))) > 0))) = 0; END_ENTITY; -- IN AP242 ENTITY multi_level_reference_designator SUBTYPE OF (assembly_component_usage); location : LIST [1:?] OF UNIQUE next_assembly_usage_occurrence; DERIVE leaf : product_definition_or_reference := SELF\product_definition_relationship.related_product_definition; SELF\product_definition_relationship.related_product_definition : product_definition_or_reference := location[HIINDEX(location)]\product_definition_relationship.related_product_definition; SELF\product_definition_relationship.relating_product_definition : product_definition := location[1]\product_definition_relationship.relating_product_definition; root : product_definition := SELF\product_definition_relationship.relating_product_definition; WHERE WR1: unambiguously_specified_multi_level_reference_designator(location); WR2: SIZEOF(QUERY (cp <* location| NOT EXISTS(cp\assembly_component_usage.reference_designator))) = 0; END_ENTITY; -- DIFF IN AP203e2 ENTITY multiple_arity_boolean_expression ABSTRACT SUPERTYPE OF (ONEOF(and_expression, or_expression)) SUBTYPE OF (boolean_expression, multiple_arity_generic_expression); SELF\multiple_arity_generic_expression.operands : LIST [2:?] OF boolean_expression; END_ENTITY; -- IN AP214/AP242 ENTITY multiple_arity_function_call ABSTRACT SUPERTYPE OF (ONEOF(maximum_function, minimum_function)) SUBTYPE OF (multiple_arity_numeric_expression); END_ENTITY; ENTITY multiple_arity_generic_expression ABSTRACT SUPERTYPE SUBTYPE OF (generic_expression); operands : LIST [2:?] OF generic_expression; END_ENTITY; -- DIFF IN AP203e2 ENTITY multiple_arity_numeric_expression ABSTRACT SUPERTYPE OF (ONEOF(plus_expression, mult_expression, multiple_arity_function_call)) SUBTYPE OF (numeric_expression, multiple_arity_generic_expression); SELF\multiple_arity_generic_expression.operands : LIST [2:?] OF numeric_expression; END_ENTITY; -- IN AP242 ENTITY multiply_defined_cartesian_points SUBTYPE OF (multiply_defined_geometry); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_UPPER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.CARTESIAN_POINT', 'STEP_MERGED_CAD_SCHEMA.CARTESIAN_POINT' ]); WR4: validate_locations_of_extreme_value_type(SELF, []); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY multiply_defined_curves SUBTYPE OF (multiply_defined_geometry); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_UPPER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.CURVE', 'STEP_MERGED_CAD_SCHEMA.CURVE' ]); WR4: validate_locations_of_extreme_value_type(SELF, []); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY multiply_defined_directions SUBTYPE OF (multiply_defined_geometry); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_UPPER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.DIRECTION', 'STEP_MERGED_CAD_SCHEMA.DIRECTION' ]); WR4: validate_locations_of_extreme_value_type(SELF, []); WR5: validate_accuracy_types(SELF, []); END_ENTITY; -- IN AP242 ENTITY multiply_defined_edges SUBTYPE OF (topology_related_to_multiply_defined_geometry); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_UPPER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.EDGE_CURVE', 'STEP_MERGED_CAD_SCHEMA.EDGE_CURVE' ]); WR4: validate_locations_of_extreme_value_type(SELF, []); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY multiply_defined_faces SUBTYPE OF (topology_related_to_multiply_defined_geometry); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_UPPER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.FACE_SURFACE', 'STEP_MERGED_CAD_SCHEMA.FACE_SURFACE' ]); WR4: validate_locations_of_extreme_value_type(SELF, []); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY multiply_defined_geometry ABSTRACT SUPERTYPE OF (ONEOF(multiply_defined_curves, multiply_defined_surfaces, multiply_defined_cartesian_points, multiply_defined_directions, multiply_defined_placements)) SUBTYPE OF (inapt_geometry); END_ENTITY; -- IN AP242 ENTITY multiply_defined_placements SUBTYPE OF (multiply_defined_geometry); assessment_specification_2 : shape_data_quality_assessment_by_numerical_test; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_UPPER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_UPPER_VALUE_LIMIT' IN TYPEOF(assessment_specification_2\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE' IN value_limit_type(assessment_specification_2\shape_data_quality_assessment_by_numerical_test.threshold)); WR3: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PLANE_ANGLE_AND_LENGTH_PAIR'); WR4: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.PLACEMENT', 'STEP_MERGED_CAD_SCHEMA.PLACEMENT' ]); WR5: validate_locations_of_extreme_value_type(SELF, []); WR6: validate_accuracy_types(SELF, []); WR7: SIZEOF(QUERY (sdqr <* bag_to_set(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'DATA_QUALITY_INSPECTION_RESULT.' + 'CRITERION_INSPECTED'))| ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_INSPECTION_RESULT' IN TYPEOF(sdqr)) AND (SIZEOF(QUERY (sdqiir <* bag_to_set(USEDIN(sdqr, 'STEP_MERGED_CAD_SCHEMA.' + 'DATA_QUALITY_INSPECTION_REPORT.' + 'INSPECTION_RESULT'))| ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_INSPECTION_INSTANCE_REPORT' IN TYPEOF(sdqiir)) AND (SIZEOF(QUERY (sdqiri <* sdqiir.inspected_instances| (TYPEOF(sdqiri.inspected_elements[1]) <> TYPEOF(sdqiri.inspected_elements[2])))) = 0))) = 0))) = 0; END_ENTITY; -- IN AP242 ENTITY multiply_defined_solids SUBTYPE OF (inapt_manifold_solid_brep); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_UPPER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.MANIFOLD_SOLID_BREP', 'STEP_MERGED_CAD_SCHEMA.MANIFOLD_SOLID_BREP' ]); WR4: validate_locations_of_extreme_value_type(SELF, []); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY multiply_defined_surfaces SUBTYPE OF (multiply_defined_geometry); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_UPPER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.SURFACE', 'STEP_MERGED_CAD_SCHEMA.SURFACE' ]); WR4: validate_locations_of_extreme_value_type(SELF, []); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY multiply_defined_vertices SUBTYPE OF (topology_related_to_multiply_defined_geometry); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_UPPER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.VERTEX_POINT', 'STEP_MERGED_CAD_SCHEMA.VERTEX_POINT' ]); WR4: validate_locations_of_extreme_value_type(SELF, []); WR5: validate_accuracy_types(SELF, []); END_ENTITY; ENTITY name_assignment ABSTRACT SUPERTYPE; assigned_name : label; DERIVE role : object_role := get_role(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ROLE_ASSOCIATION.ITEM_WITH_ROLE')) <= 1; END_ENTITY; ENTITY name_attribute; attribute_value : label; named_item : name_attribute_select; END_ENTITY; -- DIFF IN AP214 ENTITY named_unit SUPERTYPE OF (ONEOF(si_unit, conversion_based_unit, context_dependent_unit) ANDOR ONEOF(length_unit, mass_unit, time_unit, electric_current_unit, thermodynamic_temperature_unit, amount_of_substance_unit, luminous_flux_unit, luminous_intensity_unit, plane_angle_unit, solid_angle_unit, ratio_unit)); dimensions : dimensional_exponents; END_ENTITY; -- IN AP214 ENTITY named_unit_variable SUBTYPE OF (named_unit, variable_semantics); INVERSE associated_variable_environment : environment FOR semantics; END_ENTITY; -- IN AP242 ENTITY narrow_surface_patch SUBTYPE OF (geometry_with_local_near_degeneracy); width_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.B_SPLINE_SURFACE' ]); WR3: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'B_SPLINE_SURFACE_PATCH' ]); WR4: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY near_point_relationship SUBTYPE OF (representation_item_relationship); SELF\representation_item_relationship.related_representation_item : point; SELF\representation_item_relationship.relating_representation_item : curve_or_surface_constraint_element; END_ENTITY; -- IN AP242 ENTITY nearly_degenerate_geometry ABSTRACT SUPERTYPE OF (ONEOF(small_area_surface, short_length_curve, entirely_narrow_surface)) SUBTYPE OF (inapt_geometry); END_ENTITY; -- IN AP242 ENTITY nearly_degenerate_surface_boundary SUBTYPE OF (geometry_with_local_near_degeneracy); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_VALUE_RANGE' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'B_SPLINE_OR_RECTANGULAR_COMPOSITE_SURFACE_SELECT' ]); WR4: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'BOUNDARY_CURVE_OF_B_SPLINE_OR_RECTANGULAR_COMPOSITE_SURFACE' ]); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY nearly_degenerate_surface_patch SUBTYPE OF (geometry_with_local_near_degeneracy); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_VALUE_RANGE' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.B_SPLINE_SURFACE' ]); WR4: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'B_SPLINE_SURFACE_PATCH' ]); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY neutral_sketch_representation SUBTYPE OF (shape_representation); neutral_sketch_semantics : curves_or_area; SELF\representation.items : SET [1:?] OF sketch_element_select; WHERE WR1: SIZEOF(QUERY (q <* items| NOT (('STEP_MERGED_CAD_SCHEMA.GEOMETRIC_REPRESENTATION_ITEM' IN TYPEOF(q)) AND (q\geometric_representation_item.dim = 3)))) = 0; END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY next_assembly_usage_occurrence SUBTYPE OF (assembly_component_usage); UNIQUE UR1 : SELF\assembly_component_usage.reference_designator, SELF\product_definition_relationship.relating_product_definition; END_ENTITY; -- IN AP214/AP242 ENTITY ngon_closed_profile SUBTYPE OF (shape_aspect); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_DEFINITION' IN TYPEOF(SELF.of_shape.definition); WR2: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1))) = 0; WR3: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT ((SIZEOF(impl_rep.used_representation.items) >= 3) AND (SIZEOF(impl_rep.used_representation.items) <= 4)))) = 0))) = 0; WR4: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (srwp_i <* pdr.used_representation.items| ((((srwp_i.name = 'orientation') OR (srwp_i.name = 'number of sides')) OR (srwp_i.name = 'circumscribed diameter')) OR (srwp_i.name = 'corner radius')) OR (srwp_i.name = 'diameter across flats'))) = SIZEOF(pdr.used_representation.items)))) = 1))) = 1; WR5: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.PLACEMENT' IN TYPEOF(it)) AND (it.name = 'orientation'))) = 1))) = 0))) = 0; WR6: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND ('STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE' IN TYPEOF(it\measure_with_unit.value_component))) AND (it.name = 'number of sides'))) = 1))) = 0))) = 0; WR7: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name IN [ 'circumscribed diameter', 'diameter across flats' ]))) = 1))) = 0))) = 0; WR8: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'corner radius'))) <= 1))) = 0))) = 0; END_ENTITY; -- IN AP242 ENTITY non_agreed_accuracy_parameter_usage SUBTYPE OF (externally_conditioned_data_quality_criterion); WHERE WR1: validate_ecdq_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.GLOBAL_UNCERTAINTY_ASSIGNED_CONTEXT' ]); END_ENTITY; -- IN AP242 ENTITY non_agreed_scale_usage SUBTYPE OF (externally_conditioned_data_quality_criterion); WHERE WR1: validate_ecdq_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.CARTESIAN_TRANSFORMATION_OPERATOR_3D' ]); END_ENTITY; -- IN AP242 ENTITY non_agreed_unit_usage SUBTYPE OF (externally_conditioned_data_quality_criterion); WHERE WR1: validate_ecdq_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.GLOBAL_UNIT_ASSIGNED_CONTEXT' ]); END_ENTITY; -- IN AP242 ENTITY non_manifold_at_edge SUBTYPE OF (inapt_topology); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.CONNECTED_FACE_SET' ]); WR3: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.EDGE_CURVE' ]); WR4: validate_accuracy_types(SELF, []); END_ENTITY; -- IN AP242 ENTITY non_manifold_at_vertex SUBTYPE OF (inapt_topology); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.CONNECTED_FACE_SET' ]); WR3: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.VERTEX_POINT' ]); WR4: validate_accuracy_types(SELF, []); END_ENTITY; ENTITY non_manifold_surface_shape_representation SUBTYPE OF (shape_representation); WHERE WR1: SIZEOF(QUERY (it <* SELF.items| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.FACE_BASED_SURFACE_MODEL', 'STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM', 'STEP_MERGED_CAD_SCHEMA.AXIS2_PLACEMENT_3D' ] * TYPEOF(it)) = 1))) = 0; WR2: SIZEOF(QUERY (it <* SELF.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.FACE_BASED_SURFACE_MODEL', 'STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' ] * TYPEOF(it)) = 1))) > 0; WR3: SIZEOF(QUERY (mi <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(it)))| NOT (('STEP_MERGED_CAD_SCHEMA.' + 'NON_MANIFOLD_SURFACE_SHAPE_REPRESENTATION' IN TYPEOF(mi\mapped_item.mapping_source.mapped_representation)) AND (SIZEOF(QUERY (mr_it <* mi\mapped_item.mapping_source.mapped_representation.items| ('STEP_MERGED_CAD_SCHEMA.FACE_BASED_SURFACE_MODEL' IN TYPEOF(mr_it)))) > 0)))) = 0; WR4: SIZEOF(QUERY (fbsm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.FACE_BASED_SURFACE_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (cfs <* fbsm\face_based_surface_model.fbsm_faces| NOT (SIZEOF(QUERY (fa <* cfs.cfs_faces| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.FACE_SURFACE', 'STEP_MERGED_CAD_SCHEMA.ORIENTED_FACE' ] * TYPEOF(fa)) = 1))) = 0))) = 0))) = 0; WR5: SIZEOF(QUERY (fbsm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.FACE_BASED_SURFACE_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (cfs <* fbsm\face_based_surface_model.fbsm_faces| NOT (SIZEOF(QUERY (f_sf <* QUERY (fa <* cfs.cfs_faces| ('STEP_MERGED_CAD_SCHEMA.FACE_SURFACE' IN TYPEOF(fa)))| NOT (('STEP_MERGED_CAD_SCHEMA.ADVANCED_FACE' IN TYPEOF(f_sf)) OR nmsf_surface_check(f_sf\face_surface.face_geometry)))) = 0))) = 0))) = 0; WR6: SIZEOF(QUERY (fbsm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.FACE_BASED_SURFACE_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (cfs <* fbsm\face_based_surface_model.fbsm_faces| NOT (SIZEOF(QUERY (o_fa <* QUERY (fa <* cfs.cfs_faces| ('STEP_MERGED_CAD_SCHEMA.ORIENTED_FACE' IN TYPEOF(fa)))| NOT (('STEP_MERGED_CAD_SCHEMA.ADVANCED_FACE' IN TYPEOF(o_fa\oriented_face.face_element)) OR nmsf_surface_check(o_fa\oriented_face.face_element\face_surface.face_geometry)))) = 0))) = 0))) = 0; WR7: SIZEOF(QUERY (fbsm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.FACE_BASED_SURFACE_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (cfs <* fbsm\face_based_surface_model.fbsm_faces| NOT (SIZEOF(QUERY (fa <* cfs.cfs_faces| NOT (('STEP_MERGED_CAD_SCHEMA.ADVANCED_FACE' IN TYPEOF(fa)) OR (SIZEOF(QUERY (bnds <* fa.bounds| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.EDGE_LOOP', 'STEP_MERGED_CAD_SCHEMA.VERTEX_LOOP' ] * TYPEOF(bnds.bound)) = 1))) = 0)))) = 0))) = 0))) = 0; WR8: SIZEOF(QUERY (fbsm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.FACE_BASED_SURFACE_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (cfs <* fbsm\face_based_surface_model.fbsm_faces| NOT (SIZEOF(QUERY (fa <* cfs.cfs_faces| NOT (('STEP_MERGED_CAD_SCHEMA.ADVANCED_FACE' IN TYPEOF(fa)) OR (SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* fa.bounds| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(bnds.bound)))| NOT (SIZEOF(QUERY (oe <* elp_fbnds\path.edge_list| NOT ('STEP_MERGED_CAD_SCHEMA.EDGE_CURVE' IN TYPEOF(oe.edge_element)))) = 0))) = 0)))) = 0))) = 0))) = 0; WR9: SIZEOF(QUERY (fbsm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.FACE_BASED_SURFACE_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (cfs <* fbsm\face_based_surface_model.fbsm_faces| NOT (SIZEOF(QUERY (fa <* cfs.cfs_faces| NOT (('STEP_MERGED_CAD_SCHEMA.ADVANCED_FACE' IN TYPEOF(fa)) OR (SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* fa.bounds| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(bnds.bound)))| NOT (SIZEOF(QUERY (oe_cv <* QUERY (oe <* elp_fbnds\path.edge_list| ('STEP_MERGED_CAD_SCHEMA.EDGE_CURVE' IN TYPEOF(oe.edge_element)))| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.B_SPLINE_CURVE', 'STEP_MERGED_CAD_SCHEMA.CONIC', 'STEP_MERGED_CAD_SCHEMA.CURVE_REPLICA', 'STEP_MERGED_CAD_SCHEMA.LINE', 'STEP_MERGED_CAD_SCHEMA.OFFSET_CURVE_3D', 'STEP_MERGED_CAD_SCHEMA.PCURVE', 'STEP_MERGED_CAD_SCHEMA.POLYLINE', 'STEP_MERGED_CAD_SCHEMA.SURFACE_CURVE' ] * TYPEOF(oe_cv.edge_element\edge_curve.edge_geometry)) = 1))) = 0))) = 0)))) = 0))) = 0))) = 0; WR10: SIZEOF(QUERY (fbsm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.FACE_BASED_SURFACE_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (cfs <* fbsm\face_based_surface_model.fbsm_faces| NOT (SIZEOF(QUERY (fa <* cfs.cfs_faces| NOT (('STEP_MERGED_CAD_SCHEMA.ADVANCED_FACE' IN TYPEOF(fa)) OR (SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* fa.bounds| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(bnds.bound)))| NOT (SIZEOF(QUERY (oe <* elp_fbnds\path.edge_list| NOT nmsf_curve_check(oe.edge_element\edge_curve.edge_geometry))) = 0))) = 0)))) = 0))) = 0))) = 0; WR11: SIZEOF(QUERY (fbsm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.FACE_BASED_SURFACE_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (cfs <* fbsm\face_based_surface_model.fbsm_faces| NOT (SIZEOF(QUERY (fa <* cfs.cfs_faces| NOT (('STEP_MERGED_CAD_SCHEMA.ADVANCED_FACE' IN TYPEOF(fa)) OR (SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* fa.bounds| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(bnds.bound)))| NOT (SIZEOF(QUERY (oe <* elp_fbnds\path.edge_list| NOT (('STEP_MERGED_CAD_SCHEMA.VERTEX_POINT' IN TYPEOF(oe.edge_element.edge_start)) AND ('STEP_MERGED_CAD_SCHEMA.VERTEX_POINT' IN TYPEOF(oe.edge_element.edge_end))))) = 0))) = 0)))) = 0))) = 0))) = 0; WR12: SIZEOF(QUERY (fbsm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.FACE_BASED_SURFACE_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (cfs <* fbsm\face_based_surface_model.fbsm_faces| NOT (SIZEOF(QUERY (fa <* cfs.cfs_faces| NOT (('STEP_MERGED_CAD_SCHEMA.ADVANCED_FACE' IN TYPEOF(fa)) OR (SIZEOF(QUERY (elp_fbnds <* QUERY (bnds <* fa.bounds| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(bnds.bound)))| NOT (SIZEOF(QUERY (oe <* elp_fbnds\path.edge_list| NOT ((SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CARTESIAN_POINT', 'STEP_MERGED_CAD_SCHEMA.DEGENERATE_PCURVE', 'STEP_MERGED_CAD_SCHEMA.POINT_ON_CURVE', 'STEP_MERGED_CAD_SCHEMA.POINT_ON_SURFACE' ] * TYPEOF(oe.edge_element.edge_start\vertex_point.vertex_geometry)) = 1) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CARTESIAN_POINT', 'STEP_MERGED_CAD_SCHEMA.DEGENERATE_PCURVE', 'STEP_MERGED_CAD_SCHEMA.POINT_ON_CURVE', 'STEP_MERGED_CAD_SCHEMA.POINT_ON_SURFACE' ] * TYPEOF(oe.edge_element.edge_end\vertex_point.vertex_geometry)) = 1)))) = 0))) = 0)))) = 0))) = 0))) = 0; WR13: SIZEOF(QUERY (fbsm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.FACE_BASED_SURFACE_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (cfs <* fbsm\face_based_surface_model.fbsm_faces| NOT (SIZEOF(QUERY (fa <* cfs.cfs_faces| NOT (('STEP_MERGED_CAD_SCHEMA.ADVANCED_FACE' IN TYPEOF(fa)) OR (SIZEOF(QUERY (vlp_fbnds <* QUERY (bnds <* fa.bounds| ('STEP_MERGED_CAD_SCHEMA.VERTEX_LOOP' IN TYPEOF(bnds.bound)))| NOT ('STEP_MERGED_CAD_SCHEMA.VERTEX_POINT' IN TYPEOF(vlp_fbnds\vertex_loop.loop_vertex)))) = 0)))) = 0))) = 0))) = 0; WR14: SIZEOF(QUERY (fbsm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.FACE_BASED_SURFACE_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (cfs <* fbsm\face_based_surface_model.fbsm_faces| NOT (SIZEOF(QUERY (fa <* cfs.cfs_faces| NOT (('STEP_MERGED_CAD_SCHEMA.ADVANCED_FACE' IN TYPEOF(fa)) OR (SIZEOF(QUERY (vlp_fbnds <* QUERY (bnds <* fa.bounds| ('STEP_MERGED_CAD_SCHEMA.VERTEX_LOOP' IN TYPEOF(bnds.bound)))| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CARTESIAN_POINT', 'STEP_MERGED_CAD_SCHEMA.DEGENERATE_PCURVE', 'STEP_MERGED_CAD_SCHEMA.POINT_ON_CURVE', 'STEP_MERGED_CAD_SCHEMA.POINT_ON_SURFACE' ] * TYPEOF(vlp_fbnds\vertex_loop.loop_vertex\vertex_point.vertex_geometry)) = 1))) = 0)))) = 0))) = 0))) = 0; END_ENTITY; -- IN AP242 ENTITY non_referenced_coordinate_system SUBTYPE OF (externally_conditioned_data_quality_criterion); WHERE WR1: validate_ecdq_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.AXIS2_PLACEMENT_3D' ]); END_ENTITY; -- IN AP242 ENTITY non_smooth_geometry_transition_across_edge ABSTRACT SUPERTYPE OF (ONEOF(g1_discontinuity_between_adjacent_faces, g2_discontinuity_between_adjacent_faces)) SUBTYPE OF (inapt_topology_and_geometry_relationship); END_ENTITY; -- IN AP242 ENTITY non_uniform_zone_definition SUBTYPE OF (tolerance_zone_definition); END_ENTITY; -- IN AP214/AP242 ENTITY not_expression SUBTYPE OF (unary_boolean_expression); SELF\unary_generic_expression.operand : boolean_expression; END_ENTITY; -- IN AP203e2/AP242 ENTITY null_representation_item SUBTYPE OF (representation_item); END_ENTITY; -- IN AP214/AP242 ENTITY numeric_defined_function ABSTRACT SUPERTYPE OF (ONEOF(integer_defined_function, real_defined_function)) SUBTYPE OF (numeric_expression, defined_function); END_ENTITY; -- CASE DIFF IN AP214 -- DIFF IN AP203e2 ENTITY numeric_expression ABSTRACT SUPERTYPE OF (ONEOF(simple_numeric_expression, unary_numeric_expression, binary_numeric_expression, multiple_arity_numeric_expression, length_function, value_function, numeric_defined_function)) SUBTYPE OF (expression); DERIVE is_int : BOOLEAN := is_int_expr(SELF); sql_mappable : BOOLEAN := is_SQL_mappable(SELF); END_ENTITY; -- IN AP214/AP242 ENTITY numeric_variable SUPERTYPE OF (ONEOF(int_numeric_variable, real_numeric_variable)) SUBTYPE OF (simple_numeric_expression, variable); WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.INT_NUMERIC_VARIABLE' IN TYPEOF(SELF)) OR ('STEP_MERGED_CAD_SCHEMA.REAL_NUMERIC_VARIABLE' IN TYPEOF(SELF)); END_ENTITY; ENTITY object_role; name : label; description : OPTIONAL text; END_ENTITY; -- IN AP214/AP242 ENTITY odd_function SUBTYPE OF (unary_boolean_expression); SELF\unary_generic_expression.operand : numeric_expression; WHERE WR1: is_int_expr(operand); END_ENTITY; ENTITY offset_curve_2d SUBTYPE OF (curve); basis_curve : curve; distance : length_measure; self_intersect : LOGICAL; WHERE WR1: basis_curve.dim = 2; END_ENTITY; ENTITY offset_curve_3d SUBTYPE OF (curve); basis_curve : curve; distance : length_measure; self_intersect : LOGICAL; ref_direction : direction; WHERE WR1: (basis_curve.dim = 3) AND (ref_direction.dim = 3); END_ENTITY; ENTITY offset_surface SUBTYPE OF (surface); basis_surface : surface; distance : length_measure; self_intersect : LOGICAL; END_ENTITY; ENTITY one_direction_repeat_factor SUBTYPE OF (geometric_representation_item); repeat_factor : vector; END_ENTITY; -- IN AP242 ENTITY open_closed_shell SUBTYPE OF (erroneous_topology); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.CLOSED_SHELL' ]); WR3: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.EDGE_CURVE' ]); WR4: validate_accuracy_types(SELF, []); END_ENTITY; -- IN AP242 ENTITY open_edge_loop SUBTYPE OF (erroneous_topology); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' ]); WR3: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.ORIENTED_EDGE' ]); WR4: validate_accuracy_types(SELF, []); END_ENTITY; -- IN AP214/AP242 ENTITY open_path_profile SUBTYPE OF (shape_aspect); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_DEFINITION' IN TYPEOF(SELF.of_shape.definition); WR2: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1))) = 0; WR3: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) = 1))) = 0))) = 0; WR4: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.PLACEMENT' IN TYPEOF(it)) AND (it.name = 'orientation'))) = 1))) = 0))) = 0; WR5: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PATH_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)))) = 1))) = 0; WR6: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PLANAR_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'profile limit'))) <= 1))) = 0; END_ENTITY; ENTITY open_shell SUBTYPE OF (connected_face_set); END_ENTITY; -- IN AP214/AP242 ENTITY or_expression SUBTYPE OF (multiple_arity_boolean_expression); END_ENTITY; -- IN AP203e2/AP242 ENTITY ordinal_date SUBTYPE OF (date); day_component : day_in_year_number; WHERE WR1: NOT leap_year(SELF.year_component) AND ((1 <= day_component) AND (day_component <= 365)) OR leap_year(SELF.year_component) AND ((1 <= day_component) AND (day_component <= 366)); END_ENTITY; ENTITY ordinate_dimension SUBTYPE OF (projection_directed_callout); END_ENTITY; ENTITY organization; id : OPTIONAL identifier; name : label; description : OPTIONAL text; END_ENTITY; ENTITY organization_assignment ABSTRACT SUPERTYPE; assigned_organization : organization; role : organization_role; END_ENTITY; ENTITY organization_relationship; name : label; description : OPTIONAL text; relating_organization : organization; related_organization : organization; END_ENTITY; ENTITY organization_role; name : label; DERIVE description : text := get_description_value(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'DESCRIPTION_ATTRIBUTE.DESCRIBED_ITEM')) <= 1; END_ENTITY; ENTITY organizational_address SUBTYPE OF (address); organizations : SET [1:?] OF organization; description : OPTIONAL text; END_ENTITY; ENTITY organizational_project; name : label; description : OPTIONAL text; responsible_organizations : SET [1:?] OF organization; DERIVE id : identifier := get_id_value(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ID_ATTRIBUTE.IDENTIFIED_ITEM')) <= 1; END_ENTITY; ENTITY organizational_project_assignment ABSTRACT SUPERTYPE; assigned_organizational_project : organizational_project; role : organizational_project_role; END_ENTITY; ENTITY organizational_project_relationship; name : label; description : OPTIONAL text; relating_organizational_project : organizational_project; related_organizational_project : organizational_project; END_ENTITY; ENTITY organizational_project_role; name : label; description : OPTIONAL text; END_ENTITY; ENTITY oriented_closed_shell SUBTYPE OF (closed_shell); closed_shell_element : closed_shell; orientation : BOOLEAN; DERIVE SELF\connected_face_set.cfs_faces : SET [1:?] OF face := conditional_reverse(SELF.orientation, SELF.closed_shell_element.cfs_faces); WHERE WR1: NOT ('STEP_MERGED_CAD_SCHEMA.ORIENTED_CLOSED_SHELL' IN TYPEOF(SELF.closed_shell_element)); END_ENTITY; -- DIFF IN AP214 ENTITY oriented_edge SUBTYPE OF (edge); edge_element : edge; orientation : BOOLEAN; DERIVE SELF\edge.edge_end : vertex := boolean_choose(SELF.orientation, SELF.edge_element.edge_end, SELF.edge_element.edge_start); SELF\edge.edge_start : vertex := boolean_choose(SELF.orientation, SELF.edge_element.edge_start, SELF.edge_element.edge_end); WHERE WR1: NOT ('STEP_MERGED_CAD_SCHEMA.ORIENTED_EDGE' IN TYPEOF(SELF.edge_element)); END_ENTITY; ENTITY oriented_face SUBTYPE OF (face); face_element : face; orientation : BOOLEAN; DERIVE SELF\face.bounds : SET [1:?] OF face_bound := conditional_reverse(SELF.orientation, SELF.face_element.bounds); WHERE WR1: NOT ('STEP_MERGED_CAD_SCHEMA.ORIENTED_FACE' IN TYPEOF(SELF.face_element)); END_ENTITY; -- IN AP242 ENTITY oriented_joint SUBTYPE OF (oriented_edge); SELF\oriented_edge.edge_element : kinematic_joint; END_ENTITY; ENTITY oriented_open_shell SUBTYPE OF (open_shell); open_shell_element : open_shell; orientation : BOOLEAN; DERIVE SELF\connected_face_set.cfs_faces : SET [1:?] OF face := conditional_reverse(SELF.orientation, SELF.open_shell_element.cfs_faces); WHERE WR1: NOT ('STEP_MERGED_CAD_SCHEMA.ORIENTED_OPEN_SHELL' IN TYPEOF(SELF.open_shell_element)); END_ENTITY; ENTITY oriented_path SUBTYPE OF (path); path_element : path; orientation : BOOLEAN; DERIVE SELF\path.edge_list : LIST [1:?] OF UNIQUE oriented_edge := conditional_reverse(SELF.orientation, SELF.path_element.edge_list); WHERE WR1: NOT ('STEP_MERGED_CAD_SCHEMA.ORIENTED_PATH' IN TYPEOF(SELF.path_element)); END_ENTITY; ENTITY oriented_surface SUBTYPE OF (surface); orientation : BOOLEAN; END_ENTITY; ENTITY outer_boundary_curve SUBTYPE OF (boundary_curve); END_ENTITY; -- IN AP242 ENTITY outer_round SUBTYPE OF (feature_definition); WHERE WR1: NOT (SELF\characterized_object.description = 'outer diameter') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(pdr.used_representation.items) = 3))) = 1))) = 1); WR2: NOT (SELF\characterized_object.description = 'outer diameter to shoulder') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND ((2 <= SIZEOF(pdr.used_representation.items)) AND (SIZEOF(pdr.used_representation.items) <= 3)))) = 1))) = 1); WR3: SELF\characterized_object.description IN [ 'outer diameter', 'outer diameter to shoulder' ]; WR4: NOT (SELF\characterized_object.description = 'outer diameter') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'length'))) = 1))) = 0))) = 0); WR5: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'diameter'))) = 1))) = 0))) = 0; WR6: NOT (SELF\characterized_object.description = 'outer diameter to shoulder') OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'v-shape boundary occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'profile usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.VEE_PROFILE' IN TYPEOF(sdr.relating_shape_aspect)) AND (sdr.relating_shape_aspect.description = 'v-shape'))) = 1))) = 1))) = 0); WR7: NOT (SELF\characterized_object.description = 'outer diameter') OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'reduced size occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'taper usage') AND ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| (('STEP_MERGED_CAD_SCHEMA.TAPER' IN TYPEOF(sdr.relating_shape_aspect)) AND ('STEP_MERGED_CAD_SCHEMA.OUTER_ROUND' IN TYPEOF(sdr.related_shape_aspect.of_shape.definition))) AND (sdr.name = 'reduced size'))) = 1))) <= 1))) = 0); WR8: NOT (SELF\characterized_object.description = 'outer diameter to shoulder') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'length'))) <= 1))) = 0))) = 0); WR9: NOT (SELF\characterized_object.description = 'outer diameter to shoulder') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'feature length'))) <= 1))) = 0))) = 0); END_ENTITY; -- IN AP242 ENTITY outside_profile SUBTYPE OF (feature_definition); WHERE WR1: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(pdr.used_representation.items) = 1))) = 1))) = 1; WR2: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description IN [ 'boundary occurrence', 'non-planar boundary occurrence', 'partial circular boundary occurrence', 'closed circular boundary occurrence', 'open rectangular boundary occurrence', 'closed rectangular boundary occurrence' ]))) = 1))) = 0; WR3: NOT (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'boundary occurrence'))) = 1))) = 0) OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'profile usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CIRCULAR_CLOSED_PROFILE', 'STEP_MERGED_CAD_SCHEMA.NGON_CLOSED_PROFILE', 'STEP_MERGED_CAD_SCHEMA.RECTANGULAR_CLOSED_PROFILE', 'STEP_MERGED_CAD_SCHEMA.CLOSED_PATH_PROFILE', 'STEP_MERGED_CAD_SCHEMA.SQUARE_U_PROFILE', 'STEP_MERGED_CAD_SCHEMA.PARTIAL_CIRCULAR_PROFILE', 'STEP_MERGED_CAD_SCHEMA.ROUNDED_U_PROFILE', 'STEP_MERGED_CAD_SCHEMA.LINEAR_PROFILE', 'STEP_MERGED_CAD_SCHEMA.VEE_PROFILE', 'STEP_MERGED_CAD_SCHEMA.TEE_PROFILE', 'STEP_MERGED_CAD_SCHEMA.OPEN_PATH_PROFILE' ] * TYPEOF(sdr.relating_shape_aspect)) = 1) AND (sdr.relating_shape_aspect.description = 'outside boundary'))) = 1))) = 1))) = 0); WR4: NOT (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description IN [ 'complex boundary occurrence', 'partial circular boundary occurrence', 'closed circular boundary occurrence', 'open rectangular boundary occurrence', 'closed rectangular boundary occurrence' ]))) = 1))) = 0) OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| NOT (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'profile floor usage') AND ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.PROFILE_FLOOR' IN TYPEOF(sdr.relating_shape_aspect)) AND ('STEP_MERGED_CAD_SCHEMA.OUTSIDE_PROFILE' IN TYPEOF(sdr.related_shape_aspect.of_shape.definition)))) = 1))) = 0))) = 0); WR5: NOT (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description IN [ 'outside boundary', 'complex boundary occurrence', 'partial circular boundary occurrence', 'closed circular boundary occurrence', 'open rectangular boundary occurrence', 'closed rectangular boundary occurrence' ]))) = 1))) = 0) OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'path feature component usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ((SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.PATH_FEATURE_COMPONENT' ] * TYPEOF(sdr.relating_shape_aspect)) = 1) AND (sdr.name = 'profile swept shape')) AND (sdr.relating_shape_aspect.description = 'linear'))) = 1))) = 1))) = 0); WR6: NOT (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'complex boundary occurrence'))) = 1))) = 0) OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'profile usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CIRCULAR_CLOSED_PROFILE', 'STEP_MERGED_CAD_SCHEMA.NGON_CLOSED_PROFILE', 'STEP_MERGED_CAD_SCHEMA.RECTANGULAR_CLOSED_PROFILE', 'STEP_MERGED_CAD_SCHEMA.CLOSED_PATH_PROFILE', 'STEP_MERGED_CAD_SCHEMA.SQUARE_U_PROFILE', 'STEP_MERGED_CAD_SCHEMA.PARTIAL_CIRCULAR_PROFILE', 'STEP_MERGED_CAD_SCHEMA.ROUNDED_U_PROFILE', 'STEP_MERGED_CAD_SCHEMA.VEE_PROFILE', 'STEP_MERGED_CAD_SCHEMA.TEE_PROFILE', 'STEP_MERGED_CAD_SCHEMA.LINEAR_PROFILE', 'STEP_MERGED_CAD_SCHEMA.OPEN_PATH_PROFILE' ] * TYPEOF(sdr.relating_shape_aspect)) = 1))) = 1))) = 1))) = 0); WR7: NOT (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'partial circular boundary occurrence'))) = 1))) = 0) OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'profile usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.PARTIAL_CIRCULAR_PROFILE' IN TYPEOF(sdr.relating_shape_aspect)))) = 1))) = 1))) = 0); WR8: NOT (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'closed circular boundary occurrence'))) = 1))) = 0) OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'profile usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.CIRCULAR_CLOSED_PROFILE' IN TYPEOF(sdr.relating_shape_aspect)))) = 1))) = 1))) = 0); WR9: NOT (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'open rectangular boundary occurrence'))) = 1))) = 0) OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'profile usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.SQUARE_U_PROFILE' IN TYPEOF(sdr.relating_shape_aspect)))) = 1))) = 1))) = 0); WR10: NOT (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'closed rectangular boundary occurrence'))) = 1))) = 0) OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'profile usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.RECTANGULAR_CLOSED_PROFILE' IN TYPEOF(sdr.relating_shape_aspect)))) = 1))) = 1))) = 0); WR11: (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description IN [ 'boundary occurrence', 'complex boundary occurrence', 'partial circular boundary occurrence', 'closed circular boundary occurrence', 'open rectangular boundary occurrence', 'closed rectangular boundary occurrence' ]))) = 1))) = 0) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.DIRECTION_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'removal direction'))) = 1))) = 0); WR12: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.PLANAR_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'maximum feature limit'))) >= 0; END_ENTITY; ENTITY over_riding_styled_item SUBTYPE OF (styled_item); over_ridden_style : styled_item; END_ENTITY; -- IN AP242 ENTITY over_used_vertex SUBTYPE OF (inapt_topology); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.VERTEX_POINT' ]); WR4: validate_locations_of_extreme_value_type(SELF, []); WR5: validate_accuracy_types(SELF, []); END_ENTITY; -- IN AP242 ENTITY overcomplex_geometry ABSTRACT SUPERTYPE OF (ONEOF(excessively_high_degree_curve, excessively_high_degree_surface, surface_with_excessive_patches_in_one_direction, curve_with_excessive_segments, high_degree_linear_curve, high_degree_planar_surface, high_degree_conic, high_degree_axi_symmetric_surface)) SUBTYPE OF (inapt_geometry); END_ENTITY; -- IN AP242 ENTITY overcomplex_topology_and_geometry_relationship ABSTRACT SUPERTYPE OF (ONEOF(unused_patches, edge_with_excessive_segments, face_surface_with_excessive_patches_in_one_direction)) SUBTYPE OF (inapt_topology_and_geometry_relationship); END_ENTITY; -- IN AP242 ENTITY overlapping_geometry ABSTRACT SUPERTYPE OF (ONEOF(partly_overlapping_curves, partly_overlapping_surfaces)) SUBTYPE OF (inapt_geometry); END_ENTITY; ENTITY package_product_concept_feature SUBTYPE OF (product_concept_feature); WHERE WR1: NOT ('STEP_MERGED_CAD_SCHEMA.' + 'CONDITIONAL_CONCEPT_FEATURE' IN TYPEOF(SELF)); WR2: SIZEOF(QUERY (cfr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'CONCEPT_FEATURE_RELATIONSHIP.' + 'RELATING_PRODUCT_CONCEPT_FEATURE')| ('STEP_MERGED_CAD_SCHEMA.' + 'CONCEPT_FEATURE_RELATIONSHIP_WITH_CONDITION' IN TYPEOF(cfr)) AND (SIZEOF(QUERY (ipcf <* USEDIN(cfr, 'STEP_MERGED_CAD_SCHEMA.' + 'CONDITIONAL_CONCEPT_FEATURE.' + 'CONDITION')| ('STEP_MERGED_CAD_SCHEMA.' + 'INCLUSION_PRODUCT_CONCEPT_FEATURE' IN TYPEOF(ipcf)))) = 1))) > 0; END_ENTITY; -- IN AP214 ENTITY pair_actuator; actuated_pair : kinematic_pair; name : label; UNIQUE ur1 : actuated_pair; END_ENTITY; -- IN AP242 ENTITY pair_representation_relationship SUBTYPE OF (geometric_representation_item, representation_relationship_with_transformation); SELF\representation_relationship.rep_1 : kinematic_link_representation; SELF\representation_relationship.rep_2 : kinematic_link_representation; SELF\representation_relationship_with_transformation.transformation_operator : kinematic_pair; WHERE WR1: transformation_operator\item_defined_transformation.transform_item_1 IN rep_1.items; WR2: transformation_operator\item_defined_transformation.transform_item_2 IN rep_2.items; WR3: rep_1\kinematic_link_representation.represented_link = transformation_operator\kinematic_pair.joint.edge_start; WR4: rep_2\kinematic_link_representation.represented_link = transformation_operator\kinematic_pair.joint.edge_end; END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY pair_value ABSTRACT SUPERTYPE OF (ONEOF(sliding_surface_pair_value, rolling_surface_pair_value, revolute_pair_value, prismatic_pair_value, screw_pair_value, cylindrical_pair_value, spherical_pair_value, sliding_curve_pair_value, rolling_curve_pair_value, gear_pair_value, rack_and_pinion_pair_value, universal_pair_value, planar_pair_value, unconstrained_pair_value, point_on_surface_pair_value, point_on_planar_curve_pair_value, low_order_kinematic_pair_value)) SUBTYPE OF (geometric_representation_item); applies_to_pair : kinematic_pair; END_ENTITY; ENTITY parabola SUBTYPE OF (conic); focal_dist : length_measure; WHERE WR1: focal_dist <> 0.0; END_ENTITY; -- IN AP242 ENTITY parallel_assembly_constraint SUBTYPE OF (binary_assembly_constraint, parallel_geometric_constraint); END_ENTITY; -- IN AP242 ENTITY parallel_assembly_constraint_with_dimension SUBTYPE OF (parallel_assembly_constraint, pgc_with_dimension); END_ENTITY; -- IN AP242 ENTITY parallel_composed_function SUBTYPE OF (maths_function, multiple_arity_generic_expression); source_of_domain : maths_space_or_function; prep_functions : LIST [1:?] OF maths_function; final_function : maths_function_select; DERIVE SELF\multiple_arity_generic_expression.operands : LIST [2:?] OF generic_expression := convert_to_operands_prcmfn(source_of_domain, prep_functions, final_function); WHERE WR1: no_cyclic_domain_reference(source_of_domain, [ SELF ]); WR2: expression_is_constant(domain_from(source_of_domain)); WR3: parallel_composed_function_domain_check(domain_from(source_of_domain), prep_functions); WR4: parallel_composed_function_composability_check(prep_functions, final_function); END_ENTITY; -- IN AP242 ENTITY parallel_geometric_constraint SUBTYPE OF (explicit_geometric_constraint); SELF\explicit_constraint.constrained_elements : SET [1:?] OF linear_geometry_constraint_element; SELF\explicit_constraint.reference_elements : SET [0:1] OF linear_geometry_constraint_element; END_ENTITY; ENTITY parallel_offset SUBTYPE OF (derived_shape_aspect); offset : measure_with_unit; WHERE WR1: SIZEOF(SELF\derived_shape_aspect.deriving_relationships) = 1; END_ENTITY; -- IN AP242 ENTITY parallel_offset_geometric_constraint SUBTYPE OF (explicit_geometric_constraint); offset_type : parallel_offset_type; SELF\explicit_constraint.constrained_elements : SET [1:?] OF curve_or_surface_constraint_element; SELF\explicit_constraint.reference_elements : SET [0:1] OF curve_or_surface_constraint_element; WHERE WR1: NOT (((offset_type = curve_2d_offset) OR (offset_type = curve_3d_offset)) AND (SIZEOF(QUERY (q <* SELF\explicit_constraint.constrained_elements + SELF\explicit_constraint.reference_elements| ('STEP_MERGED_CAD_SCHEMA.SURFACE' IN TYPEOF(q)))) > 0)); WR2: NOT ((offset_type = surface_offset) AND (SIZEOF(QUERY (q <* SELF\explicit_constraint.constrained_elements + SELF\explicit_constraint.reference_elements| ('STEP_MERGED_CAD_SCHEMA.CURVE' IN TYPEOF(q)))) > 0)); END_ENTITY; ENTITY parallelism_tolerance SUBTYPE OF (geometric_tolerance_with_datum_reference); END_ENTITY; ENTITY parametric_representation_context SUBTYPE OF (representation_context); END_ENTITY; -- IN AP203e2/AP242 ENTITY part_laminate_table SUPERTYPE OF (ONEOF(composite_assembly_table, ply_laminate_table)) SUBTYPE OF (laminate_table); END_ENTITY; -- IN AP214/AP242 ENTITY partial_circular_profile SUBTYPE OF (shape_aspect); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_DEFINITION' IN TYPEOF(SELF.of_shape.definition); WR2: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1))) = 0; WR3: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) >= 3))) = 0))) = 0; WR4: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.PLACEMENT' IN TYPEOF(it)) AND (it.name = 'orientation'))) = 1))) = 0))) = 0; WR5: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'radius'))) = 1))) = 0))) = 0; WR6: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'sweep angle'))) = 1))) = 0))) = 0; WR7: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PLANAR_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'profile limit'))) <= 1))) = 0; END_ENTITY; -- IN AP242 ENTITY partial_derivative_expression SUBTYPE OF (unary_generic_expression); d_variables : LIST [1:?] OF maths_variable; extension : extension_options; DERIVE derivand : generic_expression := SELF\unary_generic_expression.operand; WHERE WR1: has_values_space(derivand); WR2: space_is_continuum(values_space_of(derivand)); WR3: SIZEOF(QUERY (vbl <* d_variables| NOT subspace_of(values_space_of(vbl), the_reals) AND NOT subspace_of(values_space_of(vbl), the_complex_numbers))) = 0; END_ENTITY; -- IN AP242 ENTITY partial_derivative_function SUBTYPE OF (maths_function, unary_generic_expression); d_variables : LIST [1:?] OF input_selector; extension : extension_options; SELF\unary_generic_expression.operand : maths_function; DERIVE derivand : maths_function := SELF\unary_generic_expression.operand; WHERE WR1: space_is_continuum(derivand.range); WR2: partial_derivative_check(derivand.domain, d_variables); END_ENTITY; -- IN AP203e2/AP242 ENTITY partial_document_with_structured_text_representation_assignment SUBTYPE OF (applied_document_usage_constraint_assignment, characterized_object); END_ENTITY; -- IN AP242 ENTITY partly_overlapping_curves SUBTYPE OF (overlapping_geometry); interference_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.CURVE', 'STEP_MERGED_CAD_SCHEMA.CURVE' ]); WR4: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.TRIMMED_CURVE', 'STEP_MERGED_CAD_SCHEMA.TRIMMED_CURVE' ]); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY partly_overlapping_edges SUBTYPE OF (topology_related_to_overlapping_geometry); interference_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.EDGE_CURVE', 'STEP_MERGED_CAD_SCHEMA.EDGE_CURVE' ]); WR4: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.SUBEDGE', 'STEP_MERGED_CAD_SCHEMA.SUBEDGE' ]); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY partly_overlapping_faces SUBTYPE OF (topology_related_to_overlapping_geometry); interference_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.AREA_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.AREA_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.FACE_SURFACE', 'STEP_MERGED_CAD_SCHEMA.FACE_SURFACE' ]); WR4: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.SUBFACE', 'STEP_MERGED_CAD_SCHEMA.SUBFACE' ]); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.AREA_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY partly_overlapping_solids SUBTYPE OF (inapt_manifold_solid_brep); interference_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.AREA_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.AREA_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.MANIFOLD_SOLID_BREP', 'STEP_MERGED_CAD_SCHEMA.MANIFOLD_SOLID_BREP' ]); WR4: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.SUBFACE', 'STEP_MERGED_CAD_SCHEMA.SUBFACE' ]); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.AREA_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY partly_overlapping_surfaces SUBTYPE OF (overlapping_geometry); interference_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.AREA_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.AREA_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.SURFACE', 'STEP_MERGED_CAD_SCHEMA.SURFACE' ]); WR4: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.CURVE_BOUNDED_SURFACE', 'STEP_MERGED_CAD_SCHEMA.CURVE_BOUNDED_SURFACE' ]); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.AREA_MEASURE' ]); END_ENTITY; ENTITY path SUPERTYPE OF (ONEOF(edge_loop, oriented_path)) SUBTYPE OF (topological_representation_item); edge_list : LIST [1:?] OF UNIQUE oriented_edge; WHERE WR1: path_head_to_tail(SELF); END_ENTITY; -- IN AP242 ENTITY path_area_with_parameters SUBTYPE OF (complex_area, mapped_item); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.CURVE' IN TYPEOF(SELF\mapped_item.mapping_target); WR2: 'STEP_MERGED_CAD_SCHEMA.CURVE_STYLE_PARAMETERS_REPRESENTATION' IN TYPEOF(SELF\mapped_item.mapping_source\representation_map.mapped_representation); WR3: SELF\mapped_item.mapping_source\representation_map.mapping_origin\representation_item.name = 'curve width'; END_ENTITY; -- IN AP214/AP242 ENTITY path_feature_component SUBTYPE OF (shape_aspect); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_DEFINITION' IN TYPEOF(SELF.of_shape.definition); WR2: SELF.description IN [ 'partial circular', 'complete circular', 'linear', 'complex' ]; WR3: NOT (SELF.description = 'complex') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1))) = 0); WR4: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.PLACEMENT' IN TYPEOF(it)) AND (it.name = 'orientation'))) = 1))) = 0))) = 0; WR5: NOT (SELF.description = 'partial circular') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) = 3))) = 0))) = 0); WR6: NOT (SELF.description = 'partial circular') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'radius'))) = 1))) = 0))) = 0); WR7: NOT (SELF.description = 'partial circular') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'sweep angle'))) = 1))) = 0))) = 0); WR8: NOT (SELF.description = 'complete circular') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) = 2))) = 0))) = 0); WR9: NOT (SELF.description = 'complete circular') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'radius'))) = 1))) = 0))) = 0); WR10: NOT (SELF.description = 'linear') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) = 2))) = 0))) = 0); WR11: NOT (SELF.description = 'linear') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'distance'))) = 1))) = 0))) = 0); WR12: NOT (SELF.description = 'linear') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.DIRECTION_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)))) = 1))) = 0); WR13: NOT (SELF.description = 'complex') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| (('STEP_MERGED_CAD_SCHEMA.PATH_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'sweep path')) AND (SIZEOF(QUERY (srwp_i <* pdr.used_representation.items| (srwp_i.name = 'profile shape'))) = 1))) = 1))) = 0); END_ENTITY; -- IN AP242 ENTITY path_node ABSTRACT SUPERTYPE OF (ONEOF(point_to_point_path, circular_path, linear_path, curve_based_path)) SUBTYPE OF (kinematic_path_segment); placement_end : placement; END_ENTITY; -- IN AP242 ENTITY path_parameter_representation SUBTYPE OF (definitional_representation); SELF\representation.context_of_items : path_parameter_representation_context; SELF\representation.items : SET [1:?] OF bounded_curve; WHERE WR1: SELF\representation.context_of_items\geometric_representation_context.coordinate_space_dimension = 2; END_ENTITY; -- IN AP242 ENTITY path_parameter_representation_context SUBTYPE OF (geometric_representation_context, parametric_representation_context); END_ENTITY; -- IN AP214/AP242 ENTITY path_shape_representation SUBTYPE OF (shape_representation); WHERE WR1: SIZEOF(SELF.items) >= 1; WR2: SIZEOF(QUERY (i <* SELF.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.BOUNDED_CURVE', 'STEP_MERGED_CAD_SCHEMA.EDGE_CURVE', 'STEP_MERGED_CAD_SCHEMA.PATH' ] * TYPEOF(i)) = 1))) >= 1; END_ENTITY; -- IN AP214/AP242 ENTITY pattern_offset_membership SUBTYPE OF (feature_component_relationship); WHERE WR1: SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(SELF.relating_shape_aspect, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.' + 'RELATING_SHAPE_ASPECT')| ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)) AND (sar :<>: SELF))| (SIZEOF(QUERY (pdr <* QUERY (pd <* USEDIN(fcr.related_shape_aspect.of_shape, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CIRCULAR_PATTERN', 'STEP_MERGED_CAD_SCHEMA.RECTANGULAR_PATTERN' ] * TYPEOF(pdr.definition)) = 1))) = 0))) = 0; WR2: SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(SELF.related_shape_aspect, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)) AND (sar :<>: SELF))| (fcr.description = 'modified pattern') AND ('STEP_MERGED_CAD_SCHEMA.MODIFIED_PATTERN' IN TYPEOF(fcr.relating_shape_aspect)))) >= 1; WR3: SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(SELF.related_shape_aspect, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)) AND (sar :<>: SELF))| ('STEP_MERGED_CAD_SCHEMA.MODIFIED_PATTERN' IN TYPEOF(fcr.relating_shape_aspect)) AND NOT (SIZEOF(QUERY (modfcr <* QUERY (modsar <* USEDIN(fcr.relating_shape_aspect, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATING_SHAPE_ASPECT')| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CIRCULAR_PATTERN', 'STEP_MERGED_CAD_SCHEMA.RECTANGULAR_PATTERN' ] * TYPEOF(modsar.related_shape_aspect.of_shape.definition)) = 1) AND (modsar :<>: fcr))| NOT (modfcr.related_shape_aspect.of_shape.definition :=: SELF.relating_shape_aspect.of_shape.definition))) = 0))) = 0; WR4: NOT ('STEP_MERGED_CAD_SCHEMA.RECTANGULAR_PATTERN' IN TYPEOF(SELF.relating_shape_aspect.of_shape.definition)) OR (SIZEOF(QUERY (pd <* USEDIN(SELF.related_shape_aspect, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')) = 2))) = 0); WR5: NOT ('STEP_MERGED_CAD_SCHEMA.CIRCULAR_PATTERN' IN TYPEOF(SELF.relating_shape_aspect.of_shape.definition)) OR (SIZEOF(QUERY (pd <* USEDIN(SELF.related_shape_aspect, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')) = 1))) = 0); WR6: NOT ('STEP_MERGED_CAD_SCHEMA.CIRCULAR_PATTERN' IN TYPEOF(SELF.relating_shape_aspect.of_shape.definition)) OR (SIZEOF(QUERY (pd <* USEDIN(SELF.related_shape_aspect, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| NOT (SIZEOF(pdr.used_representation.items) = 2))) = 0))) = 0); WR7: NOT ('STEP_MERGED_CAD_SCHEMA.CIRCULAR_PATTERN' IN TYPEOF(SELF.relating_shape_aspect.of_shape.definition)) OR (SIZEOF(QUERY (pd <* USEDIN(SELF.related_shape_aspect, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND ('STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE' IN TYPEOF(it\measure_with_unit.value_component))) AND (it.name = 'index number'))) = 1))) = 0))) = 0); WR8: NOT ('STEP_MERGED_CAD_SCHEMA.CIRCULAR_PATTERN' IN TYPEOF(SELF.relating_shape_aspect.of_shape.definition)) OR (SIZEOF(QUERY (pd <* USEDIN(SELF.related_shape_aspect, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' IN TYPEOF(it)) AND (it.name = 'offset'))) = 1))) = 0))) = 0); WR9: NOT ('STEP_MERGED_CAD_SCHEMA.RECTANGULAR_PATTERN' IN TYPEOF(SELF.relating_shape_aspect.of_shape.definition)) OR (SIZEOF(QUERY (pd <* USEDIN(SELF.related_shape_aspect, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) = 3))) = 0))) = 0); WR10: NOT ('STEP_MERGED_CAD_SCHEMA.RECTANGULAR_PATTERN' IN TYPEOF(SELF.relating_shape_aspect.of_shape.definition)) OR (SIZEOF(QUERY (pd <* USEDIN(SELF.related_shape_aspect, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND ('STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE' IN TYPEOF(it\measure_with_unit.value_component))) AND (it.name = 'row index'))) = 1))) = 0))) = 0); WR11: NOT ('STEP_MERGED_CAD_SCHEMA.RECTANGULAR_PATTERN' IN TYPEOF(SELF.relating_shape_aspect.of_shape.definition)) OR (SIZEOF(QUERY (pd <* USEDIN(SELF.related_shape_aspect, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND ('STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE' IN TYPEOF(it\measure_with_unit.value_component))) AND (it.name = 'column index'))) = 1))) = 0))) = 0); WR12: NOT ('STEP_MERGED_CAD_SCHEMA.RECTANGULAR_PATTERN' IN TYPEOF(SELF.relating_shape_aspect.of_shape.definition)) OR (SIZEOF(QUERY (pd <* USEDIN(SELF.related_shape_aspect, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' IN TYPEOF(it)) AND (it.name = 'offset distance'))) = 1))) = 0))) = 0); WR13: NOT ('STEP_MERGED_CAD_SCHEMA.RECTANGULAR_PATTERN' IN TYPEOF(SELF.relating_shape_aspect.of_shape.definition)) OR (SIZEOF(QUERY (pd <* USEDIN(SELF.related_shape_aspect, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.DIRECTION_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'offset direction'))) = 1))) = 0); END_ENTITY; -- IN AP214/AP242 ENTITY pattern_omit_membership SUBTYPE OF (feature_component_relationship); WHERE WR1: SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(SELF.relating_shape_aspect, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.' + 'RELATING_SHAPE_ASPECT')| ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)) AND (sar :<>: SELF))| (SIZEOF(QUERY (pdr <* QUERY (pd <* USEDIN(fcr.related_shape_aspect.of_shape, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CIRCULAR_PATTERN', 'STEP_MERGED_CAD_SCHEMA.RECTANGULAR_PATTERN' ] * TYPEOF(pdr.definition)) = 1))) = 0))) = 0; WR2: SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(SELF.related_shape_aspect, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)) AND (sar :<>: SELF))| (fcr.description = 'modified pattern') AND ('STEP_MERGED_CAD_SCHEMA.MODIFIED_PATTERN' IN TYPEOF(fcr.relating_shape_aspect)))) >= 1; WR3: SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(SELF.related_shape_aspect, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)) AND (sar :<>: SELF))| ('STEP_MERGED_CAD_SCHEMA.MODIFIED_PATTERN' IN TYPEOF(fcr.relating_shape_aspect)) AND NOT (SIZEOF(QUERY (modfcr <* QUERY (modsar <* USEDIN(fcr.relating_shape_aspect, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATING_SHAPE_ASPECT')| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CIRCULAR_PATTERN', 'STEP_MERGED_CAD_SCHEMA.RECTANGULAR_PATTERN' ] * TYPEOF(modsar.related_shape_aspect.of_shape.definition)) = 1) AND (modsar :<>: fcr))| NOT (modfcr.related_shape_aspect.of_shape.definition :=: SELF.relating_shape_aspect.of_shape.definition))) = 0))) = 0; WR4: SIZEOF(QUERY (pd <* USEDIN(SELF.related_shape_aspect, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')) = 1))) = 0; WR5: NOT ('STEP_MERGED_CAD_SCHEMA.CIRCULAR_PATTERN' IN TYPEOF(SELF.relating_shape_aspect.of_shape.definition)) OR (SIZEOF(QUERY (pd <* USEDIN(SELF.related_shape_aspect, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| NOT (SIZEOF(pdr.used_representation.items) = 1))) = 0))) = 0); WR6: NOT ('STEP_MERGED_CAD_SCHEMA.CIRCULAR_PATTERN' IN TYPEOF(SELF.relating_shape_aspect.of_shape.definition)) OR (SIZEOF(QUERY (pd <* USEDIN(SELF.related_shape_aspect, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND ('STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE' IN TYPEOF(it\measure_with_unit.value_component))) AND (it.name = 'index number'))) = 1))) = 0))) = 0); WR7: NOT ('STEP_MERGED_CAD_SCHEMA.RECTANGULAR_PATTERN' IN TYPEOF(SELF.relating_shape_aspect.of_shape.definition)) OR (SIZEOF(QUERY (pd <* USEDIN(SELF.related_shape_aspect, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| NOT (SIZEOF(pdr.used_representation.items) = 2))) = 0))) = 0); WR8: NOT ('STEP_MERGED_CAD_SCHEMA.RECTANGULAR_PATTERN' IN TYPEOF(SELF.relating_shape_aspect.of_shape.definition)) OR (SIZEOF(QUERY (pd <* USEDIN(SELF.related_shape_aspect, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND ('STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE' IN TYPEOF(it\measure_with_unit.value_component))) AND (it.name = 'row index'))) = 1))) = 0))) = 0); WR9: NOT ('STEP_MERGED_CAD_SCHEMA.RECTANGULAR_PATTERN' IN TYPEOF(SELF.relating_shape_aspect.of_shape.definition)) OR (SIZEOF(QUERY (pd <* USEDIN(SELF.related_shape_aspect, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND ('STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE' IN TYPEOF(it\measure_with_unit.value_component))) AND (it.name = 'column index'))) = 1))) = 0))) = 0); END_ENTITY; ENTITY pcurve SUBTYPE OF (curve); basis_surface : surface; reference_to_curve : definitional_representation; WHERE WR1: SIZEOF(reference_to_curve\representation.items) = 1; WR2: 'STEP_MERGED_CAD_SCHEMA.CURVE' IN TYPEOF(reference_to_curve\representation.items[1]); WR3: reference_to_curve\representation.items[1]\geometric_representation_item.dim = 2; END_ENTITY; -- IN AP242 ENTITY pdgc_with_dimension SUBTYPE OF (point_distance_geometric_constraint); distance_value : non_negative_length_measure; END_ENTITY; -- IN AP203e2 ENTITY percentage_laminate_definition SUBTYPE OF (product_definition); WHERE WR1: SIZEOF(QUERY (pdr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PRODUCT_DEFINITION_RELATIONSHIP.' + 'RELATING_PRODUCT_DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.' + 'NEXT_ASSEMBLY_USAGE_OCCURRENCE' IN TYPEOF(pdr)))) > 0; END_ENTITY; -- IN AP203e2/AP242 ENTITY percentage_laminate_table SUBTYPE OF (zone_structural_makeup); END_ENTITY; -- IN AP203e2 ENTITY percentage_ply_definition SUBTYPE OF (product_definition); WHERE WR1: SIZEOF(QUERY (pdr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PRODUCT_DEFINITION_RELATIONSHIP.RELATING_PRODUCT_DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PERCENTAGE_LAMINATE_DEFINITION' IN TYPEOF(pdr.related_product_definition)) AND (pdr.name = 'makeup and properties'))) = 0; END_ENTITY; -- IN AP242 ENTITY perpendicular_assembly_constraint SUBTYPE OF (binary_assembly_constraint, perpendicular_geometric_constraint); END_ENTITY; -- IN AP242 ENTITY perpendicular_geometric_constraint SUBTYPE OF (explicit_geometric_constraint); SELF\explicit_constraint.constrained_elements : SET [1:?] OF linear_geometry_constraint_element; SELF\explicit_constraint.reference_elements : SET [0:2] OF linear_geometry_constraint_element; WHERE WR1: NOT ((SIZEOF(SELF\explicit_constraint.reference_elements) = 2) AND NOT ((SIZEOF(QUERY (q <* SELF\explicit_constraint.constrained_elements + SELF\explicit_constraint.reference_elements| ('STEP_MERGED_CAD_SCHEMA.LINE' IN TYPEOF(q)))) = SIZEOF(SELF\explicit_constraint.reference_elements + SELF\explicit_constraint.constrained_elements)) XOR (SIZEOF(QUERY (q <* SELF\explicit_constraint.constrained_elements + SELF\explicit_constraint.reference_elements| ('STEP_MERGED_CAD_SCHEMA.PLANE' IN TYPEOF(q)))) = SIZEOF(SELF\explicit_constraint.reference_elements + SELF\explicit_constraint.constrained_elements)))); WR2: (SIZEOF(SELF\explicit_constraint.reference_elements) > 0) OR (SIZEOF(SELF\explicit_constraint.constrained_elements) IN [ 2, 3 ]); WR3: NOT ((SIZEOF(SELF\explicit_constraint.reference_elements) = 0) AND (SIZEOF(SELF\explicit_constraint.constrained_elements) = 3)) AND NOT ((SIZEOF(QUERY (q <* SELF\explicit_constraint.constrained_elements| ('STEP_MERGED_CAD_SCHEMA.LINE' IN TYPEOF(q)))) = 3) XOR (SIZEOF(QUERY (q <* SELF\explicit_constraint.constrained_elements| ('STEP_MERGED_CAD_SCHEMA.PLANE' IN TYPEOF(q)))) = 3)); END_ENTITY; ENTITY perpendicular_to SUBTYPE OF (derived_shape_aspect); WHERE WR1: SIZEOF(SELF\derived_shape_aspect.deriving_relationships) = 1; END_ENTITY; ENTITY perpendicularity_tolerance SUBTYPE OF (geometric_tolerance_with_datum_reference); END_ENTITY; ENTITY person; id : identifier; last_name : OPTIONAL label; first_name : OPTIONAL label; middle_names : OPTIONAL LIST [1:?] OF label; prefix_titles : OPTIONAL LIST [1:?] OF label; suffix_titles : OPTIONAL LIST [1:?] OF label; WHERE WR1: EXISTS(last_name) OR EXISTS(first_name); END_ENTITY; -- DIFF IN AP214 ENTITY person_and_organization; the_person : person; the_organization : organization; DERIVE description : text := get_description_value(SELF); name : label := get_name_value(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'NAME_ATTRIBUTE.NAMED_ITEM')) <= 1; WR2: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'DESCRIPTION_ATTRIBUTE.DESCRIBED_ITEM')) <= 1; END_ENTITY; -- DIFF IN AP214 ENTITY person_and_organization_address SUBTYPE OF (organizational_address, personal_address); SELF\organizational_address.organizations : SET [1:1] OF organization; SELF\personal_address.people : SET [1:1] OF person; WHERE WR1: SIZEOF(QUERY (pao <* USEDIN(SELF\personal_address.people[1], 'STEP_MERGED_CAD_SCHEMA.PERSON_AND_ORGANIZATION.THE_PERSON')| (pao.the_organization :=: SELF\organizational_address.organizations[1]))) = 1; END_ENTITY; ENTITY person_and_organization_assignment ABSTRACT SUPERTYPE; assigned_person_and_organization : person_and_organization; role : person_and_organization_role; END_ENTITY; ENTITY person_and_organization_role; name : label; DERIVE description : text := get_description_value(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'DESCRIPTION_ATTRIBUTE.DESCRIBED_ITEM')) <= 1; END_ENTITY; ENTITY personal_address SUBTYPE OF (address); people : SET [1:?] OF person; description : OPTIONAL text; END_ENTITY; -- IN AP242 ENTITY pgc_with_dimension SUBTYPE OF (parallel_geometric_constraint); distance_value : non_negative_length_measure; negative_direction : BOOLEAN; WHERE WR1: (SIZEOF(SELF\explicit_constraint.reference_elements) = 1) OR (SIZEOF(SELF\explicit_constraint.constrained_elements) = 2); WR2: SIZEOF(QUERY (q <* SELF\explicit_constraint.reference_elements + SELF\explicit_constraint.constrained_elements| (SIZEOF(TYPEOF(q) * [ 'STEP_MERGED_CAD_SCHEMA.DIRECTION', 'STEP_MERGED_CAD_SCHEMA.VECTOR' ]) > 0))) = 0; END_ENTITY; -- IN AP203e2/AP242 ENTITY physical_breakdown_context SUBTYPE OF (breakdown_context); END_ENTITY; -- IN AP242 ENTITY physical_component SUBTYPE OF (assembly_component); END_ENTITY; -- IN AP242 ENTITY physical_component_feature SUBTYPE OF (component_feature); END_ENTITY; -- IN AP242 ENTITY physical_component_terminal SUBTYPE OF (component_terminal, physical_component_feature); END_ENTITY; -- IN AP203e2/AP242 ENTITY physical_element_usage SUBTYPE OF (breakdown_element_usage); END_ENTITY; -- IN AP214 ENTITY physically_modelled_product_definition SUBTYPE OF (product_definition_with_associated_documents); WHERE wr1: SELF.frame_of_reference\application_context_element.name = 'physical model occurrence'; wr2: (SIZEOF(documentation_ids) = 1) AND (SIZEOF(QUERY (d <* documentation_ids| (SIZEOF(QUERY (drt <* d.representation_types| (drt.name = 'physical'))) = 1))) = 1); END_ENTITY; -- IN AP203e2/AP242 ENTITY picture_representation SUBTYPE OF (presentation_view); SELF\representation.items : SET [2:?] OF picture_representation_item_select; INVERSE size : presentation_size FOR unit; WHERE WR1: SIZEOF(QUERY (item <* items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(item)))) = 1; WR2: SIZEOF(QUERY (se <* QUERY (item <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(item)))| NOT ('STEP_MERGED_CAD_SCHEMA.PICTURE_REPRESENTATION_ITEM' IN TYPEOF(se\styled_item.item)))) = 0; END_ENTITY; -- IN AP203e2/AP242 ENTITY picture_representation_item ABSTRACT SUPERTYPE OF (ONEOF(externally_defined_picture_representation_item, predefined_picture_representation_item)) SUBTYPE OF (bytes_representation_item); END_ENTITY; -- DIFF IN AP214 ENTITY placed_datum_target_feature SUBTYPE OF (datum_target); DERIVE representation_associations : SET [0:?] OF property_definition_representation := get_shape_aspect_property_definition_representations(SELF); WHERE WR1: SELF.description IN [ 'point', 'line', 'rectangle', 'circle', 'circular curve' ]; WR2: SIZEOF(QUERY (pdr <* representation_associations| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1; WR3: valid_datum_target_parameters(SELF); END_ENTITY; ENTITY placed_feature SUBTYPE OF (shape_aspect); END_ENTITY; ENTITY placement SUPERTYPE OF (ONEOF(axis1_placement, axis2_placement_2d, axis2_placement_3d)) SUBTYPE OF (geometric_representation_item); location : cartesian_point; END_ENTITY; ENTITY planar_box SUBTYPE OF (planar_extent); placement : axis2_placement; END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY planar_curve_pair SUPERTYPE OF (ONEOF(sliding_curve_pair, rolling_curve_pair) ANDOR planar_curve_pair_range) SUBTYPE OF (high_order_kinematic_pair); curve_1 : curve; curve_2 : curve; orientation : BOOLEAN; WHERE WR1: SIZEOF(QUERY (r <* SELF\kinematic_pair.associated_link_representations_1| NOT (curve_1 IN r.items))) = 0; WR2: SIZEOF(QUERY (r <* SELF\kinematic_pair.associated_link_representations_2| NOT (curve_2 IN r.items))) = 0; WR3: SIZEOF(QUERY (lr <* SELF\kinematic_pair.associated_link_representations_1| NOT ('STEP_MERGED_CAD_SCHEMA.RIGID_LINK_REPRESENTATION' IN TYPEOF(lr)))) = 0; END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY planar_curve_pair_range SUBTYPE OF (planar_curve_pair); range_on_curve_1 : trimmed_curve; range_on_curve_2 : trimmed_curve; WHERE WR1: SELF\planar_curve_pair.curve_1 :=: range_on_curve_1.basis_curve; WR2: SELF\planar_curve_pair.curve_2 :=: range_on_curve_2.basis_curve; WR3: SIZEOF(QUERY (r <* SELF\kinematic_pair.associated_link_representations_1| NOT (range_on_curve_1 IN r.items))) = 0; WR4: SIZEOF(QUERY (r <* SELF\kinematic_pair.associated_link_representations_2| NOT (range_on_curve_2 IN r.items))) = 0; END_ENTITY; ENTITY planar_extent SUBTYPE OF (geometric_representation_item); size_in_x : length_measure; size_in_y : length_measure; END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY planar_pair SUBTYPE OF (low_order_kinematic_pair); DERIVE SELF\low_order_kinematic_pair.r_x : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.r_y : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.r_z : BOOLEAN := TRUE; SELF\low_order_kinematic_pair.t_x : BOOLEAN := TRUE; SELF\low_order_kinematic_pair.t_y : BOOLEAN := TRUE; SELF\low_order_kinematic_pair.t_z : BOOLEAN := FALSE; END_ENTITY; -- IN AP214 ENTITY planar_pair_range SUBTYPE OF (simple_pair_range); SELF\simple_pair_range.applies_to_pair : planar_pair; lower_limit_actual_rotation : rotational_range_measure; upper_limit_actual_rotation : rotational_range_measure; lower_limit_actual_translation_x : translational_range_measure; upper_limit_actual_translation_x : translational_range_measure; lower_limit_actual_translation_y : translational_range_measure; upper_limit_actual_translation_y : translational_range_measure; WHERE wr1: (('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(lower_limit_actual_rotation)) OR ('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(upper_limit_actual_rotation))) XOR (lower_limit_actual_rotation < upper_limit_actual_rotation); wr2: (('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(lower_limit_actual_translation_x)) OR ('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(upper_limit_actual_translation_x))) XOR (lower_limit_actual_translation_x < upper_limit_actual_translation_x); wr3: (('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(lower_limit_actual_translation_y)) OR ('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(upper_limit_actual_translation_y))) XOR (lower_limit_actual_translation_y < upper_limit_actual_translation_y); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY planar_pair_value SUBTYPE OF (pair_value); actual_rotation : plane_angle_measure; actual_translation_x : length_measure; actual_translation_y : length_measure; SELF\pair_value.applies_to_pair : planar_pair; END_ENTITY; -- IN AP242 ENTITY planar_pair_with_range SUBTYPE OF (planar_pair); lower_limit_actual_rotation : OPTIONAL plane_angle_measure; upper_limit_actual_rotation : OPTIONAL plane_angle_measure; lower_limit_actual_translation_x : OPTIONAL length_measure; upper_limit_actual_translation_x : OPTIONAL length_measure; lower_limit_actual_translation_y : OPTIONAL length_measure; upper_limit_actual_translation_y : OPTIONAL length_measure; WHERE WR1: (NOT EXISTS(lower_limit_actual_rotation) OR NOT EXISTS(upper_limit_actual_rotation)) XOR (lower_limit_actual_rotation < upper_limit_actual_rotation); WR2: (NOT EXISTS(lower_limit_actual_translation_x) OR NOT EXISTS(upper_limit_actual_translation_x)) XOR (lower_limit_actual_translation_x < upper_limit_actual_translation_x); WR3: (NOT EXISTS(lower_limit_actual_translation_y) OR NOT EXISTS(upper_limit_actual_translation_y)) XOR (lower_limit_actual_translation_y < upper_limit_actual_translation_y); END_ENTITY; -- IN AP214/AP242 ENTITY planar_shape_representation SUBTYPE OF (shape_representation); WHERE WR1: SIZEOF(SELF.items) = 1; WR2: SIZEOF(QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.PLANE' IN TYPEOF(it)))) = 1; END_ENTITY; ENTITY plane SUBTYPE OF (elementary_surface); END_ENTITY; -- IN AP242 ENTITY plane_angle_and_length_pair SUBTYPE OF (founded_item); plane_angle_value : plane_angle_measure; length_value : length_measure; END_ENTITY; -- IN AP242 ENTITY plane_angle_and_ratio_pair SUBTYPE OF (founded_item); plane_angle_value : plane_angle_measure; ratio_value : ratio_measure; END_ENTITY; ENTITY plane_angle_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; ENTITY plane_angle_unit SUBTYPE OF (named_unit); WHERE WR1: ((((((SELF\named_unit.dimensions.length_exponent = 0.0) AND (SELF\named_unit.dimensions.mass_exponent = 0.0)) AND (SELF\named_unit.dimensions.time_exponent = 0.0)) AND (SELF\named_unit.dimensions.electric_current_exponent = 0.0)) AND (SELF\named_unit.dimensions.thermodynamic_temperature_exponent = 0.0)) AND (SELF\named_unit.dimensions.amount_of_substance_exponent = 0.0)) AND (SELF\named_unit.dimensions.luminous_intensity_exponent = 0.0); END_ENTITY; -- IN AP214/AP242 ENTITY plus_expression SUBTYPE OF (multiple_arity_numeric_expression); END_ENTITY; -- CASE DIFF IN AP214 ENTITY plus_minus_tolerance; range : tolerance_method_definition; toleranced_dimension : dimensional_characteristic; UNIQUE UR1 : toleranced_dimension; END_ENTITY; -- IN AP203e2 ENTITY ply_laminate_definition SUBTYPE OF (product_definition); WHERE WR1: SIZEOF(QUERY (pdr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PRODUCT_DEFINITION_RELATIONSHIP.' + 'RELATING_PRODUCT_DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.' + 'NEXT_ASSEMBLY_USAGE_OCCURRENCE' IN TYPEOF(pdr)))) = 1; END_ENTITY; -- IN AP203e2/AP242 ENTITY ply_laminate_sequence_definition SUBTYPE OF (product_definition); WHERE WR1: SIZEOF(QUERY (pdr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PRODUCT_DEFINITION_RELATIONSHIP.' + 'RELATING_PRODUCT_DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.' + 'NEXT_ASSEMBLY_USAGE_OCCURRENCE' IN TYPEOF(pdr)))) > 0; END_ENTITY; -- IN AP203e2/AP242 ENTITY ply_laminate_table SUBTYPE OF (part_laminate_table); END_ENTITY; -- IN AP214/AP242 ENTITY pocket SUBTYPE OF (feature_definition); WHERE WR1: SELF\characterized_object.description IN [ 'closed rectangular', 'open rectangular', 'complex', 'circular cutout', 'complex cutout', 'recess' ]; WR2: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'pocket depth occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| ((sar.description = 'path feature component usage') AND (sar.name = 'pocket depth')) AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.PATH_FEATURE_COMPONENT' IN TYPEOF(sdr.relating_shape_aspect)) AND (sdr.relating_shape_aspect.description = 'linear'))) = 1))) = 1))) = 0; WR3: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1; WR4: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND ((1 <= SIZEOF(pdr.used_representation.items)) AND (SIZEOF(pdr.used_representation.items) <= 2)))) = 1))) = 1; WR5: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (srwp_i <* pdr.used_representation.items| (srwp_i.name = 'orientation') OR (srwp_i.name = 'fillet radius'))) = SIZEOF(pdr.used_representation.items)))) = 1))) = 1; WR6: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'fillet radius'))) <= 1))) = 0))) = 0; WR7: NOT (SELF\characterized_object.description IN [ 'complex', 'non-circular cutout', 'recess' ]) OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'boundary occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'profile usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CIRCULAR_CLOSED_PROFILE', 'STEP_MERGED_CAD_SCHEMA.NGON_CLOSED_PROFILE', 'STEP_MERGED_CAD_SCHEMA.RECTANGULAR_CLOSED_PROFILE', 'STEP_MERGED_CAD_SCHEMA.CLOSED_PATH_PROFILE', 'STEP_MERGED_CAD_SCHEMA.SQUARE_U_PROFILE', 'STEP_MERGED_CAD_SCHEMA.PARTIAL_CIRCULAR_PROFILE', 'STEP_MERGED_CAD_SCHEMA.ROUNDED_U_PROFILE', 'STEP_MERGED_CAD_SCHEMA.VEE_PROFILE', 'STEP_MERGED_CAD_SCHEMA.TEE_PROFILE', 'STEP_MERGED_CAD_SCHEMA.OPEN_PATH_PROFILE' ] * TYPEOF(sdr.relating_shape_aspect)) = 1))) = 1))) = 1))) = 0); WR8: NOT (SELF\characterized_object.description = 'closed rectangular') OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'closed boundary occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'profile usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.RECTANGULAR_CLOSED_PROFILE' IN TYPEOF(sdr.relating_shape_aspect)))) = 1))) = 1))) = 0); WR9: NOT (SELF\characterized_object.description = 'open rectangular') OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'open boundary occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'profile usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.SQUARE_U_PROFILE' IN TYPEOF(sdr.relating_shape_aspect)))) = 1))) = 1))) = 0); WR10: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'bottom condition occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'pocket bottom usage') AND ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.POCKET_BOTTOM' IN TYPEOF(sdr.relating_shape_aspect)) AND ('STEP_MERGED_CAD_SCHEMA.POCKET' IN TYPEOF(sdr.related_shape_aspect.of_shape.definition)))) = 1))) = 1))) = 0; WR11: NOT (SELF\characterized_object.description IN [ 'complex', 'non-circular cutout', 'recess' ]) OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'change in boundary occurrence') AND (SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATING_SHAPE_ASPECT')| (sar.description = 'taper usage') AND ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| (('STEP_MERGED_CAD_SCHEMA.TAPER' IN TYPEOF(fcr.relating_shape_aspect)) AND ('STEP_MERGED_CAD_SCHEMA.POCKET' IN TYPEOF(fcr.related_shape_aspect.of_shape.definition))) AND (fcr.related_shape_aspect.description IN [ 'angle taper', 'directed taper' ]))) = 1))) <= 1))) = 0); WR12: NOT (SELF\characterized_object.description = 'circular cutout') OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'enclosed boundary occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'profile usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.CIRCULAR_CLOSED_PROFILE' IN TYPEOF(sdr.relating_shape_aspect)))) = 1))) = 1))) = 0); WR13: NOT (SELF\characterized_object.description IN [ 'circular cutout', 'complex cutout' ]) OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'bottom condition occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'pocket bottom usage') AND ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| (('STEP_MERGED_CAD_SCHEMA.POCKET_BOTTOM' IN TYPEOF(sdr.relating_shape_aspect)) AND ('STEP_MERGED_CAD_SCHEMA.POCKET' IN TYPEOF(sdr.related_shape_aspect.of_shape.definition))) AND (sdr.relating_shape_aspect.description = 'through'))) = 1))) = 1))) = 0); WR14: NOT (SELF\characterized_object.description = 'recess') OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'bottom condition occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'pocket bottom usage') AND ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| (('STEP_MERGED_CAD_SCHEMA.POCKET_BOTTOM' IN TYPEOF(sdr.relating_shape_aspect)) AND ('STEP_MERGED_CAD_SCHEMA.POCKET' IN TYPEOF(sdr.related_shape_aspect.of_shape.definition))) AND (sdr.relating_shape_aspect.description IN [ 'planar', 'complex' ]))) = 1))) = 1))) = 0); WR15: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.PLANAR_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'maximum feature limit'))) >= 0; WR16: NOT (SELF\characterized_object.description IN [ 'closed rectangular', 'open rectangular', 'complex', 'recess' ]) OR (SIZEOF(QUERY (pds <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pds)) AND (SIZEOF(QUERY (csa <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (('STEP_MERGED_CAD_SCHEMA.COMPOSITE_SHAPE_ASPECT' IN TYPEOF(csa)) AND (csa.name = 'uncut volume')) AND (SIZEOF(QUERY (sar <* csa.component_relationships| ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.BOSS', 'STEP_MERGED_CAD_SCHEMA.PROTRUSION' ] * TYPEOF(sar.related_shape_aspect)) = 1))) = 1))) <= 1))) = 1); WR17: NOT (SELF\characterized_object.description IN [ 'closed rectangular', 'open rectangular' ]) OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'change in boundary occurrence') AND (SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATING_SHAPE_ASPECT')| (sar.description = 'taper usage') AND ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| (('STEP_MERGED_CAD_SCHEMA.TAPER' IN TYPEOF(fcr.relating_shape_aspect)) AND ('STEP_MERGED_CAD_SCHEMA.POCKET' IN TYPEOF(fcr.related_shape_aspect.of_shape.definition))) AND (fcr.related_shape_aspect.description IN [ 'angle taper', 'directed taper' ]))) >= 1))) <= 1))) = 0); END_ENTITY; -- IN AP214/AP242 ENTITY pocket_bottom SUBTYPE OF (shape_aspect); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_DEFINITION' IN TYPEOF(SELF.of_shape.definition); WR2: SELF.description IN [ 'planar', 'complex', 'through' ]; WR3: NOT (SELF.description = 'planar') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.DIRECTION_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'floor normal'))) = 1))) = 0); WR4: NOT (SELF.description = 'planar') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.LOCATION_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'floor location'))) = 1))) = 0); WR5: NOT (SELF.description = 'complex') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.FACE_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'floor face'))) = 1))) = 0); WR6: NOT (SELF.description IN [ 'planar', 'complex' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1))) = 0); WR7: NOT (SELF.description IN [ 'planar', 'complex' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) <= 1))) = 0))) = 0); WR8: NOT (SELF.description = 'through') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 0))) = 0); WR9: NOT (SELF.description IN [ 'planar', 'complex' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'radius'))) <= 1))) = 0))) = 0); WR10: SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATING_SHAPE_ASPECT')| (sar.description = 'pocket bottom usage') AND ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| ((fcr.related_shape_aspect.description = 'bottom condition occurrence') AND ('STEP_MERGED_CAD_SCHEMA.POCKET' IN TYPEOF(fcr.related_shape_aspect.of_shape.definition))) AND ('STEP_MERGED_CAD_SCHEMA.POCKET_BOTTOM' IN TYPEOF(fcr.relating_shape_aspect)))) >= 1; WR11: NOT (SELF.description IN [ 'planar', 'complex' ]) OR (SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATING_SHAPE_ASPECT')| (sar.description = 'pocket bottom usage') AND ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| (fcr.related_shape_aspect.description = 'bottom condition occurrence') AND (fcr.related_shape_aspect.name IN [ 'pocket depth start', 'pocket depth end' ]))) = 0); END_ENTITY; -- IN AP242 ENTITY pogc_with_dimension SUBTYPE OF (parallel_offset_geometric_constraint); offset_value : positive_length_measure; offset_direction_constrained : BOOLEAN; WHERE WR1: (SIZEOF(SELF\explicit_constraint.reference_elements) = 1) OR (SIZEOF(SELF\explicit_constraint.constrained_elements) = 2); WR2: NOT (offset_direction_constrained = TRUE) AND ((offset_type = curve_2d_offset) OR (offset_type = surface_offset)); END_ENTITY; ENTITY point SUPERTYPE OF (ONEOF(cartesian_point, point_on_curve, point_on_surface, point_replica, degenerate_pcurve)) SUBTYPE OF (geometric_representation_item); END_ENTITY; -- IN AP203e2/AP242 ENTITY point_and_vector SUBTYPE OF (compound_representation_item, geometric_representation_item); SELF\compound_representation_item.item_element : point_and_vector_members; END_ENTITY; -- IN AP242 ENTITY point_distance_geometric_constraint SUBTYPE OF (explicit_geometric_constraint); SELF\explicit_constraint.constrained_elements : SET [1:?] OF point; SELF\explicit_constraint.reference_elements : SET [0:4] OF point_curve_or_surface_constraint_element; WHERE WR1: (SIZEOF(SELF\explicit_constraint.reference_elements) > 0) OR ('STEP_MERGED_CAD_SCHEMA.PDGC_WITH_DIMENSION' IN TYPEOF(SELF)) AND (SIZEOF(SELF\explicit_constraint.constrained_elements) = 2); END_ENTITY; ENTITY point_on_curve SUBTYPE OF (point); basis_curve : curve; point_parameter : parameter_value; END_ENTITY; -- IN AP242 ENTITY point_on_edge_curve SUBTYPE OF (point_on_curve); basis_edge_curve : edge_curve; DERIVE SELF\point_on_curve.basis_curve : curve := SELF.basis_edge_curve.edge_geometry; WHERE WR1: SIZEOF(using_representations(SELF.basis_edge_curve) * relating_shape_representations_of_extreme_values(SELF)) > 0; END_ENTITY; -- IN AP242 ENTITY point_on_face_surface SUBTYPE OF (point_on_surface); basis_face_surface : face_surface; DERIVE SELF\point_on_surface.basis_surface : surface := SELF.basis_face_surface.face_geometry; WHERE WR1: SIZEOF(using_representations(SELF.basis_face_surface) * relating_shape_representations_of_extreme_values(SELF)) > 0; END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY point_on_planar_curve_pair SUBTYPE OF (high_order_kinematic_pair); pair_curve : curve; orientation : BOOLEAN; WHERE WR1: SIZEOF(QUERY (r <* SELF\kinematic_pair.associated_link_representations_1| NOT (pair_curve IN r.items))) = 0; WR2: SIZEOF(QUERY (lr <* SELF\kinematic_pair.associated_link_representations_1| NOT ('STEP_MERGED_CAD_SCHEMA.RIGID_LINK_REPRESENTATION' IN TYPEOF(lr)))) = 0; END_ENTITY; -- IN AP214 ENTITY point_on_planar_curve_pair_range SUBTYPE OF (simple_pair_range); SELF\simple_pair_range.applies_to_pair : point_on_planar_curve_pair; range_on_pair_curve : trimmed_curve; lower_limit_yaw : rotational_range_measure; upper_limit_yaw : rotational_range_measure; lower_limit_pitch : rotational_range_measure; upper_limit_pitch : rotational_range_measure; lower_limit_roll : rotational_range_measure; upper_limit_roll : rotational_range_measure; WHERE wr1: SELF\simple_pair_range.applies_to_pair\point_on_planar_curve_pair.pair_curve :=: range_on_pair_curve.basis_curve; wr2: (('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(lower_limit_yaw)) OR ('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(upper_limit_yaw))) XOR (lower_limit_yaw < upper_limit_yaw); wr3: (('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(lower_limit_pitch)) OR ('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(upper_limit_pitch))) XOR (lower_limit_pitch < upper_limit_pitch); wr4: (('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(lower_limit_roll)) OR ('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(upper_limit_roll))) XOR (lower_limit_roll < upper_limit_roll); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY point_on_planar_curve_pair_value SUBTYPE OF (pair_value); actual_point_on_curve : point_on_curve; input_orientation : spatial_rotation; SELF\pair_value.applies_to_pair : point_on_planar_curve_pair; DERIVE actual_orientation : ypr_rotation := convert_spatial_to_ypr_rotation(SELF\pair_value.applies_to_pair, input_orientation); WHERE WR1: SELF\pair_value.applies_to_pair\point_on_planar_curve_pair.pair_curve :=: actual_point_on_curve.basis_curve; END_ENTITY; -- IN AP242 ENTITY point_on_planar_curve_pair_with_range SUBTYPE OF (point_on_planar_curve_pair); range_on_pair_curve : trimmed_curve; lower_limit_yaw : OPTIONAL plane_angle_measure; upper_limit_yaw : OPTIONAL plane_angle_measure; lower_limit_pitch : OPTIONAL plane_angle_measure; upper_limit_pitch : OPTIONAL plane_angle_measure; lower_limit_roll : OPTIONAL plane_angle_measure; upper_limit_roll : OPTIONAL plane_angle_measure; WHERE WR1: (NOT EXISTS(lower_limit_pitch) OR NOT EXISTS(upper_limit_pitch)) XOR (lower_limit_pitch < upper_limit_pitch); WR2: (NOT EXISTS(lower_limit_yaw) OR NOT EXISTS(upper_limit_yaw)) XOR (lower_limit_yaw < upper_limit_yaw); WR3: (NOT EXISTS(lower_limit_roll) OR NOT EXISTS(upper_limit_roll)) XOR (lower_limit_roll < upper_limit_roll); WR4: SIZEOF(QUERY (r <* SELF\kinematic_pair.associated_link_representations_1| NOT (range_on_pair_curve IN r.items))) = 0; END_ENTITY; ENTITY point_on_surface SUBTYPE OF (point); basis_surface : surface; point_parameter_u : parameter_value; point_parameter_v : parameter_value; END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY point_on_surface_pair SUBTYPE OF (high_order_kinematic_pair); pair_surface : surface; WHERE WR1: SIZEOF(QUERY (r <* SELF\kinematic_pair.associated_link_representations_1| NOT (pair_surface IN r.items))) = 0; WR2: SIZEOF(QUERY (lr <* SELF\kinematic_pair.associated_link_representations_1| NOT ('STEP_MERGED_CAD_SCHEMA.RIGID_LINK_REPRESENTATION' IN TYPEOF(lr)))) = 0; END_ENTITY; -- IN AP214 ENTITY point_on_surface_pair_range SUBTYPE OF (simple_pair_range); SELF\simple_pair_range.applies_to_pair : point_on_surface_pair; range_on_pair_surface : rectangular_trimmed_surface; lower_limit_yaw : rotational_range_measure; upper_limit_yaw : rotational_range_measure; lower_limit_pitch : rotational_range_measure; upper_limit_pitch : rotational_range_measure; lower_limit_roll : rotational_range_measure; upper_limit_roll : rotational_range_measure; WHERE wr1: SELF\simple_pair_range.applies_to_pair\point_on_surface_pair.pair_surface :=: range_on_pair_surface.basis_surface; wr2: (('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(lower_limit_yaw)) OR ('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(upper_limit_yaw))) XOR (lower_limit_yaw < upper_limit_yaw); wr3: (('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(lower_limit_pitch)) OR ('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(upper_limit_pitch))) XOR (lower_limit_pitch < upper_limit_pitch); wr4: (('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(lower_limit_roll)) OR ('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(upper_limit_roll))) XOR (lower_limit_roll < upper_limit_roll); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY point_on_surface_pair_value SUBTYPE OF (pair_value); actual_point_on_surface : point_on_surface; input_orientation : spatial_rotation; SELF\pair_value.applies_to_pair : point_on_surface_pair; DERIVE actual_orientation : ypr_rotation := convert_spatial_to_ypr_rotation(SELF\pair_value.applies_to_pair, input_orientation); WHERE WR1: SELF\pair_value.applies_to_pair\point_on_surface_pair.pair_surface :=: actual_point_on_surface.basis_surface; END_ENTITY; -- IN AP242 ENTITY point_on_surface_pair_with_range SUBTYPE OF (point_on_surface_pair); range_on_pair_surface : rectangular_trimmed_surface; lower_limit_yaw : OPTIONAL plane_angle_measure; upper_limit_yaw : OPTIONAL plane_angle_measure; lower_limit_pitch : OPTIONAL plane_angle_measure; upper_limit_pitch : OPTIONAL plane_angle_measure; lower_limit_roll : OPTIONAL plane_angle_measure; upper_limit_roll : OPTIONAL plane_angle_measure; WHERE WR1: (NOT EXISTS(lower_limit_pitch) OR NOT EXISTS(upper_limit_pitch)) XOR (lower_limit_pitch < upper_limit_pitch); WR2: (NOT EXISTS(lower_limit_yaw) OR NOT EXISTS(upper_limit_yaw)) XOR (lower_limit_yaw < upper_limit_yaw); WR3: (NOT EXISTS(lower_limit_roll) OR NOT EXISTS(upper_limit_roll)) XOR (lower_limit_roll < upper_limit_roll); WR4: SIZEOF(QUERY (r <* SELF\kinematic_pair.associated_link_representations_1| NOT (range_on_pair_surface IN r.items))) = 0; END_ENTITY; -- IN AP203e2/AP242 ENTITY point_path SUBTYPE OF (compound_representation_item, geometric_representation_item); SELF\compound_representation_item.item_element : point_path_members; END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY point_placement_shape_representation SUBTYPE OF (shape_representation); SELF\representation.items : SET [1:?] OF point_placement_shape_representation_item; WHERE WR1: SIZEOF(QUERY (i <* SELF.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.COMPOUND_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' ] * TYPEOF(i)) = 1))) > 0; END_ENTITY; ENTITY point_replica SUBTYPE OF (point); parent_pt : point; transformation : cartesian_transformation_operator; WHERE WR1: transformation.dim = parent_pt.dim; WR2: acyclic_point_replica(SELF, parent_pt); END_ENTITY; ENTITY point_style SUBTYPE OF (founded_item); name : label; marker : marker_select; marker_size : size_select; marker_colour : colour; END_ENTITY; -- IN AP242 ENTITY point_to_point_path SUBTYPE OF (path_node); DERIVE SELF\kinematic_path_segment.transition : transition_code := discontinuous; END_ENTITY; -- IN AP203e2 ENTITY polar_complex_number_literal SUBTYPE OF (generic_literal); radius : REAL; angle : REAL; WHERE WR1: radius >= 0; WR2: (0 <= angle) AND (angle < 2 * 3.14159); END_ENTITY; -- IN AP242 ENTITY polar_complex_number_region SUBTYPE OF (maths_space, generic_literal); centre : complex_number_literal; distance_constraint : real_interval; direction_constraint : finite_real_interval; WHERE WR1: min_exists(distance_constraint) AND (real_min(distance_constraint) >= 0.0); WR2: (-3.14159 <= direction_constraint.min) AND (direction_constraint.min < 3.14159); WR3: direction_constraint.max - direction_constraint.min <= 2.0 * 3.14159; WR4: (direction_constraint.max - direction_constraint.min < 2.0 * 3.14159) OR (direction_constraint.min_closure = open); WR5: ((direction_constraint.max - direction_constraint.min < 2.0 * 3.14159) OR (direction_constraint.max_closure = open)) OR (direction_constraint.min = -3.14159); WR6: (((real_min(distance_constraint) > 0.0) OR max_exists(distance_constraint)) OR (direction_constraint.max - direction_constraint.min < 2.0 * 3.14159)) OR (direction_constraint.max_closure = open); END_ENTITY; ENTITY poly_loop SUBTYPE OF (loop, geometric_representation_item); polygon : LIST [3:?] OF UNIQUE cartesian_point; END_ENTITY; -- IN AP242 ENTITY polygonal_area SUBTYPE OF (primitive_2d); bounds : LIST [3:?] OF UNIQUE cartesian_point; END_ENTITY; ENTITY polyline SUBTYPE OF (bounded_curve); points : LIST [2:?] OF cartesian_point; END_ENTITY; ENTITY position_tolerance SUBTYPE OF (geometric_tolerance); END_ENTITY; -- IN AP203e2/AP242 ENTITY positioned_sketch SUBTYPE OF (geometric_representation_item); sketch_basis : sketch_basis_select; auxiliary_elements : SET [0:?] OF auxiliary_geometric_representation_item; WHERE WR1: NOT (('STEP_MERGED_CAD_SCHEMA.CURVE_BOUNDED_SURFACE' IN TYPEOF(sketch_basis)) AND NOT ('STEP_MERGED_CAD_SCHEMA.PLANE' IN TYPEOF(sketch_basis\curve_bounded_surface.basis_surface))); WR2: NOT (('STEP_MERGED_CAD_SCHEMA.FACE_SURFACE' IN TYPEOF(sketch_basis)) AND NOT ('STEP_MERGED_CAD_SCHEMA.PLANE' IN TYPEOF(sketch_basis\face_surface.face_geometry))); WR3: SIZEOF(QUERY (q <* auxiliary_elements| (SIZEOF(TYPEOF(q) * [ 'STEP_MERGED_CAD_SCHEMA.POINT', 'STEP_MERGED_CAD_SCHEMA.CURVE' ]) = 0))) = 0; WR4: SIZEOF(QUERY (q <* auxiliary_elements| (q\geometric_representation_item.dim <> 3))) = 0; END_ENTITY; -- IN AP214/AP242 ENTITY power_expression SUBTYPE OF (binary_numeric_expression); END_ENTITY; -- IN AP203e2/AP242 ENTITY power_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.POWER_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; -- IN AP203e2/AP242 ENTITY power_unit SUBTYPE OF (derived_unit); WHERE WR1: derive_dimensional_exponents(SELF) = dimensions_for_si_unit(si_unit_name.watt); END_ENTITY; -- IN AP242 ENTITY pre_defined_character_glyph SUBTYPE OF (pre_defined_item); END_ENTITY; ENTITY pre_defined_colour SUBTYPE OF (pre_defined_item, colour); END_ENTITY; ENTITY pre_defined_curve_font SUBTYPE OF (pre_defined_item); END_ENTITY; ENTITY pre_defined_dimension_symbol SUBTYPE OF (pre_defined_symbol); WHERE WR1: SELF.name IN [ 'arc length', 'conical taper', 'counterbore', 'countersink', 'depth', 'diameter', 'plus minus', 'radius', 'slope', 'spherical diameter', 'spherical radius', 'square' ]; END_ENTITY; ENTITY pre_defined_geometrical_tolerance_symbol SUBTYPE OF (pre_defined_symbol); WHERE WR1: SELF.name IN [ 'angularity', 'basic dimension', 'blanked datum reference', 'circular runout', 'circularity', 'concentricity', 'cylindricity', 'datum target identification', 'diameter', 'filled datum reference', 'flatness', 'least material condition', 'maximum material condition', 'parallelism', 'perpendicularity', 'position', 'profile of a line', 'profile of a surface', 'projected tolerance zone', 'regardless of feature size', 'straightness', 'symmetry', 'total runout' ]; END_ENTITY; ENTITY pre_defined_item; name : label; END_ENTITY; ENTITY pre_defined_marker SUBTYPE OF (pre_defined_item); END_ENTITY; ENTITY pre_defined_point_marker_symbol SUBTYPE OF (pre_defined_marker, pre_defined_symbol); WHERE WR1: SELF.name IN [ 'asterisk', 'circle', 'dot', 'plus', 'square', 'triangle', 'x' ]; END_ENTITY; -- IN AP214 ENTITY pre_defined_presentation_style SUBTYPE OF (founded_item, pre_defined_item); END_ENTITY; ENTITY pre_defined_surface_condition_symbol SUBTYPE OF (pre_defined_symbol); WHERE WR1: SELF.name IN [ '000', '010', '020', '030', '040', '050', '060', '070', '001', '011', '021', '031', '041', '051', '061', '071', '100', '110', '120', '130', '140', '150', '160', '170', '101', '111', '121', '131', '141', '151', '161', '171', '200', '210', '220', '230', '240', '250', '260', '270', '201', '211', '221', '231', '241', '251', '261', '271' ]; END_ENTITY; -- IN AP203e2/AP242 ENTITY pre_defined_surface_side_style SUBTYPE OF (pre_defined_item); END_ENTITY; ENTITY pre_defined_symbol SUBTYPE OF (pre_defined_item); END_ENTITY; ENTITY pre_defined_terminator_symbol SUBTYPE OF (pre_defined_symbol); WHERE WR1: SELF.name IN [ 'blanked arrow', 'blanked box', 'blanked dot', 'blanked triangle', 'dimension origin', 'filled arrow', 'filled box', 'filled dot', 'integral symbol', 'open arrow', 'slash', 'unfilled arrow', 'unfilled triangle', 'filled triangle' ]; END_ENTITY; ENTITY pre_defined_text_font SUBTYPE OF (pre_defined_item); END_ENTITY; -- IN AP203e2/AP242 ENTITY pre_defined_tile SUBTYPE OF (pre_defined_item); END_ENTITY; ENTITY precision_qualifier; precision_value : INTEGER; END_ENTITY; -- IN AP203e2/AP242 ENTITY predefined_picture_representation_item SUBTYPE OF (picture_representation_item); WHERE WR1: SELF\representation_item.name IN pre_defined_picture_representation_types; END_ENTITY; -- IN AP242 ENTITY prescribed_path SUBTYPE OF (link_motion_representation_along_path); controlling_joints : OPTIONAL SET [1:6] OF kinematic_joint; END_ENTITY; ENTITY presentation_area SUBTYPE OF (presentation_representation); WHERE WR1: (SIZEOF(QUERY (ais <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'AREA_IN_SET.AREA')| (SIZEOF(USEDIN(ais, 'STEP_MERGED_CAD_SCHEMA.' + 'PRESENTATION_SIZE.UNIT')) = 1))) > 0) OR (SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PRESENTATION_SIZE.UNIT')) = 1); END_ENTITY; ENTITY presentation_layer_assignment; name : label; description : text; assigned_items : SET [1:?] OF layered_item; END_ENTITY; ENTITY presentation_representation SUPERTYPE OF (ONEOF(presentation_area, presentation_view)) SUBTYPE OF (representation); SELF\representation.context_of_items : geometric_representation_context; WHERE WR1: SELF\representation.context_of_items\geometric_representation_context.coordinate_space_dimension = 2; WR2: (('STEP_MERGED_CAD_SCHEMA.PRESENTATION_AREA' IN TYPEOF(SELF)) OR (SIZEOF(QUERY (prr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'REPRESENTATION_RELATIONSHIP.REP_2')| ('STEP_MERGED_CAD_SCHEMA.PRESENTATION_REPRESENTATION' IN TYPEOF(prr\representation_relationship.rep_1)))) > 0)) OR (SIZEOF(QUERY (rm <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'REPRESENTATION_MAP.' + 'MAPPED_REPRESENTATION')| (SIZEOF(QUERY (mi <* USEDIN(rm, 'STEP_MERGED_CAD_SCHEMA.' + 'MAPPED_ITEM.' + 'MAPPING_SOURCE')| (SIZEOF(QUERY (rep <* using_representations(mi)| ('STEP_MERGED_CAD_SCHEMA.' + 'PRESENTATION_REPRESENTATION' IN TYPEOF(rep)))) > 0))) > 0))) > 0); END_ENTITY; ENTITY presentation_set; INVERSE areas : SET [1:?] OF area_in_set FOR in_set; END_ENTITY; -- CASE DIFF IN AP214 ENTITY presentation_size; unit : presentation_size_assignment_select; size : planar_box; UNIQUE UR1 : unit; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.PRESENTATION_REPRESENTATION' IN TYPEOF(SELF.unit)) AND item_in_context(SELF.size, SELF.unit\representation.context_of_items) OR ('STEP_MERGED_CAD_SCHEMA.AREA_IN_SET' IN TYPEOF(SELF.unit)) AND (SIZEOF(QUERY (ais <* SELF.unit\area_in_set.in_set.areas| NOT item_in_context(SELF.size, ais.area\representation.context_of_items))) = 0); END_ENTITY; ENTITY presentation_style_assignment SUBTYPE OF (founded_item); styles : SET [1:?] OF presentation_style_select; WHERE WR1: SIZEOF(QUERY (style1 <* SELF.styles| NOT (SIZEOF(QUERY (style2 <* SELF.styles - style1| NOT ((TYPEOF(style1) <> TYPEOF(style2)) OR (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'SURFACE_STYLE_USAGE'), ('STEP_MERGED_CAD_SCHEMA.' + 'EXTERNALLY_DEFINED_STYLE') ] * TYPEOF(style1)) = 1)))) = 0))) = 0; WR2: SIZEOF(QUERY (style1 <* SELF.styles| ('STEP_MERGED_CAD_SCHEMA.SURFACE_STYLE_USAGE' IN TYPEOF(style1)))) <= 2; WR3: SIZEOF(QUERY (style1 <* SELF.styles| ('STEP_MERGED_CAD_SCHEMA.SURFACE_STYLE_USAGE' IN TYPEOF(style1)) AND (SIZEOF(QUERY (style2 <* SELF.styles - style1| ('STEP_MERGED_CAD_SCHEMA.SURFACE_STYLE_USAGE' IN TYPEOF(style2)) AND (((style1\surface_style_usage.side = both) OR (style2\surface_style_usage.side = both)) OR (style1\surface_style_usage.side = style2\surface_style_usage.side)))) > 0))) = 0; END_ENTITY; ENTITY presentation_style_by_context SUBTYPE OF (presentation_style_assignment); style_context : style_context_select; END_ENTITY; ENTITY presentation_view SUBTYPE OF (presentation_representation); END_ENTITY; ENTITY presented_item ABSTRACT SUPERTYPE; END_ENTITY; ENTITY presented_item_representation; presentation : presentation_representation_select; item : presented_item; END_ENTITY; -- IN AP203e2/AP242 ENTITY pressure_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.PRESSURE_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; -- IN AP203e2/AP242 ENTITY pressure_unit SUBTYPE OF (derived_unit); WHERE WR1: derive_dimensional_exponents(SELF) = dimensions_for_si_unit(si_unit_name.pascal); END_ENTITY; -- IN AP242 ENTITY previous_change_element_assignment SUBTYPE OF (group_assignment); items : SET [1:?] OF change_management_object; SELF\group_assignment.assigned_group : previous_element_assignment_select; END_ENTITY; -- IN AP242 ENTITY primitive_2d SUPERTYPE OF (ONEOF(circular_area, elliptic_area, rectangular_area, polygonal_area, half_space_2d)) SUBTYPE OF (geometric_representation_item); WHERE WR1: SELF\geometric_representation_item.dim = 2; END_ENTITY; -- IN AP242 ENTITY primitive_2d_with_inner_boundary SUBTYPE OF (complex_area, compound_representation_item); DERIVE inner_boundary : compound_inner_area_boundary := SELF\compound_representation_item.item_element; WHERE WR1: SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CIRCULAR_AREA', 'STEP_MERGED_CAD_SCHEMA.ELLIPTIC_AREA', 'STEP_MERGED_CAD_SCHEMA.RECTANGULAR_AREA', 'STEP_MERGED_CAD_SCHEMA.POLYGONAL_AREA', 'STEP_MERGED_CAD_SCHEMA.AREA_WITH_OUTER_BOUNDARY', 'STEP_MERGED_CAD_SCHEMA.PATH_AREA_WITH_PARAMETERS' ] * TYPEOF(SELF)) > 0; WR2: SIZEOF(QUERY (inner <* inner_boundary| ('STEP_MERGED_CAD_SCHEMA.PRIMITIVE_2D_WITH_INNER_BOUNDARY' IN TYPEOF(inner)))) = 0; WR3: open_path_based_inner_boundary(inner_boundary); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY prismatic_pair SUBTYPE OF (low_order_kinematic_pair); DERIVE SELF\low_order_kinematic_pair.r_x : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.r_y : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.r_z : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.t_x : BOOLEAN := TRUE; SELF\low_order_kinematic_pair.t_y : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.t_z : BOOLEAN := FALSE; END_ENTITY; -- IN AP214 ENTITY prismatic_pair_range SUBTYPE OF (simple_pair_range); SELF\simple_pair_range.applies_to_pair : prismatic_pair; lower_limit_actual_translation : translational_range_measure; upper_limit_actual_translation : translational_range_measure; WHERE wr1: (('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(lower_limit_actual_translation)) OR ('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(upper_limit_actual_translation))) XOR (lower_limit_actual_translation < upper_limit_actual_translation); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY prismatic_pair_value SUBTYPE OF (pair_value); actual_translation : length_measure; SELF\pair_value.applies_to_pair : prismatic_pair; END_ENTITY; -- IN AP242 ENTITY prismatic_pair_with_range SUBTYPE OF (prismatic_pair); lower_limit_actual_translation : OPTIONAL length_measure; upper_limit_actual_translation : OPTIONAL length_measure; WHERE WR1: (NOT EXISTS(lower_limit_actual_translation) OR NOT EXISTS(upper_limit_actual_translation)) XOR (lower_limit_actual_translation < upper_limit_actual_translation); END_ENTITY; -- IN AP203e2/AP242 ENTITY procedural_representation SUBTYPE OF (representation); SELF\representation.items : SET [1:?] OF procedural_representation_sequence; END_ENTITY; -- IN AP203e2/AP242 ENTITY procedural_representation_sequence SUBTYPE OF (representation_item); elements : LIST [1:?] OF representation_item; suppressed_items : SET [0:?] OF representation_item; rationale : text; WHERE WR1: SIZEOF(QUERY (q <* suppressed_items| NOT (q IN elements))) = 0; END_ENTITY; -- IN AP203e2/AP242 ENTITY procedural_shape_representation SUBTYPE OF (procedural_representation, shape_representation); SELF\representation.items : SET [1:?] OF procedural_shape_representation_sequence; END_ENTITY; -- DIFF IN AP203e2 -- IN AP203e2/AP242 ENTITY procedural_shape_representation_sequence SUBTYPE OF (geometric_representation_item, procedural_representation_sequence); SELF\procedural_representation_sequence.elements : LIST [1:?] OF shape_representation_item; END_ENTITY; -- IN AP214/AP242 ENTITY process_operation SUBTYPE OF (action_method); WHERE WR1: SIZEOF(QUERY (amr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.ACTION_METHOD_RELATIONSHIP.' + 'RELATING_METHOD')| NOT ('STEP_MERGED_CAD_SCHEMA.PROCESS_OPERATION' IN TYPEOF(amr\action_method_relationship.related_method)) OR (SELF :=: amr\action_method_relationship.related_method))) = 0; WR2: SIZEOF(QUERY (amr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.ACTION_METHOD_RELATIONSHIP.' + 'RELATED_METHOD')| NOT ('STEP_MERGED_CAD_SCHEMA.PROCESS_OPERATION' IN TYPEOF(amr\action_method_relationship.relating_method)) OR (SELF :=: amr\action_method_relationship.relating_method))) = 0; END_ENTITY; -- IN AP214/AP242 ENTITY process_plan SUBTYPE OF (action); WHERE WR1: SIZEOF(QUERY (ar <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ACTION_RELATIONSHIP.RELATED_ACTION')| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.PROCESS_PLAN', 'STEP_MERGED_CAD_SCHEMA.PRODUCT_PROCESS_PLAN' ] * TYPEOF(ar.relating_action)) <> 1))) = 0; WR2: SIZEOF(QUERY (ar <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ACTION_RELATIONSHIP.RELATING_ACTION')| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.PROCESS_PLAN', 'STEP_MERGED_CAD_SCHEMA.PRODUCT_PROCESS_PLAN' ] * TYPEOF(ar.related_action)) = 1) OR (ar.name = 'process operation occurrence') AND ('STEP_MERGED_CAD_SCHEMA.PROCESS_OPERATION' IN TYPEOF(ar.related_action.chosen_method)))) = SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ACTION_RELATIONSHIP.RELATING_ACTION')); END_ENTITY; -- IN AP214/AP242 ENTITY process_product_association; name : label; description : text; defined_product : characterized_product_definition; process : product_definition_process; END_ENTITY; -- IN AP214/AP242 ENTITY process_property_association; name : label; description : text; process : property_process; property_or_shape : property_or_shape_select; END_ENTITY; ENTITY product; id : identifier; name : label; description : OPTIONAL text; frame_of_reference : SET [1:?] OF product_context; END_ENTITY; -- IN AP242 ENTITY product_as_planned SUBTYPE OF (product_definition_formation); END_ENTITY; ENTITY product_category; name : label; description : OPTIONAL text; DERIVE id : identifier := get_id_value(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ID_ATTRIBUTE.IDENTIFIED_ITEM')) <= 1; END_ENTITY; -- IN AP214/AP242 ENTITY product_category_relationship; name : label; description : OPTIONAL text; category : product_category; sub_category : product_category; WHERE WR1: acyclic_product_category_relationship(SELF, [ SELF.sub_category ]); END_ENTITY; ENTITY product_class SUBTYPE OF (product_concept, characterized_object); END_ENTITY; -- CASE DIFF IN AP214 ENTITY product_concept; id : identifier; name : label; description : OPTIONAL text; market_context : product_concept_context; UNIQUE UR1 : id; END_ENTITY; ENTITY product_concept_context SUBTYPE OF (application_context_element); market_segment_type : label; END_ENTITY; ENTITY product_concept_feature; id : identifier; name : label; description : OPTIONAL text; END_ENTITY; ENTITY product_concept_feature_association; name : label; description : OPTIONAL text; concept : product_concept; feature : product_concept_feature; END_ENTITY; ENTITY product_concept_feature_category SUBTYPE OF (group); WHERE WR1: SIZEOF(QUERY (aga <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'GROUP_ASSIGNMENT.ASSIGNED_GROUP')| ('STEP_MERGED_CAD_SCHEMA.' + 'APPLIED_GROUP_ASSIGNMENT' IN TYPEOF(aga)) AND ((aga\group_assignment.role\object_role.name <> 'specification category member') OR (SIZEOF(QUERY (i <* aga\applied_group_assignment.items| ('STEP_MERGED_CAD_SCHEMA.' + 'PRODUCT_CONCEPT_FEATURE' IN TYPEOF(i)) AND NOT ('STEP_MERGED_CAD_SCHEMA.' + 'CONDITIONAL_CONCEPT_FEATURE' IN TYPEOF(i)))) <> SIZEOF(aga\applied_group_assignment.items))))) = 0; END_ENTITY; -- DIFF IN AP214 ENTITY product_concept_feature_category_usage SUBTYPE OF (group_assignment); items : SET [1:?] OF category_usage_item; SELF\group_assignment.assigned_group : product_concept_feature_category; WHERE WR1: SELF.role.name IN [ 'mandatory category usage', 'optional category usage' ]; END_ENTITY; ENTITY product_concept_relationship; name : label; description : OPTIONAL text; relating_product_concept : product_concept; related_product_concept : product_concept; END_ENTITY; ENTITY product_context SUBTYPE OF (application_context_element); discipline_type : label; END_ENTITY; -- IN AP242 ENTITY product_data_and_data_quality_relationship; description : text; product_data : product_definition; data_quality : data_quality_definition; END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY product_definition SUPERTYPE OF (ONEOF(composite_assembly_sequence_definition, laminate_table, ply_laminate_sequence_definition)); id : identifier; description : OPTIONAL text; formation : product_definition_formation; frame_of_reference : product_definition_context; DERIVE name : label := get_name_value(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'NAME_ATTRIBUTE.NAMED_ITEM')) <= 1; END_ENTITY; ENTITY product_definition_context SUBTYPE OF (application_context_element); life_cycle_stage : label; END_ENTITY; ENTITY product_definition_context_association; definition : product_definition; frame_of_reference : product_definition_context; role : product_definition_context_role; END_ENTITY; ENTITY product_definition_context_role; name : label; description : OPTIONAL text; END_ENTITY; ENTITY product_definition_effectivity SUBTYPE OF (effectivity); usage : product_definition_relationship; WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'EFFECTIVITY_ASSIGNMENT.ASSIGNED_EFFECTIVITY')) = 0; END_ENTITY; -- IN AP203e2/AP242 ENTITY product_definition_element_relationship SUBTYPE OF (group); END_ENTITY; -- CASE DIFF IN AP214 ENTITY product_definition_formation; id : identifier; description : OPTIONAL text; of_product : product; UNIQUE UR1 : id, of_product; END_ENTITY; ENTITY product_definition_formation_relationship; id : identifier; name : label; description : OPTIONAL text; relating_product_definition_formation : product_definition_formation; related_product_definition_formation : product_definition_formation; END_ENTITY; ENTITY product_definition_formation_with_specified_source SUBTYPE OF (product_definition_formation); make_or_buy : source; END_ENTITY; -- IN AP203e2/AP242 ENTITY product_definition_group_assignment SUBTYPE OF (group_assignment); items : SET [1:1] OF product_definition_or_product_definition_relationship; SELF\group_assignment.assigned_group : product_definition_element_relationship; END_ENTITY; -- IN AP242 ENTITY product_definition_kinematics SUBTYPE OF (property_definition); SELF\property_definition.definition : product_definition; INVERSE representation_relation : kinematic_property_definition_representation FOR definition; UNIQUE UR1 : definition; END_ENTITY; ENTITY product_definition_occurrence_relationship; name : label; description : OPTIONAL text; occurrence : product_definition; occurrence_usage : assembly_component_usage; WHERE WR1: occurrence_usage.relating_product_definition :<>: occurrence; WR2: occurrence_usage.related_product_definition :<>: occurrence; WR3: occurrence.formation :=: occurrence_usage.related_product_definition.formation; END_ENTITY; -- IN AP214/AP242 ENTITY product_definition_process SUBTYPE OF (action); identification : identifier; INVERSE product_definitions : SET [1:?] OF process_product_association FOR process; END_ENTITY; -- IN AP242 ENTITY product_definition_reference SUBTYPE OF (generic_product_definition_reference); product_id : identifier; product_definition_formation_id : identifier; product_definition_id : identifier; id_owning_organization_name : OPTIONAL label; END_ENTITY; -- IN AP242 ENTITY product_definition_reference_with_local_representation SUBTYPE OF (generic_product_definition_reference, product_definition); END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY product_definition_relationship; id : identifier; name : label; description : OPTIONAL text; relating_product_definition : product_definition_or_reference; related_product_definition : product_definition_or_reference; END_ENTITY; -- IN AP242 ENTITY product_definition_relationship_kinematics SUBTYPE OF (property_definition); SELF\property_definition.definition : product_definition_relationship; UNIQUE UR1 : definition; END_ENTITY; -- IN AP214/AP242 ENTITY product_definition_resource SUBTYPE OF (action_resource, product_definition); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'REQUIREMENT_FOR_ACTION_RESOURCE.RESOURCES')) > 0; WR2: SELF.frame_of_reference.name IN [ 'part_definition', 'part occurrence', 'physical occurrence' ]; END_ENTITY; -- CASE DIFF IN AP214 ENTITY product_definition_shape SUBTYPE OF (property_definition); UNIQUE UR1 : SELF\property_definition.definition; WHERE WR1: SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CHARACTERIZED_PRODUCT_DEFINITION', 'STEP_MERGED_CAD_SCHEMA.CHARACTERIZED_OBJECT' ] * TYPEOF(SELF\property_definition.definition)) > 0; END_ENTITY; ENTITY product_definition_substitute; description : OPTIONAL text; context_relationship : product_definition_relationship; substitute_definition : product_definition; DERIVE name : label := get_name_value(SELF); WHERE WR1: context_relationship.related_product_definition :<>: substitute_definition; WR2: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'NAME_ATTRIBUTE.NAMED_ITEM')) <= 1; END_ENTITY; -- CASE DIFF IN AP214 ENTITY product_definition_usage SUPERTYPE OF (ONEOF(make_from_usage_option, assembly_component_usage)) SUBTYPE OF (product_definition_relationship); UNIQUE UR1 : SELF\product_definition_relationship.id, SELF\product_definition_relationship.relating_product_definition, SELF\product_definition_relationship.related_product_definition; WHERE WR1: acyclic_product_definition_relationship(SELF, [ SELF\product_definition_relationship.related_product_definition ], 'STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_USAGE'); END_ENTITY; ENTITY product_definition_with_associated_documents SUBTYPE OF (product_definition); documentation_ids : SET [1:?] OF document; END_ENTITY; -- IN AP242 ENTITY product_design_to_individual SUBTYPE OF (product_relationship); DERIVE individual_product : product := SELF\product_relationship.related_product; product_design : product := SELF\product_relationship.relating_product; END_ENTITY; -- IN AP242 ENTITY product_design_version_to_individual SUBTYPE OF (product_definition_formation_relationship); DERIVE individual_product : product_definition_formation := SELF\product_definition_formation_relationship.related_product_definition_formation; product_design_version : product_definition_formation := SELF\product_definition_formation_relationship.relating_product_definition_formation; END_ENTITY; -- DIFF IN AP214 ENTITY product_identification SUBTYPE OF (configuration_item, characterized_object); SELF\configuration_item.item_concept : product_class; WHERE WR1: SIZEOF(QUERY (cd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.CONFIGURATION_DESIGN.CONFIGURATION')| ('STEP_MERGED_CAD_SCHEMA.' + 'PRODUCT_DEFINITION_FORMATION' IN TYPEOF(cd.design)) AND (SIZEOF(QUERY (prpc <* USEDIN(cd.design\product_definition_formation.of_product, 'STEP_MERGED_CAD_SCHEMA.PRODUCT_RELATED_PRODUCT_CATEGORY.PRODUCTS')| (prpc.name IN [ 'part', 'raw material', 'tool' ]))) > 0))) <= 1; WR2: NOT ('STEP_MERGED_CAD_SCHEMA.' + 'CONFIGURABLE_ITEM' IN TYPEOF(SELF)) XOR ('STEP_MERGED_CAD_SCHEMA.' + 'PRODUCT_SPECIFICATION' IN TYPEOF(SELF)); END_ENTITY; -- IN AP203e2/AP242 ENTITY product_material_composition_relationship SUBTYPE OF (product_definition_relationship); class : label; constituent_amount : SET [1:?] OF characterized_product_composition_value; composition_basis : label; determination_method : text; END_ENTITY; -- IN AP242 ENTITY product_planned_to_realized SUBTYPE OF (product_definition_formation_relationship); DERIVE planned_product : product_definition_formation := SELF\product_definition_formation_relationship.relating_product_definition_formation; realized_product : product_definition_formation := SELF\product_definition_formation_relationship.related_product_definition_formation; END_ENTITY; -- IN AP214/AP242 ENTITY product_process_plan SUBTYPE OF (product_definition_process); WHERE WR1: SIZEOF(QUERY (ar <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ACTION_RELATIONSHIP.RELATED_ACTION')| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.PROCESS_PLAN', 'STEP_MERGED_CAD_SCHEMA.PRODUCT_PROCESS_PLAN' ] * TYPEOF(ar.relating_action)) <> 1))) = 0; WR2: SIZEOF(QUERY (ar <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ACTION_RELATIONSHIP.RELATING_ACTION')| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.PROCESS_PLAN', 'STEP_MERGED_CAD_SCHEMA.PRODUCT_PROCESS_PLAN' ] * TYPEOF(ar.related_action)) = 1) OR (ar.name = 'process operation occurrence') AND ('STEP_MERGED_CAD_SCHEMA.PROCESS_OPERATION' IN TYPEOF(ar.related_action.chosen_method)))) = SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ACTION_RELATIONSHIP.RELATING_ACTION')); WR3: SIZEOF(QUERY (ppa <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PROCESS_PRODUCT_ASSOCIATION.PROCESS')| (ppa.name <> 'produced output') OR NOT ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION' IN TYPEOF(ppa.defined_product)))) = 0; END_ENTITY; ENTITY product_related_product_category SUBTYPE OF (product_category); products : SET [1:?] OF product; END_ENTITY; -- IN AP242 ENTITY product_relationship; id : identifier; name : label; description : OPTIONAL text; relating_product : product; related_product : product; END_ENTITY; ENTITY product_specification SUBTYPE OF (product_identification, configurable_item); END_ENTITY; -- IN AP242 ENTITY profile_floor SUBTYPE OF (shape_aspect); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_DEFINITION' IN TYPEOF(SELF.of_shape.definition); WR2: SELF.description IN [ 'planar', 'complex', 'through' ]; WR3: NOT (SELF.description IN [ 'planar', 'complex' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1))) = 0); WR4: NOT (SELF.description IN [ 'planar', 'complex' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) >= 1) AND (SIZEOF(impl_rep.used_representation.items) <= 2))) = 0))) = 0); WR5: NOT (SELF.description = 'through') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 0))) = 0); WR6: NOT (SELF.description IN [ 'planar', 'complex' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'radius'))) = 1))) = 0))) = 0); WR7: SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATING_SHAPE_ASPECT')| (sar.description = 'profile floor usage') AND ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.OUTSIDE_PROFILE' IN TYPEOF(fcr.related_shape_aspect.of_shape.definition)) AND ('STEP_MERGED_CAD_SCHEMA.PROFILE_FLOOR' IN TYPEOF(fcr.relating_shape_aspect)))) >= 1; WR8: NOT (SELF.description IN [ 'planar', 'complex' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND (it.name = 'shape profile floor orientation')) AND (it.description IN [ 'shape profile start', 'shape profile end' ]))) = 1))) = 0))) = 0); WR9: NOT (SELF.description = 'complex') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.FACE_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'floor'))) = 1))) = 1); WR10: NOT (SELF.description = 'planar') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PLANAR_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'floor'))) = 1))) = 1); END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY projected_zone_definition SUBTYPE OF (tolerance_zone_definition); projection_end : shape_aspect; projected_length : length_measure_with_unit; WHERE WR1: ('NUMBER' IN TYPEOF(projected_length\measure_with_unit.value_component)) AND (projected_length\measure_with_unit.value_component > 0.0); WR2: derive_dimensional_exponents(projected_length\measure_with_unit.unit_component) = dimensional_exponents(1, 0, 0, 0, 0, 0, 0); END_ENTITY; -- IN AP242 ENTITY projected_zone_definition_with_offset SUBTYPE OF (projected_zone_definition); offset : length_measure_with_unit; END_ENTITY; ENTITY projection_curve SUBTYPE OF (annotation_curve_occurrence); END_ENTITY; ENTITY projection_directed_callout SUBTYPE OF (draughting_callout); WHERE WR1: SIZEOF(QUERY (p_1 <* SELF\draughting_callout.contents| ('STEP_MERGED_CAD_SCHEMA.PROJECTION_CURVE' IN TYPEOF(p_1)))) <= 2; WR2: SIZEOF(SELF\draughting_callout.contents) >= 2; END_ENTITY; ENTITY promissory_usage_occurrence SUBTYPE OF (assembly_component_usage); END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY property_definition SUPERTYPE OF (ONEOF(product_definition_kinematics, product_definition_relationship_kinematics, product_definition_shape)); name : label; description : OPTIONAL text; definition : characterized_definition; DERIVE id : identifier := get_id_value(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ID_ATTRIBUTE.IDENTIFIED_ITEM')) <= 1; END_ENTITY; ENTITY property_definition_relationship; name : label; description : text; relating_property_definition : property_definition; related_property_definition : property_definition; END_ENTITY; ENTITY property_definition_representation; definition : represented_definition; used_representation : representation; DERIVE description : text := get_description_value(SELF); name : label := get_name_value(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'DESCRIPTION_ATTRIBUTE.DESCRIBED_ITEM')) <= 1; WR2: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'NAME_ATTRIBUTE.NAMED_ITEM')) <= 1; END_ENTITY; -- IN AP214/AP242 ENTITY property_process SUBTYPE OF (action); identification : identifier; INVERSE properties : SET [1:?] OF process_property_association FOR process; END_ENTITY; -- IN AP242 ENTITY protrusion SUBTYPE OF (feature_definition); WHERE WR1: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) = 1))) = 0))) = 0; WR2: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'shape volume occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'volume shape usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| (sdr.relating_shape_aspect.description = 'volume shape'))) = 1))) = 1))) = 0; WR3: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.PLANAR_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'maximum feature limit'))) >= 0; END_ENTITY; ENTITY qualified_representation_item SUBTYPE OF (representation_item); qualifiers : SET [1:?] OF value_qualifier; WHERE WR1: SIZEOF(QUERY (temp <* qualifiers| ('STEP_MERGED_CAD_SCHEMA.PRECISION_QUALIFIER' IN TYPEOF(temp)))) < 2; END_ENTITY; ENTITY qualitative_uncertainty SUBTYPE OF (uncertainty_qualifier); uncertainty_value : text; END_ENTITY; ENTITY quantified_assembly_component_usage SUBTYPE OF (assembly_component_usage); quantity : measure_with_unit; WHERE WR1: NOT ('NUMBER' IN TYPEOF(quantity.value_component)) OR (quantity.value_component > 0); END_ENTITY; -- IN AP242 ENTITY quantifier_expression ABSTRACT SUPERTYPE SUBTYPE OF (multiple_arity_generic_expression); variables : LIST [1:?] OF UNIQUE generic_variable; WHERE WR1: SIZEOF(QUERY (vrbl <* variables| NOT (vrbl IN SELF\multiple_arity_generic_expression.operands))) = 0; WR2: SIZEOF(QUERY (vrbl <* variables| NOT (schema_prefix + 'BOUND_VARIABLE_SEMANTICS' IN TYPEOF(vrbl.interpretation.semantics)))) = 0; END_ENTITY; ENTITY quasi_uniform_curve SUBTYPE OF (b_spline_curve); END_ENTITY; ENTITY quasi_uniform_surface SUBTYPE OF (b_spline_surface); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY rack_and_pinion_pair SUBTYPE OF (low_order_kinematic_pair_with_motion_coupling); pinion_radius : length_measure; WHERE WR1: SIZEOF(QUERY (lr <* SELF\kinematic_pair.associated_link_representations_1| NOT ('STEP_MERGED_CAD_SCHEMA.RIGID_LINK_REPRESENTATION' IN TYPEOF(lr)))) = 0; END_ENTITY; -- IN AP214 ENTITY rack_and_pinion_pair_range SUBTYPE OF (simple_pair_range); SELF\simple_pair_range.applies_to_pair : rack_and_pinion_pair; lower_limit_rack_displacement : translational_range_measure; upper_limit_rack_displacement : translational_range_measure; WHERE wr1: (('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(lower_limit_rack_displacement)) OR ('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(upper_limit_rack_displacement))) XOR (lower_limit_rack_displacement < upper_limit_rack_displacement); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY rack_and_pinion_pair_value SUBTYPE OF (pair_value); actual_displacement : length_measure; SELF\pair_value.applies_to_pair : rack_and_pinion_pair; DERIVE actual_rotation : plane_angle_measure := 0.0; END_ENTITY; -- IN AP242 ENTITY rack_and_pinion_pair_with_range SUBTYPE OF (rack_and_pinion_pair); lower_limit_rack_displacement : OPTIONAL length_measure; upper_limit_rack_displacement : OPTIONAL length_measure; WHERE WR1: (NOT EXISTS(lower_limit_rack_displacement) OR NOT EXISTS(upper_limit_rack_displacement)) XOR (lower_limit_rack_displacement < upper_limit_rack_displacement); END_ENTITY; -- IN AP203e2/AP242 ENTITY radioactivity_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.RADIOACTIVITY_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; -- IN AP203e2/AP242 ENTITY radioactivity_unit SUBTYPE OF (derived_unit); WHERE WR1: derive_dimensional_exponents(SELF) = dimensions_for_si_unit(si_unit_name.becquerel); END_ENTITY; ENTITY radius_dimension SUBTYPE OF (dimension_curve_directed_callout); WHERE WR1: SIZEOF(QUERY (con <* SELF.contents| ('STEP_MERGED_CAD_SCHEMA.PROJECTION_CURVE' IN TYPEOF(con)))) <= 1; END_ENTITY; -- IN AP242 ENTITY radius_geometric_constraint SUBTYPE OF (explicit_geometric_constraint); SELF\explicit_constraint.constrained_elements : SET [1:?] OF radial_geometry_constraint_element; WHERE WR1: SIZEOF(SELF\explicit_constraint.reference_elements) = 0; END_ENTITY; -- IN AP203e2/AP242 ENTITY range_characteristic SUBTYPE OF (representation, descriptive_representation_item); WHERE WR1: NOT (SELF\representation.name IN [ 'tolerance', 'minimum tolerance', 'maximum tolerance', 'nominal tolerance', 'plus minus tolerance', 'symmetrical tolerance', 'statistical tolerance' ]); END_ENTITY; ENTITY ratio_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.RATIO_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; ENTITY ratio_unit SUBTYPE OF (named_unit); WHERE WR1: ((((((SELF\named_unit.dimensions.length_exponent = 0.0) AND (SELF\named_unit.dimensions.mass_exponent = 0.0)) AND (SELF\named_unit.dimensions.time_exponent = 0.0)) AND (SELF\named_unit.dimensions.electric_current_exponent = 0.0)) AND (SELF\named_unit.dimensions.thermodynamic_temperature_exponent = 0.0)) AND (SELF\named_unit.dimensions.amount_of_substance_exponent = 0.0)) AND (SELF\named_unit.dimensions.luminous_intensity_exponent = 0.0); END_ENTITY; ENTITY rational_b_spline_curve SUBTYPE OF (b_spline_curve); weights_data : LIST [2:?] OF REAL; DERIVE weights : ARRAY [0:upper_index_on_control_points] OF REAL := list_to_array(weights_data, 0, upper_index_on_control_points); WHERE WR1: SIZEOF(weights_data) = SIZEOF(SELF\b_spline_curve.control_points_list); WR2: curve_weights_positive(SELF); END_ENTITY; ENTITY rational_b_spline_surface SUBTYPE OF (b_spline_surface); weights_data : LIST [2:?] OF LIST [2:?] OF REAL; DERIVE weights : ARRAY [0:u_upper] OF ARRAY [0:v_upper] OF REAL := make_array_of_array(weights_data, 0, u_upper, 0, v_upper); WHERE WR1: (SIZEOF(weights_data) = SIZEOF(SELF\b_spline_surface.control_points_list)) AND (SIZEOF(weights_data[1]) = SIZEOF(SELF\b_spline_surface.control_points_list[1])); WR2: surface_weights_positive(SELF); END_ENTITY; -- IN AP203e2/AP242 ENTITY rational_representation_item SUBTYPE OF (representation_item, slash_expression); WHERE WR1: SIZEOF(QUERY (operand <* SELF\binary_generic_expression.operands| NOT ('STEP_MERGED_CAD_SCHEMA.INT_LITERAL' IN TYPEOF(operand)))) = 0; END_ENTITY; -- IN AP242 ENTITY rationalize_function SUBTYPE OF (maths_function, unary_generic_expression); SELF\unary_generic_expression.operand : maths_function; DERIVE fun : maths_function := SELF\unary_generic_expression.operand; WHERE WR1: (space_dimension(fun.domain) = 1) AND (space_dimension(fun.range) = 1); WR2: number_tuple_subspace_check(factor1(fun.range)); WR3: space_dimension(factor1(fun.range)) > 1; END_ENTITY; -- IN AP214/AP242 ENTITY real_defined_function ABSTRACT SUPERTYPE SUBTYPE OF (numeric_defined_function); END_ENTITY; -- IN AP242 ENTITY real_interval_from_min SUBTYPE OF (maths_space, generic_literal); min : REAL; min_closure : open_closed; END_ENTITY; -- IN AP242 ENTITY real_interval_to_max SUBTYPE OF (maths_space, generic_literal); max : REAL; max_closure : open_closed; END_ENTITY; ENTITY real_literal SUBTYPE OF (literal_number); SELF\literal_number.the_value : REAL; END_ENTITY; -- IN AP214/AP242 ENTITY real_numeric_variable SUBTYPE OF (numeric_variable); END_ENTITY; -- IN AP203e2/AP242 ENTITY real_representation_item SUBTYPE OF (representation_item, real_literal); END_ENTITY; -- IN AP242 ENTITY real_tuple_literal SUBTYPE OF (generic_literal); lit_value : LIST [1:?] OF REAL; END_ENTITY; -- IN AP242 ENTITY rectangular_area SUBTYPE OF (primitive_2d); position : axis2_placement_2d; x : positive_length_measure; y : positive_length_measure; END_ENTITY; -- IN AP242 ENTITY rectangular_array_placement_group_component SUBTYPE OF (array_placement_group); END_ENTITY; -- IN AP214/AP242 ENTITY rectangular_closed_profile SUBTYPE OF (shape_aspect); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_DEFINITION' IN TYPEOF(SELF.of_shape.definition); WR2: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1))) = 0; WR3: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT ((SIZEOF(impl_rep.used_representation.items) >= 3) AND (SIZEOF(impl_rep.used_representation.items) <= 4)))) = 0))) = 0; WR4: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (srwp_i <* pdr.used_representation.items| (((srwp_i.name = 'orientation') OR (srwp_i.name = 'length')) OR (srwp_i.name = 'width')) OR (srwp_i.name = 'corner radius'))) = SIZEOF(pdr.used_representation.items)))) = 1))) = 1; WR5: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.PLACEMENT' IN TYPEOF(it)) AND (it.name = 'orientation'))) = 1))) = 0))) = 0; WR6: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'width'))) = 1))) = 0))) = 0; WR7: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'length'))) = 1))) = 0))) = 0; WR8: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'corner radius'))) <= 1))) = 0))) = 0; END_ENTITY; ENTITY rectangular_composite_surface SUBTYPE OF (bounded_surface); segments : LIST [1:?] OF LIST [1:?] OF surface_patch; DERIVE n_u : INTEGER := SIZEOF(segments); n_v : INTEGER := SIZEOF(segments[1]); WHERE WR1: SIZEOF(QUERY (s <* segments| (n_v <> SIZEOF(s)))) = 0; WR2: constraints_rectangular_composite_surface(SELF); END_ENTITY; -- IN AP242 ENTITY rectangular_composite_surface_transition_locator SUBTYPE OF (founded_item); basis_surface : rectangular_composite_surface; surface_parameter : u_or_v_parameter; u_transition_index : INTEGER; v_transition_index : INTEGER; WHERE WR1: SIZEOF(using_representations(SELF.basis_surface) * relating_shape_representations_of_extreme_values(SELF)) > 0; END_ENTITY; -- IN AP214/AP242 ENTITY rectangular_pattern SUBTYPE OF (replicate_feature); WHERE WR1: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.' + 'RELATING_SHAPE_ASPECT')| ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT' IN TYPEOF(sdr.related_shape_aspect)))) = 1))) <= 5))) = 0; WR2: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.DIRECTION_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'row layout direction'))) = 1))) = 0; WR3: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.DIRECTION_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'column layout direction'))) = 1))) = 0; WR4: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1))) = 0; WR5: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) = 5))) = 0))) = 0; WR6: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND ('STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE' IN TYPEOF(it\measure_with_unit.value_component))) AND (it.name = 'number of rows'))) = 1))) = 0))) = 0; WR7: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND ('STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE' IN TYPEOF(it\measure_with_unit.value_component))) AND (it.name = 'number of columns'))) = 1))) = 0))) = 0; WR8: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'row spacing'))) = 1))) = 0))) = 0; WR9: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'column spacing'))) = 1))) = 0))) = 0; WR10: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.PLACEMENT' IN TYPEOF(it)) AND (it.name = 'orientation'))) = 1))) = 0))) = 0; END_ENTITY; ENTITY rectangular_trimmed_surface SUBTYPE OF (bounded_surface); basis_surface : surface; u1 : parameter_value; u2 : parameter_value; v1 : parameter_value; v2 : parameter_value; usense : BOOLEAN; vsense : BOOLEAN; WHERE WR1: u1 <> u2; WR2: v1 <> v2; WR3: (('STEP_MERGED_CAD_SCHEMA.ELEMENTARY_SURFACE' IN TYPEOF(basis_surface)) AND NOT ('STEP_MERGED_CAD_SCHEMA.PLANE' IN TYPEOF(basis_surface)) OR ('STEP_MERGED_CAD_SCHEMA.SURFACE_OF_REVOLUTION' IN TYPEOF(basis_surface))) OR (usense = (u2 > u1)); WR4: (('STEP_MERGED_CAD_SCHEMA.SPHERICAL_SURFACE' IN TYPEOF(basis_surface)) OR ('STEP_MERGED_CAD_SCHEMA.TOROIDAL_SURFACE' IN TYPEOF(basis_surface))) OR (vsense = (v2 > v1)); END_ENTITY; ENTITY referenced_modified_datum SUBTYPE OF (datum_reference); modifier : limit_condition; END_ENTITY; -- IN AP242 ENTITY reindexed_array_function SUBTYPE OF (maths_function, unary_generic_expression); starting_indices : LIST [1:?] OF INTEGER; SELF\unary_generic_expression.operand : maths_function; WHERE WR1: function_is_array(SELF\unary_generic_expression.operand); WR2: SIZEOF(starting_indices) = SIZEOF(shape_of_array(SELF\unary_generic_expression.operand)); END_ENTITY; ENTITY relative_event_occurrence SUBTYPE OF (event_occurrence); base_event : event_occurrence; offset : time_measure_with_unit; END_ENTITY; -- IN AP242 ENTITY removal_volume SUBTYPE OF (feature_definition); WHERE WR1: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) = 1))) = 0))) = 0; WR2: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'shape volume occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.' + 'RELATED_SHAPE_ASPECT')| (sar.description = 'volume shape usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| (sdr.relating_shape_aspect.description = 'volume shape'))) = 1))) = 1))) = 0; END_ENTITY; ENTITY rep_item_group SUBTYPE OF (group, representation_item); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PRESENTATION_LAYER_ASSIGNMENT.' + 'ASSIGNED_ITEMS')) > 0; WR2: SIZEOF(QUERY (r <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'REPRESENTATION.' + 'ITEMS')| (r.name = 'group representation'))) > 0; WR3: SIZEOF(QUERY (ga <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'GROUP_ASSIGNMENT.' + 'ASSIGNED_GROUP')| (ga.role.name <> 'group membership'))) = 0; WR4: SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'GEOMETRIC_REPRESENTATION_ITEM'), ('STEP_MERGED_CAD_SCHEMA.' + 'TOPOLOGICAL_REPRESENTATION_ITEM'), ('STEP_MERGED_CAD_SCHEMA.' + 'MAPPED_ITEM'), ('STEP_MERGED_CAD_SCHEMA.' + 'STYLED_ITEM') ] * TYPEOF(SELF)) = 1; END_ENTITY; -- IN AP242 ENTITY repackaging_function SUBTYPE OF (maths_function, unary_generic_expression); input_repack : repackage_options; output_repack : repackage_options; selected_output : nonnegative_integer; SELF\unary_generic_expression.operand : maths_function; WHERE WR1: (input_repack <> ro_wrap_as_tuple) OR (space_dimension(operand.domain) = 1) AND (schema_prefix + 'TUPLE_SPACE' IN TYPEOF(factor1(operand.domain))); WR2: (output_repack <> ro_unwrap_tuple) OR (space_dimension(operand.range) = 1) AND (schema_prefix + 'TUPLE_SPACE' IN TYPEOF(factor1(operand.range))); WR3: selected_output <= space_dimension(repackage(operand.range, output_repack)); END_ENTITY; ENTITY reparametrised_composite_curve_segment SUBTYPE OF (composite_curve_segment); param_length : parameter_value; WHERE WR1: param_length > 0.0; END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY replicate_feature SUPERTYPE OF (ONEOF(circular_pattern, rectangular_pattern, feature_pattern)) SUBTYPE OF (feature_definition); WHERE WR1: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1))) = 0; WR2: SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.' + 'RELATING_SHAPE_ASPECT')| ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.REPLICATE_FEATURE', 'STEP_MERGED_CAD_SCHEMA.INSTANCED_FEATURE' ] * TYPEOF(fcr.related_shape_aspect)) >= 1) AND (fcr.name = 'pattern basis'))) = 1; WR3: SIZEOF(QUERY (sar <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.' + 'RELATING_SHAPE_ASPECT')| NOT ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))) + SIZEOF(QUERY (sar <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.' + 'RELATED_SHAPE_ASPECT')| NOT ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))) = 0; END_ENTITY; -- IN AP242 ENTITY repositioned_neutral_sketch SUBTYPE OF (mapped_item, geometric_representation_item); DERIVE map : representation_map := SELF\mapped_item.mapping_source; WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.NEUTRAL_SKETCH_REPRESENTATION' IN TYPEOF(map.mapped_representation); WR2: 'STEP_MERGED_CAD_SCHEMA.AXIS2_PLACEMENT_2D' IN TYPEOF(map.mapping_origin); WR3: 'STEP_MERGED_CAD_SCHEMA.AXIS2_PLACEMENT_3D' IN TYPEOF(SELF\mapped_item.mapping_target); END_ENTITY; -- IN AP242 ENTITY repositioned_tessellated_item SUBTYPE OF (tessellated_item); location : axis2_placement_3d; WHERE WR1: NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.TESSELLATED_CURVE_SET', 'STEP_MERGED_CAD_SCHEMA.TESSELLATED_GEOMETRIC_SET', 'STEP_MERGED_CAD_SCHEMA.TESSELLATED_POINT_SET', 'STEP_MERGED_CAD_SCHEMA.TESSELLATED_SURFACE_SET', 'STEP_MERGED_CAD_SCHEMA.TESSELLATED_SHELL', 'STEP_MERGED_CAD_SCHEMA.TESSELLATED_SOLID', 'STEP_MERGED_CAD_SCHEMA.TESSELLATED_WIRE' ] * TYPEOF(SELF)) = 0); END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY representation SUPERTYPE OF ((ONEOF(interpolated_configuration_representation, link_motion_representation_along_path) ANDOR ONEOF(kinematic_link_representation, kinematic_topology_structure, kinematic_topology_directed_structure, kinematic_topology_network_structure, mechanism_representation, shape_representation)) ANDOR ONEOF(kinematic_topology_structure, kinematic_topology_directed_structure, kinematic_topology_network_structure)); name : label; items : SET [1:?] OF representation_item; context_of_items : representation_context; DERIVE description : text := get_description_value(SELF); id : identifier := get_id_value(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ID_ATTRIBUTE.IDENTIFIED_ITEM')) <= 1; WR2: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'DESCRIPTION_ATTRIBUTE.DESCRIBED_ITEM')) <= 1; END_ENTITY; ENTITY representation_context; context_identifier : identifier; context_type : text; INVERSE representations_in_context : SET [1:?] OF representation FOR context_of_items; END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY representation_item SUPERTYPE OF ((ONEOF(binary_representation_item, compound_representation_item, mapped_item, value_representation_item) ANDOR ONEOF(mapped_item, styled_item)) ANDOR ONEOF(boolean_representation_item, date_representation_item, date_time_representation_item, integer_representation_item, logical_representation_item, rational_representation_item, real_representation_item)); name : label; WHERE WR1: SIZEOF(using_representations(SELF)) > 0; END_ENTITY; -- IN AP203e2/AP242 ENTITY representation_item_relationship; name : label; description : OPTIONAL text; relating_representation_item : representation_item; related_representation_item : representation_item; END_ENTITY; ENTITY representation_map; mapping_origin : representation_item; mapped_representation : representation; INVERSE map_usage : SET [1:?] OF mapped_item FOR mapping_source; WHERE WR1: item_in_context(SELF.mapping_origin, SELF.mapped_representation.context_of_items); END_ENTITY; -- IN AP242 ENTITY representation_proxy_item SUBTYPE OF (representation_item); END_ENTITY; ENTITY representation_relationship; name : label; description : OPTIONAL text; rep_1 : representation; rep_2 : representation; END_ENTITY; ENTITY representation_relationship_with_transformation SUBTYPE OF (representation_relationship); transformation_operator : transformation; WHERE WR1: SELF\representation_relationship.rep_1.context_of_items :<>: SELF\representation_relationship.rep_2.context_of_items; END_ENTITY; -- IN AP242 ENTITY representative_shape_representation SUBTYPE OF (shape_representation); WHERE WR1: unique_in_product_definition(SELF) OR unique_in_shape_aspect(SELF); END_ENTITY; -- IN AP203e2/AP242 ENTITY requirement_assigned_object SUBTYPE OF (group_assignment); items : SET [1:1] OF requirement_assigned_item; SELF\group_assignment.assigned_group : requirement_assignment; END_ENTITY; -- IN AP203e2/AP242 ENTITY requirement_assignment SUBTYPE OF (characterized_object, group); END_ENTITY; -- IN AP214/AP242 ENTITY requirement_for_action_resource SUBTYPE OF (action_resource_requirement); resources : SET [1:?] OF action_resource; END_ENTITY; -- IN AP203e2/AP242 ENTITY requirement_source SUBTYPE OF (group); END_ENTITY; -- IN AP203e2 ENTITY requirement_view_definition_relationship SUBTYPE OF (product_definition_relationship); END_ENTITY; -- IN AP203e2/AP242 ENTITY resistance_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.RESISTANCE_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; -- IN AP203e2/AP242 ENTITY resistance_unit SUBTYPE OF (derived_unit); WHERE WR1: derive_dimensional_exponents(SELF) = dimensions_for_si_unit(si_unit_name.ohm); END_ENTITY; -- IN AP214/AP242 ENTITY resource_property; name : label; description : text; resource : characterized_resource_definition; END_ENTITY; -- IN AP214/AP242 ENTITY resource_property_representation; name : label; description : text; property : resource_property; representation : representation; END_ENTITY; -- IN AP214/AP242 ENTITY resource_requirement_type; name : label; description : text; END_ENTITY; -- IN AP242 ENTITY restriction_function SUBTYPE OF (maths_function, unary_generic_expression); SELF\unary_generic_expression.operand : maths_space; END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY resulting_path SUBTYPE OF (link_motion_representation_along_path); controlling_joints : SET [1:?] OF kinematic_joint; END_ENTITY; -- IN AP214/AP242 ENTITY retention SUBTYPE OF (action); WHERE WR1: SIZEOF(QUERY (aa <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ACTION_ASSIGNMENT.ASSIGNED_ACTION')| ('ACTIVITY.APPLIED_ACTION_ASSIGNMENT' IN TYPEOF(aa)) AND (aa.role.name = 'retention'))) >= 1; WR2: ((SIZEOF(QUERY (atia <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'APPLIED_TIME_INTERVAL_ASSIGNMENT.ITEMS')| (atia.role.name = 'minimum retention period'))) = 1) AND (SIZEOF(QUERY (atia <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'APPLIED_TIME_INTERVAL_ASSIGNMENT.ITEMS')| (atia.role.name = 'maximum retention period'))) = 1)) AND (SIZEOF(QUERY (atia1 <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'APPLIED_TIME_INTERVAL_ASSIGNMENT.ITEMS')| (((atia1.role.name = 'minimum retention period') AND ('STEP_MERGED_CAD_SCHEMA.TIME_INTERVAL_WITH_BOUNDS' IN TYPEOF(atia1.assigned_time_interval))) AND (EXISTS(atia1.assigned_time_interval\time_interval_with_bounds.secondary_bound) OR EXISTS(atia1.assigned_time_interval\time_interval_with_bounds.duration))) AND (SIZEOF(QUERY (atia2 <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'APPLIED_TIME_INTERVAL_ASSIGNMENT.ITEMS')| (((atia2.role.name = 'maximum retention period') AND ('STEP_MERGED_CAD_SCHEMA.TIME_INTERVAL_WITH_BOUNDS' IN TYPEOF(atia2.assigned_time_interval))) AND (EXISTS(atia2.assigned_time_interval\time_interval_with_bounds.secondary_bound) OR EXISTS(atia2.assigned_time_interval\time_interval_with_bounds.duration))) AND (atia1.assigned_time_interval\time_interval_with_bounds.primary_bound :=: atia2.assigned_time_interval\time_interval_with_bounds.primary_bound))) = 1))) = 1); WR3: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ACTION_RELATIONSHIP.RELATING_ACTION')) + SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ACTION_RELATIONSHIP.RELATED_ACTION')) = 0; END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY revolute_pair SUBTYPE OF (low_order_kinematic_pair); DERIVE SELF\low_order_kinematic_pair.r_x : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.r_y : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.r_z : BOOLEAN := TRUE; SELF\low_order_kinematic_pair.t_x : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.t_y : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.t_z : BOOLEAN := FALSE; END_ENTITY; -- IN AP214 ENTITY revolute_pair_range SUBTYPE OF (simple_pair_range); SELF\simple_pair_range.applies_to_pair : revolute_pair; lower_limit_actual_rotation : rotational_range_measure; upper_limit_actual_rotation : rotational_range_measure; WHERE wr1: (('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(lower_limit_actual_rotation)) OR ('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(upper_limit_actual_rotation))) XOR (lower_limit_actual_rotation < upper_limit_actual_rotation); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY revolute_pair_value SUBTYPE OF (pair_value); actual_rotation : plane_angle_measure; SELF\pair_value.applies_to_pair : revolute_pair; END_ENTITY; -- IN AP242 ENTITY revolute_pair_with_range SUBTYPE OF (revolute_pair); lower_limit_actual_rotation : OPTIONAL plane_angle_measure; upper_limit_actual_rotation : OPTIONAL plane_angle_measure; WHERE WR1: (NOT EXISTS(lower_limit_actual_rotation) OR NOT EXISTS(upper_limit_actual_rotation)) XOR (lower_limit_actual_rotation < upper_limit_actual_rotation); END_ENTITY; ENTITY revolved_area_solid SUBTYPE OF (swept_area_solid); axis : axis1_placement; angle : plane_angle_measure; DERIVE axis_line : line := representation_item('') || geometric_representation_item() || curve() || line(axis.location, representation_item('') || geometric_representation_item() || vector(axis.z, 1.0)); END_ENTITY; ENTITY revolved_face_solid SUBTYPE OF (swept_face_solid); axis : axis1_placement; angle : plane_angle_measure; DERIVE axis_line : line := representation_item('') || geometric_representation_item() || curve() || line(axis.location, representation_item('') || geometric_representation_item() || vector(axis.z, 1.0)); END_ENTITY; -- IN AP203e2/AP242 ENTITY revolved_face_solid_with_trim_conditions SUBTYPE OF (revolved_face_solid); first_trim_condition : trim_condition_select; second_trim_condition : trim_condition_select; WHERE WR1: NOT (('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN TYPEOF(first_trim_condition)) OR ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN TYPEOF(second_trim_condition))); WR2: NOT ((('STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE' IN TYPEOF(first_trim_condition)) AND ('STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE' IN TYPEOF(second_trim_condition))) AND (first_trim_condition = second_trim_condition)); END_ENTITY; -- IN AP242 ENTITY revolved_profile SUBTYPE OF (feature_definition); WHERE WR1: SELF\characterized_object.description IN [ 'groove', 'flat', 'round', 'open profile' ]; WR2: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) = 2))) = 0))) = 0; WR3: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'radius'))) = 1))) = 0))) = 0; WR4: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.DIRECTION_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'removal direction'))) = 1; WR5: NOT (SELF\characterized_object.description = 'open profile') OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'outer edge shape occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'profile usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.OPEN_PATH_PROFILE' IN TYPEOF(sdr.relating_shape_aspect)) AND (sdr.relating_shape_aspect.description = 'outer edge shape'))) = 1))) = 1))) = 0); WR6: NOT (SELF\characterized_object.description = 'flat') OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'flat edge shape occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'profile usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.LINEAR_PROFILE' IN TYPEOF(sdr.relating_shape_aspect)) AND (sdr.relating_shape_aspect.description = 'flat edge shape'))) = 1))) = 1))) = 0); WR7: NOT (SELF\characterized_object.description = 'round') OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'rounded edge shape occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'profile usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.PARTIAL_CIRCULAR_PROFILE' IN TYPEOF(sdr.relating_shape_aspect)) AND (sdr.relating_shape_aspect.description = 'rounded edge shape'))) = 1))) = 1))) = 0); WR8: NOT (SELF\characterized_object.description = 'groove') OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'sweep occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'profile usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.SQUARE_U_PROFILE', 'STEP_MERGED_CAD_SCHEMA.PARTIAL_CIRCULAR_PROFILE', 'STEP_MERGED_CAD_SCHEMA.ROUNDED_U_PROFILE', 'STEP_MERGED_CAD_SCHEMA.VEE_PROFILE', 'STEP_MERGED_CAD_SCHEMA.TEE_PROFILE', 'STEP_MERGED_CAD_SCHEMA.OPEN_PATH_PROFILE' ] * TYPEOF(sdr.relating_shape_aspect)) = 1) AND (sdr.relating_shape_aspect.description = 'sweep'))) = 1))) = 1))) = 0); WR9: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.PLANAR_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'maximum feature limit'))) >= 0; END_ENTITY; -- IN AP242 ENTITY rgc_with_dimension SUBTYPE OF (radius_geometric_constraint); radius_value : positive_length_measure; END_ENTITY; -- IN AP214 ENTITY rib SUBTYPE OF (feature_definition); WHERE wr1: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND NOT ((1 <= SIZEOF(pdr.used_representation.items)) AND (SIZEOF(pdr.used_representation.items) <= 3)))) = 0; wr2: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| NOT (i.name IN [ 'orientation', 'fillet radius', 'shoulder radius' ]))) > 0))) = 0; wr3: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| (i.name = 'fillet radius') AND (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'MEASURE_REPRESENTATION_ITEM'), ('STEP_MERGED_CAD_SCHEMA.' + 'LENGTH_MEASURE_WITH_UNIT') ] * TYPEOF(i)) = 2))) = 1))) <= 1; wr4: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (i <* pdr.used_representation.items| (i.name = 'shoulder radius') AND (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'MEASURE_REPRESENTATION_ITEM'), ('STEP_MERGED_CAD_SCHEMA.' + 'LENGTH_MEASURE_WITH_UNIT') ] * TYPEOF(i)) = 2))) = 1))) <= 1; wr5: SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| (sa.description = 'swept shape occurrence') AND (SIZEOF(QUERY (sar <* USEDIN(sa, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)) AND (sar.description = 'profile usage')) AND (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'PARTIAL_CIRCULAR_PROFILE'), ('STEP_MERGED_CAD_SCHEMA.' + 'SQUARE_U_PROFILE'), ('STEP_MERGED_CAD_SCHEMA.' + 'ROUNDED_U_PROFILE'), ('STEP_MERGED_CAD_SCHEMA.' + 'TEE_PROFILE'), ('STEP_MERGED_CAD_SCHEMA.' + 'VEE_PROFILE'), ('STEP_MERGED_CAD_SCHEMA.' + 'OPEN_PATH_PROFILE') ] * TYPEOF(sar.relating_shape_aspect)) = 1))) = 1))) = 1; wr6: SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| (sa.description = 'course of travel occurrence') AND (SIZEOF(QUERY (sar <* USEDIN(sa, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)) AND (sar.name = 'course of travel')) AND ('STEP_MERGED_CAD_SCHEMA.' + 'PATH_FEATURE_COMPONENT' IN TYPEOF(sar.relating_shape_aspect)))) = 1))) = 1; wr7: SIZEOF(QUERY (sa <* get_shape_aspects(SELF)| (sa.description = 'change in boundary occurrence') AND (SIZEOF(QUERY (sar <* USEDIN(sa, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| ((('STEP_MERGED_CAD_SCHEMA.' + 'FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)) AND (sar.description = 'taper usage')) AND ('STEP_MERGED_CAD_SCHEMA.' + 'TAPER' IN TYPEOF(sar.relating_shape_aspect))) AND (sar.relating_shape_aspect.description = 'directed taper'))) = 1))) <= 1; END_ENTITY; -- IN AP242 ENTITY rib_top SUBTYPE OF (feature_definition); WHERE WR1: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'rib top condition occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'rib top usage') AND ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.RIB_TOP_FLOOR' IN TYPEOF(sdr.relating_shape_aspect)) AND ('STEP_MERGED_CAD_SCHEMA.RIB_TOP' IN TYPEOF(sdr.related_shape_aspect.of_shape.definition)))) = 1))) = 1))) = 0; WR2: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.DIRECTION_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'removal direction'))) = 1))) = 1; WR3: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.PLANAR_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'maximum feature limit'))) >= 0; END_ENTITY; -- IN AP242 ENTITY rib_top_floor SUBTYPE OF (shape_aspect); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_DEFINITION' IN TYPEOF(SELF.of_shape.definition); WR2: SELF.description IN [ 'planar', 'complex' ]; WR3: SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATING_SHAPE_ASPECT')| (sar.description = 'rib top usage') AND ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| ((fcr.related_shape_aspect.description = 'rib top condition occurrence') AND ('STEP_MERGED_CAD_SCHEMA.RIB_TOP' IN TYPEOF(fcr.related_shape_aspect.of_shape.definition))) AND ('STEP_MERGED_CAD_SCHEMA.RIB_TOP_FLOOR' IN TYPEOF(fcr.relating_shape_aspect)))) >= 1; WR4: NOT (SELF.description = 'complex') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.FACE_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'rib top face'))) = 1))) = 0); WR5: NOT (SELF.description = 'planar') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PLANAR_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'rib top face'))) = 1))) = 0); WR6: NOT (SELF.description = 'planar') OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'boundary occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'profile usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CIRCULAR_CLOSED_PROFILE', 'STEP_MERGED_CAD_SCHEMA.NGON_CLOSED_PROFILE', 'STEP_MERGED_CAD_SCHEMA.RECTANGULAR_CLOSED_PROFILE', 'STEP_MERGED_CAD_SCHEMA.CLOSED_PATH_PROFILE' ] * TYPEOF(sdr.relating_shape_aspect)) = 1) AND (sdr.relating_shape_aspect.description = 'rib top floor boundary'))) = 1))) = 1))) = 0); END_ENTITY; ENTITY right_angular_wedge SUBTYPE OF (geometric_representation_item); position : axis2_placement_3d; x : positive_length_measure; y : positive_length_measure; z : positive_length_measure; ltx : length_measure; WHERE WR1: (0.0 <= ltx) AND (ltx < x); END_ENTITY; ENTITY right_circular_cone SUBTYPE OF (geometric_representation_item); position : axis1_placement; height : positive_length_measure; radius : length_measure; semi_angle : plane_angle_measure; WHERE WR1: radius >= 0.0; END_ENTITY; ENTITY right_circular_cylinder SUBTYPE OF (geometric_representation_item); position : axis1_placement; height : positive_length_measure; radius : positive_length_measure; END_ENTITY; -- IN AP203e2/AP242 ENTITY right_to_usage_association SUBTYPE OF (action_method_relationship); SELF\action_method_relationship.related_method : information_right; SELF\action_method_relationship.relating_method : information_usage_right; DERIVE right_applied : information_right := SELF\action_method_relationship.related_method; right_usage : information_usage_right := SELF\action_method_relationship.relating_method; END_ENTITY; -- IN AP242 ENTITY rigid_link_representation SUBTYPE OF (kinematic_link_representation); END_ENTITY; -- IN AP242 ENTITY rigid_subsketch SUBTYPE OF (subsketch); END_ENTITY; ENTITY role_association; role : object_role; item_with_role : role_select; END_ENTITY; -- IN AP214/AP242 ENTITY rolling_curve_pair SUBTYPE OF (planar_curve_pair); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY rolling_curve_pair_value SUBTYPE OF (pair_value); actual_point_on_curve_1 : point_on_curve; SELF\pair_value.applies_to_pair : rolling_curve_pair; WHERE WR1: SELF\pair_value.applies_to_pair\planar_curve_pair.curve_1 :=: actual_point_on_curve_1.basis_curve; END_ENTITY; -- IN AP214/AP242 ENTITY rolling_surface_pair SUBTYPE OF (surface_pair); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY rolling_surface_pair_value SUBTYPE OF (pair_value); actual_point_on_surface : point_on_surface; actual_rotation : plane_angle_measure; SELF\pair_value.applies_to_pair : rolling_surface_pair; WHERE WR1: SELF\pair_value.applies_to_pair\surface_pair.surface_1 :=: actual_point_on_surface.basis_surface; END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY rotation_about_direction SUBTYPE OF (geometric_representation_item); direction_of_axis : direction; rotation_angle : plane_angle_measure; WHERE WR1: SIZEOF(direction_of_axis.direction_ratios) = 3; END_ENTITY; -- IN AP214/AP242 ENTITY round_hole SUBTYPE OF (feature_definition); WHERE WR1: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'diameter occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'profile usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.CIRCULAR_CLOSED_PROFILE' IN TYPEOF(sdr.relating_shape_aspect)) AND (sdr.name = 'diameter'))) = 1))) = 1))) = 0; WR2: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'hole depth occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'path feature component usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| (('STEP_MERGED_CAD_SCHEMA.PATH_FEATURE_COMPONENT' IN TYPEOF(sdr.relating_shape_aspect)) AND (sdr.name = 'hole depth')) AND (sdr.relating_shape_aspect.description = 'linear'))) = 1))) = 1))) = 0; WR3: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'bottom condition occurrence') AND (SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'hole bottom usage') AND ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.HOLE_BOTTOM' IN TYPEOF(fcr.relating_shape_aspect)) AND ('STEP_MERGED_CAD_SCHEMA.ROUND_HOLE' IN TYPEOF(fcr.related_shape_aspect.of_shape.definition)))) = 1))) = 1))) = 0; WR4: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'change in diameter occurrence') AND (SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'taper usage') AND ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.TAPER' IN TYPEOF(fcr.relating_shape_aspect)) AND ('STEP_MERGED_CAD_SCHEMA.ROUND_HOLE' IN TYPEOF(fcr.related_shape_aspect.of_shape.definition)))) = 1))) <= 1))) = 0; WR5: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1; END_ENTITY; -- IN AP242 ENTITY rounded_end SUBTYPE OF (feature_definition); WHERE WR1: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) = 1))) = 0))) = 0; WR2: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'partial circular boundary occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'profile usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.PARTIAL_CIRCULAR_PROFILE' IN TYPEOF(sdr.relating_shape_aspect)))) = 1))) = 1))) = 0; WR3: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'course of travel occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'path feature component usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.PATH_FEATURE_COMPONENT' IN TYPEOF(sdr.relating_shape_aspect)) AND (sdr.relating_shape_aspect.description = 'linear'))) = 1))) = 1))) = 0; WR4: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.PLANAR_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'maximum feature limit'))) >= 0; END_ENTITY; -- IN AP214/AP242 ENTITY rounded_u_profile SUBTYPE OF (shape_aspect); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_DEFINITION' IN TYPEOF(SELF.of_shape.definition); WR2: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1))) = 0; WR3: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) >= 1) AND (SIZEOF(impl_rep.used_representation.items) <= 2))) = 0))) = 0; WR4: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (srwp_i <* pdr.used_representation.items| (srwp_i.name = 'orientation') OR (srwp_i.name = 'depth'))) = SIZEOF(pdr.used_representation.items)))) = 1))) = 1; WR5: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'width'))) = 1))) = 0))) = 0; WR6: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PLANAR_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'profile limit'))) <= 1))) = 0; WR7: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'depth'))) <= 1))) = 0))) = 0; END_ENTITY; ENTITY roundness_tolerance SUBTYPE OF (geometric_tolerance); WHERE WR1: NOT ('STEP_MERGED_CAD_SCHEMA.' + 'GEOMETRIC_TOLERANCE_WITH_DATUM_REFERENCE' IN TYPEOF(SELF)); END_ENTITY; -- IN AP203e2/AP242 ENTITY row_representation_item SUBTYPE OF (compound_representation_item); SELF\compound_representation_item.item_element : list_representation_item; END_ENTITY; -- IN AP203e2/AP242 ENTITY row_value SUBTYPE OF (compound_representation_item); END_ENTITY; -- IN AP203e2/AP242 ENTITY row_variable SUBTYPE OF (abstract_variable); END_ENTITY; -- IN AP203e2/AP242 ENTITY rule_action SUBTYPE OF (action); END_ENTITY; -- IN AP203e2/AP242 ENTITY rule_condition SUBTYPE OF (atomic_formula); END_ENTITY; -- IN AP203e2/AP242 ENTITY rule_definition SUBTYPE OF (rule_software_definition); END_ENTITY; -- IN AP203e2/AP242 ENTITY rule_set SUBTYPE OF (rule_software_definition); END_ENTITY; -- IN AP203e2/AP242 ENTITY rule_set_group SUBTYPE OF (rule_software_definition); END_ENTITY; -- IN AP203e2/AP242 ENTITY rule_software_definition SUBTYPE OF (product_definition); END_ENTITY; -- IN AP203e2/AP242 ENTITY rule_superseded_assignment SUBTYPE OF (action_assignment); items : SET [1:?] OF rule_superseded_item; END_ENTITY; -- IN AP203e2/AP242 ENTITY rule_supersedence SUBTYPE OF (rule_action); END_ENTITY; ENTITY ruled_surface_swept_area_solid SUBTYPE OF (surface_curve_swept_area_solid); WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.B_SPLINE_SURFACE' IN TYPEOF(SELF.reference_surface)) AND (SELF.reference_surface\b_spline_surface.u_degree = 1); WR2: ('STEP_MERGED_CAD_SCHEMA.PCURVE' IN TYPEOF(SELF.directrix)) OR ('STEP_MERGED_CAD_SCHEMA.B_SPLINE_CURVE' IN TYPEOF(SELF.directrix\surface_curve.curve_3d)) AND (SELF.directrix\surface_curve.curve_3d\b_spline_curve.degree = SELF.reference_surface\b_spline_surface.v_degree); END_ENTITY; ENTITY runout_zone_definition SUBTYPE OF (tolerance_zone_definition); orientation : runout_zone_orientation; END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY runout_zone_orientation; angle : plane_angle_measure_with_unit; END_ENTITY; ENTITY runout_zone_orientation_reference_direction SUBTYPE OF (runout_zone_orientation); orientation_defining_relationship : shape_aspect_relationship; END_ENTITY; -- IN AP203e2/AP242 ENTITY satisfied_requirement SUBTYPE OF (group_assignment); items : SET [1:1] OF product_definition; SELF\group_assignment.assigned_group : satisfies_requirement; END_ENTITY; -- IN AP203e2/AP242 ENTITY satisfies_requirement SUBTYPE OF (group); END_ENTITY; -- IN AP203e2/AP242 ENTITY satisfying_item SUBTYPE OF (group_assignment); items : SET [1:1] OF requirement_satisfaction_item; SELF\group_assignment.assigned_group : satisfies_requirement; END_ENTITY; -- IN AP203e2/AP242 ENTITY scalar_variable SUBTYPE OF (abstract_variable); END_ENTITY; -- IN AP203e2 ENTITY scattering_parameter SUBTYPE OF (polar_complex_number_literal); WHERE WR1: SIZEOF(TYPEOF(SELF) - TYPEOF(SELF\polar_complex_number_literal || SELF\scattering_parameter)) = 0; END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY screw_pair SUBTYPE OF (low_order_kinematic_pair_with_motion_coupling); pitch : length_measure; WHERE WR1: SIZEOF(QUERY (lr <* SELF\kinematic_pair.associated_link_representations_1| NOT ('STEP_MERGED_CAD_SCHEMA.RIGID_LINK_REPRESENTATION' IN TYPEOF(lr)))) = 0; END_ENTITY; -- IN AP214 ENTITY screw_pair_range SUBTYPE OF (simple_pair_range); SELF\simple_pair_range.applies_to_pair : screw_pair; lower_limit_actual_rotation : rotational_range_measure; upper_limit_actual_rotation : rotational_range_measure; WHERE wr1: (('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(lower_limit_actual_rotation)) OR ('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(upper_limit_actual_rotation))) XOR (lower_limit_actual_rotation < upper_limit_actual_rotation); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY screw_pair_value SUBTYPE OF (pair_value); actual_rotation : plane_angle_measure; SELF\pair_value.applies_to_pair : screw_pair; DERIVE actual_translation : length_measure := SELF\pair_value.applies_to_pair\screw_pair.pitch * plane_angle_for_pair_in_radian(SELF\pair_value.applies_to_pair, actual_rotation) / 2 * 3.14159; END_ENTITY; -- IN AP242 ENTITY screw_pair_with_range SUBTYPE OF (screw_pair); lower_limit_actual_rotation : OPTIONAL plane_angle_measure; upper_limit_actual_rotation : OPTIONAL plane_angle_measure; WHERE WR1: (NOT EXISTS(lower_limit_actual_rotation) OR NOT EXISTS(upper_limit_actual_rotation)) XOR (lower_limit_actual_rotation < upper_limit_actual_rotation); END_ENTITY; -- IN AP203e2/AP242 ENTITY sculptured_solid SUBTYPE OF (modified_solid); sculpturing_element : generalized_surface_select; positive_side : BOOLEAN; END_ENTITY; -- IN AP242 ENTITY sdgc_with_dimension SUBTYPE OF (surface_distance_geometric_constraint); distance_value : non_negative_length_measure; END_ENTITY; ENTITY seam_curve SUBTYPE OF (surface_curve); WHERE WR1: SIZEOF(SELF\surface_curve.associated_geometry) = 2; WR2: associated_surface(SELF\surface_curve.associated_geometry[1]) = associated_surface(SELF\surface_curve.associated_geometry[2]); WR3: 'STEP_MERGED_CAD_SCHEMA.PCURVE' IN TYPEOF(SELF\surface_curve.associated_geometry[1]); WR4: 'STEP_MERGED_CAD_SCHEMA.PCURVE' IN TYPEOF(SELF\surface_curve.associated_geometry[2]); END_ENTITY; -- IN AP214 ENTITY seam_edge SUBTYPE OF (oriented_edge); pcurve_reference : pcurve; WHERE wr1: ('STEP_MERGED_CAD_SCHEMA.EDGE_CURVE' IN TYPEOF(edge_element)) AND ('STEP_MERGED_CAD_SCHEMA.SEAM_CURVE' IN TYPEOF(edge_element\edge_curve.edge_geometry)); wr2: pcurve_reference IN edge_element\edge_curve.edge_geometry\surface_curve.associated_geometry; END_ENTITY; ENTITY security_classification; name : label; purpose : text; security_level : security_classification_level; END_ENTITY; ENTITY security_classification_assignment ABSTRACT SUPERTYPE; assigned_security_classification : security_classification; DERIVE role : object_role := get_role(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ROLE_ASSOCIATION.ITEM_WITH_ROLE')) <= 1; END_ENTITY; ENTITY security_classification_level; name : label; END_ENTITY; -- IN AP242 ENTITY selector_function SUBTYPE OF (maths_function, generic_literal); selector : input_selector; source_of_domain : maths_space_or_function; WHERE WR1: no_cyclic_domain_reference(source_of_domain, [ SELF ]); WR2: expression_is_constant(domain_from(source_of_domain)); END_ENTITY; -- IN AP242 ENTITY self_intersecting_curve SUBTYPE OF (self_intersecting_geometry); arc_length_separation_factor : REAL; interference_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.CURVE' ]); WR3: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.POINT_ON_CURVE', 'STEP_MERGED_CAD_SCHEMA.POINT_ON_CURVE' ]); WR4: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY self_intersecting_geometry ABSTRACT SUPERTYPE OF (ONEOF(self_intersecting_curve, self_intersecting_surface)) SUBTYPE OF (inapt_geometry); END_ENTITY; -- IN AP242 ENTITY self_intersecting_loop SUBTYPE OF (topology_related_to_self_intersecting_geometry); arc_length_distance_factor : REAL; interference_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' ]); WR3: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'POINT_ON_EDGE_CURVE', 'STEP_MERGED_CAD_SCHEMA.' + 'POINT_ON_EDGE_CURVE' ]); WR4: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY self_intersecting_shell SUBTYPE OF (topology_related_to_self_intersecting_geometry); geodesic_separation_factor : REAL; interference_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.CONNECTED_FACE_SET' ]); WR3: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'POINT_ON_FACE_SURFACE', 'STEP_MERGED_CAD_SCHEMA.' + 'POINT_ON_FACE_SURFACE' ]); WR4: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY self_intersecting_surface SUBTYPE OF (self_intersecting_geometry); geodesic_separation_factor : REAL; interference_tolerance : length_measure; SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.SURFACE' ]); WR3: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.POINT_ON_SURFACE', 'STEP_MERGED_CAD_SCHEMA.POINT_ON_SURFACE' ]); WR4: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; ENTITY serial_numbered_effectivity SUBTYPE OF (effectivity); effectivity_start_id : identifier; effectivity_end_id : OPTIONAL identifier; END_ENTITY; -- IN AP242 ENTITY series_composed_function SUBTYPE OF (maths_function, multiple_arity_generic_expression); SELF\multiple_arity_generic_expression.operands : LIST [2:?] OF maths_function; WHERE WR1: composable_sequence(SELF\multiple_arity_generic_expression.operands); END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY shape_aspect SUPERTYPE OF (ONEOF(contacting_feature, datum, datum_feature, datum_target, datum_system, general_datum_reference)); name : label; description : OPTIONAL text; of_shape : product_definition_shape; product_definitional : LOGICAL; DERIVE id : identifier := get_id_value(SELF); UNIQUE UR1 : id, of_shape; WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ID_ATTRIBUTE.IDENTIFIED_ITEM')) <= 1; END_ENTITY; ENTITY shape_aspect_associativity SUBTYPE OF (shape_aspect_relationship); WHERE WR1: SELF.relating_shape_aspect.product_definitional; WR2: NOT SELF.related_shape_aspect.product_definitional; END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY shape_aspect_deriving_relationship SUBTYPE OF (shape_aspect_relationship); SELF\shape_aspect_relationship.relating_shape_aspect : derived_shape_aspect; END_ENTITY; ENTITY shape_aspect_relationship; name : label; description : OPTIONAL text; relating_shape_aspect : shape_aspect; related_shape_aspect : shape_aspect; DERIVE id : identifier := get_id_value(SELF); WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'ID_ATTRIBUTE.IDENTIFIED_ITEM')) <= 1; END_ENTITY; -- IN AP242 ENTITY shape_aspect_relationship_representation_association; represented_shape_aspect_relationship : shape_aspect_relationship; representing_representation_relationship : representation_relationship; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.REPRESENTATIVE_SHAPE_REPRESENTATION' IN TYPEOF(representing_representation_relationship\representation_relationship.rep_1)) AND ('STEP_MERGED_CAD_SCHEMA.REPRESENTATIVE_SHAPE_REPRESENTATION' IN TYPEOF(representing_representation_relationship\representation_relationship.rep_2)); WR2: (represented_shape_aspect_relationship.relating_shape_aspect IN using_shape_aspect_of_shape_representation(representing_representation_relationship.rep_1)) AND (represented_shape_aspect_relationship.related_shape_aspect IN using_shape_aspect_of_shape_representation(representing_representation_relationship.rep_2)); WR3: (find_representative_shape_representation_of_product_definition(using_product_definition_of_shape_aspect(represented_shape_aspect_relationship.relating_shape_aspect)).context_of_items :=: find_representative_shape_representation_of_shape_aspect(represented_shape_aspect_relationship.relating_shape_aspect).context_of_items) AND (find_representative_shape_representation_of_product_definition(using_product_definition_of_shape_aspect(represented_shape_aspect_relationship.related_shape_aspect)).context_of_items :=: find_representative_shape_representation_of_shape_aspect(represented_shape_aspect_relationship.related_shape_aspect).context_of_items); WR4: using_product_definition_of_shape_aspect(represented_shape_aspect_relationship.relating_shape_aspect) :<>: using_product_definition_of_shape_aspect(represented_shape_aspect_relationship.related_shape_aspect); WR5: find_assembly_root([ using_product_definition_of_shape_aspect(represented_shape_aspect_relationship.relating_shape_aspect) ]) :=: find_assembly_root([ using_product_definition_of_shape_aspect(represented_shape_aspect_relationship.related_shape_aspect) ]); END_ENTITY; -- IN AP214 ENTITY shape_aspect_transition SUBTYPE OF (shape_aspect_relationship); WHERE wr1: SIZEOF(QUERY (pdr_1 <* get_shape_aspect_property_definition_representations(SELF.relating_shape_aspect)| (SIZEOF(QUERY (pdr_2 <* get_shape_aspect_property_definition_representations(SELF.related_shape_aspect)| (SIZEOF(QUERY (item_1 <* pdr_1.used_representation.items| (SIZEOF(QUERY (item_2 <* pdr_2.used_representation.items| NOT (('STEP_MERGED_CAD_SCHEMA.' + 'EDGE' IN TYPEOF(item_1)) AND ('STEP_MERGED_CAD_SCHEMA.' + 'EDGE' IN TYPEOF(item_2)) XOR ('STEP_MERGED_CAD_SCHEMA.' + 'FACE' IN TYPEOF(item_1)) AND ('STEP_MERGED_CAD_SCHEMA.' + 'FACE' IN TYPEOF(item_2))))) > 0))) > 0))) > 0))) = 0; wr2: SIZEOF(QUERY (pdr_1 <* get_shape_aspect_property_definition_representations(SELF.relating_shape_aspect)| (SIZEOF(QUERY (pdr_2 <* get_shape_aspect_property_definition_representations(SELF.related_shape_aspect)| (SIZEOF(QUERY (item_1 <* pdr_1.used_representation.items| (SIZEOF(QUERY (item_2 <* pdr_2.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.' + 'EDGE' IN TYPEOF(item_1)) AND ('STEP_MERGED_CAD_SCHEMA.' + 'EDGE' IN TYPEOF(item_2))) AND NOT ((((item_1\edge.edge_start :=: item_2\edge.edge_start) OR (item_1\edge.edge_start :=: item_2\edge.edge_end)) OR (item_1\edge.edge_end :=: item_2\edge.edge_start)) OR (item_1\edge.edge_end :=: item_2\edge.edge_end)))) > 0))) > 0))) > 0))) = 0; wr3: SIZEOF(QUERY (pdr_1 <* get_shape_aspect_property_definition_representations(SELF.relating_shape_aspect)| (SIZEOF(QUERY (pdr_2 <* get_shape_aspect_property_definition_representations(SELF.related_shape_aspect)| (SIZEOF(QUERY (item_1 <* pdr_1.used_representation.items| (SIZEOF(QUERY (item_2 <* pdr_2.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.' + 'FACE' IN TYPEOF(item_1)) AND ('STEP_MERGED_CAD_SCHEMA.' + 'FACE' IN TYPEOF(item_2))) AND (SIZEOF(QUERY (f_1 <* item_1\face.bounds| ('STEP_MERGED_CAD_SCHEMA.' + 'EDGE_LOOP' IN TYPEOF(f_1.bound)) AND (SIZEOF(QUERY (f_2 <* item_2\face.bounds| ('STEP_MERGED_CAD_SCHEMA.' + 'EDGE_LOOP' IN TYPEOF(f_2.bound)) AND (SIZEOF(QUERY (oe_1 <* f_1.bound\path.edge_list| (SIZEOF(QUERY (oe_2 <* f_2.bound\path.edge_list| (oe_1.edge_element :=: oe_2.edge_element))) = 0))) = 0))) = 0))) = 0))) = 0))) = 0))) = 0))) = 0; wr4: SELF.name IN [ 'g0', 'g1', 'g2' ]; END_ENTITY; -- IN AP242 ENTITY shape_criteria_representation_with_accuracy SUBTYPE OF (shape_data_quality_criteria_representation); required_general_accuracy : SET [1:?] OF shape_measurement_accuracy; END_ENTITY; -- IN AP242 ENTITY shape_data_quality_assessment_by_logical_test SUBTYPE OF (data_quality_assessment_specification); END_ENTITY; -- IN AP242 ENTITY shape_data_quality_assessment_by_numerical_test SUBTYPE OF (data_quality_assessment_specification); threshold : shape_data_quality_value_limit_type_select; END_ENTITY; -- IN AP242 ENTITY shape_data_quality_criteria_representation SUBTYPE OF (data_quality_criteria_representation); WHERE WR1: SIZEOF(QUERY (q <* SELF\representation.items| ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_CRITERION' IN TYPEOF(q)))) > 0; END_ENTITY; -- IN AP242 ENTITY shape_data_quality_criterion SUPERTYPE OF (ONEOF(erroneous_data, inapt_data)) SUBTYPE OF (data_quality_criterion, data_quality_measurement_requirement); assessment_specification : shape_data_quality_assessment_specification_select; WHERE WR1: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'DATA_QUALITY_CRITERION_ASSESSMENT_ASSOCIATION.' + 'CRITERION')) = 0; WR2: SIZEOF(QUERY (i1 <* bag_to_set(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'REPRESENTATION_ITEM_RELATIONSHIP.' + 'RELATED_REPRESENTATION_ITEM'))| ('STEP_MERGED_CAD_SCHEMA.' + 'DATA_QUALITY_CRITERION_MEASUREMENT_ASSOCIATION' IN TYPEOF(i1)))) = 0; WR3: SIZEOF(QUERY (i1 <* bag_to_set(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'REPRESENTATION_ITEM_RELATIONSHIP.' + 'RELATING_REPRESENTATION_ITEM'))| ('STEP_MERGED_CAD_SCHEMA.' + 'DATA_QUALITY_CRITERION_MEASUREMENT_ASSOCIATION' IN TYPEOF(i1)))) = 0; END_ENTITY; -- IN AP242 ENTITY shape_data_quality_criterion_and_accuracy_association; required_specific_accuracy : shape_measurement_accuracy; shape_data_quality_criterion : shape_data_quality_criterion; END_ENTITY; -- IN AP242 ENTITY shape_data_quality_inspected_shape_and_result_relationship SUBTYPE OF (shape_representation_relationship); SELF\representation_relationship.rep_1 : shape_representation; SELF\representation_relationship.rep_2 : shape_data_quality_inspection_result_representation; WHERE WR1: SIZEOF(using_product_definition_of_shape_representation(SELF.rep_1) * bag_to_set(inspected_product_definition(SELF.rep_2))) > 0; WR2: SELF.rep_1\representation.context_of_items :=: SELF.rep_2\representation.context_of_items; END_ENTITY; -- IN AP242 ENTITY shape_data_quality_inspection_criterion_report SUBTYPE OF (data_quality_inspection_criterion_report); representative_measured_value : measured_value_select; END_ENTITY; -- IN AP242 ENTITY shape_data_quality_inspection_instance_report SUBTYPE OF (data_quality_inspection_instance_report); SELF\data_quality_inspection_instance_report.inspected_instances : LIST [1:?] OF shape_data_quality_inspection_instance_report_item; END_ENTITY; -- IN AP242 ENTITY shape_data_quality_inspection_instance_report_item SUBTYPE OF (data_quality_inspection_instance_report_item); measured_value : measured_value_select; SELF\data_quality_inspection_instance_report_item.inspected_elements : SET [1:?] OF inspected_shape_element_select; END_ENTITY; -- IN AP242 ENTITY shape_data_quality_inspection_result SUBTYPE OF (data_quality_inspection_result); SELF\data_quality_inspection_result.criterion_inspected : shape_data_quality_criterion; END_ENTITY; -- IN AP242 ENTITY shape_data_quality_inspection_result_representation SUBTYPE OF (data_quality_inspection_result_representation); WHERE WR1: SIZEOF(QUERY (q <* SELF\representation.items| ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_INSPECTION_RESULT' IN TYPEOF(q)))) > 0; WR2: 'STEP_MERGED_CAD_SCHEMA.GEOMETRIC_REPRESENTATION_CONTEXT' IN TYPEOF(SELF\representation.context_of_items); WR3: SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_INSPECTED_SHAPE_AND_RESULT_RELATIONSHIP.' + 'REP_2')) > 0; END_ENTITY; -- IN AP242 ENTITY shape_data_quality_lower_value_limit SUBTYPE OF (shape_data_quality_value_limit); WHERE WR1: SELF\qualified_representation_item.qualifiers[1].name = 'minimum'; END_ENTITY; -- IN AP242 ENTITY shape_data_quality_upper_value_limit SUBTYPE OF (shape_data_quality_value_limit); WHERE WR1: SELF\qualified_representation_item.qualifiers[1].name = 'maximum'; END_ENTITY; -- IN AP242 ENTITY shape_data_quality_value_limit ABSTRACT SUPERTYPE OF (ONEOF(shape_data_quality_upper_value_limit, shape_data_quality_lower_value_limit)) SUBTYPE OF (measure_representation_item, qualified_representation_item); END_ENTITY; -- IN AP242 ENTITY shape_data_quality_value_range SUBTYPE OF (compound_representation_item); WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.SET_REPRESENTATION_ITEM' IN TYPEOF(SELF\compound_representation_item.item_element)) AND ((SIZEOF(SELF\compound_representation_item.item_element) = 2) AND ((SIZEOF(QUERY (i1 <* SELF\compound_representation_item.item_element| ('STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM' IN TYPEOF(i1)))) = 2) OR (SIZEOF(QUERY (i2 <* SELF\compound_representation_item.item_element| ('STEP_MERGED_CAD_SCHEMA.VALUE_REPRESENTATION_ITEM' IN TYPEOF(i2)))) = 2))); WR2: (SIZEOF(QUERY (i <* SELF\compound_representation_item.item_element| (i.name = 'upper limit'))) = 1) AND (SIZEOF(QUERY (i <* SELF\compound_representation_item.item_element| (i.name = 'lower limit'))) = 1); WR3: (SIZEOF(QUERY (i1 <* SELF\compound_representation_item.item_element| ('STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM' IN TYPEOF(i1)) AND (SIZEOF(QUERY (i2 <* SELF\compound_representation_item.item_element| (('STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM' IN TYPEOF(i2)) AND (i1 :<>: i2)) AND (i1\measure_with_unit.unit_component :=: i2\measure_with_unit.unit_component))) = 1))) = 2) OR (SIZEOF(QUERY (i1 <* SELF\compound_representation_item.item_element| ('STEP_MERGED_CAD_SCHEMA.VALUE_REPRESENTATION_ITEM' IN TYPEOF(i1)) AND (SIZEOF(QUERY (i2 <* SELF\compound_representation_item.item_element| (('STEP_MERGED_CAD_SCHEMA.VALUE_REPRESENTATION_ITEM' IN TYPEOF(i2)) AND (i1 :<>: i2)) AND (TYPEOF(i1\value_representation_item.value_component) = TYPEOF(i2\value_representation_item.value_component)))) = 1))) = 2); END_ENTITY; -- IN AP214/AP242 ENTITY shape_defining_relationship SUBTYPE OF (shape_aspect_relationship); END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY shape_definition_representation SUBTYPE OF (property_definition_representation); SELF\property_definition_representation.definition : property_definition; SELF\property_definition_representation.used_representation : shape_representation; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(definition)) OR ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINITION' IN TYPEOF(definition\property_definition.definition)); END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY shape_dimension_representation SUBTYPE OF (shape_representation); SELF\representation.items : SET [1:?] OF shape_dimension_representation_item; END_ENTITY; -- DIFF IN AP203e2 -- IN AP203e2/AP242 ENTITY shape_feature_definition SUBTYPE OF (feature_definition); END_ENTITY; -- IN AP242 ENTITY shape_inspection_result_accuracy_association; applied_specific_accuracy : shape_measurement_accuracy; shape_data_quality_result : shape_data_quality_inspection_result; END_ENTITY; -- IN AP242 ENTITY shape_inspection_result_representation_with_accuracy SUBTYPE OF (shape_data_quality_inspection_result_representation); applied_general_accuracy : SET [1:?] OF shape_measurement_accuracy; END_ENTITY; -- IN AP242 ENTITY shape_measurement_accuracy; description : text; range : shape_data_quality_value_limit_type_select; END_ENTITY; ENTITY shape_representation SUBTYPE OF (representation); END_ENTITY; ENTITY shape_representation_relationship SUBTYPE OF (representation_relationship); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION' IN TYPEOF(SELF\representation_relationship.rep_1) + TYPEOF(SELF\representation_relationship.rep_2); END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY shape_representation_with_parameters SUBTYPE OF (shape_representation); SELF\representation.items : SET [1:?] OF shape_representation_with_parameters_items; END_ENTITY; -- IN AP242 ENTITY shape_summary_request_with_representative_value SUBTYPE OF (summary_report_request); END_ENTITY; ENTITY shell_based_surface_model SUBTYPE OF (geometric_representation_item); sbsm_boundary : SET [1:?] OF shell; WHERE WR1: constraints_geometry_shell_based_surface_model(SELF); END_ENTITY; -- IN AP203e2/AP242 ENTITY shell_based_wireframe_model SUBTYPE OF (geometric_representation_item); sbwm_boundary : SET [1:?] OF shell; WHERE WR1: constraints_geometry_shell_based_wireframe_model(SELF); END_ENTITY; -- IN AP203e2/AP242 ENTITY shell_based_wireframe_shape_representation SUBTYPE OF (shape_representation); WHERE WR1: SIZEOF(QUERY (it <* SELF.items| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.SHELL_BASED_WIREFRAME_MODEL', 'STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM', 'STEP_MERGED_CAD_SCHEMA.AXIS2_PLACEMENT_3D' ] * TYPEOF(it)) = 1))) = 0; WR2: SIZEOF(QUERY (it <* SELF.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.SHELL_BASED_WIREFRAME_MODEL', 'STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' ] * TYPEOF(it)) = 1))) >= 1; WR3: SIZEOF(QUERY (sbwm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.SHELL_BASED_WIREFRAME_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (ws <* QUERY (sb <* sbwm\shell_based_wireframe_model.sbwm_boundary| ('STEP_MERGED_CAD_SCHEMA.WIRE_SHELL' IN TYPEOF(sb)))| NOT (SIZEOF(QUERY (eloop <* QUERY (wsb <* ws\wire_shell.wire_shell_extent| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(wsb)))| NOT (SIZEOF(QUERY (el <* eloop\path.edge_list| NOT ('STEP_MERGED_CAD_SCHEMA.EDGE_CURVE' IN TYPEOF(el.edge_element)))) = 0))) = 0))) = 0))) = 0; WR4: SIZEOF(QUERY (sbwm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.SHELL_BASED_WIREFRAME_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (ws <* QUERY (sb <* sbwm\shell_based_wireframe_model.sbwm_boundary| ('STEP_MERGED_CAD_SCHEMA.WIRE_SHELL' IN TYPEOF(sb)))| NOT (SIZEOF(QUERY (eloop <* QUERY (wsb <* ws\wire_shell.wire_shell_extent| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(wsb)))| NOT (SIZEOF(QUERY (pline_el <* QUERY (el <* eloop\path.edge_list| ('STEP_MERGED_CAD_SCHEMA.POLYLINE' IN TYPEOF(el.edge_element\edge_curve.edge_geometry)))| NOT (SIZEOF(pline_el.edge_element\edge_curve.edge_geometry\polyline.points) > 2))) = 0))) = 0))) = 0))) = 0; WR5: SIZEOF(QUERY (sbwm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.SHELL_BASED_WIREFRAME_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (ws <* QUERY (sb <* sbwm\shell_based_wireframe_model.sbwm_boundary| ('STEP_MERGED_CAD_SCHEMA.WIRE_SHELL' IN TYPEOF(sb)))| NOT (SIZEOF(QUERY (eloop <* QUERY (wsb <* ws\wire_shell.wire_shell_extent| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(wsb)))| NOT (SIZEOF(QUERY (el <* eloop\path.edge_list| NOT valid_wireframe_edge_curve(el.edge_element\edge_curve.edge_geometry))) = 0))) = 0))) = 0))) = 0; WR6: SIZEOF(QUERY (sbwm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.SHELL_BASED_WIREFRAME_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (ws <* QUERY (sb <* sbwm\shell_based_wireframe_model.sbwm_boundary| ('STEP_MERGED_CAD_SCHEMA.WIRE_SHELL' IN TYPEOF(sb)))| NOT (SIZEOF(QUERY (eloop <* QUERY (wsb <* ws\wire_shell.wire_shell_extent| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(wsb)))| NOT (SIZEOF(QUERY (el <* eloop\path.edge_list| NOT (('STEP_MERGED_CAD_SCHEMA.VERTEX_POINT' IN TYPEOF(el.edge_element.edge_start)) AND ('STEP_MERGED_CAD_SCHEMA.VERTEX_POINT' IN TYPEOF(el.edge_element.edge_end))))) = 0))) = 0))) = 0))) = 0; WR7: SIZEOF(QUERY (sbwm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.SHELL_BASED_WIREFRAME_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (ws <* QUERY (sb <* sbwm\shell_based_wireframe_model.sbwm_boundary| ('STEP_MERGED_CAD_SCHEMA.WIRE_SHELL' IN TYPEOF(sb)))| NOT (SIZEOF(QUERY (eloop <* QUERY (wsb <* ws\wire_shell.wire_shell_extent| ('STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' IN TYPEOF(wsb)))| NOT (SIZEOF(QUERY (el <* eloop\path.edge_list| NOT (valid_wireframe_vertex_point(el.edge_element.edge_start\vertex_point.vertex_geometry) AND valid_wireframe_vertex_point(el.edge_element.edge_end\vertex_point.vertex_geometry)))) = 0))) = 0))) = 0))) = 0; WR8: SIZEOF(QUERY (sbwm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.SHELL_BASED_WIREFRAME_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (ws <* QUERY (sb <* sbwm\shell_based_wireframe_model.sbwm_boundary| ('STEP_MERGED_CAD_SCHEMA.WIRE_SHELL' IN TYPEOF(sb)))| NOT (SIZEOF(QUERY (vloop <* QUERY (wsb <* ws\wire_shell.wire_shell_extent| ('STEP_MERGED_CAD_SCHEMA.VERTEX_LOOP' IN TYPEOF(wsb)))| NOT ('STEP_MERGED_CAD_SCHEMA.VERTEX_POINT' IN TYPEOF(vloop\vertex_loop.loop_vertex)))) = 0))) = 0))) = 0; WR9: SIZEOF(QUERY (sbwm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.SHELL_BASED_WIREFRAME_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (ws <* QUERY (sb <* sbwm\shell_based_wireframe_model.sbwm_boundary| ('STEP_MERGED_CAD_SCHEMA.WIRE_SHELL' IN TYPEOF(sb)))| NOT (SIZEOF(QUERY (vloop <* QUERY (wsb <* ws\wire_shell.wire_shell_extent| ('STEP_MERGED_CAD_SCHEMA.VERTEX_LOOP' IN TYPEOF(wsb)))| NOT valid_wireframe_vertex_point(vloop\vertex_loop.loop_vertex\vertex_point.vertex_geometry))) = 0))) = 0))) = 0; WR10: SIZEOF(QUERY (sbwm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.SHELL_BASED_WIREFRAME_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (vs <* QUERY (sb <* sbwm\shell_based_wireframe_model.sbwm_boundary| ('STEP_MERGED_CAD_SCHEMA.VERTEX_SHELL' IN TYPEOF(sb)))| NOT ('STEP_MERGED_CAD_SCHEMA.VERTEX_POINT' IN TYPEOF(vs\vertex_shell.vertex_shell_extent.loop_vertex)))) = 0))) = 0; WR11: SIZEOF(QUERY (sbwm <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.SHELL_BASED_WIREFRAME_MODEL' IN TYPEOF(it)))| NOT (SIZEOF(QUERY (vs <* QUERY (sb <* sbwm\shell_based_wireframe_model.sbwm_boundary| ('STEP_MERGED_CAD_SCHEMA.VERTEX_SHELL' IN TYPEOF(sb)))| NOT valid_wireframe_vertex_point(vs\vertex_shell.vertex_shell_extent.loop_vertex\vertex_point.vertex_geometry))) = 0))) = 0; WR12: SIZEOF(QUERY (mi <* QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(it)))| NOT ('STEP_MERGED_CAD_SCHEMA.' + 'SHELL_BASED_WIREFRAME_SHAPE_REPRESENTATION' IN TYPEOF(mi\mapped_item.mapping_source.mapped_representation)))) = 0; WR13: SELF.context_of_items\geometric_representation_context.coordinate_space_dimension = 3; END_ENTITY; -- IN AP203e2/AP242 ENTITY shelled_solid SUPERTYPE OF (ONEOF(double_offset_shelled_solid, complex_shelled_solid)) SUBTYPE OF (modified_solid); deleted_face_set : SET [1:?] OF face_surface; thickness : length_measure; WHERE WR1: thickness <> 0; END_ENTITY; -- IN AP242 ENTITY short_length_curve SUBTYPE OF (nearly_degenerate_geometry); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_UPPER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.CURVE' ]); WR4: validate_locations_of_extreme_value_type(SELF, []); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY short_length_curve_segment SUBTYPE OF (geometry_with_local_near_degeneracy); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_UPPER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.B_SPLINE_CURVE' ]); WR4: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'B_SPLINE_CURVE_SEGMENT' ]); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY short_length_edge SUBTYPE OF (topology_related_to_nearly_degenerate_geometry); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_UPPER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.EDGE_CURVE' ]); WR4: validate_locations_of_extreme_value_type(SELF, []); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP203e2/AP242 ENTITY si_absorbed_dose_unit SUBTYPE OF (absorbed_dose_unit, si_unit); WHERE WR1: SELF\si_unit.name = si_unit_name.gray; WR2: NOT EXISTS(SELF\derived_unit.name); END_ENTITY; -- IN AP203e2/AP242 ENTITY si_capacitance_unit SUBTYPE OF (capacitance_unit, si_unit); WHERE WR1: SELF\si_unit.name = si_unit_name.farad; WR2: NOT EXISTS(SELF\derived_unit.name); END_ENTITY; -- IN AP203e2/AP242 ENTITY si_conductance_unit SUBTYPE OF (conductance_unit, si_unit); WHERE WR1: SELF\si_unit.name = si_unit_name.siemens; WR2: NOT EXISTS(SELF\derived_unit.name); END_ENTITY; -- IN AP203e2/AP242 ENTITY si_dose_equivalent_unit SUBTYPE OF (dose_equivalent_unit, si_unit); WHERE WR1: SELF\si_unit.name = si_unit_name.sievert; WR2: NOT EXISTS(SELF\derived_unit.name); END_ENTITY; -- IN AP203e2/AP242 ENTITY si_electric_charge_unit SUBTYPE OF (electric_charge_unit, si_unit); WHERE WR1: SELF\si_unit.name = si_unit_name.coulomb; WR2: NOT EXISTS(SELF\derived_unit.name); END_ENTITY; -- IN AP203e2/AP242 ENTITY si_electric_potential_unit SUBTYPE OF (electric_potential_unit, si_unit); WHERE WR1: SELF\si_unit.name = si_unit_name.volt; WR2: NOT EXISTS(SELF\derived_unit.name); END_ENTITY; -- IN AP203e2/AP242 ENTITY si_energy_unit SUBTYPE OF (energy_unit, si_unit); WHERE WR1: SELF\si_unit.name = si_unit_name.joule; WR2: NOT EXISTS(SELF\derived_unit.name); END_ENTITY; -- IN AP203e2/AP242 ENTITY si_force_unit SUBTYPE OF (force_unit, si_unit); WHERE WR1: SELF\si_unit.name = si_unit_name.newton; WR2: NOT EXISTS(SELF\derived_unit.name); END_ENTITY; -- IN AP203e2/AP242 ENTITY si_frequency_unit SUBTYPE OF (frequency_unit, si_unit); WHERE WR1: SELF\si_unit.name = si_unit_name.hertz; WR2: NOT EXISTS(SELF\derived_unit.name); END_ENTITY; -- IN AP203e2/AP242 ENTITY si_illuminance_unit SUBTYPE OF (illuminance_unit, si_unit); WHERE WR1: SELF\si_unit.name = si_unit_name.lux; WR2: NOT EXISTS(SELF\derived_unit.name); END_ENTITY; -- IN AP203e2/AP242 ENTITY si_inductance_unit SUBTYPE OF (inductance_unit, si_unit); WHERE WR1: SELF\si_unit.name = si_unit_name.henry; WR2: NOT EXISTS(SELF\derived_unit.name); END_ENTITY; -- IN AP203e2/AP242 ENTITY si_magnetic_flux_density_unit SUBTYPE OF (magnetic_flux_density_unit, si_unit); WHERE WR1: SELF\si_unit.name = si_unit_name.tesla; WR2: NOT EXISTS(SELF\derived_unit.name); END_ENTITY; -- IN AP203e2/AP242 ENTITY si_magnetic_flux_unit SUBTYPE OF (magnetic_flux_unit, si_unit); WHERE WR1: SELF\si_unit.name = si_unit_name.weber; WR2: NOT EXISTS(SELF\derived_unit.name); END_ENTITY; -- IN AP203e2/AP242 ENTITY si_power_unit SUBTYPE OF (power_unit, si_unit); WHERE WR1: SELF\si_unit.name = si_unit_name.watt; WR2: NOT EXISTS(SELF\derived_unit.name); END_ENTITY; -- IN AP203e2/AP242 ENTITY si_pressure_unit SUBTYPE OF (pressure_unit, si_unit); WHERE WR1: SELF\si_unit.name = si_unit_name.pascal; WR2: NOT EXISTS(SELF\derived_unit.name); END_ENTITY; -- IN AP203e2/AP242 ENTITY si_radioactivity_unit SUBTYPE OF (radioactivity_unit, si_unit); WHERE WR1: SELF\si_unit.name = si_unit_name.becquerel; WR2: NOT EXISTS(SELF\derived_unit.name); END_ENTITY; -- IN AP203e2/AP242 ENTITY si_resistance_unit SUBTYPE OF (resistance_unit, si_unit); WHERE WR1: SELF\si_unit.name = si_unit_name.ohm; WR2: NOT EXISTS(SELF\derived_unit.name); END_ENTITY; ENTITY si_unit SUBTYPE OF (named_unit); prefix : OPTIONAL si_prefix; name : si_unit_name; DERIVE SELF\named_unit.dimensions : dimensional_exponents := dimensions_for_si_unit(name); WHERE WR1: NOT (('STEP_MERGED_CAD_SCHEMA.MASS_UNIT' IN TYPEOF(SELF)) AND (SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.DERIVED_UNIT_ELEMENT.UNIT')) > 0)) OR (prefix = si_prefix.kilo); END_ENTITY; -- DIFF IN AP203e2 ENTITY simple_boolean_expression ABSTRACT SUPERTYPE OF (ONEOF(boolean_literal, boolean_variable)) SUBTYPE OF (boolean_expression, simple_generic_expression); END_ENTITY; -- IN AP203e2/AP242 ENTITY simple_clause SUBTYPE OF (compound_representation_item); END_ENTITY; ENTITY simple_generic_expression ABSTRACT SUPERTYPE OF (ONEOF(generic_literal, generic_variable)) SUBTYPE OF (generic_expression); END_ENTITY; -- DIFF IN AP203e2 ENTITY simple_numeric_expression ABSTRACT SUPERTYPE OF (ONEOF(literal_number, numeric_variable)) SUBTYPE OF (numeric_expression, simple_generic_expression); END_ENTITY; -- IN AP214 ENTITY simple_pair_range; applies_to_pair : kinematic_pair; END_ENTITY; -- IN AP214/AP242 ENTITY simple_string_expression ABSTRACT SUPERTYPE OF (ONEOF(string_literal, string_variable)) SUBTYPE OF (string_expression, simple_generic_expression); END_ENTITY; -- IN AP242 ENTITY simultaneous_constraint_group SUBTYPE OF (variational_representation_item); constraint_group : SET [2:?] OF constraint_group_member; WHERE WR1: SIZEOF(QUERY (q <* using_representations(SELF)| (SIZEOF(QUERY (r <* q.items| ('STEP_MERGED_CAD_SCHEMA.SIMULTANEOUS_CONSTRAINT_GROUP' IN TYPEOF(r)) AND (SIZEOF(QUERY (s <* constraint_group| (s IN r\simultaneous_constraint_group.constraint_group) AND NOT (r :=: SELF))) > 0))) > 0))) = 0; WR2: SIZEOF(QUERY (q <* using_representations(constraint_group[1])| (SIZEOF(QUERY (r <* constraint_group| item_in_context(r, q.context_of_items))) = SIZEOF(constraint_group)))) > 0; WR3: SIZEOF(QUERY (q <* constraint_group| ('STEP_MERGED_CAD_SCHEMA.EXPLICIT_CONSTRAINT' IN TYPEOF(q)) AND (SIZEOF(QUERY (r <* q.constrained_elements| (SIZEOF(QUERY (s <* constraint_group| (r IN s.reference_elements))) > 0))) > 0))) = 0; END_ENTITY; -- IN AP214/AP242 ENTITY sin_function SUBTYPE OF (unary_function_call); END_ENTITY; -- IN AP242 ENTITY single_area_csg_2d_shape_representation SUBTYPE OF (csg_2d_shape_representation); SELF\representation.items : SET [1:?] OF csg_2d_area_select; WHERE WR1: SIZEOF(QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(it)))) = 0; WR2: SIZEOF(QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.CSG_SOLID_2D' IN TYPEOF(it)))) = 1; END_ENTITY; -- IN AP242 ENTITY single_boundary_csg_2d_shape_representation SUBTYPE OF (single_area_csg_2d_shape_representation); WHERE WR1: SIZEOF(QUERY (it <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.CSG_PRIMITIVE_SOLID_2D' IN TYPEOF(it)) AND ('STEP_MERGED_CAD_SCHEMA.PRIMITIVE_2D_WITH_INNER_BOUNDARY' IN TYPEOF(it\csg_primitive_solid_2d.tree_root_expression)))) = 0; END_ENTITY; -- IN AP242 ENTITY single_property_is_definition SUBTYPE OF (property_definition); SELF\property_definition.definition : product_definition; UNIQUE UR1 : definition; END_ENTITY; -- IN AP242 ENTITY skew_line_distance_geometric_constraint SUBTYPE OF (explicit_geometric_constraint); distance_value : non_negative_length_measure; SELF\explicit_constraint.constrained_elements : SET [1:2] OF line; SELF\explicit_constraint.reference_elements : SET [0:1] OF line; WHERE WR1: SIZEOF(SELF\explicit_constraint.constrained_elements + SELF\explicit_constraint.reference_elements) = 2; END_ENTITY; ENTITY slash_expression SUBTYPE OF (binary_numeric_expression); END_ENTITY; -- IN AP214/AP242 ENTITY sliding_curve_pair SUBTYPE OF (planar_curve_pair); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY sliding_curve_pair_value SUBTYPE OF (pair_value); actual_point_on_curve_1 : point_on_curve; actual_point_on_curve_2 : point_on_curve; SELF\pair_value.applies_to_pair : sliding_curve_pair; WHERE WR1: SELF\pair_value.applies_to_pair\planar_curve_pair.curve_1 :=: actual_point_on_curve_1.basis_curve; WR2: SELF\pair_value.applies_to_pair\planar_curve_pair.curve_2 :=: actual_point_on_curve_2.basis_curve; END_ENTITY; -- IN AP214/AP242 ENTITY sliding_surface_pair SUBTYPE OF (surface_pair); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY sliding_surface_pair_value SUBTYPE OF (pair_value); actual_point_on_surface_1 : point_on_surface; actual_point_on_surface_2 : point_on_surface; actual_rotation : plane_angle_measure; SELF\pair_value.applies_to_pair : sliding_surface_pair; WHERE WR1: SELF\pair_value.applies_to_pair\surface_pair.surface_1 :=: actual_point_on_surface_1.basis_surface; WR2: SELF\pair_value.applies_to_pair\surface_pair.surface_2 :=: actual_point_on_surface_2.basis_surface; END_ENTITY; -- IN AP214/AP242 ENTITY slot SUBTYPE OF (feature_definition); WHERE WR1: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) = 1))) = 0))) = 0; WR2: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'swept shape occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.' + 'RELATED_SHAPE_ASPECT')| (sar.description = 'profile usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.SQUARE_U_PROFILE', 'STEP_MERGED_CAD_SCHEMA.PARTIAL_CIRCULAR_PROFILE', 'STEP_MERGED_CAD_SCHEMA.ROUNDED_U_PROFILE', 'STEP_MERGED_CAD_SCHEMA.VEE_PROFILE', 'STEP_MERGED_CAD_SCHEMA.TEE_PROFILE', 'STEP_MERGED_CAD_SCHEMA.OPEN_PATH_PROFILE' ] * TYPEOF(sdr.relating_shape_aspect)) = 1))) = 1))) = 1))) = 0; WR3: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'course of travel occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.' + 'RELATED_SHAPE_ASPECT')| (sar.description = 'path feature component usage') AND ((sar.name = 'course of travel') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar))))| ('STEP_MERGED_CAD_SCHEMA.PATH_FEATURE_COMPONENT' IN TYPEOF(sdr.relating_shape_aspect)))) = 1))) = 1))) = 0; WR4: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT ((SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'end condition occurrence') AND (SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| ((sar.description = 'slot end usage') AND (sar.name IN [ 'course of travel start', 'course of travel end' ])) AND ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| (('STEP_MERGED_CAD_SCHEMA.SLOT_END' IN TYPEOF(fcr.relating_shape_aspect)) AND (fcr.relating_shape_aspect.description IN [ 'open', 'radiused', 'flat', 'woodruff' ])) AND ('STEP_MERGED_CAD_SCHEMA.SLOT' IN TYPEOF(fcr.related_shape_aspect.of_shape.definition)))) = 1))) = 2) OR (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'end condition occurrence') AND (SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| ((sar.description = 'slot end usage') AND (sar.name IN [ 'course of travel start', 'course of travel end' ])) AND ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| (('STEP_MERGED_CAD_SCHEMA.SLOT_END' IN TYPEOF(fcr.relating_shape_aspect)) AND (fcr.relating_shape_aspect.description IN [ 'loop' ])) AND ('STEP_MERGED_CAD_SCHEMA.SLOT' IN TYPEOF(fcr.related_shape_aspect.of_shape.definition)))) = 1))) = 1)))) = 0; WR5: NOT (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'end condition occurrence') AND (SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| ((sar.description = 'slot end usage') AND (sar.name IN [ 'course of travel start', 'course of travel end' ])) AND ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| (('STEP_MERGED_CAD_SCHEMA.SLOT_END' IN TYPEOF(fcr.relating_shape_aspect)) AND (fcr.relating_shape_aspect.description IN [ 'loop' ])) AND ('STEP_MERGED_CAD_SCHEMA.SLOT' IN TYPEOF(fcr.related_shape_aspect.of_shape.definition)))) = 1))) = 1))) = 0) OR (SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'course of travel occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'path feature component usage') AND ((sar.name = 'course of travel') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar))))| ('STEP_MERGED_CAD_SCHEMA.PATH_FEATURE_COMPONENT' IN TYPEOF(sdr.relating_shape_aspect)) AND (sdr.relating_shape_aspect.description IN [ 'complex', 'complete circular' ]))) = 1))) = 1))) = 0); WR6: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.PLANAR_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'maximum feature limit'))) >= 0; END_ENTITY; -- IN AP214/AP242 ENTITY slot_end SUBTYPE OF (shape_aspect); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_DEFINITION' IN TYPEOF(SELF.of_shape.definition); WR2: SELF.description IN [ 'open', 'radiused', 'flat', 'woodruff', 'loop' ]; WR3: NOT (SELF.description IN [ 'open', 'radiused', 'loop' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 0))) = 0); WR4: NOT (SELF.description IN [ 'flat', 'woodruff' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1))) = 0); WR5: NOT (SELF.description IN [ 'flat' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) = 2))) = 0))) = 0); WR6: NOT (SELF.description = 'flat') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'first radius'))) = 1))) = 0))) = 0); WR7: NOT (SELF.description = 'flat') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'second radius'))) = 1))) = 0))) = 0); WR8: NOT (SELF.description = 'woodruff') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' IN TYPEOF(it)) AND (it.name = 'radius'))) = 1))) = 0))) = 0); WR9: NOT (SELF.description IN [ 'woodruff' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) = 1))) = 0))) = 0); WR10: SIZEOF(QUERY (fcr <* QUERY (sar <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.' + 'RELATING_SHAPE_ASPECT')| ((sar.description = 'slot end usage') AND (sar.name IN [ 'course of travel start', 'course of travel end' ])) AND ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)))| ((fcr.related_shape_aspect.description = 'end condition occurrence') AND ('STEP_MERGED_CAD_SCHEMA.SLOT' IN TYPEOF(fcr.related_shape_aspect.of_shape.definition))) AND ('STEP_MERGED_CAD_SCHEMA.SLOT_END' IN TYPEOF(fcr.relating_shape_aspect)))) >= 1; END_ENTITY; -- IN AP242 ENTITY small_area_face SUBTYPE OF (topology_related_to_nearly_degenerate_geometry); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_UPPER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.AREA_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.AREA_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.FACE_SURFACE' ]); WR4: validate_locations_of_extreme_value_type(SELF, []); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.AREA_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY small_area_surface SUBTYPE OF (nearly_degenerate_geometry); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_UPPER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.AREA_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.AREA_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.SURFACE' ]); WR4: validate_locations_of_extreme_value_type(SELF, []); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.AREA_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY small_area_surface_patch SUBTYPE OF (geometry_with_local_near_degeneracy); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_UPPER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.AREA_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.AREA_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.B_SPLINE_SURFACE' ]); WR4: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'B_SPLINE_SURFACE_PATCH' ]); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.AREA_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY small_volume_solid SUBTYPE OF (inapt_manifold_solid_brep); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_UPPER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.VOLUME_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.VOLUME_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.MANIFOLD_SOLID_BREP' ]); WR4: validate_locations_of_extreme_value_type(SELF, []); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.VOLUME_MEASURE' ]); END_ENTITY; -- IN AP203e2/AP242 ENTITY smeared_material_definition SUBTYPE OF (zone_structural_makeup); END_ENTITY; -- IN AP242 ENTITY software_for_data_quality_check; description : text; software_name : text; software_version : text; data_quality : data_quality_definition_representation_relationship; END_ENTITY; ENTITY solid_angle_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.SOLID_ANGLE_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; ENTITY solid_angle_unit SUBTYPE OF (named_unit); WHERE WR1: ((((((SELF\named_unit.dimensions.length_exponent = 0.0) AND (SELF\named_unit.dimensions.mass_exponent = 0.0)) AND (SELF\named_unit.dimensions.time_exponent = 0.0)) AND (SELF\named_unit.dimensions.electric_current_exponent = 0.0)) AND (SELF\named_unit.dimensions.thermodynamic_temperature_exponent = 0.0)) AND (SELF\named_unit.dimensions.amount_of_substance_exponent = 0.0)) AND (SELF\named_unit.dimensions.luminous_intensity_exponent = 0.0); END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_curve_font SUBTYPE OF (pre_defined_curve_font); END_ENTITY; ENTITY solid_model SUPERTYPE OF (ONEOF(csg_solid, manifold_solid_brep, swept_face_solid, swept_area_solid, swept_disk_solid, solid_replica)) SUBTYPE OF (geometric_representation_item); END_ENTITY; ENTITY solid_replica SUBTYPE OF (solid_model); parent_solid : solid_model; transformation : cartesian_transformation_operator_3d; WHERE WR1: acyclic_solid_replica(SELF, parent_solid); WR2: parent_solid\geometric_representation_item.dim = 3; END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_angle_based_chamfer SUBTYPE OF (solid_with_chamfered_edges); offset_distance : positive_length_measure; left_offset : BOOLEAN; offset_angle : positive_plane_angle_measure; END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_chamfered_edges ABSTRACT SUPERTYPE OF (ONEOF(solid_with_single_offset_chamfer, solid_with_double_offset_chamfer, solid_with_angle_based_chamfer)) SUBTYPE OF (edge_blended_solid); END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_circular_pattern SUPERTYPE OF (solid_with_incomplete_circular_pattern) SUBTYPE OF (solid_with_shape_element_pattern); replicate_count : positive_integer; angular_spacing : plane_angle_measure; radial_alignment : BOOLEAN; reference_point : point; END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_circular_pocket SUBTYPE OF (solid_with_pocket); pocket_radius : positive_length_measure; WHERE WR1: SELF\solid_with_pocket.floor_blend_radius <= pocket_radius; END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_circular_protrusion SUBTYPE OF (solid_with_protrusion); protrusion_radius : positive_length_measure; END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_conical_bottom_round_hole SUBTYPE OF (solid_with_stepped_round_hole); semi_apex_angle : positive_plane_angle_measure; tip_radius : non_negative_length_measure; WHERE WR1: tip_radius < SELF\solid_with_stepped_round_hole.segment_radii[segments]; END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_constant_radius_edge_blend SUBTYPE OF (edge_blended_solid); radius : positive_length_measure; END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_curved_slot SUBTYPE OF (solid_with_slot); slot_centreline : bounded_curve; END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_depression ABSTRACT SUPERTYPE OF (solid_with_through_depression ANDOR ONEOF(solid_with_hole, solid_with_pocket, solid_with_slot, solid_with_groove)) SUBTYPE OF (modified_solid_with_placed_configuration); depth : positive_length_measure; END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_double_offset_chamfer SUBTYPE OF (solid_with_chamfered_edges); left_offset_distance : positive_length_measure; right_offset_distance : positive_length_measure; END_ENTITY; -- IN AP242 ENTITY solid_with_excessive_number_of_voids SUBTYPE OF (inapt_manifold_solid_brep); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.MANIFOLD_SOLID_BREP' ]); WR4: validate_locations_of_extreme_value_type(SELF, []); WR5: validate_accuracy_types(SELF, []); END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_flat_bottom_round_hole SUBTYPE OF (solid_with_stepped_round_hole); fillet_radius : non_negative_length_measure; WHERE WR1: fillet_radius < SELF\solid_with_stepped_round_hole.segment_radii[segments]; END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_general_pocket SUBTYPE OF (solid_with_pocket); profile : positioned_sketch; reference_point : point; WHERE WR1: SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CURVE_BOUNDED_SURFACE', 'STEP_MERGED_CAD_SCHEMA.FACE_SURFACE' ] * TYPEOF(profile.sketch_basis)) = 1; WR2: profile IN using_items(reference_point, []); END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_general_protrusion SUBTYPE OF (solid_with_protrusion); profile : positioned_sketch; reference_point : point; WHERE WR1: SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CURVE_BOUNDED_SURFACE', 'STEP_MERGED_CAD_SCHEMA.FACE_SURFACE' ] * TYPEOF(profile.sketch_basis)) = 1; WR2: profile IN using_items(reference_point, []); END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_groove SUBTYPE OF (solid_with_depression); groove_radius : positive_length_measure; groove_width : positive_length_measure; draft_angle : plane_angle_measure; floor_fillet_radius : non_negative_length_measure; external_groove : BOOLEAN; WHERE WR1: NOT ('STEP_MERGED_CAD_SCHEMA.SOLID_WITH_THROUGH_DEPRESSION' IN TYPEOF(SELF)); END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_hole ABSTRACT SUPERTYPE OF (solid_with_stepped_round_hole) SUBTYPE OF (solid_with_depression); END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_incomplete_circular_pattern SUBTYPE OF (solid_with_circular_pattern); omitted_instances : SET [1:?] OF positive_integer; WHERE WR1: SIZEOF(omitted_instances) < SELF\solid_with_circular_pattern.replicate_count; WR2: SIZEOF(QUERY (q <* omitted_instances| (q > SELF\solid_with_circular_pattern.replicate_count))) = 0; END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_incomplete_rectangular_pattern SUBTYPE OF (solid_with_rectangular_pattern); omitted_instances : SET [1:?] OF LIST [2:2] OF positive_integer; WHERE WR1: NOT ([ 1, 1 ] IN omitted_instances); WR2: SIZEOF(omitted_instances) < SELF\solid_with_rectangular_pattern.row_count * SELF\solid_with_rectangular_pattern.column_count - 1; WR3: SIZEOF(QUERY (q <* omitted_instances| (q[1] > SELF\solid_with_rectangular_pattern.row_count) OR (q[2] > SELF\solid_with_rectangular_pattern.column_count))) = 0; END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_pocket ABSTRACT SUPERTYPE OF (ONEOF(solid_with_rectangular_pocket, solid_with_circular_pocket, solid_with_general_pocket)) SUBTYPE OF (solid_with_depression); floor_blend_radius : non_negative_length_measure; draft_angle : plane_angle_measure; END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_protrusion ABSTRACT SUPERTYPE OF (ONEOF(solid_with_circular_protrusion, solid_with_rectangular_protrusion, solid_with_general_protrusion)) SUBTYPE OF (modified_solid_with_placed_configuration); protrusion_height : positive_length_measure; protrusion_draft_angle : plane_angle_measure; END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_rectangular_pattern SUPERTYPE OF (solid_with_incomplete_rectangular_pattern) SUBTYPE OF (solid_with_shape_element_pattern); row_count : positive_integer; column_count : positive_integer; row_spacing : length_measure; column_spacing : length_measure; WHERE WR1: row_count * column_count > 1; END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_rectangular_pocket SUBTYPE OF (solid_with_pocket); pocket_length : positive_length_measure; pocket_width : positive_length_measure; corner_radius : non_negative_length_measure; WHERE WR1: (corner_radius < pocket_width / 2) AND (corner_radius < pocket_length / 2); END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_rectangular_protrusion SUBTYPE OF (solid_with_protrusion); protrusion_length : positive_length_measure; protrusion_width : positive_length_measure; protrusion_corner_radius : non_negative_length_measure; WHERE WR1: (protrusion_corner_radius <= protrusion_width / 2) AND (protrusion_corner_radius <= protrusion_length / 2); END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_shape_element_pattern ABSTRACT SUPERTYPE OF (ONEOF(solid_with_circular_pattern, solid_with_rectangular_pattern)) SUBTYPE OF (modified_solid_with_placed_configuration); replicated_element : modified_solid_with_placed_configuration; END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_single_offset_chamfer SUBTYPE OF (solid_with_chamfered_edges); offset_distance : positive_length_measure; END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_slot ABSTRACT SUPERTYPE OF (ONEOF(solid_with_trapezoidal_section_slot, solid_with_tee_section_slot) AND ONEOF(solid_with_straight_slot, solid_with_curved_slot)) SUBTYPE OF (solid_with_depression); slot_width : positive_length_measure; closed_ends : LIST [2:2] OF LOGICAL; end_exit_faces : LIST [2:2] OF SET [0:?] OF face_surface; WHERE WR1: NOT (('STEP_MERGED_CAD_SCHEMA.SOLID_WITH_THROUGH_DEPRESSION' IN TYPEOF(SELF)) AND (closed_ends = [ FALSE, FALSE ])); WR2: NOT ((closed_ends[1] = TRUE) AND (SIZEOF(end_exit_faces[1]) <> 0) OR (closed_ends[2] = TRUE) AND (SIZEOF(end_exit_faces[2]) <> 0)); END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_spherical_bottom_round_hole SUBTYPE OF (solid_with_stepped_round_hole); sphere_radius : positive_length_measure; WHERE WR1: sphere_radius >= SELF\solid_with_stepped_round_hole.segment_radii[segments]; END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_stepped_round_hole SUPERTYPE OF (solid_with_stepped_round_hole_and_conical_transitions ANDOR ONEOF(solid_with_flat_bottom_round_hole, solid_with_conical_bottom_round_hole, solid_with_spherical_bottom_round_hole)) SUBTYPE OF (solid_with_hole); segments : positive_integer; segment_radii : LIST [1:segments] OF positive_length_measure; segment_depths : LIST [1:segments] OF positive_length_measure; DERIVE SELF\solid_with_depression.depth : positive_length_measure := compute_total_depth(SELF); WHERE WR1: NOT (('STEP_MERGED_CAD_SCHEMA.SOLID_WITH_THROUGH_DEPRESSION' IN TYPEOF(SELF)) AND (SIZEOF(TYPEOF(SELF) * [ 'STEP_MERGED_CAD_SCHEMA.SOLID_WITH_FLAT_BOTTOM_ROUND_HOLE', 'STEP_MERGED_CAD_SCHEMA.SOLID_WITH_SPHERICAL_BOTTOM_ROUND_HOLE', 'STEP_MERGED_CAD_SCHEMA.SOLID_WITH_FLAT_BOTTOM_ROUND_HOLE' ]) <> 0)); END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_stepped_round_hole_and_conical_transitions SUBTYPE OF (solid_with_stepped_round_hole); conical_transitions : SET [1:?] OF conical_stepped_hole_transition; WHERE WR1: SIZEOF(conical_transitions) <= SELF\solid_with_stepped_round_hole.segments + 1; WR2: ('STEP_MERGED_CAD_SCHEMA.SOLID_WITH_THROUGH_DEPRESSION' IN TYPEOF(SELF)) XOR (SIZEOF(conical_transitions) <= SELF\solid_with_stepped_round_hole.segments); WR3: validate_countersink_radii(SELF); END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_straight_slot SUBTYPE OF (solid_with_slot); slot_length : positive_length_measure; END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_tee_section_slot SUBTYPE OF (solid_with_slot); tee_section_width : positive_length_measure; collar_depth : positive_length_measure; WHERE WR1: collar_depth < SELF\solid_with_depression.depth; WR2: tee_section_width > SELF\solid_with_slot.slot_width; END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_through_depression SUBTYPE OF (solid_with_depression); exit_faces : SET [1:?] OF face_surface; WHERE WR1: SIZEOF(TYPEOF(SELF) * [ 'STEP_MERGED_CAD_SCHEMA.SOLID_WITH_HOLE', 'STEP_MERGED_CAD_SCHEMA.SOLID_WITH_POCKET', 'STEP_MERGED_CAD_SCHEMA.SOLID_WITH_SLOT' ]) = 1; END_ENTITY; -- IN AP203e2/AP242 ENTITY solid_with_trapezoidal_section_slot SUBTYPE OF (solid_with_slot); draft_angle : plane_angle_measure; floor_fillet_radius : non_negative_length_measure; END_ENTITY; -- DIFF IN AP203e2 -- IN AP203e2/AP242 ENTITY solid_with_variable_radius_edge_blend SUBTYPE OF (track_blended_solid); point_list : LIST [2:?] OF point; radius_list : LIST [2:?] OF positive_length_measure; edge_function_list : LIST [1:?] OF blend_radius_variation_type; WHERE WR1: SIZEOF(point_list) = SIZEOF(radius_list); WR2: SIZEOF(edge_function_list) = SIZEOF(radius_list) - 1; WR3: NOT ((point_list[1] = point_list[HIINDEX(point_list)]) AND NOT (radius_list[1] = radius_list[HIINDEX(radius_list)])); END_ENTITY; -- IN AP242 ENTITY solid_with_wrong_number_of_voids SUBTYPE OF (erroneous_manifold_solid_brep); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_logical_test; WHERE WR1: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.BOOLEAN_VALUE'); WR2: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.BREP_WITH_VOIDS' ]); WR3: validate_locations_of_extreme_value_type(SELF, []); WR4: validate_accuracy_types(SELF, []); END_ENTITY; -- IN AP203e2/AP242 ENTITY source_for_requirement SUBTYPE OF (group_assignment); items : SET [1:1] OF requirement_source_item; SELF\group_assignment.assigned_group : requirement_source; END_ENTITY; -- IN AP203e2/AP242 ENTITY sourced_requirement SUBTYPE OF (group_assignment); items : SET [1:1] OF product_definition; SELF\group_assignment.assigned_group : requirement_source; END_ENTITY; -- IN AP203e2/AP242 ENTITY specification_definition SUBTYPE OF (product_definition); END_ENTITY; -- CASE DIFF IN AP214 ENTITY specified_higher_usage_occurrence SUBTYPE OF (assembly_component_usage); upper_usage : assembly_component_usage; next_usage : next_assembly_usage_occurrence; UNIQUE UR1 : upper_usage, next_usage; WHERE WR1: SELF :<>: upper_usage; WR2: SELF\product_definition_relationship.relating_product_definition :=: upper_usage.relating_product_definition; WR3: SELF\product_definition_relationship.related_product_definition :=: next_usage.related_product_definition; WR4: (upper_usage.related_product_definition :=: next_usage.relating_product_definition) OR (SIZEOF(QUERY (pdr <* USEDIN(upper_usage.related_product_definition, 'STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_RELATIONSHIP.' + 'RELATED_PRODUCT_DEFINITION')| (pdr.relating_product_definition :=: next_usage.relating_product_definition))) = 1); WR5: SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.NEXT_ASSEMBLY_USAGE_OCCURRENCE', 'STEP_MERGED_CAD_SCHEMA.SPECIFIED_HIGHER_USAGE_OCCURRENCE' ] * TYPEOF(upper_usage)) = 1; END_ENTITY; ENTITY sphere SUBTYPE OF (geometric_representation_item); radius : positive_length_measure; centre : point; END_ENTITY; -- IN AP242 ENTITY spherical_cap SUBTYPE OF (feature_definition); WHERE WR1: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) = 3))) = 0))) = 0; WR2: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'radius'))) = 1))) = 0))) = 0; WR3: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'internal angle'))) = 1))) = 0))) = 0; END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY spherical_pair SUBTYPE OF (low_order_kinematic_pair); DERIVE SELF\low_order_kinematic_pair.r_x : BOOLEAN := TRUE; SELF\low_order_kinematic_pair.r_y : BOOLEAN := TRUE; SELF\low_order_kinematic_pair.r_z : BOOLEAN := TRUE; SELF\low_order_kinematic_pair.t_x : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.t_y : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.t_z : BOOLEAN := FALSE; END_ENTITY; -- IN AP214 ENTITY spherical_pair_range SUBTYPE OF (simple_pair_range); SELF\simple_pair_range.applies_to_pair : spherical_pair; lower_limit_yaw : rotational_range_measure; upper_limit_yaw : rotational_range_measure; lower_limit_pitch : rotational_range_measure; upper_limit_pitch : rotational_range_measure; lower_limit_roll : rotational_range_measure; upper_limit_roll : rotational_range_measure; WHERE wr1: (('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(lower_limit_yaw)) OR ('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(upper_limit_yaw))) XOR (lower_limit_yaw < upper_limit_yaw); wr2: (('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(lower_limit_pitch)) OR ('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(upper_limit_pitch))) XOR (lower_limit_pitch < upper_limit_pitch); wr3: (('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(lower_limit_roll)) OR ('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(upper_limit_roll))) XOR (lower_limit_roll < upper_limit_roll); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY spherical_pair_value SUBTYPE OF (pair_value); input_orientation : spatial_rotation; SELF\pair_value.applies_to_pair : spherical_pair_select; DERIVE actual_orientation : ypr_rotation := convert_spatial_to_ypr_rotation(SELF\pair_value.applies_to_pair, input_orientation); END_ENTITY; -- IN AP242 ENTITY spherical_pair_with_pin SUBTYPE OF (low_order_kinematic_pair); DERIVE SELF\low_order_kinematic_pair.r_x : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.r_y : BOOLEAN := TRUE; SELF\low_order_kinematic_pair.r_z : BOOLEAN := TRUE; SELF\low_order_kinematic_pair.t_x : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.t_y : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.t_z : BOOLEAN := FALSE; END_ENTITY; -- IN AP242 ENTITY spherical_pair_with_pin_and_range SUBTYPE OF (spherical_pair_with_pin); lower_limit_yaw : OPTIONAL plane_angle_measure; upper_limit_yaw : OPTIONAL plane_angle_measure; lower_limit_roll : OPTIONAL plane_angle_measure; upper_limit_roll : OPTIONAL plane_angle_measure; WHERE WR1: (NOT EXISTS(lower_limit_yaw) OR NOT EXISTS(upper_limit_yaw)) XOR (lower_limit_yaw < upper_limit_yaw); WR2: (NOT EXISTS(lower_limit_roll) OR NOT EXISTS(upper_limit_roll)) XOR (lower_limit_roll < upper_limit_roll); END_ENTITY; -- IN AP242 ENTITY spherical_pair_with_range SUBTYPE OF (spherical_pair); lower_limit_yaw : OPTIONAL plane_angle_measure; upper_limit_yaw : OPTIONAL plane_angle_measure; lower_limit_pitch : OPTIONAL plane_angle_measure; upper_limit_pitch : OPTIONAL plane_angle_measure; lower_limit_roll : OPTIONAL plane_angle_measure; upper_limit_roll : OPTIONAL plane_angle_measure; WHERE WR1: (NOT EXISTS(lower_limit_yaw) OR NOT EXISTS(upper_limit_yaw)) XOR (lower_limit_yaw < upper_limit_yaw); WR2: (NOT EXISTS(lower_limit_pitch) OR NOT EXISTS(upper_limit_pitch)) XOR (lower_limit_pitch < upper_limit_pitch); WR3: (NOT EXISTS(lower_limit_roll) OR NOT EXISTS(upper_limit_roll)) XOR (lower_limit_roll < upper_limit_roll); END_ENTITY; ENTITY spherical_surface SUBTYPE OF (elementary_surface); radius : positive_length_measure; END_ENTITY; -- CASE DIFF IN AP214 -- IN AP214/AP242 ENTITY SQL_mappable_defined_function ABSTRACT SUPERTYPE SUBTYPE OF (defined_function); END_ENTITY; -- IN AP214/AP242 ENTITY square_root_function SUBTYPE OF (unary_function_call); END_ENTITY; -- IN AP214/AP242 ENTITY square_u_profile SUBTYPE OF (shape_aspect); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_DEFINITION' IN TYPEOF(SELF.of_shape.definition); WR2: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1))) = 0; WR3: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) >= 4) AND (SIZEOF(impl_rep.used_representation.items) <= 7))) = 0))) = 0; WR4: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (srwp_i <* pdr.used_representation.items| (((((((srwp_i.name = 'orientation') OR (srwp_i.name = 'width')) OR (srwp_i.name = 'first angle')) OR (srwp_i.name = 'second angle')) OR (srwp_i.name = 'first radius')) OR (srwp_i.name = 'second radius')) OR (srwp_i.name = 'profile limit')) OR (srwp_i.name = 'depth'))) = SIZEOF(pdr.used_representation.items)))) = 1))) = 1; WR5: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.PLACEMENT' IN TYPEOF(it)) AND (it.name = 'orientation'))) = 1))) = 0))) = 0; WR6: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'width'))) = 1))) = 0))) = 0; WR7: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'first radius'))) <= 1))) = 0))) = 0; WR8: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'second radius'))) <= 1))) = 0))) = 0; WR9: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'first angle'))) = 1))) = 0))) = 0; WR10: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'second angle'))) = 1))) = 0))) = 0; WR11: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PLANAR_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'profile limit'))) <= 1))) = 0; WR12: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'depth'))) <= 1))) = 0))) = 0; END_ENTITY; -- DIFF IN AP214 ENTITY standard_uncertainty SUPERTYPE OF (expanded_uncertainty) SUBTYPE OF (uncertainty_qualifier); uncertainty_value : REAL; END_ENTITY; -- IN AP203e2/AP242 ENTITY start_request SUBTYPE OF (action_request_assignment); items : SET [1:?] OF start_request_item; END_ENTITY; -- IN AP203e2/AP242 ENTITY start_work SUBTYPE OF (action_assignment); items : SET [1:?] OF work_item; END_ENTITY; -- IN AP242 ENTITY steep_angle_between_adjacent_edges SUBTYPE OF (steep_geometry_transition_across_edge); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.EDGE_LOOP' ]); WR4: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.ORIENTED_EDGE' ]); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY steep_angle_between_adjacent_faces SUBTYPE OF (steep_geometry_transition_across_edge); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.CONNECTED_FACE_SET' ]); WR4: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'POINT_ON_EDGE_CURVE' ]); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE' ]); END_ENTITY; -- IN AP242 ENTITY steep_geometry_transition_across_edge ABSTRACT SUPERTYPE OF (ONEOF(steep_angle_between_adjacent_edges, steep_angle_between_adjacent_faces)) SUBTYPE OF (inapt_topology_and_geometry_relationship); END_ENTITY; -- IN AP242 ENTITY step SUBTYPE OF (feature_definition); WHERE WR1: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) = 1))) = 0))) = 0; WR2: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'course of travel occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'path feature component usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.PATH_FEATURE_COMPONENT' IN TYPEOF(sdr.relating_shape_aspect)) AND (sdr.relating_shape_aspect.description = 'linear'))) = 1))) = 1))) = 0; WR3: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'removal boundary occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'profile usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.VEE_PROFILE' IN TYPEOF(sdr.relating_shape_aspect)))) = 1))) = 1))) = 0; WR4: SIZEOF(QUERY (pdr <* get_property_definition_representations(SELF)| ('STEP_MERGED_CAD_SCHEMA.PLANAR_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'maximum feature limit'))) >= 0; WR5: SIZEOF(QUERY (pds <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pds)) AND (SIZEOF(QUERY (csa <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (('STEP_MERGED_CAD_SCHEMA.COMPOSITE_SHAPE_ASPECT' IN TYPEOF(csa)) AND (csa.name = 'uncut volume')) AND (SIZEOF(QUERY (sar <* csa.component_relationships| ('STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_RELATIONSHIP' IN TYPEOF(sar)) AND (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.BOSS', 'STEP_MERGED_CAD_SCHEMA.PROTRUSION' ] * TYPEOF(sar.related_shape_aspect)) = 1))) = 1))) <= 1))) = 1; END_ENTITY; ENTITY straightness_tolerance SUBTYPE OF (geometric_tolerance); WHERE WR1: NOT ('STEP_MERGED_CAD_SCHEMA.' + 'GEOMETRIC_TOLERANCE_WITH_DATUM_REFERENCE' IN TYPEOF(SELF)); END_ENTITY; -- IN AP214/AP242 ENTITY string_defined_function ABSTRACT SUPERTYPE SUBTYPE OF (defined_function, string_expression); END_ENTITY; -- IN AP214/AP242 ENTITY string_expression ABSTRACT SUPERTYPE OF (ONEOF(simple_string_expression, index_expression, substring_expression, concat_expression, format_function, string_defined_function)) SUBTYPE OF (expression); END_ENTITY; -- IN AP214/AP242 ENTITY string_literal SUBTYPE OF (simple_string_expression, generic_literal); the_value : STRING; END_ENTITY; -- IN AP214/AP242 ENTITY string_variable SUBTYPE OF (simple_string_expression, variable); END_ENTITY; ENTITY structured_dimension_callout SUBTYPE OF (draughting_callout); WHERE WR1: SIZEOF(TYPEOF(SELF) * [ 'STEP_MERGED_CAD_SCHEMA.DATUM_FEATURE_CALLOUT', 'STEP_MERGED_CAD_SCHEMA.DATUM_TARGET_CALLOUT', 'STEP_MERGED_CAD_SCHEMA.GEOMETRICAL_TOLERANCE_CALLOUT', 'STEP_MERGED_CAD_SCHEMA.LEADER_DIRECTED_CALLOUT', 'STEP_MERGED_CAD_SCHEMA.PROJECTION_DIRECTED_CALLOUT', 'STEP_MERGED_CAD_SCHEMA.DIMENSION_CURVE_DIRECTED_CALLOUT' ]) = 0; WR2: SIZEOF(QUERY (ato <* QUERY (con <* SELF.contents| ('STEP_MERGED_CAD_SCHEMA.ANNOTATION_TEXT_OCCURRENCE' IN TYPEOF(con)))| NOT (ato.name IN [ 'dimension value', 'tolerance value', 'unit text', 'prefix text', 'suffix text' ]))) = 0; WR3: SIZEOF(QUERY (ato <* QUERY (con <* SELF.contents| ('STEP_MERGED_CAD_SCHEMA.ANNOTATION_TEXT_OCCURRENCE' IN TYPEOF(con)))| (ato.name = 'dimension value'))) >= 1; WR4: SIZEOF(QUERY (dcr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_CALLOUT_RELATIONSHIP.' + 'RELATING_DRAUGHTING_CALLOUT')| ('STEP_MERGED_CAD_SCHEMA.' + 'DIMENSION_CALLOUT_COMPONENT_RELATIONSHIP' IN TYPEOF(dcr)) AND (dcr.name = 'prefix'))) <= 1; WR5: SIZEOF(QUERY (dcr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_CALLOUT_RELATIONSHIP.' + 'RELATING_DRAUGHTING_CALLOUT')| ('STEP_MERGED_CAD_SCHEMA.' + 'DIMENSION_CALLOUT_COMPONENT_RELATIONSHIP' IN TYPEOF(dcr)) AND (dcr.name = 'suffix'))) <= 1; WR6: NOT (SIZEOF(QUERY (ato <* QUERY (con <* SELF.contents| ('STEP_MERGED_CAD_SCHEMA.ANNOTATION_TEXT_OCCURRENCE' IN TYPEOF(con)))| (ato.name = 'prefix text'))) > 0) OR (SIZEOF(QUERY (dcr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_CALLOUT_RELATIONSHIP.' + 'RELATING_DRAUGHTING_CALLOUT')| ('STEP_MERGED_CAD_SCHEMA.' + 'DIMENSION_CALLOUT_COMPONENT_RELATIONSHIP' IN TYPEOF(dcr)) AND (dcr.name = 'prefix'))) = 1); WR7: NOT (SIZEOF(QUERY (ato <* QUERY (con <* SELF.contents| ('STEP_MERGED_CAD_SCHEMA.ANNOTATION_TEXT_OCCURRENCE' IN TYPEOF(con)))| (ato.name = 'suffix text'))) > 0) OR (SIZEOF(QUERY (dcr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'DRAUGHTING_CALLOUT_RELATIONSHIP.' + 'RELATING_DRAUGHTING_CALLOUT')| ('STEP_MERGED_CAD_SCHEMA.' + 'DIMENSION_CALLOUT_COMPONENT_RELATIONSHIP' IN TYPEOF(dcr)) AND (dcr.name = 'suffix'))) = 1); END_ENTITY; -- IN AP203e2/AP242 ENTITY structured_text_composition SUBTYPE OF (compound_representation_item); END_ENTITY; -- IN AP203e2/AP242 ENTITY structured_text_representation SUBTYPE OF (representation); SELF\representation.items : SET [1:?] OF string_representation_item_select; END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY styled_item SUBTYPE OF (representation_item); styles : SET [1:?] OF presentation_style_assignment; item : styled_item_target; WHERE WR1: (SIZEOF(SELF.styles) = 1) XOR (SIZEOF(QUERY (pres_style <* SELF.styles| NOT ('STEP_MERGED_CAD_SCHEMA.' + 'PRESENTATION_STYLE_BY_CONTEXT' IN TYPEOF(pres_style)))) = 0); WR2: NOT ('STEP_MERGED_CAD_SCHEMA.STYLED_ITEM' IN TYPEOF(item)); WR3: (('STEP_MERGED_CAD_SCHEMA.MAPPED_ITEM' IN TYPEOF(item)) OR ('STEP_MERGED_CAD_SCHEMA.GEOMETRIC_REPRESENTATION_ITEM' IN TYPEOF(item))) OR ('STEP_MERGED_CAD_SCHEMA.CONTEXT_DEPENDENT_OVER_RIDING_STYLED_ITEM' IN TYPEOF(SELF)); END_ENTITY; -- IN AP242 ENTITY su_parameters SUBTYPE OF (geometric_representation_item); a : length_measure; alpha : plane_angle_measure; b : length_measure; beta : plane_angle_measure; c : length_measure; gamma : plane_angle_measure; WHERE WR1: SELF\geometric_representation_item.dim = 3; END_ENTITY; ENTITY subedge SUBTYPE OF (edge); parent_edge : edge; END_ENTITY; ENTITY subface SUBTYPE OF (face); parent_face : face; WHERE WR1: NOT mixed_loop_type_set((list_to_set(list_face_loops(SELF)) + list_to_set(list_face_loops(parent_face)))); END_ENTITY; -- IN AP242 ENTITY subsketch SUBTYPE OF (geometric_representation_item); subsketch_elements : SET [1:?] OF sketch_element_select; owning_sketch : sketch_type_select; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.NEUTRAL_SKETCH_REPRESENTATION' IN TYPEOF(owning_sketch)) AND (SIZEOF(QUERY (q <* subsketch_elements| NOT (owning_sketch IN using_representations(q)))) = 0) XOR (SIZEOF(TYPEOF(owning_sketch) * [ 'STEP_MERGED_CAD_SCHEMA.POSITIONED_SKETCH', 'STEP_MERGED_CAD_SCHEMA.SUBSKETCH' ]) = 1) AND (SIZEOF(QUERY (q <* subsketch_elements| NOT (owning_sketch IN using_items(q, [])))) = 0); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY substring_expression SUBTYPE OF (string_expression, multiple_arity_generic_expression); DERIVE index1 : generic_expression := SELF\multiple_arity_generic_expression.operands[2]; index2 : generic_expression := SELF\multiple_arity_generic_expression.operands[3]; operand : generic_expression := SELF\multiple_arity_generic_expression.operands[1]; WHERE WR1: (('STEP_MERGED_CAD_SCHEMA.STRING_EXPRESSION' IN TYPEOF(operand)) AND ('STEP_MERGED_CAD_SCHEMA.NUMERIC_EXPRESSION' IN TYPEOF(index1))) AND ('STEP_MERGED_CAD_SCHEMA.NUMERIC_EXPRESSION' IN TYPEOF(index2)); WR2: SIZEOF(SELF\multiple_arity_generic_expression.operands) = 3; WR3: is_int_expr(index1); WR4: is_int_expr(index2); END_ENTITY; -- IN AP242 ENTITY summary_report_request SUBTYPE OF (data_quality_report_request); summary_report_request_type : summary_report_type; END_ENTITY; -- IN AP203e2/AP242 ENTITY supplied_part_relationship SUBTYPE OF (product_definition_relationship); END_ENTITY; ENTITY surface SUPERTYPE OF (ONEOF(elementary_surface, swept_surface, bounded_surface, offset_surface, surface_replica)) SUBTYPE OF (geometric_representation_item); END_ENTITY; ENTITY surface_condition_callout SUBTYPE OF (draughting_callout); WHERE WR1: SIZEOF(QUERY (c <* SELF.contents| (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'ANNOTATION_CURVE_OCCURRENCE'), ('STEP_MERGED_CAD_SCHEMA.' + 'ANNOTATION_SYMBOL_OCCURRENCE'), ('STEP_MERGED_CAD_SCHEMA.' + 'ANNOTATION_TEXT_OCCURRENCE') ] * TYPEOF(c)) <> 1))) = 0; END_ENTITY; ENTITY surface_curve SUPERTYPE OF (ONEOF(intersection_curve, seam_curve) ANDOR bounded_surface_curve) SUBTYPE OF (curve); curve_3d : curve; associated_geometry : LIST [1:2] OF pcurve_or_surface; master_representation : preferred_surface_curve_representation; DERIVE basis_surface : SET [1:2] OF surface := get_basis_surface(SELF); WHERE WR1: curve_3d.dim = 3; WR2: ('STEP_MERGED_CAD_SCHEMA.PCURVE' IN TYPEOF(associated_geometry[1])) OR (master_representation <> pcurve_s1); WR3: ('STEP_MERGED_CAD_SCHEMA.PCURVE' IN TYPEOF(associated_geometry[2])) OR (master_representation <> pcurve_s2); WR4: NOT ('STEP_MERGED_CAD_SCHEMA.PCURVE' IN TYPEOF(curve_3d)); END_ENTITY; ENTITY surface_curve_swept_area_solid SUBTYPE OF (swept_area_solid); directrix : curve; start_param : REAL; end_param : REAL; reference_surface : surface; WHERE WR1: NOT ('STEP_MERGED_CAD_SCHEMA.SURFACE_CURVE' IN TYPEOF(directrix)) OR (reference_surface IN directrix\surface_curve.basis_surface); END_ENTITY; -- IN AP242 ENTITY surface_distance_assembly_constraint_with_dimension SUBTYPE OF (binary_assembly_constraint, sdgc_with_dimension); END_ENTITY; -- IN AP242 ENTITY surface_distance_geometric_constraint SUBTYPE OF (explicit_geometric_constraint); near_points : SET [0:4] OF near_point_relationship; SELF\explicit_constraint.constrained_elements : SET [1:2] OF surface; SELF\explicit_constraint.reference_elements : SET [0:4] OF point_curve_or_surface_constraint_element; WHERE WR1: (SIZEOF(SELF\explicit_constraint.reference_elements) > 0) OR ('STEP_MERGED_CAD_SCHEMA.SDGC_WITH_DIMENSION' IN TYPEOF(SELF)) AND (SIZEOF(SELF\explicit_constraint.constrained_elements) = 2); WR2: SIZEOF(near_points) <= SIZEOF(SELF\explicit_constraint.reference_elements); WR3: SIZEOF(QUERY (q <* near_points| NOT (q\representation_item_relationship.relating_representation_item IN SELF\explicit_constraint.reference_elements))) = 0; END_ENTITY; ENTITY surface_of_linear_extrusion SUBTYPE OF (swept_surface); extrusion_axis : vector; END_ENTITY; ENTITY surface_of_revolution SUBTYPE OF (swept_surface); axis_position : axis1_placement; DERIVE axis_line : line := representation_item('') || geometric_representation_item() || curve() || line(axis_position.location, representation_item('') || geometric_representation_item() || vector(axis_position.z, 1.0)); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY surface_pair ABSTRACT SUPERTYPE OF (ONEOF(sliding_surface_pair, rolling_surface_pair) ANDOR surface_pair_with_range) SUBTYPE OF (high_order_kinematic_pair); surface_1 : surface; surface_2 : surface; orientation : BOOLEAN; WHERE WR1: SIZEOF(QUERY (r <* SELF\kinematic_pair.associated_link_representations_1| NOT (surface_1 IN r.items))) = 0; WR2: SIZEOF(QUERY (r <* SELF\kinematic_pair.associated_link_representations_2| NOT (surface_2 IN r.items))) = 0; WR3: SIZEOF(QUERY (lr <* SELF\kinematic_pair.associated_link_representations_1| NOT ('STEP_MERGED_CAD_SCHEMA.RIGID_LINK_REPRESENTATION' IN TYPEOF(lr)))) = 0; END_ENTITY; -- IN AP214 ENTITY surface_pair_range SUBTYPE OF (simple_pair_range); SELF\simple_pair_range.applies_to_pair : surface_pair; range_on_surface_1 : rectangular_trimmed_surface; range_on_surface_2 : rectangular_trimmed_surface; lower_limit_actual_rotation : rotational_range_measure; upper_limit_actual_rotation : rotational_range_measure; WHERE wr1: SELF\simple_pair_range.applies_to_pair\surface_pair.surface_1 :=: range_on_surface_1.basis_surface; wr2: SELF\simple_pair_range.applies_to_pair\surface_pair.surface_2 :=: range_on_surface_2.basis_surface; wr3: (('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(lower_limit_actual_rotation)) OR ('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(upper_limit_actual_rotation))) XOR (lower_limit_actual_rotation < upper_limit_actual_rotation); END_ENTITY; -- IN AP242 ENTITY surface_pair_with_range SUBTYPE OF (surface_pair); range_on_surface_1 : rectangular_trimmed_surface; range_on_surface_2 : rectangular_trimmed_surface; lower_limit_actual_rotation : OPTIONAL plane_angle_measure; upper_limit_actual_rotation : OPTIONAL plane_angle_measure; WHERE WR1: SELF\surface_pair.surface_1 :=: range_on_surface_1.basis_surface; WR2: SELF\surface_pair.surface_2 :=: range_on_surface_2.basis_surface; WR3: (NOT EXISTS(lower_limit_actual_rotation) OR NOT EXISTS(upper_limit_actual_rotation)) XOR (lower_limit_actual_rotation < upper_limit_actual_rotation); WR4: SIZEOF(QUERY (r <* SELF\kinematic_pair.associated_link_representations_1| NOT (range_on_surface_1 IN r.items))) = 0; WR5: SIZEOF(QUERY (r <* SELF\kinematic_pair.associated_link_representations_2| NOT (range_on_surface_2 IN r.items))) = 0; END_ENTITY; ENTITY surface_patch SUBTYPE OF (founded_item); parent_surface : bounded_surface; u_transition : transition_code; v_transition : transition_code; u_sense : BOOLEAN; v_sense : BOOLEAN; INVERSE using_surfaces : BAG [1:?] OF rectangular_composite_surface FOR segments; WHERE WR1: NOT ('STEP_MERGED_CAD_SCHEMA.CURVE_BOUNDED_SURFACE' IN TYPEOF(parent_surface)); END_ENTITY; -- IN AP242 ENTITY surface_patch_set SUBTYPE OF (geometric_representation_item); patches : SET [1:?] OF surface_patch; END_ENTITY; ENTITY surface_profile_tolerance SUBTYPE OF (geometric_tolerance); END_ENTITY; ENTITY surface_rendering_properties; rendered_colour : colour; END_ENTITY; ENTITY surface_replica SUBTYPE OF (surface); parent_surface : surface; transformation : cartesian_transformation_operator_3d; WHERE WR1: acyclic_surface_replica(SELF, parent_surface); END_ENTITY; ENTITY surface_side_style SUBTYPE OF (founded_item); name : label; styles : SET [1:7] OF surface_style_element_select; WHERE WR1: SIZEOF(QUERY (style1 <* SELF.styles| (SIZEOF(QUERY (style2 <* SELF.styles - style1| (TYPEOF(style1) = TYPEOF(style2)))) > 0))) = 0; END_ENTITY; -- IN AP242 ENTITY surface_smoothness_geometric_constraint SUBTYPE OF (explicit_geometric_constraint); u_smoothness : transition_code; v_smoothness : transition_code; SELF\explicit_constraint.constrained_elements : SET [1:1] OF surface_patch_set; WHERE WR1: SIZEOF(SELF\explicit_constraint.reference_elements) = 0; END_ENTITY; ENTITY surface_style_boundary SUBTYPE OF (founded_item); style_of_boundary : curve_or_render; END_ENTITY; ENTITY surface_style_control_grid SUBTYPE OF (founded_item); style_of_control_grid : curve_or_render; END_ENTITY; ENTITY surface_style_fill_area SUBTYPE OF (founded_item); fill_area : fill_area_style; END_ENTITY; ENTITY surface_style_parameter_line SUBTYPE OF (founded_item); style_of_parameter_lines : curve_or_render; direction_counts : SET [1:2] OF direction_count_select; WHERE WR1: (HIINDEX(SELF.direction_counts) = 1) XOR (TYPEOF(SELF.direction_counts[1]) <> TYPEOF(SELF.direction_counts[2])); END_ENTITY; ENTITY surface_style_reflectance_ambient; ambient_reflectance : REAL; END_ENTITY; ENTITY surface_style_reflectance_ambient_diffuse SUBTYPE OF (surface_style_reflectance_ambient); diffuse_reflectance : REAL; END_ENTITY; ENTITY surface_style_reflectance_ambient_diffuse_specular SUBTYPE OF (surface_style_reflectance_ambient_diffuse); specular_reflectance : REAL; specular_exponent : REAL; specular_colour : colour; END_ENTITY; ENTITY surface_style_rendering; rendering_method : shading_surface_method; surface_colour : colour; END_ENTITY; ENTITY surface_style_rendering_with_properties SUBTYPE OF (surface_style_rendering); properties : SET [1:2] OF rendering_properties_select; WHERE WR1: (HIINDEX(SELF.properties) = 1) XOR (TYPEOF(SELF.properties[1]) <> TYPEOF(SELF.properties[2])); END_ENTITY; ENTITY surface_style_segmentation_curve SUBTYPE OF (founded_item); style_of_segmentation_curve : curve_or_render; END_ENTITY; ENTITY surface_style_silhouette SUBTYPE OF (founded_item); style_of_silhouette : curve_or_render; END_ENTITY; ENTITY surface_style_transparent; transparency : REAL; WHERE WR1: (0.0 <= transparency) AND (transparency <= 1.0); END_ENTITY; ENTITY surface_style_usage SUBTYPE OF (founded_item); side : surface_side; style : surface_side_style_select; END_ENTITY; ENTITY surface_texture_representation SUBTYPE OF (representation); WHERE WR1: SIZEOF(QUERY (i <* SELF.items| (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'MEASURE_REPRESENTATION_ITEM'), ('STEP_MERGED_CAD_SCHEMA.' + 'VALUE_RANGE'), ('STEP_MERGED_CAD_SCHEMA.' + 'DESCRIPTIVE_REPRESENTATION_ITEM') ] * TYPEOF(i)) <> 1))) = 0; WR2: (SIZEOF(QUERY (i <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.' + 'DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(i)))) = 1) AND (SIZEOF(QUERY (i <* SELF.items| ('STEP_MERGED_CAD_SCHEMA.' + 'DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(i)) AND (i.name = 'measuring method'))) = 1); WR3: SIZEOF(QUERY (i <* SELF.items| (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'MEASURE_REPRESENTATION_ITEM'), ('STEP_MERGED_CAD_SCHEMA.' + 'VALUE_RANGE') ] * TYPEOF(i)) = 1))) > 0; WR4: ((SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'REPRESENTATION_RELATIONSHIP.' + 'REP_1')) <= 1) AND (SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'REPRESENTATION_RELATIONSHIP.' + 'REP_2')) = 0)) AND (SIZEOF(QUERY (rr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'REPRESENTATION_RELATIONSHIP.' + 'REP_1')| (rr.rep_2.name = 'measuring direction'))) = SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'REPRESENTATION_RELATIONSHIP.' + 'REP_1'))); WR5: (SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PROPERTY_DEFINITION_REPRESENTATION.' + 'USED_REPRESENTATION')) = 1) AND (SIZEOF(QUERY (pdr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PROPERTY_DEFINITION_REPRESENTATION.' + 'USED_REPRESENTATION')| (SIZEOF(QUERY (gpa <* USEDIN(pdr.definition, 'STEP_MERGED_CAD_SCHEMA.' + 'GENERAL_PROPERTY_ASSOCIATION.' + 'DERIVED_DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.' + 'GENERAL_PROPERTY' IN TYPEOF(gpa.base_definition)) AND (gpa\general_property_association.base_definition\general_property.name = 'surface_condition'))) = 1))) = 1); END_ENTITY; -- IN AP242 ENTITY surface_with_excessive_patches_in_one_direction SUBTYPE OF (overcomplex_geometry); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'B_SPLINE_OR_RECTANGULAR_COMPOSITE_SURFACE_SELECT' ]); WR4: validate_locations_of_extreme_value_type(SELF, []); WR5: validate_accuracy_types(SELF, []); END_ENTITY; -- IN AP242 ENTITY surface_with_small_curvature_radius SUBTYPE OF (geometry_with_local_near_degeneracy); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_UPPER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.SURFACE' ]); WR4: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.POINT_ON_SURFACE' ]); WR5: validate_accuracy_types(SELF, [ 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE' ]); END_ENTITY; -- IN AP203e2/AP242 ENTITY surfaced_open_shell SUBTYPE OF (open_shell); WHERE WR1: SIZEOF(QUERY (q <* SELF\connected_face_set.cfs_faces| NOT ('STEP_MERGED_CAD_SCHEMA.FACE_SURFACE' IN TYPEOF(q)))) = 0; END_ENTITY; ENTITY swept_area_solid SUPERTYPE OF (ONEOF(revolved_area_solid, extruded_area_solid, surface_curve_swept_area_solid)) SUBTYPE OF (solid_model); swept_area : curve_bounded_surface; WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.PLANE' IN TYPEOF(swept_area.basis_surface); END_ENTITY; -- IN AP242 ENTITY swept_curve_surface_geometric_constraint SUBTYPE OF (explicit_geometric_constraint); SELF\explicit_constraint.constrained_elements : SET [1:?] OF surface; SELF\explicit_constraint.reference_elements : SET [1:1] OF swept_surface_or_solid; END_ENTITY; ENTITY swept_disk_solid SUBTYPE OF (solid_model); directrix : curve; radius : positive_length_measure; inner_radius : OPTIONAL positive_length_measure; start_param : REAL; end_param : REAL; WHERE WR1: directrix.dim = 3; WR2: NOT EXISTS(inner_radius) OR (radius > inner_radius); END_ENTITY; ENTITY swept_face_solid SUPERTYPE OF (ONEOF(extruded_face_solid, revolved_face_solid)) SUBTYPE OF (solid_model); swept_face : face_surface; WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.PLANE' IN TYPEOF(swept_face.face_geometry); END_ENTITY; -- IN AP242 ENTITY swept_point_curve_geometric_constraint SUBTYPE OF (explicit_geometric_constraint); SELF\explicit_constraint.constrained_elements : SET [1:?] OF curve; SELF\explicit_constraint.reference_elements : SET [1:1] OF swept_face_solid; END_ENTITY; ENTITY swept_surface SUPERTYPE OF (ONEOF(surface_of_linear_extrusion, surface_of_revolution)) SUBTYPE OF (surface); swept_curve : curve; END_ENTITY; -- IN AP203e2/AP242 ENTITY symbol SUBTYPE OF (representation_item); END_ENTITY; ENTITY symbol_colour; colour_of_symbol : colour; END_ENTITY; ENTITY symbol_representation SUBTYPE OF (representation); END_ENTITY; ENTITY symbol_representation_map SUBTYPE OF (representation_map); SELF\representation_map.mapped_representation : symbol_representation; SELF\representation_map.mapping_origin : axis2_placement; WHERE WR1: SIZEOF(QUERY (mi <* SELF\representation_map.map_usage| NOT ('STEP_MERGED_CAD_SCHEMA.ANNOTATION_SYMBOL' IN TYPEOF(mi)))) = 0; END_ENTITY; ENTITY symbol_style SUBTYPE OF (founded_item); name : label; style_of_symbol : symbol_style_select; END_ENTITY; ENTITY symbol_target SUBTYPE OF (geometric_representation_item); placement : axis2_placement; x_scale : positive_ratio_measure; y_scale : positive_ratio_measure; END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY symmetric_shape_aspect SUBTYPE OF (shape_aspect); INVERSE basis_relationships : SET [1:?] OF shape_aspect_deriving_relationship FOR related_shape_aspect; END_ENTITY; -- IN AP242 ENTITY symmetry_geometric_constraint SUBTYPE OF (explicit_geometric_constraint); mirror_element : linear_geometry_constraint_element; SELF\explicit_constraint.constrained_elements : SET [2:2] OF geometric_representation_item; WHERE WR1: SIZEOF(SELF\explicit_constraint.reference_elements) = 0; WR2: SIZEOF(TYPEOF(mirror_element) * [ 'STEP_MERGED_CAD_SCHEMA.DIRECTION', 'STEP_MERGED_CAD_SCHEMA.VECTOR' ]) = 0; WR3: NOT ((SELF\geometric_representation_item.dim = 2) AND ('STEP_MERGED_CAD_SCHEMA.PLANE' IN TYPEOF(mirror_element))); END_ENTITY; ENTITY symmetry_tolerance SUBTYPE OF (geometric_tolerance_with_datum_reference); END_ENTITY; -- IN AP203e2/AP242 ENTITY table_representation_item SUBTYPE OF (compound_representation_item); WHERE WR1: SIZEOF(QUERY (itet <* SELF\compound_representation_item.item_element| NOT ('STEP_MERGED_CAD_SCHEMA.ROW_REPRESENTATION_ITEM' IN TYPEOF(itet)))) = 0; END_ENTITY; ENTITY tactile_appearance_representation SUBTYPE OF (representation); WHERE WR1: SIZEOF(QUERY (i <* SELF.items| (SIZEOF([ ('STEP_MERGED_CAD_SCHEMA.' + 'MEASURE_REPRESENTATION_ITEM'), ('STEP_MERGED_CAD_SCHEMA.' + 'VALUE_RANGE') ] * TYPEOF(i)) <> 1))) = 0; WR2: SIZEOF(QUERY (i <* SELF.items| (name = 'depth'))) <= 1; WR3: (SIZEOF(USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PROPERTY_DEFINITION_REPRESENTATION.' + 'USED_REPRESENTATION')) = 1) AND (SIZEOF(QUERY (pdr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PROPERTY_DEFINITION_REPRESENTATION.' + 'USED_REPRESENTATION')| (SIZEOF(QUERY (gpa <* USEDIN(pdr.definition, 'STEP_MERGED_CAD_SCHEMA.' + 'GENERAL_PROPERTY_ASSOCIATION.' + 'DERIVED_DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.' + 'GENERAL_PROPERTY' IN TYPEOF(gpa.base_definition)) AND (gpa\general_property_association.base_definition\general_property.name = 'surface_condition'))) = 1))) = 1); END_ENTITY; -- IN AP203e2/AP242 ENTITY tagged_text_format SUBTYPE OF (representation_context); END_ENTITY; -- IN AP203e2/AP242 ENTITY tagged_text_item SUBTYPE OF (descriptive_representation_item); END_ENTITY; -- IN AP214/AP242 ENTITY tan_function SUBTYPE OF (unary_function_call); END_ENTITY; ENTITY tangent SUBTYPE OF (derived_shape_aspect); WHERE WR1: SIZEOF(SELF\derived_shape_aspect.deriving_relationships) = 1; END_ENTITY; -- IN AP242 ENTITY tangent_assembly_constraint SUBTYPE OF (binary_assembly_constraint, tangent_geometric_constraint); END_ENTITY; -- IN AP242 ENTITY tangent_geometric_constraint SUBTYPE OF (explicit_geometric_constraint); near_points : SET [0:?] OF near_point_relationship; tangent_contact : tangent_contact_type; SELF\explicit_constraint.constrained_elements : SET [1:?] OF curve_or_surface_constraint_element; SELF\explicit_constraint.reference_elements : SET [0:?] OF curve_or_surface_constraint_element; WHERE WR1: (SIZEOF(SELF\explicit_constraint.reference_elements) > 0) OR (SIZEOF(SELF\explicit_constraint.constrained_elements) = 2); WR2: NOT ((SELF\geometric_representation_item.dim = 2) AND (tangent_contact = surface_contact)); WR3: SIZEOF(QUERY (q <* near_points| NOT (q\representation_item_relationship.relating_representation_item IN SELF\explicit_constraint.reference_elements))) = 0; END_ENTITY; -- IN AP214/AP242 ENTITY taper SUBTYPE OF (shape_aspect); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_DEFINITION' IN TYPEOF(SELF.of_shape.definition); WR2: SELF.description IN [ 'angle taper', 'diameter taper', 'directed taper' ]; WR3: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1))) = 0; WR4: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) = 1))) = 0))) = 0; WR5: NOT (SELF.description = 'angle taper') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'taper angle'))) = 1))) = 0))) = 0); WR6: NOT (SELF.description = 'diameter taper') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'final diameter'))) = 1))) = 0))) = 0); WR7: NOT (SELF.description = 'directed taper') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'angle'))) = 1))) = 0))) = 0); WR8: NOT (SELF.description = 'directed taper') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.DIRECTION_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'direction'))) = 1))) = 0); END_ENTITY; -- IN AP214/AP242 ENTITY tee_profile SUBTYPE OF (shape_aspect); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_DEFINITION' IN TYPEOF(SELF.of_shape.definition); WR2: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1))) = 0; WR3: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) >= 9) AND (SIZEOF(impl_rep.used_representation.items) <= 10))) = 0))) = 0; WR4: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (srwp_i <* pdr.used_representation.items| (((((((((srwp_i.name = 'orientation') OR (srwp_i.name = 'width')) OR (srwp_i.name = 'depth')) OR (srwp_i.name = 'cross bar width')) OR (srwp_i.name = 'cross bar depth')) OR (srwp_i.name = 'first offset')) OR (srwp_i.name = 'second offset')) OR (srwp_i.name = 'first angle')) OR (srwp_i.name = 'second angle')) OR (srwp_i.name = 'radius'))) = SIZEOF(pdr.used_representation.items)))) = 1))) = 1; WR5: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.PLACEMENT' IN TYPEOF(it)) AND (it.name = 'orientation'))) = 1))) = 0))) = 0; WR6: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'width'))) = 1))) = 0))) = 0; WR7: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'depth'))) = 1))) = 0))) = 0; WR8: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'cross bar width'))) = 1))) = 0))) = 0; WR9: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'cross bar depth'))) = 1))) = 0))) = 0; WR10: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'first offset'))) = 1))) = 0))) = 0; WR11: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'second offset'))) = 1))) = 0))) = 0; WR12: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'first angle'))) = 1))) = 0))) = 0; WR13: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'second angle'))) = 1))) = 0))) = 0; WR14: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'radius'))) <= 1))) = 0))) = 0; WR15: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PLANAR_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'profile limit'))) <= 1))) = 0; END_ENTITY; ENTITY terminator_symbol SUBTYPE OF (annotation_symbol_occurrence); annotated_curve : annotation_curve_occurrence; END_ENTITY; -- IN AP242 ENTITY tessellated_annotation_occurrence SUBTYPE OF (annotation_occurrence); SELF\styled_item.item : tessellated_geometric_set; END_ENTITY; -- IN AP242 ENTITY tessellated_connecting_edge SUBTYPE OF (tessellated_edge); smooth : LOGICAL; face1 : tessellated_face; face2 : tessellated_face; line_strip_face1 : LIST [2:?] OF INTEGER; line_strip_face2 : LIST [2:?] OF INTEGER; WHERE WR1: SIZEOF(line_strip_face1) = SIZEOF(line_strip_face2); WR2: SIZEOF(line_strip_face1) = SIZEOF(SELF\tessellated_edge.line_strip); END_ENTITY; -- IN AP242 ENTITY tessellated_curve_set SUBTYPE OF (tessellated_item); coordinates : coordinates_list; line_strips : LIST [1:?] OF LIST [2:?] OF INTEGER; END_ENTITY; -- IN AP242 ENTITY tessellated_edge SUBTYPE OF (tessellated_structured_item); coordinates : coordinates_list; geometric_link : OPTIONAL edge_or_curve; line_strip : LIST [2:?] OF INTEGER; END_ENTITY; -- IN AP242 ENTITY tessellated_face ABSTRACT SUPERTYPE OF (ONEOF(triangulated_face, complex_triangulated_face)) SUBTYPE OF (tessellated_structured_item); coordinates : coordinates_list; pnmax : INTEGER; normals : LIST [0:?] OF LIST [3:3] OF REAL; geometric_link : OPTIONAL face_or_surface; WHERE WR1: ((SIZEOF(normals) = 0) OR (SIZEOF(normals) = 1)) OR (SIZEOF(normals) = pnmax); END_ENTITY; -- IN AP242 ENTITY tessellated_geometric_set SUBTYPE OF (tessellated_item); children : SET [1:?] OF tessellated_item; END_ENTITY; -- IN AP242 ENTITY tessellated_item ABSTRACT SUPERTYPE OF (ONEOF(coordinates_list, tessellated_solid, tessellated_shell, tessellated_wire, tessellated_geometric_set, tessellated_curve_set, tessellated_point_set, tessellated_surface_set, tessellated_structured_item)) SUBTYPE OF (geometric_representation_item); WHERE WR1: SIZEOF(QUERY (using_rep <* using_representations(SELF)| NOT ('STEP_MERGED_CAD_SCHEMA.TESSELLATED_SHAPE_REPRESENTATION' IN TYPEOF(using_rep)))) = 0; END_ENTITY; -- IN AP242 ENTITY tessellated_point_set SUBTYPE OF (tessellated_item); coordinates : coordinates_list; point_list : LIST [1:?] OF INTEGER; END_ENTITY; -- IN AP242 ENTITY tessellated_shape_representation SUBTYPE OF (shape_representation); SELF\representation.items : SET [1:?] OF tessellated_item; WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.GLOBAL_UNIT_ASSIGNED_CONTEXT' IN TYPEOF(SELF\representation.context_of_items); END_ENTITY; -- IN AP242 ENTITY tessellated_shell SUBTYPE OF (tessellated_item); items : SET [1:?] OF tessellated_structured_item; topological_link : OPTIONAL connected_face_set; END_ENTITY; -- IN AP242 ENTITY tessellated_solid SUBTYPE OF (tessellated_item); items : SET [1:?] OF tessellated_structured_item; geometric_link : OPTIONAL manifold_solid_brep; END_ENTITY; -- IN AP242 ENTITY tessellated_structured_item SUPERTYPE OF (ONEOF(tessellated_face, tessellated_edge, tessellated_vertex)) SUBTYPE OF (tessellated_item); END_ENTITY; -- IN AP242 ENTITY tessellated_surface_set ABSTRACT SUPERTYPE OF (ONEOF(triangulated_surface_set, complex_triangulated_surface_set)) SUBTYPE OF (tessellated_item); coordinates : coordinates_list; pnmax : INTEGER; normals : LIST [0:?] OF LIST [3:3] OF REAL; WHERE WR1: ((SIZEOF(normals) = 0) OR (SIZEOF(normals) = 1)) OR (SIZEOF(normals) = pnmax); END_ENTITY; -- IN AP242 ENTITY tessellated_vertex SUBTYPE OF (tessellated_structured_item); coordinates : coordinates_list; topological_link : OPTIONAL vertex_point; point_index : INTEGER; END_ENTITY; -- IN AP242 ENTITY tessellated_wire SUBTYPE OF (tessellated_item); items : SET [1:?] OF tessellated_edge_or_vertex; geometric_model_link : OPTIONAL path_or_composite_curve; END_ENTITY; -- IN AP203e2/AP242 ENTITY text_font; id : identifier; name : label; description : text; INVERSE glyphs : SET [1:?] OF character_glyph_font_usage FOR font; END_ENTITY; -- IN AP203e2/AP242 ENTITY text_font_family; id : identifier; name : label; description : text; INVERSE fonts : SET [1:?] OF text_font_in_family FOR family; END_ENTITY; -- IN AP203e2/AP242 ENTITY text_font_in_family; font : text_font; family : text_font_family; END_ENTITY; ENTITY text_literal SUBTYPE OF (geometric_representation_item); literal : presentable_text; placement : axis2_placement; alignment : text_alignment; path : text_path; font : font_select; END_ENTITY; ENTITY text_literal_with_associated_curves SUBTYPE OF (text_literal); associated_curves : SET [1:?] OF curve; END_ENTITY; ENTITY text_literal_with_blanking_box SUBTYPE OF (text_literal); blanking : planar_box; END_ENTITY; ENTITY text_literal_with_delineation SUBTYPE OF (text_literal); delineation : text_delineation; END_ENTITY; ENTITY text_literal_with_extent SUBTYPE OF (text_literal); extent : planar_extent; END_ENTITY; ENTITY text_string_representation SUBTYPE OF (representation); SELF\representation.items : SET [1:?] OF text_string_representation_item; WHERE WR1: SIZEOF(QUERY (item <* SELF\representation.items| NOT (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.TEXT_LITERAL', 'STEP_MERGED_CAD_SCHEMA.ANNOTATION_TEXT', 'STEP_MERGED_CAD_SCHEMA.ANNOTATION_TEXT_CHARACTER', 'STEP_MERGED_CAD_SCHEMA.DEFINED_CHARACTER_GLYPH', 'STEP_MERGED_CAD_SCHEMA.COMPOSITE_TEXT' ] * TYPEOF(item)) = 0))) >= 1; WR2: SIZEOF(QUERY (a2p <* QUERY (item <* SELF\representation.items| ('STEP_MERGED_CAD_SCHEMA.AXIS2_PLACEMENT' IN TYPEOF(item)))| NOT ((SIZEOF(QUERY (at <* QUERY (item <* SELF\representation.items| ('STEP_MERGED_CAD_SCHEMA.' + 'ANNOTATION_TEXT' IN TYPEOF(item)))| (at\mapped_item.mapping_target :=: a2p))) >= 1) OR (SIZEOF(QUERY (atc <* QUERY (item <* SELF\representation.items| ('STEP_MERGED_CAD_SCHEMA.' + 'ANNOTATION_TEXT_CHARACTER' IN TYPEOF(item)))| (atc\mapped_item.mapping_target :=: a2p))) >= 1)))) = 0; END_ENTITY; ENTITY text_style SUBTYPE OF (founded_item); name : label; character_appearance : character_style_select; END_ENTITY; ENTITY text_style_for_defined_font; text_colour : colour; END_ENTITY; ENTITY text_style_with_box_characteristics SUBTYPE OF (text_style); characteristics : SET [1:4] OF box_characteristic_select; WHERE WR1: SIZEOF(QUERY (c1 <* SELF.characteristics| (SIZEOF(QUERY (c2 <* SELF.characteristics - c1| (TYPEOF(c1) = TYPEOF(c2)))) > 0))) = 0; END_ENTITY; ENTITY text_style_with_mirror SUBTYPE OF (text_style); mirror_placement : axis2_placement; END_ENTITY; ENTITY text_style_with_spacing SUBTYPE OF (text_style); character_spacing : character_spacing_select; END_ENTITY; -- IN AP242 ENTITY thermal_component SUBTYPE OF (assembly_component); END_ENTITY; -- IN AP203e2/AP242 ENTITY thermal_resistance_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.THERMAL_RESISTANCE_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; -- IN AP203e2/AP242 ENTITY thermal_resistance_unit SUBTYPE OF (derived_unit); WHERE WR1: derive_dimensional_exponents(SELF) = dimensional_exponents(-1.0, -1.0, -3.0, 0.0, 1.0, 0.0, 0.0); END_ENTITY; ENTITY thermodynamic_temperature_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.THERMODYNAMIC_TEMPERATURE_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; ENTITY thermodynamic_temperature_unit SUBTYPE OF (named_unit); WHERE WR1: ((((((SELF\named_unit.dimensions.length_exponent = 0.0) AND (SELF\named_unit.dimensions.mass_exponent = 0.0)) AND (SELF\named_unit.dimensions.time_exponent = 0.0)) AND (SELF\named_unit.dimensions.electric_current_exponent = 0.0)) AND (SELF\named_unit.dimensions.thermodynamic_temperature_exponent = 1.0)) AND (SELF\named_unit.dimensions.amount_of_substance_exponent = 0.0)) AND (SELF\named_unit.dimensions.luminous_intensity_exponent = 0.0); END_ENTITY; -- IN AP203e2/AP242 ENTITY thickened_face_solid SUBTYPE OF (solid_model); base_element : generalized_surface_select; offset1 : length_measure; offset2 : length_measure; WHERE WR1: NOT (('STEP_MERGED_CAD_SCHEMA.SURFACE' IN TYPEOF(base_element)) AND NOT ('STEP_MERGED_CAD_SCHEMA.BOUNDED_SURFACE' IN TYPEOF(base_element))); WR2: offset1 <> offset2; END_ENTITY; -- IN AP203e2 ENTITY thickness_laminate_definition SUBTYPE OF (product_definition); WHERE WR1: SIZEOF(QUERY (pdr <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.' + 'PRODUCT_DEFINITION_RELATIONSHIP.' + 'RELATING_PRODUCT_DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.' + 'NEXT_ASSEMBLY_USAGE_OCCURRENCE' IN TYPEOF(pdr)))) = 1; END_ENTITY; -- IN AP203e2/AP242 ENTITY thickness_laminate_table SUBTYPE OF (zone_structural_makeup); END_ENTITY; -- IN AP214/AP242 ENTITY thread SUBTYPE OF (feature_definition); WHERE WR1: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| (('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (8 <= SIZEOF(pdr.used_representation.items))) AND (SIZEOF(pdr.used_representation.items) <= 11))) = 1))) = 1; WR2: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'major diameter'))) = 1))) = 0))) = 0; WR3: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'minor diameter'))) <= 1))) = 0))) = 0; WR4: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'pitch diameter'))) <= 1))) = 0))) = 0; WR5: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.RATIO_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'number of threads'))) = 1))) = 0))) = 0; WR6: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND (it.name = 'fit class'))) = 1))) = 0))) = 0; WR7: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND (it.name = 'form'))) = 1))) = 0))) = 0; WR8: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND (it.name = 'hand')) AND (it.description IN [ 'left', 'right' ]))) = 1))) = 0))) = 0; WR9: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND (it.name = 'qualifier'))) <= 1))) = 0))) = 0; WR10: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND (it.name = 'thread side')) AND ((it.description = 'internal') OR (it.description = 'external')))) = 1))) = 0))) = 0; WR11: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'crest'))) <= 1))) = 0))) = 0; WR12: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'partial area occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'applied area usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.APPLIED_AREA' IN TYPEOF(sdr.relating_shape_aspect)))) = 1))) = 1))) = 0; WR13: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'applied shape') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT' IN TYPEOF(sdr.relating_shape_aspect)))) = 1))) = 1))) = 0; WR14: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND (it.name = 'fit class 2'))) <= 1))) = 0))) = 0; WR15: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'nominal size'))) <= 1))) = 0))) = 0; WR16: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'thread runout') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'thread runout usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.THREAD_RUNOUT' IN TYPEOF(sdr.relating_shape_aspect)))) <= 1))) = 1))) = 0; END_ENTITY; -- IN AP242 ENTITY thread_runout SUBTYPE OF (shape_aspect); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(SELF.of_shape); WR2: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1))) = 0; WR3: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) = 3))) = 0))) = 0; WR4: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (srwp_i <* pdr.used_representation.items| NOT (srwp_i.name IN [ 'length of runout', 'pitch or dimension', 'included or extra' ]))) > 0))) = 0))) = 0; WR5: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'length of runout'))) = 1))) = 0))) <= 1; WR6: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND (it.name = 'pitch or dimension')) AND (it.description IN [ 'pitch', 'pitch or dimension' ]))) = 1))) = 0))) = 0; WR7: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND (it.name = 'included or extra')) AND (it.description IN [ 'included', 'extra' ]))) = 1))) = 0))) = 0; END_ENTITY; ENTITY time_interval; id : identifier; name : label; description : OPTIONAL text; END_ENTITY; ENTITY time_interval_assignment ABSTRACT SUPERTYPE; assigned_time_interval : time_interval; role : time_interval_role; END_ENTITY; ENTITY time_interval_based_effectivity SUBTYPE OF (effectivity); effectivity_period : time_interval; END_ENTITY; -- IN AP203e2/AP242 ENTITY time_interval_relationship; name : label; description : OPTIONAL text; relating_time_interval : time_interval; related_time_interval : time_interval; END_ENTITY; ENTITY time_interval_role; name : label; description : OPTIONAL text; END_ENTITY; ENTITY time_interval_with_bounds SUBTYPE OF (time_interval); primary_bound : OPTIONAL date_time_or_event_occurrence; secondary_bound : OPTIONAL date_time_or_event_occurrence; duration : OPTIONAL time_measure_with_unit; WHERE WR1: NOT (EXISTS(secondary_bound) AND EXISTS(duration)); WR2: EXISTS(primary_bound) OR EXISTS(secondary_bound); END_ENTITY; ENTITY time_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.TIME_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; ENTITY time_unit SUBTYPE OF (named_unit); WHERE WR1: ((((((SELF\named_unit.dimensions.length_exponent = 0.0) AND (SELF\named_unit.dimensions.mass_exponent = 0.0)) AND (SELF\named_unit.dimensions.time_exponent = 1.0)) AND (SELF\named_unit.dimensions.electric_current_exponent = 0.0)) AND (SELF\named_unit.dimensions.thermodynamic_temperature_exponent = 0.0)) AND (SELF\named_unit.dimensions.amount_of_substance_exponent = 0.0)) AND (SELF\named_unit.dimensions.luminous_intensity_exponent = 0.0); END_ENTITY; -- DIFF IN AP214 ENTITY tolerance_value; lower_bound : measure_with_unit; upper_bound : measure_with_unit; DERIVE lbvc : REAL := lower_bound\measure_with_unit.value_component; ubvc : REAL := upper_bound\measure_with_unit.value_component; WHERE WR1: ubvc > lbvc; WR2: upper_bound\measure_with_unit.unit_component = lower_bound\measure_with_unit.unit_component; END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY tolerance_zone SUBTYPE OF (shape_aspect); defining_tolerance : SET [1:?] OF tolerance_zone_target; form : tolerance_zone_form; END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY tolerance_zone_definition SUPERTYPE OF (ONEOF(projected_zone_definition, non_uniform_zone_definition, runout_zone_definition)); zone : tolerance_zone; boundaries : SET [0:?] OF shape_aspect; END_ENTITY; ENTITY tolerance_zone_form; name : label; END_ENTITY; -- DIFF IN AP214 ENTITY topological_representation_item SUPERTYPE OF (ONEOF(vertex, edge, face_bound, face, vertex_shell, wire_shell, connected_edge_set, connected_face_set, loop ANDOR path)) SUBTYPE OF (representation_item); END_ENTITY; -- IN AP242 ENTITY topology_related_to_multiply_defined_geometry ABSTRACT SUPERTYPE OF (ONEOF(multiply_defined_faces, multiply_defined_vertices, multiply_defined_edges)) SUBTYPE OF (inapt_topology_and_geometry_relationship); END_ENTITY; -- IN AP242 ENTITY topology_related_to_nearly_degenerate_geometry ABSTRACT SUPERTYPE OF (ONEOF(short_length_edge, small_area_face, entirely_narrow_face)) SUBTYPE OF (inapt_topology_and_geometry_relationship); END_ENTITY; -- IN AP242 ENTITY topology_related_to_overlapping_geometry ABSTRACT SUPERTYPE OF (ONEOF(partly_overlapping_faces, partly_overlapping_edges)) SUBTYPE OF (inapt_topology_and_geometry_relationship); END_ENTITY; -- IN AP242 ENTITY topology_related_to_self_intersecting_geometry ABSTRACT SUPERTYPE OF (ONEOF(self_intersecting_loop, self_intersecting_shell, intersecting_connected_face_sets)) SUBTYPE OF (inapt_topology_and_geometry_relationship); END_ENTITY; ENTITY toroidal_surface SUBTYPE OF (elementary_surface); major_radius : positive_length_measure; minor_radius : positive_length_measure; END_ENTITY; ENTITY torus SUBTYPE OF (geometric_representation_item); position : axis1_placement; major_radius : positive_length_measure; minor_radius : positive_length_measure; WHERE WR1: major_radius > minor_radius; END_ENTITY; ENTITY total_runout_tolerance SUBTYPE OF (geometric_tolerance_with_datum_reference); END_ENTITY; -- IN AP203e2/AP242 ENTITY track_blended_solid ABSTRACT SUPERTYPE OF (track_blended_solid_with_end_conditions) SUBTYPE OF (edge_blended_solid); WHERE WR1: check_continuous_edges(SELF\edge_blended_solid.blended_edges); END_ENTITY; -- IN AP203e2/AP242 ENTITY track_blended_solid_with_end_conditions SUBTYPE OF (track_blended_solid); end_conditions : LIST [2:2] OF blend_end_condition_select; WHERE WR1: SIZEOF(TYPEOF(SELF) * [ 'STEP_MERGED_CAD_SCHEMA.SOLID_WITH_CONSTANT_RADIUS_EDGE_BLEND', 'STEP_MERGED_CAD_SCHEMA.SOLID_WITH_VARIABLE_RADIUS_EDGE_BLEND', 'STEP_MERGED_CAD_SCHEMA.SOLID_WITH_CHAMFERED_EDGES' ]) = 1; WR2: NOT (('STEP_MERGED_CAD_SCHEMA.VERTEX' IN TYPEOF(end_conditions[1])) AND ('STEP_MERGED_CAD_SCHEMA.VERTEX' IN TYPEOF(end_conditions[2]))); WR3: NOT (('STEP_MERGED_CAD_SCHEMA.VERTEX' IN TYPEOF(end_conditions[1])) AND NOT ((end_conditions[1] :=: SELF\edge_blended_solid.blended_edges[1].edge_start) XOR (end_conditions[1] :=: SELF\edge_blended_solid.blended_edges[1].edge_end))); WR4: NOT (('STEP_MERGED_CAD_SCHEMA.VERTEX' IN TYPEOF(end_conditions[2])) AND NOT ((end_conditions[2] :=: SELF\edge_blended_solid.blended_edges[HIINDEX(SELF\edge_blended_solid.blended_edges)].edge_start) XOR (end_conditions[2] :=: SELF\edge_blended_solid.blended_edges[HIINDEX(SELF\edge_blended_solid.blended_edges)].edge_end))); END_ENTITY; -- IN AP203e2/AP242 ENTITY transformation_with_derived_angle SUPERTYPE OF (ONEOF(draped_defined_transformation, laid_defined_transformation)) SUBTYPE OF (item_defined_transformation); SELF\item_defined_transformation.transform_item_1 : angle_direction_reference_with_a2p3d_select; SELF\item_defined_transformation.transform_item_2 : axis2_placement_3d; DERIVE orientation_angle : plane_angle_measure := derive_angle(SELF\item_defined_transformation.transform_item_1, SELF\item_defined_transformation.transform_item_2); WHERE WR1: ((SELF\item_defined_transformation.transform_item_1\axis2_placement_3d.p[3].direction_ratios[1] = SELF\item_defined_transformation.transform_item_2\axis2_placement_3d.p[3].direction_ratios[1]) AND (SELF\item_defined_transformation.transform_item_1\axis2_placement_3d.p[3].direction_ratios[2] = SELF\item_defined_transformation.transform_item_2\axis2_placement_3d.p[3].direction_ratios[2])) AND (SELF\item_defined_transformation.transform_item_1\axis2_placement_3d.p[3].direction_ratios[3] = SELF\item_defined_transformation.transform_item_2\axis2_placement_3d.p[3].direction_ratios[3]); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY transition_feature SUPERTYPE OF (ONEOF(chamfer, edge_round, fillet)) SUBTYPE OF (shape_aspect); WHERE WR1: SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION', 'STEP_MERGED_CAD_SCHEMA.COMPOUND_FEATURE' ] * TYPEOF(SELF.of_shape.definition)) = 1; WR2: SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.CHAMFER', 'STEP_MERGED_CAD_SCHEMA.EDGE_ROUND', 'STEP_MERGED_CAD_SCHEMA.FILLET' ] * TYPEOF(SELF)) = 1; END_ENTITY; -- IN AP242 ENTITY triangulated_face SUBTYPE OF (tessellated_face); pnindex : LIST [0:?] OF INTEGER; triangles : LIST [1:?] OF LIST [3:3] OF INTEGER; WHERE WR1: (SIZEOF(pnindex) = 0) OR (SIZEOF(pnindex) = SELF\tessellated_face.pnmax); WR2: NOT ((SIZEOF(pnindex) = 0) AND (SELF\tessellated_face.pnmax <> coordinates.npoints)); END_ENTITY; -- IN AP242 ENTITY triangulated_surface_set SUBTYPE OF (tessellated_surface_set); pnindex : LIST [0:?] OF INTEGER; triangles : LIST [1:?] OF LIST [3:3] OF INTEGER; WHERE WR1: (SIZEOF(pnindex) = 0) OR (SIZEOF(pnindex) = SELF\tessellated_surface_set.pnmax); WR2: NOT ((SIZEOF(pnindex) = 0) AND (SELF\tessellated_surface_set.pnmax <> coordinates.npoints)); END_ENTITY; ENTITY trimmed_curve SUBTYPE OF (bounded_curve); basis_curve : curve; trim_1 : SET [1:2] OF trimming_select; trim_2 : SET [1:2] OF trimming_select; sense_agreement : BOOLEAN; master_representation : trimming_preference; WHERE WR1: (HIINDEX(trim_1) = 1) OR (TYPEOF(trim_1[1]) <> TYPEOF(trim_1[2])); WR2: (HIINDEX(trim_2) = 1) OR (TYPEOF(trim_2[1]) <> TYPEOF(trim_2[2])); END_ENTITY; -- IN AP242 ENTITY turned_knurl SUBTYPE OF (feature_definition); WHERE WR1: SELF\characterized_object.description IN [ 'diamond', 'diagonal', 'straight' ]; WR2: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND ((6 <= SIZEOF(pdr.used_representation.items)) AND (SIZEOF(pdr.used_representation.items) <= 9)))) = 1))) = 1; WR3: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND ('STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE' IN TYPEOF(it\measure_with_unit.value_component))) AND (it.name = 'number of teeth'))) <= 1))) = 0))) = 0; WR4: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'major diameter'))) = 1))) = 0))) = 0; WR5: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'nominal diameter'))) = 1))) = 0))) = 0; WR6: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'tooth depth'))) <= 1))) = 0))) = 0; WR7: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'root fillet'))) <= 1))) = 0))) = 0; WR8: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'diametral pitch'))) = 1))) = 0))) = 0; WR9: NOT (SELF\characterized_object.description IN [ 'diamond', 'diagonal' ]) OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'helix angle'))) = 1))) = 0))) = 0); WR10: NOT (SELF\characterized_object.description = 'diagonal') OR (SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.DESCRIPTIVE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND (it.name = 'helix hand'))) = 1))) = 0))) = 0); WR11: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (sa_occ.description = 'partial area occurrence') AND (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'applied area usage') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.APPLIED_AREA' IN TYPEOF(sdr.relating_shape_aspect)))) = 1))) = 1))) = 0; WR12: SIZEOF(QUERY (pds <* QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PRODUCT_DEFINITION_SHAPE' IN TYPEOF(pd)))| NOT (SIZEOF(QUERY (sa_occ <* USEDIN(pds, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT.OF_SHAPE')| (SIZEOF(QUERY (sdr <* QUERY (sar <* USEDIN(sa_occ, 'STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT_RELATIONSHIP.RELATED_SHAPE_ASPECT')| (sar.description = 'applied shape') AND ('STEP_MERGED_CAD_SCHEMA.SHAPE_DEFINING_RELATIONSHIP' IN TYPEOF(sar)))| ('STEP_MERGED_CAD_SCHEMA.SHAPE_ASPECT' IN TYPEOF(sdr.relating_shape_aspect)))) = 1))) = 1))) = 0; END_ENTITY; ENTITY two_direction_repeat_factor SUBTYPE OF (one_direction_repeat_factor); second_repeat_factor : vector; END_ENTITY; ENTITY type_qualifier; name : label; END_ENTITY; -- IN AP214/AP242 ENTITY unary_boolean_expression ABSTRACT SUPERTYPE OF (ONEOF(not_expression, odd_function)) SUBTYPE OF (boolean_expression, unary_generic_expression); END_ENTITY; -- IN AP214/AP242 ENTITY unary_function_call ABSTRACT SUPERTYPE OF (ONEOF(abs_function, minus_function, sin_function, cos_function, tan_function, asin_function, acos_function, exp_function, log_function, log2_function, log10_function, square_root_function)) SUBTYPE OF (unary_numeric_expression); END_ENTITY; ENTITY unary_generic_expression ABSTRACT SUPERTYPE SUBTYPE OF (generic_expression); operand : generic_expression; END_ENTITY; -- DIFF IN AP214 ENTITY unary_numeric_expression ABSTRACT SUPERTYPE SUBTYPE OF (numeric_expression, unary_generic_expression); SELF\unary_generic_expression.operand : numeric_expression; END_ENTITY; -- IN AP242 ENTITY unbound_parameter_environment SUBTYPE OF (environment); WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.UNBOUND_VARIATIONAL_PARAMETER' IN TYPEOF(SELF\environment.syntactic_representation)) AND ('STEP_MERGED_CAD_SCHEMA.UNBOUND_VARIATIONAL_PARAMETER_SEMANTICS' IN TYPEOF(SELF\environment.semantics)); END_ENTITY; -- IN AP242 ENTITY unbound_variational_parameter SUBTYPE OF (variational_parameter); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.UNBOUND_PARAMETER_ENVIRONMENT' IN TYPEOF(SELF\generic_variable.interpretation); END_ENTITY; -- IN AP242 ENTITY unbound_variational_parameter_semantics SUBTYPE OF (variable_semantics); END_ENTITY; ENTITY uncertainty_assigned_representation SUBTYPE OF (representation); uncertainty : SET [1:?] OF uncertainty_measure_with_unit; END_ENTITY; ENTITY uncertainty_measure_with_unit SUBTYPE OF (measure_with_unit); name : label; description : OPTIONAL text; WHERE WR1: valid_measure_value(SELF\measure_with_unit.value_component); END_ENTITY; ENTITY uncertainty_qualifier SUPERTYPE OF (ONEOF(standard_uncertainty, qualitative_uncertainty)); measure_name : label; description : text; END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY unconstrained_pair SUBTYPE OF (low_order_kinematic_pair); DERIVE SELF\low_order_kinematic_pair.r_x : BOOLEAN := TRUE; SELF\low_order_kinematic_pair.r_y : BOOLEAN := TRUE; SELF\low_order_kinematic_pair.r_z : BOOLEAN := TRUE; SELF\low_order_kinematic_pair.t_x : BOOLEAN := TRUE; SELF\low_order_kinematic_pair.t_y : BOOLEAN := TRUE; SELF\low_order_kinematic_pair.t_z : BOOLEAN := TRUE; END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY unconstrained_pair_value SUBTYPE OF (pair_value); actual_placement : axis2_placement_3d; SELF\pair_value.applies_to_pair : unconstrained_pair; END_ENTITY; -- IN AP242 ENTITY unequally_disposed_geometric_tolerance SUBTYPE OF (geometric_tolerance); displacement : length_measure_with_unit; WHERE WR1: ('NUMBER' IN TYPEOF(SELF\geometric_tolerance_with_defined_unit.unit_size\measure_with_unit.value_component)) AND (SELF\geometric_tolerance_with_defined_unit.unit_size\measure_with_unit.value_component > 0.0); END_ENTITY; ENTITY uniform_curve SUBTYPE OF (b_spline_curve); END_ENTITY; -- IN AP242 ENTITY uniform_product_space SUBTYPE OF (maths_space, generic_literal); base : maths_space; exponent : positive_integer; WHERE WR1: expression_is_constant(base); WR2: no_cyclic_space_reference(SELF, []); WR3: base <> the_empty_space; END_ENTITY; -- IN AP203e2/AP242 ENTITY uniform_resource_identifier SUBTYPE OF (descriptive_representation_item); END_ENTITY; ENTITY uniform_surface SUBTYPE OF (b_spline_surface); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY universal_pair SUBTYPE OF (low_order_kinematic_pair); input_skew_angle : OPTIONAL plane_angle_measure; DERIVE SELF\low_order_kinematic_pair.r_x : BOOLEAN := TRUE; SELF\low_order_kinematic_pair.r_y : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.r_z : BOOLEAN := TRUE; skew_angle : plane_angle_measure := NVL(input_skew_angle, 0.0); SELF\low_order_kinematic_pair.t_x : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.t_y : BOOLEAN := FALSE; SELF\low_order_kinematic_pair.t_z : BOOLEAN := FALSE; WHERE WR1: cos(plane_angle_for_pair_in_radian(SELF, skew_angle)) > 0.0; END_ENTITY; -- IN AP214 ENTITY universal_pair_range SUBTYPE OF (simple_pair_range); SELF\simple_pair_range.applies_to_pair : universal_pair; lower_limit_first_rotation : rotational_range_measure; upper_limit_first_rotation : rotational_range_measure; lower_limit_second_rotation : rotational_range_measure; upper_limit_second_rotation : rotational_range_measure; WHERE wr1: (('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(lower_limit_first_rotation)) OR ('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(upper_limit_first_rotation))) XOR (lower_limit_first_rotation < upper_limit_first_rotation); wr2: (('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(lower_limit_second_rotation)) OR ('STEP_MERGED_CAD_SCHEMA.UNLIMITED_RANGE' IN TYPEOF(upper_limit_second_rotation))) XOR (lower_limit_second_rotation < upper_limit_second_rotation); END_ENTITY; -- DIFF IN AP214 -- IN AP214/AP242 ENTITY universal_pair_value SUBTYPE OF (pair_value); first_rotation_angle : plane_angle_measure; second_rotation_angle : plane_angle_measure; SELF\pair_value.applies_to_pair : universal_pair; END_ENTITY; -- IN AP242 ENTITY universal_pair_with_range SUBTYPE OF (universal_pair); lower_limit_first_rotation : OPTIONAL plane_angle_measure; upper_limit_first_rotation : OPTIONAL plane_angle_measure; lower_limit_second_rotation : OPTIONAL plane_angle_measure; upper_limit_second_rotation : OPTIONAL plane_angle_measure; WHERE WR1: (NOT EXISTS(lower_limit_first_rotation) OR NOT EXISTS(upper_limit_first_rotation)) XOR (lower_limit_first_rotation < upper_limit_first_rotation); WR2: (NOT EXISTS(lower_limit_second_rotation) OR NOT EXISTS(upper_limit_second_rotation)) XOR (lower_limit_second_rotation < upper_limit_second_rotation); END_ENTITY; -- IN AP242 ENTITY unused_patches SUBTYPE OF (overcomplex_topology_and_geometry_relationship); SELF\shape_data_quality_criterion.assessment_specification : shape_data_quality_assessment_by_numerical_test; WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SHAPE_DATA_QUALITY_LOWER_VALUE_LIMIT' IN TYPEOF(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)) AND ('STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE' IN value_limit_type(SELF\shape_data_quality_criterion.assessment_specification\shape_data_quality_assessment_by_numerical_test.threshold)); WR2: validate_measured_data_type(SELF, 'STEP_MERGED_CAD_SCHEMA.COUNT_MEASURE'); WR3: validate_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.FACE_SURFACE' ]); WR4: validate_locations_of_extreme_value_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.' + 'B_SPLINE_SURFACE_STRIP' ]); WR5: validate_accuracy_types(SELF, []); END_ENTITY; -- IN AP242 ENTITY unused_shape_element SUBTYPE OF (externally_conditioned_data_quality_criterion); WHERE WR1: validate_ecdq_inspected_elements_type(SELF, [ 'STEP_MERGED_CAD_SCHEMA.REPRESENTATION_ITEM' ]); END_ENTITY; -- IN AP203e2/AP242 ENTITY usage_association SUBTYPE OF (action_method_relationship); SELF\action_method_relationship.related_method : information_usage_right; SELF\action_method_relationship.relating_method : information_usage_right; DERIVE related : information_usage_right := SELF\action_method_relationship.related_method; relating : information_usage_right := SELF\action_method_relationship.relating_method; END_ENTITY; -- IN AP203e2/AP242 ENTITY user_defined_curve_font SUBTYPE OF (curve_style_font, mapped_item); END_ENTITY; -- IN AP203e2/AP242 ENTITY user_defined_marker SUBTYPE OF (mapped_item, pre_defined_marker); END_ENTITY; -- IN AP203e2/AP242 ENTITY user_defined_terminator_symbol SUBTYPE OF (mapped_item, pre_defined_symbol); END_ENTITY; -- IN AP203e2/AP242 ENTITY user_selected_elements SUBTYPE OF (representation_item); picked_items : SET [1:?] OF representation_item; END_ENTITY; -- DIFF IN AP203e2 -- IN AP203e2/AP242 ENTITY user_selected_shape_elements SUBTYPE OF (user_selected_elements); SELF\user_selected_elements.picked_items : SET [1:?] OF shape_representation_item; END_ENTITY; -- IN AP242 ENTITY value_format_type_qualifier; format_type : value_format_type; END_ENTITY; -- IN AP214/AP242 ENTITY value_function SUPERTYPE OF (int_value_function) SUBTYPE OF (numeric_expression, unary_generic_expression); SELF\unary_generic_expression.operand : string_expression; END_ENTITY; ENTITY value_range SUBTYPE OF (compound_representation_item); WHERE WR1: ('STEP_MERGED_CAD_SCHEMA.' + 'SET_REPRESENTATION_ITEM' IN TYPEOF(item_element)) AND value_range_wr1(item_element); WR2: value_range_wr2(item_element); WR3: value_range_wr3(item_element); END_ENTITY; ENTITY value_representation_item SUBTYPE OF (representation_item); value_component : measure_value; WHERE WR1: SIZEOF(QUERY (rep <* using_representations(SELF)| NOT ('STEP_MERGED_CAD_SCHEMA.GLOBAL_UNIT_ASSIGNED_CONTEXT' IN TYPEOF(rep.context_of_items)))) = 0; END_ENTITY; -- IN AP214/AP242 ENTITY variable ABSTRACT SUPERTYPE OF (ONEOF(numeric_variable, boolean_variable, string_variable)) SUBTYPE OF (generic_variable); END_ENTITY; -- IN AP242 ENTITY variable_expression SUBTYPE OF (variable_semantics); property_associated : property_variable_rep_select; END_ENTITY; ENTITY variable_semantics ABSTRACT SUPERTYPE; END_ENTITY; -- IN AP242 ENTITY variational_current_representation_relationship SUBTYPE OF (representation_relationship); current_result : representation; SELF\representation_relationship.rep_1 : variational_representation; UNIQUE UR1 : current_result; WHERE WR1: QUERY (q <* SELF\representation_relationship.rep_1.items| NOT ('STEP_MERGED_CAD_SCHEMA.VARIATIONAL_REPRESENTATION_ITEM' IN TYPEOF(q))) = SELF\representation_relationship.rep_2.items; WR2: SELF\representation_relationship.rep_1.context_of_items :=: SELF\representation_relationship.rep_2.context_of_items; WR3: SIZEOF(QUERY (q <* SELF\representation_relationship.rep_2.items| ('STEP_MERGED_CAD_SCHEMA.VARIATIONAL_REPRESENTATION_ITEM' IN TYPEOF(q)))) = 0; WR4: TYPEOF(SELF\representation_relationship.rep_1) - TYPEOF(SELF\representation_relationship.rep_2) = [ 'STEP_MERGED_CAD_SCHEMA.VARIATIONAL_REPRESENTATION' ]; WR5: current_result :=: SELF\representation_relationship.rep_2; END_ENTITY; -- IN AP242 ENTITY variational_parameter ABSTRACT SUPERTYPE OF (ONEOF(bound_variational_parameter, unbound_variational_parameter)) SUBTYPE OF (variational_representation_item, maths_variable); parameter_description : OPTIONAL text; parameter_current_value : maths_value; WHERE WR1: member_of(parameter_current_value, SELF\maths_variable.values_space); WR2: SELF\maths_variable.name = SELF\representation_item.name; END_ENTITY; -- IN AP242 ENTITY variational_representation SUBTYPE OF (representation); INVERSE cm_link : variational_current_representation_relationship FOR rep_1; WHERE WR1: SIZEOF(QUERY (q <* SELF\representation.items| ('STEP_MERGED_CAD_SCHEMA.VARIATIONAL_REPRESENTATION_ITEM' IN TYPEOF(q)))) > 0; WR2: SIZEOF(QUERY (q <* SELF\representation.items - cm_link.rep_2.items| invalidate_vrep_item(q))) = 0; END_ENTITY; -- IN AP203e2/AP242 ENTITY variational_representation_item ABSTRACT SUPERTYPE OF (auxiliary_geometric_representation_item) SUBTYPE OF (representation_item); WHERE WR1: SIZEOF(QUERY (q <* using_representations(SELF)| NOT ('STEP_MERGED_CAD_SCHEMA.VARIATIONAL_REPRESENTATION' IN TYPEOF(q)))) = 0; WR2: SIZEOF(QUERY (q <* using_representations(SELF)| NOT (SELF IN q.items))) = 0; END_ENTITY; ENTITY vector SUBTYPE OF (geometric_representation_item); orientation : direction; magnitude : length_measure; WHERE WR1: magnitude >= 0.0; END_ENTITY; -- DIFF IN AP214 ENTITY vector_style SUBTYPE OF (curve_style, pre_defined_terminator_symbol); END_ENTITY; -- IN AP214/AP242 ENTITY vee_profile SUBTYPE OF (shape_aspect); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.FEATURE_COMPONENT_DEFINITION' IN TYPEOF(SELF.of_shape.definition); WR2: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))) = 1))) = 0; WR3: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(impl_rep.used_representation.items) >= 3) AND (SIZEOF(impl_rep.used_representation.items) <= 6))) = 0))) = 0; WR4: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)) AND (SIZEOF(QUERY (srwp_i <* pdr.used_representation.items| (((((srwp_i.name = 'orientation') OR (srwp_i.name = 'profile angle')) OR (srwp_i.name = 'tilt angle')) OR (srwp_i.name = 'profile radius')) OR (srwp_i.name = 'first length')) OR (srwp_i.name = 'second length'))) = SIZEOF(pdr.used_representation.items)))) = 1))) = 1; WR5: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| ('STEP_MERGED_CAD_SCHEMA.PLACEMENT' IN TYPEOF(it)) AND (it.name = 'orientation'))) = 1))) = 0))) = 0; WR6: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' IN TYPEOF(it\measure_with_unit.value_component))) AND (it.name = 'profile radius'))) <= 1))) = 0))) = 0; WR7: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'profile angle'))) = 1))) = 0))) = 0; WR8: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (SIZEOF([ 'STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM', 'STEP_MERGED_CAD_SCHEMA.PLANE_ANGLE_MEASURE_WITH_UNIT' ] * TYPEOF(it)) = 2) AND (it.name = 'tilt angle'))) = 1))) = 0))) = 0; WR9: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.PLANAR_SHAPE_REPRESENTATION' IN TYPEOF(pdr.used_representation)) AND (pdr.used_representation.name = 'profile limit'))) <= 1))) = 0; WR10: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' IN TYPEOF(it\measure_with_unit.value_component))) AND (it.name = 'first length'))) <= 1))) = 0))) = 0; WR11: SIZEOF(QUERY (pd <* USEDIN(SELF, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION.DEFINITION')| NOT (SIZEOF(QUERY (impl_rep <* QUERY (pdr <* USEDIN(pd, 'STEP_MERGED_CAD_SCHEMA.PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')| ('STEP_MERGED_CAD_SCHEMA.SHAPE_REPRESENTATION_WITH_PARAMETERS' IN TYPEOF(pdr.used_representation)))| NOT (SIZEOF(QUERY (it <* impl_rep.used_representation.items| (('STEP_MERGED_CAD_SCHEMA.MEASURE_REPRESENTATION_ITEM' IN TYPEOF(it)) AND ('STEP_MERGED_CAD_SCHEMA.LENGTH_MEASURE_WITH_UNIT' IN TYPEOF(it\measure_with_unit.value_component))) AND (it.name = 'second length'))) <= 1))) = 0))) = 0; END_ENTITY; -- IN AP203e2/AP242 ENTITY velocity_measure_with_unit SUBTYPE OF (measure_with_unit); WHERE WR1: 'STEP_MERGED_CAD_SCHEMA.VELOCITY_UNIT' IN TYPEOF(SELF\measure_with_unit.unit_component); END_ENTITY; -- IN AP203e2/AP242 ENTITY velocity_unit SUBTYPE OF (derived_unit); WHERE WR1: derive_dimensional_exponents(SELF) = dimensional_exponents(1.0, 0.0, -1.0, 0.0, 0.0, 0.0, 0.0); END_ENTITY; -- DIFF IN AP214 -- DIFF IN AP203e2 ENTITY versioned_action_request; id : identifier; version : OPTIONAL label; purpose : text; description : OPTIONAL text; END_ENTITY; -- IN AP214/AP242 ENTITY versioned_action_request_relationship; id : identifier; name : label; description : OPTIONAL text; relating_versioned_action_request : versioned_action_request; related_versioned_action_request : versioned_action_request; END_ENTITY; ENTITY vertex SUBTYPE OF (topological_representation_item); END_ENTITY; ENTITY vertex_loop SUBTYPE OF (loop); loop_vertex : vertex; END_ENTITY; ENTITY vertex_point SUBTYPE OF (vertex, geometric_representation_item); vertex_geometry : point; END_ENTITY; -- IN AP203e2/AP242 ENTITY vertex_shell SUBTYPE OF (topological_representation_item); vertex_shel