DATAKIT API  V2025.1
Step BO XML Files

STEP AP242 BO XML, also known as Domain Model, is an alternate form of AP242 for some data (especially, assemblies, product data, PDM, data with highly semantic content). It is dynamically recognized by the STEP reader. It brings its own definitions and constructions.
From AP242E2, it is known as "STEP Domain Model".

Step BO XML Files

FILE DATAKIT Class Remarks
".stpx" file with only one part and reference to another file the Dtk_Component Prototype (from referenced file)
plus properties (to Dtk_MetaData) defined in the stpx
 
".stpx" file defining an assembly, and reference to files for sub-assemblies or sub-components the tree of Dtk_Component (Prototypes + Instances) detailed in following paragraphs
referenced non-".stpx" file the Dtk_Component Prototype converted from it, inserted in the assembly any CAD format
".stpxz" file considered as ".stpx" after decompression

".stpxz" : compressed form of ".stpx"


Assembly and Structure

STEP Entity DATAKIT Class Remarks
Part common definitions of Dtk_Component from PartView (see Properties) lists 1/+ PartVersion, each one lists 1/+ PartView. Common definitions are dispatched on Dtk_Component
Part referencing an external file A distinct Dtk_Component for the Part of BOXML and for the external file, type Prototype
The Part of BOXML has one child with an instance named "StepExternalReference" to the external component
 
PartVersion   lists 1/+ PartView
PartView and sub-types Dtk_Component , type Prototype  
Occurrence and sub-types   reference used by Instances on this Component
NextAssemblyOccurrenceUsage Dtk_Component , type Instance
AssemblyOccurrenceRelationship Dtk_Component , type Instance
AssemblyOccurrenceRelationshipSubstitution Dtk_MetaData recorded on Dtk_Component type Instance :
- on relating instance : title "Instance_AORS_Relating", value = name of the related Part
- on related instance : title "Instance_AORS_Related", value = name of the relating Part
CartesianTransformation Dtk_transfo position (matrix)
ImplicitTransformation3d Dtk_transfo position (matrix)
ExplicitTransformation3d Dtk_transfo position (matrix)
GeometricCoordinateSpace conversion unit and context attached to an item
ExchangeContext conversion unit and context default for the file
Unit conversion ratio (length) to MM
Document + DocumentVersion + DocumentDefinition a Dtk_Node Virtual named "Document" filters access to File
File + FileContent + ExternalItem + CreationProperty + FormatProperty description of a reference to an external file
case of several documents/files for a given Dtk_Component ? priority to "primary geometry", then "secondary geometry", then other cases of geometry; non-geometry files are ignored
case of several roots or of missing product ? Document:RootComponent:GetInfos: Attribute "Step_AddedItem" values : "ORPHAN_GEOMETRIES" , "SEVERAL_ROOTS"
- otherwise this attribute is absent
each geometry/topology, case of missing product ? its Dtk_Node:GetInfos: Attribute "Step_AddedItem"

values : "ORPHAN_GEOMETRY"
- otherwise this attribute is absent


Properties and Metadata : Organization

STEP Entity DATAKIT Class Remarks
Main Product Data Dtk_MetaData directly attached to the Dtk_Component list : see hereafter, Main Product Data
Identifier of Part Dtk_Node (StepContainerType="PDM") named "ID" with Dtk_MetaData : (if several Identifiers, parameters named "ID_<i>1</i>.." , "ID_<i>2</i>..")
- ID_i = value of the Identifier
- ID_iContext_Id = ID of the ContextRef (an Organization)
- ID
iContext_Name = Name of the ContextRef (an Organization)
- ID
i_Role = id of the RoleRef (a Class)
lists 1/+ Version, each one lists 1/+ PartView
Properties in PartVersion Dtk_MetaData in a Dtk_Node "Part_PDM_Info" list : see hereafter, Properties of Version
Effectivities in PartVersion : EffectivityAssignment Dtk_MetaData in a Dtk_Node "PDM_Effectivities" / "..EffAsg.." of the Dtk_Component :
- _UID of the Effectivity
- optional _FromType and _FromUID for Effectivity on Occurrence or Configuration
_UID repeats the UID of the Model Effectivity (see below)
AssignedPropertyValues + list, in Part/Views Dtk_MetaData in a Dtk_Node, named by AssignedPropertyValues.Id or defaulted as "PropertyGroup" list : see hereafter, General Properties
Properties in DocumentVersion Dtk_MetaData in a Dtk_Node "Document_PDM_Info" list : see hereafter, Properties of Version
AssignedPropertyValues + list, in Document/Views Dtk_MetaData in a Dtk_Node "Document" list : see hereafter, General Properties
Part*Relationship (definition) Dtk_MetaData in a Dtk_Node "PDM_Part_Relationship" / "PRS" of the Dtk_Component
- _Type and _UID of the Part*Relationship
- Description, RelationType
- Name of the related Dtk_Component
- PartRelationship in Part
- PartVersionRelationship in PartVersion
- PaerViewRelationship in PartView
Part*Relationship : Related Dtk_MetaData in a Dtk_Node "PDM_Part_Relationship" / "FromPRS" of the designated Dtk_Component
- RelatingComponentName of the relating Dtk_Component
 
AssemblyViewRelationshipSubstitution Dtk_MetaData name="AVRS_Related" , value="PRS[<i>rank</i>]" defines an alternate occurrence of another one in an assembly node
Collected Effectivities of the whole document Dtk_MetaData in a Dtk_Node "Model_Effectivities" of the root of the document one sub-node per individual effectivity, see hereafter Effectivity and sub-types


Properties and Metadata : Content

STEP Entity DATAKIT Class Remarks
Main Product Data Dtk_MetaData directly attached to the Dtk_Component  
PartVersion, field Versions:Id MetaData(Component) : Revision (if not /NULL)
PartVersion, field Description MetaData(Component) : Description
PartView, field InitialContext:LifeCycleStage MetaData(Component) : Life Cycle Stage
General Properties    
PropertyValueAssignment list of Dtk_MetaData see below properties
PropertyValue and sub-types (StringProperty , NumericProperty) Dtk_MetaData (name , value as string)  
ValueWithTolerances 3 Dtk_MetaData : name for nominal value , name_Lower , name_Upper  
ValueRange 2 Dtk_MetaData : name_Lower , name_Upper  
ShapeDependentProperty Dtk_MetaData, type Point  
CentreOfMass assembly validation property (centroid) (defined in a ShapeDependentProperty)
CartesianPoint Dtk_pnt
Properties of Version    
ApprovalAssignment MetaData : Approval_*  
DateTimeAssignment MetaData : DateTime_*  
OrganizationOrPersonInOrganizationAssignment 1 or 2 MetaData : Person_* and/or Organization_*  
Effectivities    
Effectivity and sub-types one Virtual Dtk_Node having a set of MetaData :
- _UID and _Type of the Effectivity, + for sub-types see below
- Name of the node (according to attachment) : Revision_Eff, Config_Eff, Occurrence_Eff
 
SerialEffectivity + 2 MetaData for StartNumber and for EndNumber
LotEffectivity + 1 MetaData for ValueComponent
TimeIntervalEffectivity + 2 MetaData for StartDefinition and for EndDefinition
ConditionalConfiguration (sub-type of Effectivity) + 3 MetaData for ConfigurationType, InheritanceType, and for the type of Condition
+ a sub-node for each Effectivity involved the condition