AP scope | AP module | AP contents | AP index | |
Application module: Product identification | ISO/TS 10303-1017:2004(E) © ISO |
This clause specifies the information requirements for the Product identification 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.
The following EXPRESS specification begins the Product_identification_arm schema and identifies the necessary external references.
EXPRESS specification:
*)
SCHEMA Product_identification_arm;
(*
The following EXPRESS interface statement specifies the elements imported from the ARM of another application module.
EXPRESS specification:
*)
USE FROM
Product_categorization_arm;
--
ISO/TS 10303-1016
(*
NOTE 1 The schemas referenced above are specified in the following part of ISO 10303:
Product_categorization_arm ISO/TS 10303-1016
NOTE 2 See Annex C, Figures C.1and C.2 for a graphical representation of this schema.
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.
A Product is the identification of a product or of a type of product. It is a collector of data common to all revisions of the Product.
Products that this entity data type can represent, include:In the interpreted models, these various meanings are represented within instances of the entity product_related_product_category, with prescribed values of the category name. For example, the category name 'document' shall be used when characterizing the fact that a product is actually a document.
EXAMPLE 1 The SS Titanic is a product that could be represented by the entity data type Product.
EXAMPLE 2 Lifeboat is a class of products that could be represented by the entity data type Product. Each lifeboat on the SS Titanic is a member of this class.
NOTE 2 A product is identified by an organization or a person in an organization. The definition of the domain of uniqueness and the mechanism for guaranteeing the uniqueness of product id are outside the scope of this application module.
NOTE 3 A product may have zero or more versions. A version of a product is represented with an instance of the entity Product_version or of one of its specializations.
EXPRESS specification:
*)
ENTITY Product;
id : STRING;
name :
OPTIONAL
STRING;
description :
OPTIONAL
STRING;
END_ENTITY;
(*
Attribute definitions:
id: the identifier that distinguishes the product.
NOTE 4 A particular codification for the values of this attribute may be specified in the EXPRESS schemas that use or specialize this entity, or in an agreement of common understanding between the partners sharing this information.
EXAMPLE 3 Part numbers, stock item numbers, and serial numbers are examples of product identifiers.
name: the words by which the product is known. The value of this attribute need not be specified.
description: the text that provides further information about the Product. The value of this attribute need not be specified.
A Product_category_assignment is the inclusion of one or more products in a product category.
NOTE Usually, products are classified in categories of products. However, at some early phase of design, a product may not yet be categorized.
EXAMPLE A product may belong to categories named 'part', 'raw material', 'document', 'functionality', or 'requirement'.
EXPRESS specification:
*)
ENTITY Product_category_assignment;
category : Product_category;
products : SET[1:?] OF Product;
END_ENTITY;
(*
Attribute definitions:
category: the Product_category that contains the products.
products: the instances of Product which identify members of the product category.
This subclause specifies the ARM function for this module. The ARM function and definition is specified below.
EXPRESS specification:
*)
FUNCTION types_of_product (obj : Product) :SET OF STRING;
LOCAL category_assignments: BAG OF Product_category_assignment; categories: SET OF STRING:=[]; i: INTEGER; END_LOCAL; category_assignments := USEDIN(obj,'PRODUCT_IDENTIFICATION_ARM.' + 'PRODUCT_CATEGORY_ASSIGNMENT.PRODUCTS'); REPEAT i := LOINDEX(category_assignments) TO HIINDEX(category_assignments) BY 1; categories := categories + category_assignments[i].category.name; END_REPEAT; RETURN(categories);
END_FUNCTION;
(*
Argument definitions:
obj: the Product whose categories are considered.
*)
END_SCHEMA; -- Product_identification_arm
(*
© ISO 2004 — All rights reserved