Search STEP Tools Web Support

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"/>