PDM-UG: Promissory Component Usage
From WikiSTEP
This page belongs to the PDM Usage Guide.
The STEP PDM Schema supports promissory usage relationships between components and some higher-level assembly that is not the immediate parent in the hierarchy. This may be important to relate an outsourced component to a top-level assembly definition related to a configuration and product_concept. A supplier may only require the configuration and end item identification that is associated with the component of interest, and may not need to know the detailed assembly structure in between. The promissory component usage may be useful during early design phases to create preliminary BOMs for prototyping.
The Instance Model: EXPRESS entities and attributes
The EXPRESS entities and attributes used to support the requirements of promissory assembly are illustrated in Diagram 23.

Promissory usage occurrence
This entity is a subtype of assembly_component_usage. It represents the usage occurrence of a component within a higher-level assembly that is not the immediate parent, in the case where the detailed assembly structure in between the component and the higher-level assembly is not represented. A promissory_usage_occurrence specifies the intention to use the constituent in an assembly. It may also be used when the product structure is not completely defined.
===Preprocessor Recommendations=== The higher-level assembly should be associated with a configuration item with its related end item identification in the typical usage case for the promissory_usage_occurrence. If the assembly structure between the component and the higher-level assembly must be specified, the next_assembly_usage_occurrence should be used (see Next assembly usage occurrence).
===Postprocessor Recommendations=== None specified.
===Related Entities=== None specified.
The Instance Model: STEP exchange file format (ISO10303 Part 21 syntax)
/* primary application context and life cycle stage */
#10 = APPLICATION_CONTEXT('mechanical design');
#220 = PRODUCT_CONTEXT('', #10,'');
#230 = PRODUCT_DEFINITION_CONTEXT('part definition', #10, 'design');
/* optional AP214 specific characterization for assembly definition */
#340 = PRODUCT_DEFINITION_CONTEXT_ROLE('part definition type', $);
#350 = PRODUCT_DEFINITION_CONTEXT('assembly definition', #10, );
#520 = PRODUCT_DEFINITION_CONTEXT_ASSOCIATION(#460, #350, #340);
/* type discriminator for part as product */
#100 = PRODUCT_RELATED_PRODUCT_CATEGORY('part', $, (#380, #440));
/* part master for component definition */
#360 = PRODUCT_RELATED_PRODUCT_CATEGORY('detail', $, (#380));
#380 = PRODUCT('g1', 'gasket', $, (#220));
#390 = PRODUCT_DEFINITION_FORMATION('A','',#380);
#400 = PRODUCT_DEFINITION('gv1', 'design view on gasket', #390, #230);
/* part master for top level assembly definition */
#420 = PRODUCT_RELATED_PRODUCT_CATEGORY('assembly', $, (#440));
#440 = PRODUCT('h1', 'hub assembly', $, (#220));
#450 = PRODUCT_DEFINITION_FORMATION('A','',#440);
#460 = PRODUCT_DEFINITION('hv1', 'design view on hub assembly', #450, #230);
/* promissory usage occurrence of component in top level assembly */
#530 = PROMISSORY_USAGE_OCCURRENCE('pu-1', 'promissory instance usage', 'pu-1 promissory',#460, #400, $);

