A node can ONLY ever have one parent, in the setParent() method it will be set to a singular parent (wether the new parent is null or not)...
the importer can return a TriMesh or a Node, it depends on the .obj File.
Because of that its best to cast it to a Spatial instead of a Node or TriMesh.
TriMesh -> Extends Spatial - is actually geometry
Node -> Extends Spatial - is a 'logical' holder for TriMeshes
So when a model is loaded and it has only ONE mesh it is returned as a TriMesh, if there is more than one mesh it is returned as a Node.
My map is only composed of quads and TriMesh instances are composed of triangles, aren't they?
Yes, and ONLY triangles are supported in jME (no quads, even though they are supported by openGL). You will need to implement an algorithm that goes through each quad and breaks it into 2 triangles (easier than it sounds actually, face winding is the biggest gotcha...)