Application module: Part template ISO/TS 10303-1722:2019(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 entity definition

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

4 Information requirements

This clause specifies the information requirements for the Part template application module. The information requirements are specified as the Application Reference Model (ARM) of this application module.

NOTE 1  A graphical representation of the information requirements is given in Annex C.

NOTE 2  The mapping specification is specified in 5.1. It shows how the information requirements are met by using common resources and constructs defined or imported in the MIM schema of this application module.

This clause defines the information requirements to which implementations shall conform using the EXPRESS language as defined in ISO 10303-11. The following begins the Part_template_arm schema and identifies the necessary external references.

EXPRESS specification:

*)
SCHEMA Part_template_arm;
(*

4.1 Required AM ARMs

The following EXPRESS interface statements specify the elements imported from the ARMs of other application modules.

EXPRESS specification:

*)
USE FROM Feature_and_connection_zone_arm;    --  ISO/TS 10303-1671

USE FROM Part_shape_arm;    --  ISO/TS 10303-1807
(*

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

Feature_and_connection_zone_arm ISO/TS 10303-1671
Part_shape_arm ISO/TS 10303-1807

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

4.2 ARM type definition

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

4.2.1 plp_material_item_select   EXPRESS-G

The plp_material_item_select type is an extension of the material_item_select type. It adds the data type Template_definition to the list of alternate data types.

EXPRESS specification:

*)
TYPE plp_material_item_select = SELECT BASED_ON material_item_select WITH
   (Template_definition);
END_TYPE;
(*

4.3 ARM entity definitions

This subclause specifies the ARM entities for this module. Each ARM application entity is an atomic element that embodies a unique application concept and contains attributes specifying the data elements of the entity. The ARM entities and definitions are specified below.

4.3.1 Template   EXPRESS-GMapping table

A Template is a type of Part. Intellectual rights to a Template may be bought or sold or licensed.

EXPRESS specification:

*)
ENTITY Template
  SUBTYPE OF (Part);
UNIQUE
  UR1: SELF\Product.id;
END_ENTITY;
(*

Formal propositions:

UR1: The id shall be unique within a population of Template.

4.3.2 Template_definition   EXPRESS-GMapping table

A Template_definition is a type of Part_view_definition that defines a characterization view of a version of a Template.

EXPRESS specification:

*)
ENTITY Template_definition
  SUBTYPE OF (Part_view_definition);
  SELF\Product_view_definition.defined_version : Template_version;
END_ENTITY;
(*

Attribute definitions:

defined_version: an inherited attribute that shall have a value of type Template_version.

4.3.3 Template_version   EXPRESS-GMapping table

A Template_version is a type of Part_version that identifies a version of a template. A Template_version serves as the collector of the data characterizing a template.

EXPRESS specification:

*)
ENTITY Template_version
  SUBTYPE OF (Part_version);
  SELF\Product_version.of_product : Template;
END_ENTITY;
(*

Attribute definitions:

of_product: an attribute inherited from the Product_version shall be redeclared as the Template of which the Template_version specifies a version.

4.4 ARM rule definitions

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

4.4.1 template_definition_constraint

The rule template_definition_constraint constrains the use of Template_version as defined_version to Template_definition only.

EXPRESS specification:

*)
RULE template_definition_constraint FOR
(Product_view_definition);
WHERE
  WR1: SIZEOF ( QUERY ( pvd <* Product_view_definition | ( NOT ( 'PART_TEMPLATE_ARM.' + 'TEMPLATE_DEFINITION' IN TYPEOF (pvd) ) ) AND ( 'PART_TEMPLATE_ARM.' + 'TEMPLATE_VERSION' IN TYPEOF ( pvd.defined_version) ) ) ) =0;
END_RULE;
(*

Argument definitions:

Product_view_definition : the set of all instances of Product_view_definition.

Formal propositions:

WR1: There shall not be any instance of Product_view_definition that refers to Template_version as defined_version and is not an instance of Template_definition.

4.4.2 template_version_constraint

The rule template_version_constraint constrains the use of Template as of_product to Template_version only.

EXPRESS specification:

*)
RULE template_version_constraint FOR
(Product_version);
WHERE
  WR1: SIZEOF ( QUERY ( pv <* Product_version | ( NOT ( 'PART_TEMPLATE_ARM.' + 'TEMPLATE_VERSION' IN TYPEOF ( pv) ) ) AND ( 'PART_TEMPLATE_ARM.' + 'TEMPLATE' IN TYPEOF ( pv.of_product) ) ) ) =0;
END_RULE;
(*

Argument definitions:

Product_version : the set of all instances of Product_version.

Formal propositions:

WR1: There shall not be any instance of Product_version that refers to Template as of_product and is not an instance of Template_version.



*)
END_SCHEMA;  -- Part_template_arm
(*


© ISO 2019 — All rights reserved