Application module: Item definition structure ISO/TS 10303-1345:2014-02(E)
© ISO

Cover page
Table of contents
Copyright
Foreword
Introduction
1 Scope
2 Normative references
3 Terms, definitions and abbreviated terms
    3.1 Terms and definitions
    3.2 Abbreviated terms

4 Information requirements
   4.1 Required AM ARMs
   4.2 ARM type definition
   4.3 ARM entity definitions
   4.4 ARM rule definitions
5 Module interpreted model
   5.1 Mapping specification
   5.2 MIM EXPRESS short listing
     5.2.1 MIM type definition
     5.2.2 MIM rule definitions

A MIM short names
B Information object registration
C ARM EXPRESS-G   EXPRESS-G
D MIM EXPRESS-G   EXPRESS-G
E Computer interpretable listings
F Application module implementation and usage guide
G Change history
Bibliography
Index

5.2 MIM EXPRESS short listing

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:

EXPRESS specification:

*)
SCHEMA Item_definition_structure_mim;

USE FROM Effectivity_application_mim;    --  ISO/TS 10303-1059

USE FROM Product_occurrence_mim;    --  ISO/TS 10303-1063

USE FROM Product_structure_mim;    --  ISO/TS 10303-1134

REFERENCE FROM product_definition_schema    --  ISO 10303-41
  (categories_of_product);
(*

NOTE 1   The schemas referenced above are specified in the following part of ISO 10303:

Effectivity_application_mim ISO/TS 10303-1059
Product_occurrence_mim ISO/TS 10303-1063
Product_structure_mim ISO/TS 10303-1134
product_definition_schema ISO 10303-41

NOTE 2   See Annex D, Figures D.1and D.2 for a graphical representation of this schema.

5.2.1 MIM type definition

This subclause specifies the MIM type for this application module. The MIM type and definition is specified below.

5.2.1.1 effectivity_item_for_replacement   EXPRESS-G

The effectivity_item_for_replacement type is an extension of the effectivity_item type. It adds the data type product_definition_relationship to the list of alternate data types.

EXPRESS specification:

*)
TYPE effectivity_item_for_replacement = SELECT BASED_ON effectivity_item WITH
   (product_definition_relationship);
END_TYPE;
(*

5.2.2 MIM rule definitions

This subclause specifies the MIM rules for this module. The MIM rules and definitions are specified below.

5.2.2.1 product_definition_replacement_requires_effectivity_assignment

The product_definition_replacement_requires_effectivity_assignment rule constrains any instance of product_definition_relationship whose name attribute is 'definition replacement' to be referred to as items by at least an instance of applied_effectivity_assignment which specifies the validity conditions of the replacement.

EXPRESS specification:

*)
RULE product_definition_replacement_requires_effectivity_assignment FOR
(product_definition_relationship);
WHERE
  WR1: SIZEOF( QUERY( pdr <* product_definition_relationship | (pdr.name = 'definition replacement') AND (SIZEOF( USEDIN(pdr,'EFFECTIVITY_APPLICATION_MIM.APPLIED_EFFECTIVITY_ASSIGNMENT.ITEMS') ) = 0) )) = 0;
END_RULE;
(*

Argument definitions:

product_definition_relationship : the set of all instances of product_definition_relationship.

Formal propositions:

WR1: there shall not be any instance of product_definition_relationship whose name attribute is 'definition replacement', not referred to as items by at least an instance of applied_effectivity_assignment.

5.2.2.2 restrict_assembly_category

The restrict_assembly_category rule constrains every instance of product_definition of type 'assembly definition' to be a definition of a product of category 'assembly'.

EXPRESS specification:

*)
RULE restrict_assembly_category FOR
(product_definition);
LOCAL
      assembly_definitions: SET OF product_definition := [];
    END_LOCAL;
      assembly_definitions :=  QUERY( pd <* product_definition | 
        SIZEOF( QUERY( pdca <* USEDIN( pd, 'PRODUCT_DEFINITION_SCHEMA.PRODUCT_DEFINITION_CONTEXT_ASSOCIATION.DEFINITION') |
        pdca.frame_of_reference.name= 'assembly definition')) > 0 );
WHERE
  WR1: SIZEOF( QUERY( pd <* assembly_definitions | NOT ('assembly' IN categories_of_product(pd.formation.of_product)) ))= 0;
END_RULE;
(*

Argument definitions:

product_definition : the set of all instances of product_definition.

Formal propositions:

WR1: there shall not be any product_definition whose frame or reference name is 'assembly definition' that is not a definition of a product of category 'assembly'.

5.2.2.3 restrict_product_definitions_for_part_definition_relationship

The restrict_product_definitions_for_part_definition_relationship rule constrains any instance of product_definition_relationship whose name attribute is 'geometrical relationship' or 'definition replacement', to relate two instances of product_definition with frame of reference name 'part definition'.

EXPRESS specification:

*)
RULE restrict_product_definitions_for_part_definition_relationship FOR
(product_definition_relationship);
WHERE
  WR1: SIZEOF ( QUERY ( pdr <* product_definition_relationship | ( pdr.name IN [ 'geometrical relationship' , 'definition replacement' ] ) AND ( ( pdr.relating_product_definition.frame_of_reference.name <>'part definition' ) OR ( pdr.related_product_definition.frame_of_reference.name <>'part definition' ) ) ) ) =0;
END_RULE;
(*

Argument definitions:

product_definition_relationship : the set of all instances of product_definition_relationship.

Formal propositions:

WR1: there shall not be any instance of product_definition_relationship whose name attribute is 'geometrical relationship' or 'definition replacement', that does not relate two instances of product_definition with frame of reference name 'part definition'.



*)
END_SCHEMA;  -- Item_definition_structure_mim
(*


© ISO 2014 — All rights reserved