Instead of a simple parser architecture as shown here:
Speech Markdown is first translated into an Abstract Syntax Tree (AST) and a formatter transforms that into the correct format:
This is more powerful as formatters have the ability to customize the output based on the differences of each platform.