PDM-UG: Basic Approval
From WikiSTEP
This page belongs to the PDM Usage Guide.
For basic approval, an approval needs only one signature and does not represent an approval cycle. There is only one approval_person_organization, one approval_status, and one approval_date_time.
It is recommended that the approval entity have associated approval_person_organization to specify the approver of the approval. The approval_person_organization entity has a role associated with it by the entity approval_role. If no more specific information is available, the role 'approver' is recommended.
It is recommended that the approval entity have associated an approval_date_time construct to specify the date when the current approval status was assigned. The approval_date_time may reference either a date or a date_and_time to indicate that the referenced element of product data was approved on the specified date/time.
Contents |
The Instance Model: EXPRESS entities and attributes
The EXPRESS entities and attributes used to support the requirements for basic approval are illustrated in Diagram 56.
Approval
The approval entity describes the state of acceptance of some product data.
Attributes
- The status attribute specifies the judgement made about the product data that is the subject of the approval.
- The level attribute describes the type or the level of approval in terms of its usage.
| ENTITY approval | Attribute Population | Remarks |
| status | type: entity = approval_status | |
| level | type: label |
===Preprocessor Recommendations=== The approval level attribute is generally agreed to represent the type of approval in terms of its usage. The approved object is understood to be approved for the given purpose described by the value of the attribute level.
===Postprocessor Recommendations=== None specified.
===Related Entities=== There are no specific related entities.
Approval status
The approval_status entity represents a statement made by technical personnel or management personnel whether certain requirements are met.
Attributes
- The name attribute describes the terms characterizing the approval_status.
| ENTITY approval_status | Attribute Population | Remarks | name | type: label |
===Preprocessor Recommendations=== The approval_status name attribute is recommended to only be 'approved', 'not yet approved', 'disapproved' or 'withdrawn'.
===Postprocessor Recommendations=== There are no specific postprocessor recommendations.
===Related Entities=== There are no specific related entities.
Applied approval assignment
The applied_approval_assignment entity is a subtype of approval_assignment, allowing the representation of the assignment of an approval to some product data.
Attributes
- The assigned_approval attribute references the approval that is being assigned.
- The role attribute describes the nature of the assignment.
- The items attribute is a reference to the product data to which the approval is being assigned.
| ENTITY applied_approval_assignment | Attribute Population | Remarks |
| assigned_approval | type: entity = approval | |
| role | type: entity = object_role | DERIVE |
| items | SET[1:?] |
===Preprocessor Recommendations=== All preprocessors should use non-defaulted data or user-input data for the values assigned for the approvers and approval date for product_definition_formation entities. The approvers and approval dates can be extrapolated from the version creator and approval data if other appropriate data is unavailable.
===Postprocessor Recommendations=== There are no specific postprocessor recommendations.
===Related Entities=== There are no specific related entities.
Approval person organization
The approval_person_organization entity specifies who is responsible for the approval.
Attributes
- The person_organization attribute is a reference to the person or person_and_organization who made the approval.
- The authorized_approval attribute is a reference to the approval effected by the person and/or organization.
- The role attribute describes the nature of the association.
| ENTITY approval_person_organization | Attribute Population | Remarks |
| person_organization | type: SELECT | |
| authorized_approval | type: entity = approval | |
| role | type: entity = approval_role |
===Preprocessor Recommendations=== For AP214 compatibility, preprocessors may generate an applied_date_and_time_assignment entity associated to approval_person_organization.
===Postprocessor Recommendations=== There are no specific postprocessor recommendations.
===Related Entities=== There are no specific related entities.
Approval role
The approval_role entity represents the identification of the assignment role for an approval_person_organization.
Attributes
- The role attribute describes the terms characterizing the approval_role.
- The description attribute specifies the word or group of words used to refer to the approval_role.
| ENTITY approval_role | Attribute Population | Remarks |
| role | type: label | |
| description | type: text | DERIVE |
The approval_role entity may have a description associated with it through the entity description_attribute and its attribute_value attribute.
===Preprocessor Recommendations=== If no appropriate data for the approval_role role attribute (why this person and organization is approving) is available it is recommended that this attribute contain the value "approver".
===Postprocessor Recommendations=== There are no specific postprocessor recommendations.
===Related Entities=== There are no specific related entities.
Approval date time
The approval_date_time entity specifies when the approval was given. Year values for dates should always be expressed with four digits, e.g., 1999.
Attributes
- The date_time attribute is a reference to the date and/or time when the approval was made.
- The dated_approval attribute is a reference to the approval effected by the date and/or time.
- The role attribute describes the nature of the association.
| ENTITY approval_date_time | Attribute Population | Remarks |
| date_time | type: SELECT | |
| dated_approval | type: entity = approval | |
| role | type: entity = object_role | DERIVE |
===Preprocessor Recommendations=== The approval_date_time.role attribute may contain the value 'actual' to indicate this date/time is the actual (not planned) date that the approval_status related to the dated_approval was assigned.
===Postprocessor Recommendations=== There are no specific postprocessor recommendations.
===Related Entities=== There are no specific related entities.
The Instance Model: STEP exchange file format (ISO10303 Part 21 syntax)
ISO-10303-21;
HEADER;
FILE_DESCRIPTION(('pdm_schema data', 'pdm_schema'), '2;1');
FILE_NAME('C:\approval_example.stp', '1999-5-20 T12:39:1', (''), (), '', '', '');
FILE_SCHEMA(('PDM_SCHEMA {1.2}'));
ENDSEC;
DATA;
/* part version to which an approval is applied */
#10 = PRODUCT_DEFINITION_FORMATION('02', 'lever modified', #20);
#20 = PRODUCT('K01-42051', 'Bicycle Bell RX25B', '', (#30));
#30 = PRODUCT_CONTEXT('', #40, '');
#40 = APPLICATION_CONTEXT('mechanical design');
#50 = PRODUCT_RELATED_PRODUCT_CATEGORY('part', '', (#20));
#60=APPLICATION_PROTOCOL_DEFINITION('version1.1','pdm_schema',20002000,#40;
/* approval definition / association to product_definition_formation */
#880 = APPROVAL(#870, 'preliminary design');
#870 = APPROVAL_STATUS('not yet approved');
#890 = APPLIED_APPROVAL_ASSIGNMENT(#880, (#10));
/* identification of approver */
#900 = APPROVAL_PERSON_ORGANIZATION(#330, #880, #910);
#910 = APPROVAL_ROLE('approver');
#280 = ORGANIZATION('O-0709', 'Logus GmbH', 'company');
#330 = PERSON_AND_ORGANIZATION(#340, #280);
#340 = PERSON('P-0661', 'Rose', 'Peter', $, $, $);
#350 = NAME_ATTRIBUTE('employee', #330);
/* definition of actual approval date (when status was set) */
#940 = APPROVAL_DATE_TIME(#970,#880);
#950 = ROLE_ASSOCIATION(#960, #940);
#960 = OBJECT_ROLE('actual', $);
#970 = DATE_AND_TIME(#980, #990);
#980 = CALENDAR_DATE(1999, 14, 5);
#990 = LOCAL_TIME(0, 0, 0.0E+000, #1000);
#1000 = COORDINATED_UNIVERSAL_TIME_OFFSET(0, $, .EXACT.);
ENDSEC;
END-ISO-10303-21;


