Hi. I`m working as an engineer on water sewer and road constructions. It´s good to see that you guys are looking inn to an area of design that has huge need for someone too rattle the cage
I have read the posts here and it´s seems like you have a basic understanding of the task. So I will just name some basic things that i´d think you need to focus on in the process.
The main focus for us doing civil engineering is the reference line and the terrain. Like architects work with construction lines we work with reference lines. So you will have to find a way to implant this in freecad if you want to be able to build water and sewer pipes and roads.
We basically build everything around this line by referring to it. Like if I have a center line (reference line 0) of a road I will say that the next line is 2meters to the right from this and 3% lower (decline). This line would in my world be called 0.1 and a line to the left would bee -0.1 or -1.1 if it´s the roads shoulder. Then by telling how far along the reference line it should be 2m to the right, I have made a area, and by defining offset Z of this area I have made a volume and so on.
The reference line also is the one giving us the long section and guiding the cross section. You can´t use the section cut from standard CAD section cut on long section since the road turns in curves, not straight corners. It also has to be able to show pipes that is on both sides of the long section cut line.
The cross section is used to calculate volumes by slicing the road up and finding the volumes between these cross sections.
The terrain has to be triangulated in order too be precise enough and to be able too correlate with the road model. There is some serious calculus in this, but it seems like you guys have already the basic tools to make it work.
In addition to this you will (unless you find a better solution) have to implant break lines. Lines that defines were the built of the road should stop. Like if you have a road coming on to another road you have to make a break line to define what the volume and area of each of those roads are.
As to format I think you should focus on GML, LandXML, (cityXML) and maybe IFC. There is a jungle of formats out there, but thees are the ones that have the best outlook for becoming the new standard, and they are open.