I do not see how to remove <annotation encoding='Mathematica' from generated MathML. Afaict it is not needed for a one way conversion and it often doubles the size of generated MathML.
How to do this quickly?
Shouldn't "Annotations"->{} option handle this?
(mathml = ExportString[Column@List@f[x], "MathML", "Annotations" -> {}]) // AbsoluteTiming // Column 0.0025588 <math xmlns='http://www.w3.org/1998/Math/MathML'> <semantics> .... <annotation encoding='Mathematica'>TagBox[...</annotation> (*THIS is a waste of space for me*) </semantics> </math> I can mathml->XMLElement->DeleteCase->ExportString but then the procedure takes +500% of time for something that could've been just dropped before.
mathml // ImportString[#, "XMLElement"] & // DeleteCases[#, XMLElement["annotation", ___], \[Infinity]] & // ExportString[#, "XML"] & // AbsoluteTiming // Column 0.0108532 <math xmlns='http://www.w3.org/1998/Math/MathML'> <semantics> ... </semantics> </math>
"Content"->False(the default). I might be mistaken. but this is definitely not something to be displayed ... $\endgroup$