I did a quick search about the topic, but nothing showed up. I'm curious to know the reason behind public templates not supporting <xen:form>? Why do we have to rely on regular <form ...> in public templates?
Look in the library/XenForo/Template/Compiler/Tag directory.
The root of that is tags which can be usable in any templates. There's a sub directory named Admin containing the tags which are only usable in admin templates.