| Application module: Design product data management | ISO/TS 10303-1628:2021(E) © ISO | 
This clause specifies the EXPRESS schema derived from the mapping table. It uses elements from the common resources or from other application modules and defines the EXPRESS constructs that are specific to this part of ISO 10303.
This clause constitutes the Module Interpreted Module (MIM) of the application module.
This clause also specifies the modifications that apply to the constructs imported from the common resources.
The following restrictions apply to the use, in this schema, of constructs defined in common resources or in application modules:
Short names of entities defined in this schema are described in Annex A. Unambiguous identification of this schema is defined in Annex B.
EXPRESS specification:
         *)
            SCHEMA Design_product_data_management_mim;
            USE FROM
            Activity_method_assignment_mim;
               -- 
            ISO/TS 10303-1249
            USE FROM
            Attribute_classification_mim;
               -- 
            ISO/TS 10303-1246
            USE FROM
            Characterizable_object_mim;
               -- 
            ISO/TS 10303-1765
            USE FROM
            Classification_with_attributes_mim;
               -- 
            ISO/TS 10303-1111
            USE FROM
            contract_schema
            
               -- 
            ISO 10303-41
  (contract_type);
            
            USE FROM
            Design_material_aspects_mim;
               -- 
            ISO/TS 10303-1232
            USE FROM
            document_schema
            
               -- 
            ISO 10303-41
  (document_type);
            
            USE FROM
            Information_rights_mim;
               -- 
            ISO/TS 10303-1241
            USE FROM
            Item_definition_structure_mim;
               -- 
            ISO/TS 10303-1345
            USE FROM
            Manufacturing_configuration_effectivity_mim;
               -- 
            ISO/TS 10303-1147
            USE FROM
            material_property_definition_schema
            
               -- 
            ISO 10303-45
  (property_definition_relationship);
            
            USE FROM
            Pre_defined_product_data_management_specializations_mim;
               -- 
            ISO/TS 10303-1760
            USE FROM
            Product_data_management_mim;
               -- 
            ISO/TS 10303-1231
            USE FROM
            product_definition_schema
            
               -- 
            ISO 10303-41
  (product_definition_formation_with_specified_source);
            
            USE FROM
            product_structure_schema
            
               -- 
            ISO 10303-44
  (make_from_usage_option);
            
            USE FROM
            representation_schema
            
               -- 
            ISO 10303-43
  (parametric_representation_context);
            
            USE FROM
            Requirement_assignment_mim;
               -- 
            ISO/TS 10303-1233
            USE FROM
            Requirement_view_definition_relationship_mim;
               -- 
            ISO/TS 10303-1142
            USE FROM
            Specification_control_mim;
               -- 
            ISO/TS 10303-1112
            USE FROM
            Test_select_product_mim;
               -- 
            ISO/TS 10303-1757
(*
NOTE 1 The schemas referenced above are specified in the following part of ISO 10303:
Activity_method_assignment_mim ISO/TS 10303-1249 Attribute_classification_mim ISO/TS 10303-1246 Characterizable_object_mim ISO/TS 10303-1765 Classification_with_attributes_mim ISO/TS 10303-1111 contract_schema ISO 10303-41 Design_material_aspects_mim ISO/TS 10303-1232 document_schema ISO 10303-41 Information_rights_mim ISO/TS 10303-1241 Item_definition_structure_mim ISO/TS 10303-1345 Manufacturing_configuration_effectivity_mim ISO/TS 10303-1147 material_property_definition_schema ISO 10303-45 Pre_defined_product_data_management_specializations_mim ISO/TS 10303-1760 Product_data_management_mim ISO/TS 10303-1231 product_definition_schema ISO 10303-41 product_structure_schema ISO 10303-44 representation_schema ISO 10303-43 Requirement_assignment_mim ISO/TS 10303-1233 Requirement_view_definition_relationship_mim ISO/TS 10303-1142 Specification_control_mim ISO/TS 10303-1112 Test_select_product_mim ISO/TS 10303-1757 
NOTE 2 See Annex D, Figures D.1, D.2, D.3, D.4, D.5, D.6, D.7, D.8, D.9, D.10, D.11, D.12, D.13, D.14, D.15, D.16and D.17 for a graphical representation of this schema.
This subclause specifies the MIM types for this application module. The MIM types and definitions are specified below.

The design_pdm_action_item type is an extension of the action_items type. It adds the data types action, action_method, action_property, action_relationship, action_request_solution, alternate_product_relationship, applied_action_assignment, applied_classification_assignment, applied_person_and_organization_assignment, approval_status, assembly_component_usage_substitute, certification, class, class_system, configuration_design, configuration_item, configured_effectivity_assignment, contract, document_file, general_property, identification_item, material_designation, organization_relationship, organizational_project, product, product_concept, product_concept_feature, product_concept_feature_association, product_concept_feature_category, product_concept_feature_category_usage, product_definition_formation_relationship, product_definition_substitute, property_definition, security_classification, security_classification_level, shape_aspect, shape_representation, and versioned_action_request to the list of alternate data types.
EXPRESS specification:
            *)
            TYPE 
            design_pdm_action_item =
            
            
            SELECT
            BASED_ON 
            action_items
            WITH 
            
               (action, 
    action_method, 
    action_property, 
    action_relationship, 
    action_request_solution, 
    alternate_product_relationship, 
    applied_action_assignment, 
    applied_classification_assignment, 
    applied_person_and_organization_assignment, 
    approval_status, 
    assembly_component_usage_substitute, 
    certification, 
    class, 
    class_system, 
    configuration_design, 
    configuration_item, 
    configured_effectivity_assignment, 
    contract, 
    document_file, 
    general_property, 
    identification_item, 
    material_designation, 
    organization_relationship, 
    organizational_project, 
    product, 
    product_concept, 
    product_concept_feature, 
    product_concept_feature_association, 
    product_concept_feature_category, 
    product_concept_feature_category_usage, 
    product_definition_formation_relationship, 
    product_definition_substitute, 
    property_definition, 
    security_classification, 
    security_classification_level, 
    shape_aspect, 
    shape_representation, 
    versioned_action_request);
            END_TYPE; 
            (*
            

The design_pdm_action_method_items type is an extension of the action_method_items type. It adds the data types action, action_method, action_property, applied_action_assignment, property_definition, contract, event_occurrence, document_file, organization, person, person_and_organization, product, product_concept, configuration_design, configuration_item, product_definition_formation, product_definition_formation_relationship, product_definition, organizational_project, and product_definition_relationship to the list of alternate data types.
EXPRESS specification:
            *)
            TYPE 
            design_pdm_action_method_items =
            
            
            SELECT
            BASED_ON 
            action_method_items
            WITH 
            
               (action, 
    action_method, 
    action_property, 
    applied_action_assignment, 
    property_definition, 
    contract, 
    event_occurrence, 
    document_file, 
    organization, 
    person, 
    person_and_organization, 
    product, 
    product_concept, 
    configuration_design, 
    configuration_item, 
    product_definition_formation, 
    product_definition_formation_relationship, 
    product_definition, 
    organizational_project, 
    product_definition_relationship);
            END_TYPE; 
            (*
            

The design_pdm_action_request_item type is an extension of the action_request_item type. It adds the data types action, action_method, action_property, action_relationship, alternate_product_relationship, assembly_component_usage_substitute, configuration_design, configuration_effectivity, configuration_item, configured_effectivity_assignment, document_file, general_property, material_designation, organizational_project, product, product_concept, product_concept_feature, product_concept_feature_association, product_concept_feature_category, product_concept_feature_category_usage, product_definition_substitute, shape_aspect, shape_representation, and versioned_action_request to the list of alternate data types.
EXPRESS specification:
            *)
            TYPE 
            design_pdm_action_request_item =
            
            
            SELECT
            BASED_ON 
            action_request_item
            WITH 
            
               (action, 
    action_method, 
    action_property, 
    action_relationship, 
    alternate_product_relationship, 
    assembly_component_usage_substitute, 
    configuration_design, 
    configuration_effectivity, 
    configuration_item, 
    configured_effectivity_assignment, 
    document_file, 
    general_property, 
    material_designation, 
    organizational_project, 
    product, 
    product_concept, 
    product_concept_feature, 
    product_concept_feature_association, 
    product_concept_feature_category, 
    product_concept_feature_category_usage, 
    product_definition_substitute, 
    shape_aspect, 
    shape_representation, 
    versioned_action_request);
            END_TYPE; 
            (*
            

The design_pdm_approval_item type is an extension of the approval_item type. It adds the data types action_directive, action_property, action_request_solution, applied_classification_assignment, certification, class, class_system, configuration_design, configuration_item, configured_effectivity_assignment, contract, date, directed_action, document, effectivity, executed_action, general_property_relationship, group, group_relationship, product, product_definition, product_definition_formation_relationship, product_definition_relationship, product_definition_formation, representation, requirement_assignment, security_classification, shape_aspect_relationship, general_property, material_designation, organizational_project, product_concept, product_concept_feature, product_concept_feature_association, product_concept_feature_category, product_concept_feature_category_usage, product_definition_substitute, property_definition, and shape_representation to the list of alternate data types.
EXPRESS specification:
            *)
            TYPE 
            design_pdm_approval_item =
            
            
            SELECT
            BASED_ON 
            approval_item
            WITH 
            
               (action_directive, 
    action_property, 
    action_request_solution, 
    applied_classification_assignment, 
    certification, 
    class, 
    class_system, 
    configuration_design, 
    configuration_item, 
    configured_effectivity_assignment, 
    contract, 
    date, 
    directed_action, 
    document, 
    effectivity, 
    executed_action, 
    general_property_relationship, 
    group, 
    group_relationship, 
    product, 
    product_definition, 
    product_definition_formation_relationship, 
    product_definition_relationship, 
    product_definition_formation, 
    representation, 
    requirement_assignment, 
    security_classification, 
    shape_aspect_relationship, 
    general_property, 
    material_designation, 
    organizational_project, 
    product_concept, 
    product_concept_feature, 
    product_concept_feature_association, 
    product_concept_feature_category, 
    product_concept_feature_category_usage, 
    product_definition_substitute, 
    property_definition, 
    shape_representation);
            END_TYPE; 
            (*
            

The design_pdm_attribute_classification_item type is an extension of the attribute_classification_item type. It adds the data types 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_person_and_organization_assignment, applied_organization_assignment, applied_organizational_project_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, organizational_address, organizational_project_relationship, organization_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_representation, property_definition_relationship, representation, representation_context, representation_item, security_classification, time_interval_relationship, uncertainty_measure_with_unit, usage_association, and versioned_action_request to the list of alternate data types.
EXPRESS specification:
            *)
            TYPE 
            design_pdm_attribute_classification_item =
            
            
            SELECT
            BASED_ON 
            attribute_classification_item
            WITH 
            
               (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_person_and_organization_assignment, 
    applied_organization_assignment, 
    applied_organizational_project_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, 
    organizational_address, 
    organizational_project_relationship, 
    organization_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_representation, 
    property_definition_relationship, 
    representation, 
    representation_context, 
    representation_item, 
    security_classification, 
    time_interval_relationship, 
    uncertainty_measure_with_unit, 
    usage_association, 
    versioned_action_request);
            END_TYPE; 
            (*
            

The design_pdm_attribute_language_item type is an extension of the attribute_language_item type. It adds the data types information_right, information_usage_right, usage_association, action, data_environment, group, group_relationship, name_assignment, product_concept_feature, product_concept_feature_association, product_definition_substitute, property_definition_relationship, representation, representation_relationship, and versioned_action_request to the list of alternate data types.
EXPRESS specification:
            *)
            TYPE 
            design_pdm_attribute_language_item =
            
            
            SELECT
            BASED_ON 
            attribute_language_item
            WITH 
            
               (information_right, 
    information_usage_right, 
    usage_association, 
    action, 
    data_environment, 
    group, 
    group_relationship, 
    name_assignment, 
    product_concept_feature, 
    product_concept_feature_association, 
    product_definition_substitute, 
    property_definition_relationship, 
    representation, 
    representation_relationship, 
    versioned_action_request);
            END_TYPE; 
            (*
            

The design_pdm_certification_item type is an extension of the certification_item type. It adds the data types alternate_product_relationship, product_definition_formation, make_from_usage_option, product_definition, and product_definition_relationship to the list of alternate data types.
EXPRESS specification:
            *)
            TYPE 
            design_pdm_certification_item =
            
            
            SELECT
            BASED_ON 
            certification_item
            WITH 
            
               (alternate_product_relationship, 
    product_definition_formation, 
    make_from_usage_option, 
    product_definition, 
    product_definition_relationship);
            END_TYPE; 
            (*
            

The design_pdm_classification_item type is an extension of the classification_item type. It adds the data types characterized_object, document_type, information_right, information_usage_right, material_designation, product_concept_feature, product_concept_feature_category, security_classification_level, shape_aspect, and usage_association to the list of alternate data types.
EXPRESS specification:
            *)
            TYPE 
            design_pdm_classification_item =
            
            
            SELECT
            BASED_ON 
            classification_item
            WITH 
            
               (characterized_object, 
    document_type, 
    information_right, 
    information_usage_right, 
    material_designation, 
    product_concept_feature, 
    product_concept_feature_category, 
    security_classification_level, 
    shape_aspect, 
    usage_association);
            END_TYPE; 
            (*
            

The design_pdm_configured_effectivity_item type is an extension of the configured_effectivity_item type. It adds the data types action_relationship and product_definition to the list of alternate data types.
EXPRESS specification:
            *)
            TYPE 
            design_pdm_configured_effectivity_item =
            
            
            SELECT
            BASED_ON 
            configured_effectivity_item
            WITH 
            
               (action_relationship, 
    product_definition);
            END_TYPE; 
            (*
            

The design_pdm_contract_item type is an extension of the contract_item type. It adds the data types action_directive, alternate_product_relationship, directed_action, organization, person_and_organization, product, and product_definition_formation to the list of alternate data types.
EXPRESS specification:
            *)
            TYPE 
            design_pdm_contract_item =
            
            
            SELECT
            BASED_ON 
            contract_item
            WITH 
            
               (action_directive, 
    alternate_product_relationship, 
    directed_action, 
    organization, 
    person_and_organization, 
    product, 
    product_definition_formation);
            END_TYPE; 
            (*
            

The design_pdm_date_and_time_item type is an extension of the date_and_time_item type. It adds the data types action_directive, approval_person_organization, certification, contract, directed_action, document, product_definition, security_classification, action_method, action_property, action_relationship, action_request_solution, alternate_product_relationship, applied_classification_assignment, approval_status, assembly_component_usage_substitute, class, class_system, configuration_design, configuration_item, configured_effectivity_assignment, effectivity, general_property, material_designation, organization_relationship, person_and_organization, product, product_concept, product_concept_feature, product_concept_feature_association, product_concept_feature_category, product_concept_feature_category_usage, product_definition_formation_relationship, product_definition_substitute, property_definition, security_classification_level, and shape_representation to the list of alternate data types.
EXPRESS specification:
            *)
            TYPE 
            design_pdm_date_and_time_item =
            
            
            SELECT
            BASED_ON 
            date_and_time_item
            WITH 
            
               (action_directive, 
    approval_person_organization, 
    certification, 
    contract, 
    directed_action, 
    document, 
    product_definition, 
    security_classification, 
    action_method, 
    action_property, 
    action_relationship, 
    action_request_solution, 
    alternate_product_relationship, 
    applied_classification_assignment, 
    approval_status, 
    assembly_component_usage_substitute, 
    class, 
    class_system, 
    configuration_design, 
    configuration_item, 
    configured_effectivity_assignment, 
    effectivity, 
    general_property, 
    material_designation, 
    organization_relationship, 
    person_and_organization, 
    product, 
    product_concept, 
    product_concept_feature, 
    product_concept_feature_association, 
    product_concept_feature_category, 
    product_concept_feature_category_usage, 
    product_definition_formation_relationship, 
    product_definition_substitute, 
    property_definition, 
    security_classification_level, 
    shape_representation);
            END_TYPE; 
            (*
            

The design_pdm_date_item type is an extension of the date_item type. It adds the data types action_directive, product_definition, directed_action, approval_person_organization, contract, document, executed_action, security_classification, certification, action_method, action_property, action_relationship, action_request_solution, alternate_product_relationship, applied_classification_assignment, approval_status, assembly_component_usage_substitute, class, class_system, configuration_design, configuration_item, configured_effectivity_assignment, effectivity, general_property, material_designation, organization_relationship, person_and_organization, product, product_concept, product_concept_feature, product_concept_feature_association, product_concept_feature_category, product_concept_feature_category_usage, product_definition_formation_relationship, product_definition_substitute, property_definition, security_classification_level, and shape_representation to the list of alternate data types.
EXPRESS specification:
            *)
            TYPE 
            design_pdm_date_item =
            
            
            SELECT
            BASED_ON 
            date_item
            WITH 
            
               (action_directive, 
    product_definition, 
    directed_action, 
    approval_person_organization, 
    contract, 
    document, 
    executed_action, 
    security_classification, 
    certification, 
    action_method, 
    action_property, 
    action_relationship, 
    action_request_solution, 
    alternate_product_relationship, 
    applied_classification_assignment, 
    approval_status, 
    assembly_component_usage_substitute, 
    class, 
    class_system, 
    configuration_design, 
    configuration_item, 
    configured_effectivity_assignment, 
    effectivity, 
    general_property, 
    material_designation, 
    organization_relationship, 
    person_and_organization, 
    product, 
    product_concept, 
    product_concept_feature, 
    product_concept_feature_association, 
    product_concept_feature_category, 
    product_concept_feature_category_usage, 
    product_definition_formation_relationship, 
    product_definition_substitute, 
    property_definition, 
    security_classification_level, 
    shape_representation);
            END_TYPE; 
            (*
            

The design_pdm_document_reference_item type is an extension of the document_reference_item type. It adds the data types applied_external_identification_assignment, assembly_component_usage, characterized_class, characterized_object, configuration_item, descriptive_representation_item, externally_defined_item, group, group_relationship, information_right, information_usage_right, material_designation, measure_representation_item, product, product_category, product_definition, product_definition_formation, property_definition, representation, representation_item, usage_association, action_directive, action_relationship, applied_action_assignment, approval, certification, class, class_system, configuration_design, contract, general_property, organization, organizational_project, person, product_concept, product_concept_feature, product_concept_feature_category, product_definition_substitute, product_related_product_category, security_classification, and product_definition_context to the list of alternate data types.
EXPRESS specification:
            *)
            TYPE 
            design_pdm_document_reference_item =
            
            
            SELECT
            BASED_ON 
            document_reference_item
            WITH 
            
               (applied_external_identification_assignment, 
    assembly_component_usage, 
    characterized_class, 
    characterized_object, 
    configuration_item, 
    descriptive_representation_item, 
    externally_defined_item, 
    group, 
    group_relationship, 
    information_right, 
    information_usage_right, 
    material_designation, 
    measure_representation_item, 
    product, 
    product_category, 
    product_definition, 
    product_definition_formation, 
    property_definition, 
    representation, 
    representation_item, 
    usage_association, 
    action_directive, 
    action_relationship, 
    applied_action_assignment, 
    approval, 
    certification, 
    class, 
    class_system, 
    configuration_design, 
    contract, 
    general_property, 
    organization, 
    organizational_project, 
    person, 
    product_concept, 
    product_concept_feature, 
    product_concept_feature_category, 
    product_definition_substitute, 
    product_related_product_category, 
    security_classification, 
    product_definition_context);
            END_TYPE; 
            (*
            

The design_pdm_effectivity_item type is an extension of the effectivity_item type. It adds the data types action, action_method, action_method_relationship, action_property, action_relationship, class, class_system, configuration_design, configuration_item, document_file, general_property, material_designation, product_concept, product_concept_feature, product_concept_feature_association, product_concept_feature_category, product_concept_feature_category_usage, product_definition_formation_relationship, product_definition_substitute, property_definition, security_classification, shape_aspect, and shape_representation to the list of alternate data types.
EXPRESS specification:
            *)
            TYPE 
            design_pdm_effectivity_item =
            
            
            SELECT
            BASED_ON 
            effectivity_item
            WITH 
            
               (action, 
    action_method, 
    action_method_relationship, 
    action_property, 
    action_relationship, 
    class, 
    class_system, 
    configuration_design, 
    configuration_item, 
    document_file, 
    general_property, 
    material_designation, 
    product_concept, 
    product_concept_feature, 
    product_concept_feature_association, 
    product_concept_feature_category, 
    product_concept_feature_category_usage, 
    product_definition_formation_relationship, 
    product_definition_substitute, 
    property_definition, 
    security_classification, 
    shape_aspect, 
    shape_representation);
            END_TYPE; 
            (*
            

The design_pdm_event_occurrence_item type is an extension of the event_occurrence_item type. It adds the data types action, action_directive, action_method, action_property, action_request_solution, alternate_product_relationship, applied_action_assignment, applied_classification_assignment, assembly_component_usage_substitute, certification, class, class_system, configuration_design, configuration_effectivity, configuration_item, configured_effectivity_assignment, contract, executed_action, general_property, material_designation, organization_relationship, organizational_project, person_and_organization, product, product_concept, product_concept_feature, product_concept_feature_association, product_concept_feature_category, product_concept_feature_category_usage, product_definition_formation, product_definition_formation_relationship, product_definition_relationship, product_definition_substitute, property_definition, security_classification_level, and shape_representation to the list of alternate data types.
EXPRESS specification:
            *)
            TYPE 
            design_pdm_event_occurrence_item =
            
            
            SELECT
            BASED_ON 
            event_occurrence_item
            WITH 
            
               (action, 
    action_directive, 
    action_method, 
    action_property, 
    action_request_solution, 
    alternate_product_relationship, 
    applied_action_assignment, 
    applied_classification_assignment, 
    assembly_component_usage_substitute, 
    certification, 
    class, 
    class_system, 
    configuration_design, 
    configuration_effectivity, 
    configuration_item, 
    configured_effectivity_assignment, 
    contract, 
    executed_action, 
    general_property, 
    material_designation, 
    organization_relationship, 
    organizational_project, 
    person_and_organization, 
    product, 
    product_concept, 
    product_concept_feature, 
    product_concept_feature_association, 
    product_concept_feature_category, 
    product_concept_feature_category_usage, 
    product_definition_formation, 
    product_definition_formation_relationship, 
    product_definition_relationship, 
    product_definition_substitute, 
    property_definition, 
    security_classification_level, 
    shape_representation);
            END_TYPE; 
            (*
            

The design_pdm_groupable_item type is an extension of the groupable_item type. It adds the data types group_relationship, product_definition, product_definition_formation, property_definition_representation, representation, representation_item, shape_aspect, shape_aspect_relationship, applied_identification_assignment, and applied_name_assignment to the list of alternate data types.
EXPRESS specification:
            *)
            TYPE 
            design_pdm_groupable_item =
            
            
            SELECT
            BASED_ON 
            groupable_item
            WITH 
            
               (group_relationship, 
    product_definition, 
    product_definition_formation, 
    property_definition_representation, 
    representation, 
    representation_item, 
    shape_aspect, 
    shape_aspect_relationship, 
    applied_identification_assignment, 
    applied_name_assignment);
            END_TYPE; 
            (*
            

The design_pdm_identification_item type is an extension of the identification_item type. It adds the data types configuration_item, group, group_relationship, information_right, information_usage_right, material_designation, person_and_organization, product, product_category, product_concept, product_definition_formation, organization, usage_association, action, action_directive, action_method, action_property, applied_identification_assignment, class_system, document_type, effectivity, measure_representation_item, organizational_project, product_concept_feature_category, product_definition_relationship, property_definition, property_definition_relationship, and versioned_action_request to the list of alternate data types.
EXPRESS specification:
            *)
            TYPE 
            design_pdm_identification_item =
            
            
            SELECT
            BASED_ON 
            identification_item
            WITH 
            
               (configuration_item, 
    group, 
    group_relationship, 
    information_right, 
    information_usage_right, 
    material_designation, 
    person_and_organization, 
    product, 
    product_category, 
    product_concept, 
    product_definition_formation, 
    organization, 
    usage_association, 
    action, 
    action_directive, 
    action_method, 
    action_property, 
    applied_identification_assignment, 
    class_system, 
    document_type, 
    effectivity, 
    measure_representation_item, 
    organizational_project, 
    product_concept_feature_category, 
    product_definition_relationship, 
    property_definition, 
    property_definition_relationship, 
    versioned_action_request);
            END_TYPE; 
            (*
            

The design_pdm_multi_language_attribute_item type is an extension of the multi_language_attribute_item type. It adds the data types information_right, information_usage_right, usage_association, action, action_directive, action_method, action_property, action_relationship, data_environment, group, group_relationship, name_assignment, product_concept_feature, product_concept_feature_association, product_definition_substitute, property_definition_relationship, uncertainty_qualifier, and versioned_action_request to the list of alternate data types.
EXPRESS specification:
            *)
            TYPE 
            design_pdm_multi_language_attribute_item =
            
            
            SELECT
            BASED_ON 
            multi_language_attribute_item
            WITH 
            
               (information_right, 
    information_usage_right, 
    usage_association, 
    action, 
    action_directive, 
    action_method, 
    action_property, 
    action_relationship, 
    data_environment, 
    group, 
    group_relationship, 
    name_assignment, 
    product_concept_feature, 
    product_concept_feature_association, 
    product_definition_substitute, 
    property_definition_relationship, 
    uncertainty_qualifier, 
    versioned_action_request);
            END_TYPE; 
            (*
            

The design_pdm_name_item type is an extension of the name_item type. It adds the data types external_class_library, group, group_relationship, product, and product_definition to the list of alternate data types.
EXPRESS specification:
            *)
            TYPE 
            design_pdm_name_item =
            
            
            SELECT
            BASED_ON 
            name_item
            WITH 
            
               (external_class_library, 
    group, 
    group_relationship, 
    product, 
    product_definition);
            END_TYPE; 
            (*
            

The design_pdm_organization_item type is an extension of the organization_item type. It adds the data types action_directive, applied_classification_assignment, applied_identification_assignment, product_definition, product_definition_formation_relationship, action_method, action_property, action_relationship, action_request_solution, applied_organization_assignment, applied_person_and_organization_assignment, approval_status, class_system, configuration_design, configuration_effectivity, configured_effectivity_assignment, document_type, effectivity, event_occurrence, material_designation, organization, organization_relationship, person_and_organization, product_concept, product_concept_feature, product_concept_feature_association, product_concept_feature_category, product_concept_feature_category_usage, product_definition_relationship, product_definition_substitute, and security_classification_level to the list of alternate data types.
EXPRESS specification:
            *)
            TYPE 
            design_pdm_organization_item =
            
            
            SELECT
            BASED_ON 
            organization_item
            WITH 
            
               (action_directive, 
    applied_classification_assignment, 
    applied_identification_assignment, 
    product_definition, 
    product_definition_formation_relationship, 
    action_method, 
    action_property, 
    action_relationship, 
    action_request_solution, 
    applied_organization_assignment, 
    applied_person_and_organization_assignment, 
    approval_status, 
    class_system, 
    configuration_design, 
    configuration_effectivity, 
    configured_effectivity_assignment, 
    document_type, 
    effectivity, 
    event_occurrence, 
    material_designation, 
    organization, 
    organization_relationship, 
    person_and_organization, 
    product_concept, 
    product_concept_feature, 
    product_concept_feature_association, 
    product_concept_feature_category, 
    product_concept_feature_category_usage, 
    product_definition_relationship, 
    product_definition_substitute, 
    security_classification_level);
            END_TYPE; 
            (*
            

The design_pdm_person_and_organization_item type is an extension of the person_and_organization_item type. It adds the data types action_directive, applied_classification_assignment, applied_identification_assignment, product_definition, product_definition_formation_relationship, action_method, action_property, action_relationship, action_request_solution, applied_organization_assignment, applied_person_and_organization_assignment, approval_status, class, class_system, configuration_design, configuration_effectivity, configured_effectivity_assignment, document_type, event_occurrence, material_designation, organization, organization_relationship, product_concept, product_concept_feature, product_concept_feature_association, product_concept_feature_category, product_concept_feature_category_usage, product_definition_relationship, product_definition_substitute, and security_classification_level to the list of alternate data types.
EXPRESS specification:
            *)
            TYPE 
            design_pdm_person_and_organization_item =
            
            
            SELECT
            BASED_ON 
            person_and_organization_item
            WITH 
            
               (action_directive, 
    applied_classification_assignment, 
    applied_identification_assignment, 
    product_definition, 
    product_definition_formation_relationship, 
    action_method, 
    action_property, 
    action_relationship, 
    action_request_solution, 
    applied_organization_assignment, 
    applied_person_and_organization_assignment, 
    approval_status, 
    class, 
    class_system, 
    configuration_design, 
    configuration_effectivity, 
    configured_effectivity_assignment, 
    document_type, 
    event_occurrence, 
    material_designation, 
    organization, 
    organization_relationship, 
    product_concept, 
    product_concept_feature, 
    product_concept_feature_association, 
    product_concept_feature_category, 
    product_concept_feature_category_usage, 
    product_definition_relationship, 
    product_definition_substitute, 
    security_classification_level);
            END_TYPE; 
            (*
            

The design_pdm_project_item type is an extension of the project_item type. It adds the data types assembly_component_usage, configuration_item, executed_action, product, product_concept, product_definition, and product_definition_formation to the list of alternate data types.
EXPRESS specification:
            *)
            TYPE 
            design_pdm_project_item =
            
            
            SELECT
            BASED_ON 
            project_item
            WITH 
            
               (assembly_component_usage, 
    configuration_item, 
    executed_action, 
    product, 
    product_concept, 
    product_definition, 
    product_definition_formation);
            END_TYPE; 
            (*
            

The design_pdm_requirement_assigned_item type is an extension of the requirement_assigned_item type. It adds the data types descriptive_representation_item, configuration_item, product_definition, product_definition_formation, product, product_class, product_definition_relationship, shape_aspect, and representation to the list of alternate data types.
EXPRESS specification:
            *)
            TYPE 
            design_pdm_requirement_assigned_item =
            
            
            SELECT
            BASED_ON 
            requirement_assigned_item
            WITH 
            
               (descriptive_representation_item, 
    configuration_item, 
    product_definition, 
    product_definition_formation, 
    product, 
    product_class, 
    product_definition_relationship, 
    shape_aspect, 
    representation);
            END_TYPE; 
            (*
            

The design_pdm_requirement_source_item type is an extension of the requirement_source_item type. It adds the data types group, group_relationship, product_definition, product_definition_formation, product, shape_aspect, characterized_object, and product_definition_relationship to the list of alternate data types.
EXPRESS specification:
            *)
            TYPE 
            design_pdm_requirement_source_item =
            
            
            SELECT
            BASED_ON 
            requirement_source_item
            WITH 
            
               (group, 
    group_relationship, 
    product_definition, 
    product_definition_formation, 
    product, 
    shape_aspect, 
    characterized_object, 
    product_definition_relationship);
            END_TYPE; 
            (*
            

The design_pdm_security_classification_item type is an extension of the security_classification_item type. It adds the data types document, make_from_usage_option, product_definition_formation, product_definition, action, action_directive, action_property, applied_action_assignment, assembly_component_usage_substitute, class_system, configuration_design, configuration_effectivity, configured_effectivity_assignment, executed_action, general_property, material_designation, organizational_project, product_concept, product_concept_feature, product_concept_feature_category, product_definition_relationship, property_definition, shape_representation, and versioned_action_request to the list of alternate data types.
EXPRESS specification:
            *)
            TYPE 
            design_pdm_security_classification_item =
            
            
            SELECT
            BASED_ON 
            security_classification_item
            WITH 
            
               (document, 
    make_from_usage_option, 
    product_definition_formation, 
    product_definition, 
    action, 
    action_directive, 
    action_property, 
    applied_action_assignment, 
    assembly_component_usage_substitute, 
    class_system, 
    configuration_design, 
    configuration_effectivity, 
    configured_effectivity_assignment, 
    executed_action, 
    general_property, 
    material_designation, 
    organizational_project, 
    product_concept, 
    product_concept_feature, 
    product_concept_feature_category, 
    product_definition_relationship, 
    property_definition, 
    shape_representation, 
    versioned_action_request);
            END_TYPE; 
            (*
            

The design_pdm_time_interval_item type is an extension of the time_interval_item type. It adds the data types action_directive, action_method, action_property, action_relationship, action_request_solution, alternate_product_relationship, applied_action_assignment, applied_classification_assignment, applied_person_and_organization_assignment, approval_status, assembly_component_usage_substitute, certification, class, class_system, configuration_design, configuration_effectivity, configuration_item, configured_effectivity_assignment, contract, document_file, executed_action, general_property, material_designation, organization_relationship, organizational_project, person_and_organization, product, product_concept, product_concept_feature, product_concept_feature_association, product_concept_feature_category, product_concept_feature_category_usage, product_definition, product_definition_formation, product_definition_formation_relationship, product_definition_relationship, product_definition_substitute, property_definition, security_classification, security_classification_level, shape_representation, and versioned_action_request to the list of alternate data types.
EXPRESS specification:
            *)
            TYPE 
            design_pdm_time_interval_item =
            
            
            SELECT
            BASED_ON 
            time_interval_item
            WITH 
            
               (action_directive, 
    action_method, 
    action_property, 
    action_relationship, 
    action_request_solution, 
    alternate_product_relationship, 
    applied_action_assignment, 
    applied_classification_assignment, 
    applied_person_and_organization_assignment, 
    approval_status, 
    assembly_component_usage_substitute, 
    certification, 
    class, 
    class_system, 
    configuration_design, 
    configuration_effectivity, 
    configuration_item, 
    configured_effectivity_assignment, 
    contract, 
    document_file, 
    executed_action, 
    general_property, 
    material_designation, 
    organization_relationship, 
    organizational_project, 
    person_and_organization, 
    product, 
    product_concept, 
    product_concept_feature, 
    product_concept_feature_association, 
    product_concept_feature_category, 
    product_concept_feature_category_usage, 
    product_definition, 
    product_definition_formation, 
    product_definition_formation_relationship, 
    product_definition_relationship, 
    product_definition_substitute, 
    property_definition, 
    security_classification, 
    security_classification_level, 
    shape_representation, 
    versioned_action_request);
            END_TYPE; 
            (*
            

The promissory_usage_in_product_model_assigned_item type allows for the designation of the data types product_concept and product_definition.
EXPRESS specification:
            *)
            TYPE 
            promissory_usage_in_product_model_assigned_item =
            
            
            SELECT
               (product_concept, 
    product_definition);
            END_TYPE; 
            (*
            
This subclause specifies the MIM entity for this module. The MIM entity and definition is specified below.

EXPRESS specification:
            *)
            ENTITY retention
              SUBTYPE OF (action);
WHERE
 
              WR1: SIZEOF( QUERY( aa <* USEDIN(SELF,'MANAGEMENT_RESOURCES_SCHEMA.' +
            'ACTION_ASSIGNMENT.ASSIGNED_ACTION') |
            ('ACTIVITY_MIM.APPLIED_ACTION_ASSIGNMENT' IN
            TYPEOF(aa)) AND
            (aa.role.name = 'retention')
            )) >= 1;
 
              WR2: (SIZEOF( QUERY( atia <* USEDIN(SELF,'TIME_INTERVAL_ASSIGNMENT_MIM.' +
            'APPLIED_TIME_INTERVAL_ASSIGNMENT.ITEMS') |
            (atia.role.name = 'minimum retention period')
            )) = 1) AND
            (SIZEOF( QUERY( atia <* USEDIN(SELF,'TIME_INTERVAL_ASSIGNMENT_MIM.' +
            'APPLIED_TIME_INTERVAL_ASSIGNMENT.ITEMS') |
            (atia.role.name = 'maximum retention period')
            )) = 1) AND
            (SIZEOF( QUERY( atia1 <* USEDIN(SELF,'TIME_INTERVAL_ASSIGNMENT_MIM.' +
            'APPLIED_TIME_INTERVAL_ASSIGNMENT.ITEMS') |
            (atia1.role.name = 'minimum retention period') AND
            ('DATE_TIME_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,'TIME_INTERVAL_ASSIGNMENT_MIM.' +
            'APPLIED_TIME_INTERVAL_ASSIGNMENT.ITEMS') |
            (atia2.role.name = 'maximum retention period') AND
            ('DATE_TIME_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,'ACTION_SCHEMA.' +
            'ACTION_RELATIONSHIP.RELATING_ACTION')) +
            SIZEOF( USEDIN(SELF,'ACTION_SCHEMA.' +
            'ACTION_RELATIONSHIP.RELATED_ACTION')) = 0;
            END_ENTITY;
(*
            
Formal propositions:
WR1: The retention shall be referenced as the assigned_action by at least one instance of applied_action_assignment that has a role with name 'retention'.
WR2: The retention shall be contained in the set of items of exactly one applied_time_interval_assignment that references as its role a time_interval_role with a name of 'minimum retention period', and shall be contained in the set of items of exactly one applied_time_interval_assignment that references as its role a time_interval_role with a name of 'maximum retention period'. Both applied_time_interval_assignment instances shall reference as assigned_time_interval a time_interval_with_bounds that has its primary_bound and either one of secondary_bound or duration attributes instantiated. Both applied_time_interval_assignment instances shall have the same primary_bound.
WR3: The retention shall not be referenced by an action_relationship.
         *)
         END_SCHEMA;  -- Design_product_data_management_mim
(*
         © ISO 2021 — All rights reserved