make OCAF tree

Hello

I wanna make a OCAF tree.

I already read guide and forum's information

But it's too difficult....

I wanna make a OCAF tree using bottom-up method like assembling parts.

if there are two parts(part A, part B), i wanna make tree like below

i wanna make (part A + part B) assembly by grouping part A , part B.

--------------------------------------------------------------

root
l----Part A + Part B
------------l----Part A
------------l----Part B

---------------------------------------------------------------

so, i write code like below.

----------------------------------------------------------------

TDF_Label tempLabel = myAssembly->AddComponent(root, conn.Left().Shape(), Standard_True);
TDF_Label lab1 = myAssembly->FindShape(conn.Left().Shape());
TDataStd_Name::Set(lab1, conn.Left().Name().c_str());

TDF_Label tempAnotherLabel = myAssembly->AddComponent(root, conn.Right().Shape(), Standard_True);
TDF_Label lab2 = myAssembly->FindShape(conn.Right().Shape());
TDataStd_Name::Set(lab2, conn.Right().Name().c_str());

string parentName = conn.Left().Name() + "+" + conn.Right().Name();
TDF_Label parentLabel = XCAFDoc_DocumentTool::ShapeTool(document->Main())->NewShape();
TDataStd_Name::Set(parentLabel, parentName.c_str());

TDF_Label component01 = XCAFDoc_DocumentTool::ShapeTool(document->Main())->AddComponent(parentLabel, lab1, TopLoc_Location());
TDF_Label component02 = XCAFDoc_DocumentTool::ShapeTool(document->Main())->AddComponent(parentLabel, lab2, TopLoc_Location());
------------------------------------------------------------------

when i write document as STEP file, there is nothing.

pls help