Overview
When the ARM engine is used to write STEP data, it is grouped by ARM object and a comment is added showing how the instances fit together. The syntax of the comment is shown below:
comment: line+ line: record '\n' record: empty | ao-header | property empty: padding ao-header: padding 'Application object:' ws name ws '(' ws eid ws ')' rest property: padding name ws index ws ':' ws eid-list scalar rest padding: ( SPACE | TAB | '*' )* ws: (SPACE | TAB ) * eid: '#' DIGIT* eid-list: NOTHING | (eid ',')* eid scalar: NOTHING | '[' ws (NOT ']')* ws ']' name: (CAPITAL | DIGIT | _)* scalar: NOTHING | '[' scalar-content ']' scalar-content: (''' [^']* ''') | real | int | word real: {real number} int: DIGIT+ word: (LETTER | DIGIT | _)* rest: ANY*
Example
The Part 21 data below shows the instances for a STEP-NC Project concept.
/************************************************ * Application object: PROJECT (#10) * MAIN_WORKPLAN: #10, #11, #12, #104 * ITS_ID: #10, #13, #14 ['../../Tests/TC005'] * ITS_WORKPIECES [*]: #10, #15, #99 */ #10=PRODUCT_DEFINITION('','',#13,#16); #11=PROCESS_PRODUCT_ASSOCIATION('','',#10,#12); #12=PRODUCT_DEFINITION_PROCESS('machining','',#104,''); #13=PRODUCT_DEFINITION_FORMATION('','',#14); #14=MACHINING_PROJECT('../../Tests/TC005','',$,(#18)); #15=MACHINING_PROJECT_WORKPIECE_RELATIONSHIP('','workpiece','',#10,#99); #16=PRODUCT_DEFINITION_CONTEXT(' ',#17,'Manufacturing'); #17=APPLICATION_CONTEXT( 'Application protocol for the exchange of CNC data'); #18=PRODUCT_CONTEXT('drilling and milling',#17,'CNC Machining');
The Part 28 XML data below shows a similar set of instances, but using the XML exchange format.
<!-- *********************************************** * Application object: PROJECT (id10) * MAIN_WORKPLAN: id10, id11, id12, id11193 * ITS_ID: id10, id13, id14, ['New Project'] * ITS_WORKPIECES [*]: id10, id15, id2284 --> <Product_definition id="id10" Id="" Description="" Formation="id13" Frame_of_reference="id16"/> <Process_product_association id="id11" Name="" Description="" Process="id12"> <Defined_product> <Product_definition ref="id10" xsi:nil="true"/> </Defined_product> </Process_product_association> <Product_definition_process id="id12" Name="machining" Description="" Chosen_method="id11193" Identification=""/> <Product_definition_formation id="id13" Id="" Description="" Of_product="id14"/> <Machining_project id="id14" Id="New Project" Name="" Frame_of_reference="id18"/> <Machining_project_workpiece_relationship id="id15" Id="" Name="" Description="" Relating_product_definition="id10" Related_product_definition="id2284"/> <Product_definition_context id="id16" Name="CNC Machining" Frame_of_reference="id17" Life_cycle_stage="manufacturing"/> <Application_context id="id17" Application="Application protocol for the exchange of CNC data"/> <Product_context id="id18" Name="CNC Machining" Frame_of_reference="id17" Discipline_type="manufacturing"/>