First of all, I agree that IFC is used in many ways, not all IFC's fits together, and not all IFC's are completely "after the book".
One way is to give an address and lat / long in IfcSite. But this is only an approximate location, linked to the address point. It has nothing to do with the coordinate system used. By using this, one probably ends up on the right plot, but not with any particular accuracy.
Example from a sample file good building-case-project:
IFCSite with Address Verification:
# 111 = IFCSITE ('01uPthe3Uixx0TRWar3Vt8', # 26, 'Helland', 'Test plot in B \\ X2 \\ 00F8 \\ X0 \\', $, # 108, $, $,. ELEMENT., (59,24,47,484830 ), (9,3,30,811790), 75000., '3817-55 / 40/0/0', # 99);
# 99 = IFCPOSTALADDRESS ($, $, $, $, ('Kyrkjevegen 6'), $, $, 'B \\ X2 \\ 00F8 \\ X0 \\ i Telemark', '3800', 'Norge');
But what needs to be taken into account are:
# 80 = IFCGEOMETRICREPRESENTATIONCONTEXT ($, 'Model', 3.0.01, # 77, # 78);
# 84 = IFCPROJECT ('0LgUPU8IoJzfI479rEc5t9', # 26, 'DiBK Office Build', 'DiBK Standard Office Model', $, $, 'Building Case BIM', (# 80), # 67);
# 95 = IFCMAPCONVERSION (# 80, # 96,503000000., 6586000000., 0., 1., 0., 1.); (NB! This is the origin of the local IFC coordinate system)
# 96 = IFCPROJECTEDCRS ('EPSG: 25832', 'EPSG EU89 UTM33', 'EU89', 'NN2000', 'EU89 UTM33', '33', $);
It does not look like the FME can do this. Any suggestions?