However, the founder Roman Lygin, has been a serious contributor to OCCT
AFAIK he once was an OCCT developer.
1. The CAD data in FreeCAD files is most of the time stored in binary format (depends on FreeCAD settings).
The FCStd itself is binary (it's a zip archive) but the stored BRep data usually are in ASCII. There is a user setting SaveBinaryBrep to force to write BRep in binary but by default this is off.
You would need a part of OCCT to read and interpret it. This means any importer needs to be a own software, with occt included, either as library or executable... so it is not easily implemented in visual basics etc.
For parametric features it's theoretically possible to not export the BRep files because they can be restored by doing a recompute. For non-parametric objects the BRep must be exported, of course.
Are there any specific reasons why FreeCAD/OpenCASCADE store data in binary format? I'm no expert but this seems like a bad idea.
As said by default the output is ASCII. The binary format once was implemented for FreeCAD's AutoRecovery function where every few minutes the changes since the last time are stored to disk. The binary format there was chosen because it's way faster than ASCII.
I'm not sure how OCCT stores data, but it should be something like storing the design steps in chronological order or categorizing the geometries in different categories (point, line, plane, cube, cylinder, sketch, extrude....).
The BRep format is OCCT's proprietary format but like STEP or IGES it is still a dump format since it doesn't contain any information about the modelling history. That information is part of FreeCAD's Document.xml which is inside every .FCStd project.
Should I be able to reproduce the CAD model just with the XML file?
Theoretically, for fully parametric features the Document.xml file alone should sufficient to restore the model. But practically the more complex your model is the less likely it will be restored as expected if the BRep files are missing. This is mainly because of the topological-naming problem.