Application module: Part collection ISO/TS 10303-1115: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 ARM
   4.2 ARM entity definitions
5 Module interpreted model
   5.1 Mapping specification
   5.2 MIM EXPRESS short listing
     5.2.1 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 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 Part_collection_mim;

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

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:

Product_occurrence_mim ISO/TS 10303-1063
product_definition_schema ISO 10303-41

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

5.2.1 MIM rule definitions

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

5.2.1.1 restrict_collection_category

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

EXPRESS specification:

*)
RULE restrict_collection_category FOR
(product_definition);
LOCAL
      collection_definitions: SET OF product_definition := [];
    END_LOCAL;
      collection_definitions :=  QUERY( pd <* product_definition | 
        SIZEOF( QUERY( pdca <* USEDIN( pd, 'PRODUCT_DEFINITION_SCHEMA.' + 'PRODUCT_DEFINITION_CONTEXT_ASSOCIATION.DEFINITION') |
        pdca.frame_of_reference.name= 'collection definition')) > 0 );
WHERE
  WR1: SIZEOF( QUERY( pd <* collection_definitions | NOT ('collection' 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 referenced by the attribute "of product" of product_definition_formation that is not a 'collection'.

5.2.1.2 restrict_product_definitions_for_collection

The restrict_product_definitions_for_collection rule restricts the name of instances of product_definition when they are related by a product_definition_relationship with name 'collection membership'.

The name of the relating product_definition shall be 'part definition'. In addition, this product_definition shall have an associated definition context with name 'collection definition'.

The name of the related product_definition shall be 'part occurrence'.

EXPRESS specification:

*)
RULE restrict_product_definitions_for_collection FOR
(product_definition_relationship);
WHERE
  WR1: SIZEOF ( QUERY ( pdr <* product_definition_relationship | ( pdr. name = 'collection membership' ) AND ( ( pdr.relating_product_definition.frame_of_reference.name<>'part definition' ) OR ( pdr.related_product_definition.frame_of_reference.name<>'part occurrence' ) OR ( SIZEOF ( QUERY ( pdca <* USEDIN (pdr.relating_product_definition , 'PRODUCT_DEFINITION_SCHEMA.' + 'PRODUCT_DEFINITION_CONTEXT_ASSOCIATION.DEFINITION') | ( pdca.role.name = 'part definition type' ) AND ( pdca.frame_of_reference.name = 'collection definition' ) )) =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 with name 'collection membership', for which the name of the related instances of product_definition does not match the constraint mentioned above.



*)
END_SCHEMA;  -- Part_collection_mim
(*


© ISO 2014 — All rights reserved